top of page

Модель фрейма

Термин фрейма

 (англ. frame – каркас, рамка) был предложен в 1975 г. Марвином Минским, одним из пионеров искусственного интеллекта, для обозначения структуры знаний при восприятии пространственных сцен.

Фрейм — это модель (абстракция1, минимально возможное описание) реальной или воображаемой сущности (объекта, события, ситуации, явления, процесса и т.д.). Определение фрейма, данное М. Минским: «Фрейм – это единица представления знаний, запомненная в прошлом, детали которой при необходимости могут быть изменены согласно текущей ситуации».

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

Различают:

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

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

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

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

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

- фреймы-сценарии (банкротство, собрание акционеров, празднование именин);

- фреймы-ситуации (тревога, авария, штатный режим работы устройства) и др.

В общем случае фрейм задается следующими параметрами:

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

2. Имя слота. Представляет собой идентификатор атрибута сущности, который наделен определенной семантикой. Должно быть уникальным в пределах фрейма. В качестве имени слота может выступать произвольный текст (например, «Количество студентов в группе», «Возраст») или зарезервированное обозначение. Примеры имен системных слотов (зарезервированных обозначений): IS-A (это), PART-OF (является частью), RELATIONS (относиться к) и т.д. Системные слоты служат для редактирования БЗ и управления выводом во фреймовой системе.

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

- по умолчанию (англ. default) от фрейма-образца;

- через наследование от родительского фрейма, указанного в слоте IS-A (AKO);

- по умолчанию или через наследование, но в случае необходимости значение слота может быть изменено (англ. override - заменить)

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

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

- по формуле, указанной в слоте;

- по формуле, указанной в слоте;

- через демон;

- явно из диалога с пользователем и т.п.

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

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

6. Демон. Демоном называется присоединенная процедура, автоматически запускаемая при выполнении некоторого условия. Демон с условием IF-NEEDED (англ. needed – нужно, необходимо) запускается, если в момент обращения к слоту его значение не было установлено. Демон типа IF-ADDED (англ. added – добавлять) запускается при попытке создания фрейма-экземпляра. Демон IF-REMOVED (англ. removed – удалять) или IF-DELETED (англ. deleted – удалять) запускается при попытке удаления значения слота. Возможны также другие типы демонов.

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

Обман или неожиданность (переделанная).j
bottom of page