Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по СИИ.doc
Скачиваний:
104
Добавлен:
02.05.2014
Размер:
3.54 Mб
Скачать

1.1.4 Фреймовая модель знаний

Фреймовая модель знаний предложена Марвином Минским. Минский также ввел терминологию и язык фреймов. Эта терминология включает такие понятия как "фреймы", "слоты", "терминалы", "значения по умолчанию". Фрейм определяется как структура следующего вида:

{<имя-фрейма> <имя слота1> <значение слота>1, ...,

<имя слотаn> <значение слота>n}

Так, определим фрейм для объекта "книга":

{<КНИГА>

<АВТОР> <ДюмаА.>

<НАЗВАНИЕ> <Граф Мосте Кристо>

<ЖАНР> <Роман>}

Мы видим, что слоты соответствуют атрибутам (характеристикам, свойствам) объекта. Если значения слотов не определены, то фрейм называется фреймом-прототипом. Заменяя неизвестное значение звездоч­кой ("*") будем иметь следующий фрейм-прототип:

{<КНИГА>

<АВТОР> <*>

<НАЗВАНИЕ> <*>

<ЖАНР> <*>}

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

Фрейм может быть декларативного, процедурного и процедурно-декларативного типа. В фреймах процедурного типа процедуры привя­зываются к слоту путем указания последовательности выполняемых операций. Различают два вида процедур: процедуры-"демоны" и процедуры-"слуги".

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

Процедура-слуга запускается по внешнему запросу, а также ис­пользуется для задания по умолчанию значений слотам, если они не оп­ределены.

Таблица 1.2.

слоты

факты

процедуры

внутренние

внешние

Структура фрейма, содержащего процедуры, приведены в табл.1.2.

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

Примеры систем, работающих с фреймами, это KRL, FRL, GUS, OWL [20, 21] и др.

Развитием концепции фреймовых моделей являются сценарии и ленемы.

Понятие сценариявведено Р. Шенком и Р. Абельсоном.Сценарий- это фреймоподобная структура, в которой определены такие специаль­ные слоты как сценарий, цель, сцена, роль. Следующий пример сцена­рия взят из:

< сценарий : ресторан

роли: посетитель, официант, кассир

цель: принятие пищи, чтобы насытиться и получить удовольствие

сцена 1: вход в ресторан

войти в ресторан

осмотреть места

выбрать свободное место

пройти к свободному столику

сесть

сцена 2: заказ

взять меню

прочитать меню

решить, что заказать

заказ меню официанту

сцена 3: прием пищи

получение пищи

съедение пищи

сцена 4: уход

просьба рассчитать

получение чека

движение к кассиру

передача денег кассиру

выход из ресторана >

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

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