Представление знаний в виде фреймов

Автор работы: Пользователь скрыл имя, 17 Декабря 2015 в 17:01, курсовая работа

Описание работы

Фреймовый способ представления данных используется в системах искусственного интеллекта (например, в экспертных системах) как одна из распространенных форм представления знаний.
В данной работе будет рассмотрен данный способ, его специфики и основные характеристики.

Файлы: 1 файл

Kursovaya.docx

— 435.37 Кб (Скачать файл)

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ

УНИВЕРСИТЕТ МАМИ

 

 

 

 

 

КУРСОВАЯ РАБОТА

ПО ДИСЦИПЛИНЕ "ИНТЕЛЛЕКТУАЛЬНЫЕ СИСТЕМЫ И ТЕХНОЛОГИИ"

На тему: Представление знаний в виде фреймов

 

 

 

 

 

Выполнил:

Студент                                                                                        А.Д. Зыков 

 

 

 

 

 

 

 

 

 

 

 

 

 

Введение

Способы представления знаний - это одно из важнейших направлений исследований в области искусственного интеллекта. При их создании невозможно обойтись без различных моделей представления знаний. Это обусловлено, в первую очередь, тем фактом, что без знаний искусственный интеллект не может существовать в принципе.

Можно представить человека, который не знает ничего, даже абсолютно элементарных вещей. Поведение такого человека вряд ли можно считать разумным. И таких примеров множество. Именно поэтому, при создании систем искусственного интеллекта особенное внимание уделяется способам представления знаний.

Несмотря на тот факт, что сегодня разработано уже достаточное количество способов представления знаний, вопрос выбора конкретного способа для решения какой-либо задачи по-прежнему остается актуальным. Одна из проблем в представлении знаний - как хранить и обрабатывать знания в информационных системах так, чтобы машины могли использовать их для достижения поставленных задач.

От выбора способа представления знаний зависит не столько эффективность выполнения поставленной задачи, сколько возможность ее решения вообще.

Одним из таких способов является фреймовый способ представления знаний. Этот способ был предложен Марвином Минским в 1979 г. как структура знаний для восприятия пространственных сцен. Эта модель, как и семантическая сеть, имеет глубокое психологическое обоснование.

Отправным моментом для данной теории служит тот факт, что человек, пытаясь познать новую для себя ситуацию или по-новому взглянуть на уже привычные вещи, выбирает из своей памяти некоторую структуру данных (образ), называемую фреймом, с таким расчетом, чтобы путем изменения в ней отдельных деталей сделать ее пригодной для понимания более широкого класса явлений или процессов.

Фреймовый способ представления данных используется в системах искусственного интеллекта (например, в экспертных системах) как одна из распространенных форм представления знаний.

В данной работе будет рассмотрен данный способ, его специфики и основные характеристики.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1. Основные сведения о фреймовой модели представления знаний

1.1. Понятие фрейма

Фрейм — (англ. frame — «каркас» или «рамка») — способ представления знаний в искусственном интеллекте, представляющий собой схему действий в реальной ситуации. Фрейм — это модель абстрактного образа, минимально возможное описание сущности какого-либо объекта, явления, события, ситуации, процесса.

Фрейм является структурой данных для представления стереотипной ситуации. С каждым фреймом ассоциирована информация разных видов. Одна ее часть указывает, каким образом следует использовать данный фрейм, другая - что предположительно может повлечь за собой его выполнение, третья - что следует предпринять, если эти ожидания не подтвердятся.

Фрейм можно представлять себе в виде сети, состоящей из узлов и связей между ними. "Верхние уровни" фрейма четко определены, поскольку образованы такими понятиями, которые всегда справедливы по отношению к предполагаемой ситуации

Например, объект «комната» можно охарактеризовать следующими свойствами: жилое помещение с четырьмя стенами, полом, потолком, окнами и дверью, площадью 6-20 м2. Из этого описания ничего нельзя убрать (например, убрав окна, получим уже чулан, а не комнату), но в нем есть незаполненные значения некоторых атрибутов — количество окон, цвет стен, высота потолка, покрытие пола и др. Такой абстрактный образ и называется фреймом.

Группы семантически близких друг к другу фреймов могут быть объединены в систему фреймов. Результаты существенных действий представляются в виде трансформаций между фреймами системы. Это дает возможность моделировать такие понятия, как внимание и ценность информации, сделать более экономичными некоторые типы вычислений, а также показать эффективность использования фреймов в системах искусственного интеллекта.

В качестве идентификатора фрейму присваивается имя фрейма. Это имя должно быть единственным во всей фреймовой системе.

Различают фреймы-образцы, или прототипы, хранящиеся в базе знаний, и фреймы-экземпляры, которые создаются для отображения реальных ситуаций на основе поступающих данных.

Можно выделить основные свойства фреймов:

    • Базовый тип (базовый фрейм) – с его помощью запоминаются наиболее важные компоненты исследуемого объекта. На основании базовых фреймов строятся фреймы для новых состояний исследуемого объекта. При этом каждый фрейм содержит слот, оснащенный указателем подструктуры, который позволяет различным фреймам совместно использовать одинаковые части.
    • Процесс сопоставления – в ходе его проверяется правильность выбора фрейма. Вначале в соответствии с текущей целью делается попытка подтверждения релевантности некоторого базового фрейма (в т.ч. с помощью подфреймов), при подтверждении процесс сопоставления завершается. В противном случае для слота, в котором возникла ошибка, делается попытка присваивания надлежащего значения с учетом наложенных слотом ограничений. В случае неуспеха управление передается другому надлежащему фрейму из рассматриваемой системы, затем – соответствующему фрейму из другой фреймовой системы и т.д. пока не произойдет успешного сопоставления. В противном случае для данной фреймовой системы рассматриваемая поисковая задача решения не имеет и требуется либо переформулировать текущую цель, либо пересмотреть содержательную часть фреймовой модели, включая накладываемые слотами ограничения.
    • Иерархическая структура. Ее особенность заключается в том, что информация об атрибутах, которую содержит фрейм верхнего уровня, совместно используется всеми фреймами нижних уровней, связанных с ним.
    • Межфреймовые сети – образуются путем соединения фреймов, описывающих объекты с небольшими различиями, с использованием указателей различия.
    • Значение по умолчанию – под ним понимается значение слота, полученное путем распределения человеком-экспертом конкретных значений между терминальными слотами фрейма. Выводы, получаемые на основании значений по умолчанию, называются выводами по умолчанию. С их помощью можно восполнить недостатки изначально заданной информации. Как правило, когда используется подобный способ вывода, предполагается наличие эффективно действующих межфреймовых сетей и демонов.
    • Отношения “абстрактное-конкретное” и “целое-часть”. Отношения “абстрактное-конкретное” (IS_A) характерны тем, что на верхних уровнях иерархии расположены более абстрактные объекты, а на нижних уровнях – более конкретные объекты, причем объекты нижних уровней наследуют атрибуты объектов верхних уровней. Отношение “целое-часть” (PART_OF) касается структурированных объектов и показывает, что объект нижнего уровня является частью объекта верхнего уровня. В отношениях этого типа нельзя использовать наследование атрибутов.

 

1.2. Понятие терминалов (слотов)

Фрейм состоит из имени и отдельных единиц, называемых терминалами (терминалами).

Уровень терминалов отражает относящуюся к моделируемому объекту конкретную информацию. В каждом слоте задается условие, которое должно выполняться при установлении соответствия между значениями (терминал либо сам устанавливает соответствие, либо обычно это делает более мелкая составляющая фрейма). В одной системе различные фреймы могут иметь общие терминалы. Несколько терминалов одного фрейма обычно заранее определяются значениями по умолчанию, что позволяет представлять информацию общего характера при решении сходных задач. Среди терминалов отдельного фрейма выделяют слоты, определяемые системой и определяемые пользователем. Примерами системных терминалов могут служить: IS_A (указание на фрейм-родитель), слот указателей дочерних фреймов, слоты дат создания и изменения информации фрейма.

Каждым терминалом могут устанавливаться условия, которым должны удовлетворять его задания. Простые условия определяются маркерами, например, в виде требования, чтобы заданием терминала был какой-либо субъект, или предмет подходящих размеров, или указатель на субфрейм определенного типа. (Субфреймы, фреймы и суперфреймы - это иерархически упорядоченные элементы, образующие системы фреймов). Более сложными условиями задаются отношения между понятиями, включенными в различные терминальные вершины.

После выбора фрейма в процессе согласования терминалам присваиваются такие значения, которые удовлетворяют всем условиям соответствующих маркеров. Ход процесса согласования частично контролируется информацией, связанной с самим фреймом (включая указания на то, как реагировать на непредвиденные обстоятельства), и в значительной степени опытом решения аналогичных или близких по смыслу задач. Если согласование внешних данных с маркерами терминалов неудовлетворительное, то сведения, полученные на его основе, могут быть с успехом применены при выборе альтернативного фрейма.

Имя терминала должно быть уникальным в пределах фрейма. Обычно имя терминала представляет собой идентификатор, который наделен определенной семантикой. В качестве имени терминала может выступать произвольный текст. Например, <Имя терминала> = Главный герой романа Ф.М. Достоевского «Идиот», <Значение терминала> = Князь Мышкин. Имена системных терминалов обычно зарезервированы, в различных системах они могут иметь различные значения.

 

1.3. Структура фрейма

Фрейм имеет определенную внутреннюю структуру, состоящую из множества слотов. За слотами следуют шпации, в которые помещают данные, представляющие текущие значения слотов. Каждый слот в свою очередь представляется определенной структурой данных. В значение слота подставляется конкретная информация, относящаяся к объекту, описываемому этим фреймом.

Структуру фрейма можно представить так:

    • ИМЯ ФРЕЙМА:
    • (имя 1-го слота: значение 1-го слота),
    • (имя 2-го слота: значение 2-го слота),
    • - - - -
    • (имя N-го слота: значение N-гo слота).

Ту же запись можно представить в виде таблицы (табл. 1), дополнив несколькими столбцами:

ИМЯ_ФРЕЙМА

Имя слота

Указатель наследования

Тип данных

Значение слота

Демоны

IF-NEEDED

IF-ADDED

IF-REMOVED

             

 

Табл.1

 

Столбцы выполняют следующие роли:

Имя слота должно быть уникальным в пределах фрейма. Обычно имя слота представляет собой идентификатор, который наделен определенной семантикой. В качестве имени слота может выступать произвольный текст. Например, <Имя слота> = Главный герой романа Ф.М. Достоевского «Идиот», <Значение слота> = Князь Мышкин. Имена системных слотов обычно зарезервированы, в различных системах они могут иметь различные значения. Примеры имен системных слотов: IS-A, HASPART, RELATIONS и т.д. Системные слоты служат для редактирования базы знаний и управления выводом во фреймовой системе.

Указатели наследования – с их помощью определяется, какую информацию об атрибутах слотов фрейма верхнего уровня наследуют слоты с такими же именами во фрейме нижнего уровня. Типичные указатели наследования: U (Unique, уникальный) – слот наследуется, но данные в каждом фрейме могут принимать любые значения; S (Same, такой же) – наследование тех же значений данных; R (Range) – значения слотов фрейма нижнего уровня должны находиться в пределах, указанных значениями слотов фрейма верхнего уровня; O – выполняет одновременно функции указателей U и S, при отсутствии указаний работает как S.

Тип данных показывает тип значения слота. Наиболее употребляемые типы: FRAME (указатель на другой фрейм), INTEGER (целый), REAL (действительный), BOOL (булевский), LISP (присоединенная процедура), TEXT (текст), LIST (список), TABLE (таблица), EXPRESSION (выражение).

Значением слота может быть практически что угодно: числа, формулы, тексты на естественном языке или программы, правила вывода или ссылки на другие слоты данного фрейма или других фреймов. В качестве значения слота может выступать набор слотов более низкого уровня, что позволяет реализовывать во фреймовых представлениях «принцип матрешки». Связи между фреймами задаются значениями специального слота с именем «Связь».

Демоном называется процедура, автоматически запускаемая при выполнении некоторого условия. Демоны автоматически запускаются при обращении к соответствующему слоту. Типы демонов связаны с условием запуска процедуры. Демон с условием IF-NEEDED запускается, если в момент обращения к слоту его значение не было установлено. Демон типа IF-ADDED запускается при попытке изменения значения слота. Демон IF-REMOVED запускается при попытке удаления значения слота. Возможны также другие типы демонов. Демон является разновидностью связанной процедуры.

В качестве значения слота может использоваться процедура, называемая служебной в языке Лисп или методом в языках объектно-ориентированного программирования. Присоединенная процедура запускается по сообщению, переданному из другого фрейма. Демоны и присоединенные процедуры являются процедурными знаниями, объединенными вместе с декларативными в единую систему. Эти процедурные знания являются средствами управления выводом во фреймовых системах, причем с их помощью можно реализовать любой механизм вывода. Представление таких знаний и заполнение ими интеллектуальных систем — весьма нелегкое дело, которое требует дополнительных затрат труда и времени разработчиков. Поэтому проектирование фреймовых систем выполняется, как правило, специалистами, имеющими высокий уровень квалификации в области искусственного интеллекта.

 

1.4. Свойства фреймовой сети

Фреймовая модель представления знаний представляет собой семантическую сеть, вершинами которой являются фреймы. Фреймовая структура содержит как информационные, так и процедурные элементы, обеспечивающие преобразование информации внутри фреймов и связи их с другими фреймами. Фреймовая модель является декларативно-процедурной структурой в виде совокупности описаний и связанных с ними процедур, доступ к которым осуществляется прямо из фрейма. Это обеспечивает возможность единообразного представления как декларативных, так и процедурных знаний.

Характерной особенностью фреймовых моделей (структур) является наличие процедур: наследования свойств; внутренней интерпретации; установления связей; введения отношений на слотах и др. Процедура наследования свойств позволяет фреймам заимствовать свойства других фреймов путем использования так называемых указателей наследования, которые показывают, какую информацию об атрибутах слотов во фрейме верхнего уровня наследуют слоты с такими же именами во фрейме нижнего уровня.

Модель фрейма является достаточно универсальной, поскольку позволяет отобразить все многообразие знаний о мире:

через фреймы-структуры, для обозначения объектов и понятий (заем, залог, вексель);

через фреймы-роли (менеджер, кассир, клиент);

Информация о работе Представление знаний в виде фреймов