Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

СТРУКТУРЫ ДАННЫХ ФРЕЙМА




Фрейм, как показано на рис. 3.12, представлен определенной структурой данных. Фреймовая система — это иерархическая структура, узлами которой являются подобные фреймы. Значение каждого элемента, показанного на рис. 3.12, рассмотрено ниже.

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

2)Имя слота. Это идентификатор, присваиваемый слоту; слот должен иметь уникальное имя во фрейме, к которому он принадлежит. Обычно имя слотане несет никакой смысловой нагрузки и является лишь идентификатором данного слота, но в некоторых случаях оно может иметь специфический смысл. К таким именам помимо IS-A (отношение IS-A), DDESEN-DANTS (указатель прямого дочернего фрейма), FI-NEDBY (пользователь, определяющий фрейм), DEFI- NEDON (дата определения фрейма), MODIFIEDON (дата модификации фрейма), COMMENT (комментарий) и т. п. относятся имена, используемые для представления структурированных объектов, например HASPART, RELATIONS и другие. Эти слоты называются системными и используются при редактировании базы знаний к управлении выводом. 3) Указатели наследования. Эти указатели, касаются только фреймовых систем иерархического типа, основанных на отношениях «абстрактное - конкретное», они показывают, какую информацию об атрибутах слотов во фрейме верхнего уровня наследуют слоты с такими же именами во фрейме нижнего уровня. Типичные указатели наследования Unique (U : уникальный), Same (S : такой же), Range (R : установление границ), Override (О : игнорировать) и т. п. U показывает, что каждый фрейм может иметь слоты с раз-личными значениями: S - что все слоты должны иметь одинаковые значения, R- значения слотов фрейма нижнего уровня должны находиться в пределах, указанных значениями слотов фрейма верхнего уровня, О- при отсутствии указания значение слота фрейма верхнего уровня становится значением слота фрейма нижнего уровня, но в случае определения нового значения, значения слотов фреймов нижних уровней указываются в качестве значений слотов. О выполняет одновременно функции указателей U и S. Несмотря на то что в большинстве систем допускается несколько вариантов указания наследования, существует немало и таких, где допускается только один вариант. В данном случае можно считать, что используется указатель О значения по умолчанию. На рис. 3.13. показаны три варианта указания наследования и приведены значения, выдаваемые при запросе значений слотов соответствующих фреймов.

Имя фрейма

 

Указатель Демон

Имя фрейма наследования

 

 


 

Имя слота Значение слота

Указатель атрибутов Имя,

Слота (Текст,численное значение, значение,

Присоединенная процедура, процедура,

указатель и т.д.) указатель

и т.д.

 

Рис. 3.12. Структура данных фрейма

 

 

4) Указание типа данных. Указывается, что слот имеет численное значение, либо служит указателем другого фрейма (т.е. показывает имя фрейма). К ти­пам данных относятся FRAME (указатель), INTEGER ( целый), REAL (действительный), BOOL (булев), LISP (присоединенная процедура), TEXT (текст),


 

 

Уникальный Установление Игнорирование

границ

Человек Человек Человек


Нуль 10-100 20

 

Ребенок Ребенок Ребенок

 

25 10-40 30

 

 

Таро Таро Таро

 

32 32 30

 

Ответ на сообщение

 

Рис.3.13. Указатели наследования и ответ на обращение к значению слота

 

LIST (список), TABLE (таблица), EXPRESSION (выражение) и другие.

5) Значение слота. Пункт ввода значения слота. Значение слота должно совпадать с указанным типом данных этого слота, кроме того, должно выполняться условие наследования.

6) Демон. Здесь дается определение демонов типа IF-NEEDED, IP-ADDED, IF-REMOVED и т. д. Демоном называется процедура, автоматически запускаемая при выполнении некоторого условия. Демоны запускаются при обращении к соответствующему слоту.
Например, демон IF-NEEDED запускается, если в момент обращения к слоту его значение не было установлено, IF-ADDED запускается при подстановке в слот значения, IF-REMOVED запускается при стирании значения слота. Кроме того, демон является разновидностью присоединенной процедуры.

7) Присоединенная процедура. В качестве значения слота можно использовать программу процедурного типа, называемую служебной (servant) (в языке Лисп) или методом (в языке Смолток). В данном случае присоединенная процедура запускается по сообщению, переданному из другого фрейма (поскольку состояние выполнения в этом случае такое же, как и в объектно-ориентированном языке, то язык фреймового типа называют еще объектно-ориентированным языком, однако во избежание путаницы с языком типа Смолток, обычно выделяют название «язык фреймового типа»). Когда мы говорим, что в моделях представления знаний фреймами объединяются процедурные и декларативные знания, то считаем демоны И присоединенные процедуры процедурными знаниями. Кроме того, в языке представления знаний фреймами отсутствует специальный механизм управления выводом, поэтому пользователь должен реализовать данный механизм с помощью присоединенной процедуры. Однако данный язык обладает очень высокой универсальностью, что позволяет помимо иерархического и сетевого представления знаний с помощью фреймовой системы эффективно писать любую программу управления выводом с помощью присоединенной процедуры. В то же время это дополнительная нагрузка для пользователя. Следовательно, язык представления знаний фреймами можно назвать языком, ориентированным на специалистов по искусственному интеллекту, а также языком, ориентированным на сложные прикладные проблемы. Известны также примеры систем, допускающих применение правил продукций в качестве типа данных. Это обусловлено, с одной стороны, тем, что большинство систем, ориентированных на решение сложных проблем, содержит в качестве составляющей продукционную систему, а с другой стороны - снижением нагрузки на пользователя. Кроме того, известны примеры систем типа ZERO, допускающие применение функций Пролога в качестве присоединенной процедуры.

 


Поможем в написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой





Дата добавления: 2015-10-19; просмотров: 829. Нарушение авторских прав; Мы поможем в написании вашей работы!

Studopedia.info - Студопедия - 2014-2022 год . (0.018 сек.) русская версия | украинская версия
Поможем в написании
> Курсовые, контрольные, дипломные и другие работы со скидкой до 25%
3 569 лучших специалисов, готовы оказать помощь 24/7