Продукционные системы
Продукционные системы - это системы представления знаний, основанные на правилах типа
"УСЛОВИЕ-ДЕЙСТВИЕ".
Записываются эти правила обычно в виде
ЕСЛИ А1,A2...An ТО В.
Такая запись означает, что "если выполняются все условия от А1 до Аn (являются истинными), тогда следует выполнить действие В". Часть правила после ЕСЛИ называется посылкой, а часть правила после ТО - выводом, или действием, или заключением.
Условия А1,А2...Аn обычно называют фактами. С помощью фактов описывается текущее состояние предметной области. Факты могут быть истинными, ложными либо, в общем случае, правдоподобными, когда истинность факта допускается с некоторой степенью уверенности.
Действие В трактуется как добавление нового факта в описание текущего состояния предметной области.
В упрощенном варианте описание ПО с помощью правил (продукций) базируется на следующих основных предположениях об устройстве предметной области. ПО может быть описана в виде множества фактов и множества правил.
Факты - это истинные высказывания (в естественном языке - это повествовательные предложения) об объектах или явлениях предметной области.
Правила описывают причинно-следственные связи между фактами (в общем случае и между правилами тоже) - как истинность одних фактов влияет на истинность других. Такое представление предметной области является во многих случаях достаточным, а вот соответствует ли оно действительному положению вещей, зависит от точки зрения наблюдателя.
Описание ПО нетрудно ввести в ЭВМ - для этого достаточно снабдить его соответствующими средствами для хранения множества фактов, например, в виде базы фактов, для хранения правил, например, в базе правил, и построить интерпретатор базы правил, который по описанию текущего состояния ПО в виде предъявленных ему фактов осуществляет поиск выводимых из фактов заключений.
295
На этой идее и построены системы продукций. Типичная структура системы, основанной па правилах, приведена на рис. 23.2.
Рис. 23.2.
Структура продукционной системы
В продукционных системах используются два основных способа реализации механизма вывода:
1) прямой вывод, или вывод от данных;
2) обратный вывод, или вывод от цели.
В первом случае идут от известных данных (фактов) и на каждом шаге вывода к этим фактам применяют все возможные правила, которые порождают новые факты, и так до тех пор, пока не будет порожден факт-цель.
Для применения правила используется процесс сопоставления известных фактов с правилами и, если факты согласуются с посылками в правиле, то правило применяется.
Во втором случае вывод идет в обратном направлении - от поставленной цели. Если цель согласуется с заключением правила, то посылку правила принимают за подцель или гипотезу, и этот процесс повторяется до тех пор, пока не будет получено совпадение подцели с известными фактами.
Рабочая память представляет собой информационную структуру для хранения текущего состояния предметной области. Обмен информацией в продукционной системе осуществляется через рабочую память. К примеру, из одного правила нельзя переслать какие-либо данные непосредственно в другое правило, минуя рабочую память. Состояние рабочей памяти целиком определяет подмножество применимых на каждом шаге вывода правил.
Например, возможная формулировка правил продукций в экспертной системе диагностики автомобиля имеет следующий вид:
Если(горит_лампа_датчика_давления_масла
и уровень_масла_норма
и обороты_двигателя_норма
и масляный фильтр_не_засорен)
То (проверить масляный насос)
Приведенное правило позволяет принять решение по ремонту системы смазки автомобиля.
296
Достоинством применения правил продукций является их модульность. Это позволяет легко добавлять и удалять знания в базе знаний. Можно изменять любую из продукций, не затрагивая содержимого других продукций.
Недостатки продукционных систем проявляются при большом числе правил и связаны с возникновением непредсказуемых побочных эффектов при изменении старых и добавлении новых правил.Кроме того, отмечают также низкую эффективность обработки систем продукций и отсутствие гибкости в логическом выводе.
Содержание раздела