Помощь в учёбе, очень быстро...
Работаем вместе до победы

Системы на сетях фреймов

РефератПомощь в написанииУзнать стоимостьмоей работы

Слот указателей дочерних фреймов (содержит список указателей на них); слот для ввода имени пользователя, даты определения, изменения, текста комментария; другие слоты (HAS-PART и др.). Применение систем на сетях фреймов разнообразно. Наиболее часто такие системы строятся для целей диагностики, управления, проектирования, построения онтологий. Range (R — установленные границы) — значение слота… Читать ещё >

Системы на сетях фреймов (реферат, курсовая, диплом, контрольная)

Системы на сетях фреймов основаны на объектном подходе с процедурными знаниями внутри объектов. Заметим, что сети фреймов развиваются с 1975 г. М. Минским как один из способов описания сцен и повседневной речи [11, 12].

Системы на сетях фреймов строятся, как правило, с использованием специальных языков представления знаний (например, FMS — Frame Representation Language).

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

Языки описания фреймов, как правило, являются расширениями языка Lisp и представляют собой фреймовую систему, включающую средства написания и редактирования фреймов, интерпретатор (фрейм-процессор), библиотеку присоединенных процедур и пр. Пример фреймовой системы FMS [12] представлен на рис. 8.4.

Фреймовая система FMS.

Рис. 8.4. Фреймовая система FMS.

Фрейм имеет структуру, показанную на рис. 8.5. Он состоит из N слотов, в том числе: слот IS-А, который указывает на корневой фрейм системы.

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

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

Рис. 8.5. Структура фрейма.

Рассмотрим содержание полей фрейма подробнее.

  • 1. Имя фрейма. Идентификатор, присваиваемый фрейму (уникален в системе).
  • 2. Имя слота. Идентификатор, присваиваемый слоту (уникален во фрейме).

Специфические имена:

  • • IS-A — слот наследования (подчиненности);
  • • DDESENDANTS — слот указателя дочернего фрейма;
  • • FINEDBY — слот пользователя, определяющий фрейм;
  • • DEFINDON — слот идентификации (дата определения, модификации и пр.);
  • • COMMENT — слот комментариев;
  • • RELATIONS — слот отношений для представления структуры фреймов.
  • 3. Указатели наследования. Используются для фреймовых систем иерархического типа, основанных на отношениях АКО (абстрактное — конкретное). Показывают, какую информацию об атрибутах во фрейме верхнего уровня наследуют слоты с такими же именами: IS-А (есть), KIND-OF (разновидность), PART-OF (часть от), HAS-PART (имеет частью).

Типовые указатели наследования:

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

Могут использоваться некоторые типовые указатели:

  • • FRAME — указатель фрейма;
  • • АТОМ — элемент списка;
  • • INTEGER, REAL, BOOL — тип данных (целые, действительные, булевы);
  • • LIST, TABLE, EXPESSION — список, таблица, выражение;
  • • TEXT — текст комментариев;
  • • LISP — присоединенная процедура (PROC).
  • 5. Значение слота. Вводит значение слота (оно должно совпадать с указанным типом данных этого слота).
  • 6. Демон. Процедура, автоматически запускаемая при выполнении некоторого условия при обращении к некоторому слоту.

Типы демонов:

  • • IF-NEDDED (если нужно) — запускается, если при обращении его значение не было установлено;
  • • IF-ADDED (если добавлено) — запускается при подстановке в слот значения;
  • • IF-REMOVED (если убрано) — запускается при стирании значения слота.

Демон является разновидностью присоединенных процедур.

7. Присоединенная процедура. Служебная процедура на языке Lisp или метод на языке Smalltalk (запускается по сообщению, переданному из другого фрейма).

Присоединение процедуры — основное средство управления выводом. Однако написание процедур накладывает дополнительную нагрузку на пользователя.

На рис. 8.6 в качестве примера представлен фрейм АУДИТОРИЯ, описывающий учебную аудиторию. Он является корневым в сети фреймов, описывающих компоненты аудитории (потолок, пол, стены). Для определения того, кто и при каком состоянии использует аудиторию, введены две присоединенные процедуры по типу демонов: «Кто?» и «Ремонт».

Процедуры запускаются автоматически при подстановке в слот значения «аудитория». Значение заносится заранее путем передачи сообщения, и, если оно занесено, процедура инициализируется и работает при обращении к фрейму.

Процедура «Кто?» позволяет занять аудиторию другому лектору, если лектор, который должен занять ее по расписанию, отсутствует.

Процедура «Ремонт» запрещает использование аудитории для занятий, если имеет место ремонт потолка, из соображений безопасности. Такие процедуры также должны обеспечить информацию диспетчеру аудиторного фонда, которая позволила бы ему знать о состоянии аудиторий. Он может действовать при распределении фонда в соответствии с подсказками, которые также могут формировать такие процедуры.

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

Фрейм «Аудитория».

Рис. 8.6. Фрейм «Аудитория».

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

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

Показать весь текст
Заполнить форму текущей работой