Термин фрейм (от англ. frame – рамка, каркас) был предложен Маренном Минским в 70-е годы для обозначения структуры знаний для восприятия пространственных сцен.
Фрейм — это абстрактная модель для представления какой-либо сцены. Модель на основе фреймов легко программировать, использую объектную технологию. Основная сложность использования этой модели заключается в разработке алгоритмов поиска на множестве фреймов.
Пример 2.2.
Фрейм «комната» описывает шаблон помещения с четырьмя стенами, полом, потолком, окнами и дверью некоторой площадью. Конкретные значения их не определены.
Каждый составляющий – это слот. Слот представляет собой незаполненное значение некоторого атрибута.
Различают несколько типов фреймов:
ü фреймы-образы;
ü фреймы-структуры (заем, залог, вексель);
ü фреймы-роли (менеджер, кассир, клиент);
ü фреймы-сценарии (банкротство, собрание акционеров, празднование именин);
ü фреймы-ситуации (тревога, авария, рабочий режим устройства) и др.
Традиционно структура фрейма может быть представлена как список свойств:
Имя фрейма:
роль 1 (слот 1);
роль 2 (слот 2);
…
роль k (слот k);
Здесь:
Имя слота:
(признак 1, значение 1),
(признак 2, значение 2),
…
(признак N, значение N).
Связь
В данном случае связь определяет отношение между фреймами.
Существует несколько способов получения знаний слотами фреймов:
1) По умолчанию от фрейма-образа. 2) Через наследование свойств от фрейма, указанного в слоте АКО (АКО = A-Kind-Of). 3) Путем вычисления значения по формуле, указанной напрямую в слоте. 4) Через присоединенную процедуру. 5) Из диалога с пользователем.
Важнейшим свойством теории фреймов является наследование свойств по АКО-связям. Слот АКО при этом указывает на фрейм более высокого уровня иерархии, от которого наследуются значения одноименных слотов.
Пример 2.3.
1) Человек:
АКО = млекопитающее;
Умеет = мыслить.
2) Ребенок:
АКО = человек;
Возраст = 0 – 16 лет;
Рост = 50 – 180 см;
Любит = сладкое.
3) Ученик:
АКО = ребенок;
Учится = в школе, в ПТУ;
Возраст = 7 – 17 лет.
В данной сети фреймов на вопрос: «Любят ли ученики сладкое?» - получает ответ «Да».
Для фреймовой модели разработаны специальные языки программирования, наиболее известные из которых FRL и KRL. На их основе построены такие экспертные системы, как ANALYST, TRISTAN.






