Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Структура продукционной системы

Рис. 4.6 Сеть фреймов

на фрейм Ребенок. Наследование слота «любит» из фрейма Ребенок.

Запрос 2. Каков возраст учеников?

Ответ: 6-17 – значение слота «возраст» берется из фрейма Ученик. Значение из фрейма Ребенок не берется, т.к. значение указано явно в самом фрейме «ученик», относительно которого задается вопрос.

По функциональному назначению различают следующие виды фреймов:

- фреймы – объекты (пример выше);

- фреймы – операции (например, фрейм «процесс синтеза корректирующих устройств», слоты: модель, алгоритм расчета, параметры и т.д.);

- фреймы – ситуации (например, фрейм «Аварийный режим работы аналогового датчика», слоты: напряжение, сила тока и т.д.);

- фреймы – сценарии (например, фрейм «Тушение пожара», слоты: место пожара, средства тушения и т.д.).

Фреймовая модель представления знаний используется в языках FRL (Frame Representation Language), KRL (Knowledge Representation Language) и др.

4.2.3 Особенности логического вывода

Во фреймовых языках основной операцией является поиск по образцу. Образец представляет собой фрейм, в котором заполнены не все структурные единицы, а только те, по которым среди фреймов, хранящихся в памяти системы, будут отыскиваться нужные фреймы. Образец может, например, содержать имя фрейма, а также имя некоторого слота во фрейме с указанием значения слота. Такой образец проверяет наличие в памяти системы фрейма с данным именем и данным значением слота, указанного в образце. В образце может быть указано имя некоторого слота и его значение. Тогда процедура поиска по образцу должна обеспечить выборку всех фреймов, в которых содержится слот с таким именем и таким значением слота, как у образца. Наконец, может быть задана некоторая логическая функция от имени фрейма, каких-то имен слотов и значений слотов. Таким образом, логический вывод в сети фреймов основан на операции сопоставления.

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

Рассмотрим фрагмент описания из "мира блоков" (рис. 4.7) в виде фреймов на языке FRL.

Рис. 4.7 «Мир блоков»

(frame (name (Cube)) (length (NULL)) (width (IF-DEFAULT (use length))) (height (IF-DEFAULT (use length)))) (f rame (name (B 1)) (AKO (Cube)) (color (red)) (length (80))) (f rame (name (B 2)) (AKO (Cube)) (color (green)) (length (65))))

Слот AKO указывает на то, что объекты B 1 и B 2 являются подтипом объекта Cube и наследуют его свойства, а именно, length = width = height. Процедура - демон IF-DEFAULT заполняет значения слотов по умолчанию.

Допустим, роботу дается приказ «Возьми желтый предмет, который поддерживает пирамиду». На языке представления знаний вопрос записывается так:

(object X (color (yellow)) (hold Y (type (pyramid))))

Программа сопоставления с образцом находит в базе знаний описание объектов:

(frame (name (B 3)) (type (block)) (color (yellow)) (size (20 20 20)) (coordinate (20 50 0)) (hold (P 2)))

и

(frame (name (P 2)) (type (pyramid))...)

Ответ получен: X = B 3, Y = P 2, и роботу выдается команда take (object B 3).

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

 

Лекция 7. Основы построения продукционной системы

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

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

P 1, …, Pm ® Q 1, …, Qn,

что означает: если предпосылки P 1 и … и Pm верны, то выполнить действия Q 1 и … и Qn. Предпосылки часто называют условиями, а действия – заключениями.

Предпосылки правил представляются в форме вектора объектатрибутзначение, например:

(организм-1, (морфология, палочка)(аэробность, аэробный)).

В данном случае предпосылка состоит в том, что определенный микроорганизм имеет форму палочки и размножается в воздушной среде.

В языке CLIPS, основанном на продукционной системе представления знаний, правило имеет следующий формат:

defrule <наименование правила>

<предпосылка1>

<предпосылка m >

=>

<действие1>

<действие n >

Пример правила на языке CLIPS выглядит следующим образом:

defrule diagnosis

(organism (name? org) (morfhology rod)(aerobicity aerobic))

=>

(assert

(organism

(name? org)

(identify enterobacteria)

(confidence 0.8)))

С помощью префикса? в правиле задаются переменные.

Перечень предпосылок в правиле представляет собой образец вектора, которому должно соответствовать состояние рабочей памяти. Действия, такие как (assert) в приведенном выше примере, задают изменения, которые должны быть внесены в состояние рабочей памяти. Например, указанное в приведенном выше правиле действие добавит в рабочую память новый вектор

(organism (name? org) (identify enterobacteria) (confidence 0.8)).

Таким образом, правило diagnosis означает следующее: если некоторый микроорганизм имеет перечисленные в правиле свойства, то с определенной степенью уверенности этот микроорганизм можно отнести к указанному классу.

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

<== предыдущая лекция | следующая лекция ==>
 | Лекция 8. Локальный и глобальный подходы к управлению системой продукций
Поделиться с друзьями:


Дата добавления: 2013-12-11; Просмотров: 676; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.