Пт. Апр 5th, 2024

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

Эта теория имеет весьма абстрактный характер, поэтому только на ее основе невозможно создание конкретных языков представления знаний.

Фреймом называется структура данных для представления не­которого концептуального объекта.

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

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

Такая система имеет, как правило, иерархическую структуру, в которой фреймы соединены друг с другом с помощью родо-видовых связей. На верхнем уровне ие­рархии находится фрейм, содержащий наиболее общую инфор­мацию, истинную для всех остальных фреймов. Фреймы облада­ют способностью наследовать значения характеристик своих ро­дителей. Например, фрейм АФРИКАНСКИЙ_СЛОН наследует от фрейма СЛОН значение характеристики цвет=«серый». Значе­ние характеристики в дочернем фрейме может отличаться от ро­дительского, например, значением данного слота для фрейма АЗИАТСКИЙ_СЛОН является цвет=«коричневый».

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

Фреймовые системы подразделяются на статические и дина­мические, последние допускают изменение фреймов в процессе решения задачи.

Пример фрейма РУКОВОДИТЕЛЬ Имя слота Значение слота

Тип значения слота

  • Имя
  • Рожден
  • Возраст
  • Специальность
  • Отдел
  • Зарплата
  • Адрес
  • Иванов И. И.
  • 01.01.1965
  • age(дama, рожден)
  • Юрист
  • Отдел кадров
  • 80000
  • ДОМ_АДРЕС
  • Строка символов
  • Дата
  • Процедура
  • Строка символов
  • Строка символов
  • Число
  • Фрейм

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

Имя фрейма. Оно служит для идентификации фрейма в систе­ме и должно быть уникальным. Фрейм представляет собой сово­купность слотов, число которых может быть произвольным. Чис­ло слотов в каждом фрейме устанавливается проектировщиком системы, при этом часть слотов определяется самой системой для выполнения специфических функций (системные слоты), при­мерами которых являются: слот-указатель родителя данного фрейма (IS-A), слот-указатель дочерних фреймов, слот для ввода имени пользователя, слот для ввода даты определения фрейма, слот для ввода даты изменения фрейма и т.д.

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

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

  • U (Unique) — значение слота не наследуется;
  • S (Same) — значение слота наследуется;
  • R (Range) — значения слота должны находиться в пределах интервала значений, указанных в одноименном слоте родитель­ского фрейма;
  • О (Override) — при отсутствии значения в текущем слоте оно наследуется из фрейма верхнего уровня, однако в случае опреде­ления значения текущего слота оно может быть уникальным. Этот тип указателя выполняет одновременно функции указате­лей U и S.

Указатель типа данных. Он показывает тип значения слота. Наиболее употребляемые типы: frame — указатель на фрейм; real — вещественное число; integer — целое число; boolean — логичес­кий тип; text — фрагмент текста; list — список; table — таблица; expression — выражение; lisp — связанная процедура и т.д.

Значение слота. Оно должно соответствовать указанному типу данных и условию наследования.

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

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

Пример сети фреймов приведен на рисунке. На нем поня­тие УЧЕНИК наследует свойства фреймов РЕБЕНОК и ЧЕЛО­ВЕК, которые находятся на более высоких уровнях иерархии. Ес­ли будет задан вопрос «Любят ли ученики сладкое?», то следует ответ «да», так как этим свойством обладают все дети, что указа­но во фрейме РЕБЕНОК. Наследование свойств может быть час­тичным, например «возраст» для учеников не наследуется из фрейма «ребенок», так как явно указан в собственном фрейме.

В последние годы термин «фреймовый» часто заменяют тер­мином «объектно-ориентированный». Шаблон фрейма можно рассматривать как класс, экземпляр фрейма — как объект. Языки объектно-ориентированного программирования (ООП) предо­ставляют средства создания классов и объектов, а также средства для описания процедур обработки объектов (методы). Языки ООП, не содержащие средств реализации присоединенных про­цедур, не позволяют организовать гибкий механизм логического вывода, поэтому разработанные на них программы либо пред­ставляют собой объектно-ориентированные базы данных, либо требуют интеграции с другими средствами обработки знаний (например, с языком PROLOG).

Существуют также специализированные языки представле­ния знаний на основе фреймовой модели, примерами которых являются: FRL (Frame Representation Language), KRL (Knowledge Representation Language), фреймовая «оболочка» Kappa и др. Из­вестны также экспертные системы фреймового типа- ANALYST TRISTAN, ALTERID, МОДИС.

Ads Blocker Image Powered by Code Help Pro

Обнаружен блокировщик рекламы! Пожалуйста, обратите внимание на эту информацию.

We\'ve detected that you are using AdBlock or some other adblocking software which is preventing the page from fully loading.

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

Пожалуйста, добавьте tehnar.info к вашему белому списку блокирования объявлений или отключите программное обеспечение, блокирующее рекламу.

Powered By
100% Free SEO Tools - Tool Kits PRO