Разработка продукционной модели представления знаний в ИС - ABCD42.RU

Разработка продукционной модели представления знаний в ИС

Разработка продукционной модели представления знаний в ИС

4. ПРОДУКЦИОННАЯ МОДЕЛЬ ПРЕДСТАВЛЕНИЯ ЗНАНИЙ

4.1. Представление знаний продукциями

Термин «продукция» принадлежит американскому логику Эмилю Леону Посту [17]. В понимании Поста в качестве продукции выступала только та ее часть, которая сейчас называется ядром (А → В, ЕСЛИ А ТО В).

В общем виде под продукцией понимается выражение следующего вида:

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

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

Основным элементом продукции является ее ядро: А → В. Интерпретация ядра продукции может быть различной и зависит от того, что стоит слева и справа от знака импликации → (⇒). Обычное прочтение ядра продукции выглядит так: ЕСЛИ A ТО B. Более сложные конструкции ядра допускают в правой части альтернативный выбор, например, ЕСЛИ А ТО B1, ИНАЧЕ B2. Основание импликации (условие, А) называется антецедентом, следствие (действие, В) – консенквентом.

Таблица истинности для импликации выглядит следующим образом.

Таблица истинности для импликации

А В А → В
И И И
И Л Л
Л И И
Л Л И

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

Р есть условие применимости ядра продукции. Обычно Р представляет собой логическое выражение. Когда Р принимает значение «истина», ядро продукции активизируется. Если Р ложно, то ядро продукции не может быть использовано. Например, если в продукции «НАЛИЧИЕ ДЕНЕГ; ЕСЛИ ХОЧЕШЬ КУПИТЬ ВЕЩЬ X, ТО ЗАПЛАТИ В КАССУ ЕЕ СТОИМОСТЬ И ОТДАЙ ЧЕК ПРОДАВЦУ» условие применимости ядра продукции ложно, т.е. денег нет, то применить ядро продукции невозможно.

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

Если в памяти системы хранится некоторый набор продукций, то они образуют систему продукций. В системе продукций должны быть заданы специальные процедуры управления продукциями, с помощью которых происходит их актуализация и выбор для выполнения той или иной продукции из числа актуализированных.

Наибольшее распространение продукционные системы нашли при создании экспертных систем.

4.2. Вывод в продукционных системах

Существуют два типа выполнения систем продукций: прямой и обратный [17, 19].

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

Обратный вывод называется также выводом, управляемым целями, или восходящим. В таких системах выдвигается некоторая гипотеза В, а затем идет поиск промежуточных фактов A’, подтверждающих эту гипотезу. После этого в рабочую память заносятся промежуточные факты А’, которые в дальнейшем выступают как промежуточные гипотезы (заключения) В’. Если принятая гипотеза В приводит к известным фактам А, то она считается итоговым заключением.

Существуют также системы с двунаправленными выводами.

Прямой вывод рекомендуется использовать в следующих случаях [23]:

— все или большинство исходных данных заданы в постановке задачи (например, в экспертной системе PROSPECTOR);

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

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

Обратный вывод рекомендуется использовать в следующих случаях:

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

— имеется большое количество правил, которые на основе полученных фактов продуцируют всевозрастающее число заключений и целей. Своевременный отбор целей позволяет отсеять множество возможных ветвей, что делает процесс поиска более эффективным;

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

4.3. Системы активизации продукций

При выполнении условия применимости одновременно для нескольких продукции возникает дилемма выбора продукции или их группы (в случае возможности параллельной обработки), которая в данной ситуации будет активизирована в целях наискорейшего достижения поставленной цели. Решение этой задачи возлагается на систему активизации продукций [17, 19].

Приведем несколько стратегий управления выполнением продукций.

1. Принцип «стопки книг». Основан на идее, что наиболее часто используемая продукция является наиболее полезной. Готовые продукции как бы образуют «стопку», в которой порядок определяется накопленной частотой использования продукций в прошлом. На самом верху «стопки» находится продукция, которая использовалась чаще всех. Из некоторого набора продукций с истинными условиями для исполнения выбирается та продукция или продукции, у которых частота использования максимальна. Подобный принцип управления особенно хорош, когда частота исполнения подсчитывается с учетом некоторой ситуации, в которой ранее применялась продукция, и это имело положительную оценку. При такой обратной связи метод стопки книг может превратиться в обучающуюся процедуру, адаптирующуюся к тем задачам, которые возникают во внешней среде. Управление по принципу стопки книг целесообразно применять, если продукции относительно независимы друг от друга.

2. Поиск в глубину. При поиске решения в качестве очередной подцели выбирается та, которая соответствует следующему, более детальному уровню описания задачи. Например, диагностирующая система, сделав на основе известных симптомов предположение о наличии определенного заболевания, будет продолжать запрашивать уточняющие признаки и симптомы этой болезни до тех пор, пока полностью докажет или опровергнет выдвинутую гипотезу.

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

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

Читайте также  Терапия (пороки сердца)

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

ЕСЛИ «погода теплая» И «идет снег»
ТО продукции, у которых в А имеется «отдых на улице», следует активизировать раньше, чем продукции, содержащие в A «отдых в помещении»

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

6. Принцип декомпозиции (разбиения задачи на подзадачи). Подразумевает разбиение набора продукций на сферы применения.

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

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

Например, пусть система продукций представлена четырьмя простейшими продукциями:

(а) А → В;
(б) B ∧ D → A;
(в) A ∨ B → C;
(г) А ∧ D → С.

Если выполняется А, то в набор активируемых продукций включает продукции с именами (а) и (в), а если выполняются B и D, то продукции с именами (б) и (в). Для устранения подобной недетерминированности может быть введена некоторая грамматика для имен продукций: (а) → (в); (б) → (в); (б) → (г). Тогда, если в некоторый момент была выполнена продукция с именем (в) или (г), то новые продукции выполняться не будут (т.к. применение новых продукций не приведет к истинности новых фактов). Если же в некоторый момент выполнилась продукция с именем (а), то после следует выполнить продукцию с именем (в) (т.к. применение продукции (б) не приведет к истинности новых фактов, а применение продукции (г) в лучшем случае дублирует результат продукции (в)).

4.4. Достоинства и недостатки продукционной модели знаний

Достоинства продукционной модели знаний [17, 4, 2].

1. Подавляющая часть человеческих знаний может быть записана в виде продукций.

2. Простота создания и понимания отдельных правил.

3. Простота пополнения и модификации базы знаний (набора продукций).

4. Простота механизма логического вывода.

5. Разбиение системы продукций на сферы (декомпозиция) позволяет эффективно использовать ресурсы и сократить время поиска решения.

6. Возможность реализации немонотонного логического вывода и обработки противоречивых фактов.

7. Возможность параллельной и асинхронной обработки правил.

Недостатки продукционной модели знаний.

1. Отсутствует теоретическое обоснование в построении продукционных систем. В основном при их построении используются эвристические приемы.

2. Следствие из недостатка 1. При большом числе продукций процедура проверки непротиворечивости правил и корректности работы системы становится крайне сложной. Именно поэтому число продукций, с которыми работают реальные информационные системы, не превышает тысячи.

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

Разработка продукционной модели представления знаний в ИС

Представление знаний правилами продукций и логический вывод

  • Задача
  • Описание процесса решения
  • Решение
  • Полученный мною опыт

Построить продукционную модель представления знаний в предметной области «Компьютерные сети» (организация).

Описание процесса решения

Для построения продукционной модели представления знаний необходимо выполнить следующие шаги:

  1. Определить целевые действия задачи (являющиеся решениями);
  2. Определить промежуточные действия или цепочку действий, между начальным состоянием и конечным (между тем, что имеется, и целевым действием);
  3. Опередить условия для каждого действия, при котором его целесообразно и возможно выполнить. Определить порядок выполнения действий;
  4. Добавить конкретики при необходимости, исходя из поставленной задачи;
  5. Преобразовать полученный порядок действий и соответствующие им условия в продукции;
  6. Для проверки правильности построения продукций записать цепочки продукций, явно проследив связи между ними;

Этот набор шагов предполагает движение при построении продукционной модели от результата к начальному состоянию, но возможно и движение от начального состояния к результату (шаги 1 и 2).

1) Дмитрий имеет несколько компьютеров и хочет их соединить компьютерной сетью. Обязательное действие, выполняемое при организации сети – субъект может проложить сеть и после субъект может передать файл между компьютерами. Значит, есть уже два целевых действия «организовать сеть между компьютерами» и «передать файл», которые взаимосвязаны и следуют друг за другом.

2) Прежде чем соединить компьютеры локальной сетью, нужны компьютеры и достаточно кабеля. Кроме того, нужно выбрать, на какую именно топологию сети выбрать, чтобы проложить сеть. Значит, цепочка промежуточных действий: «выбор топологии», «передать файл между компьютерами».

3) Прежде чем прокладывать сеть между компьютерами, необходимо убедиться, что есть необходимое количество кабеля. Выбор топологии сети может обуславливаться многими причинами, выберем организационный признак – самый дешевый и надежный. Для разных топологий требуются разные дополнительные оборудования, поэтому в зависимости от выбора топологии, оборудования будут различаться. Кроме того, разные топологии отличаются ценой оборудования и надежностью самой сети, поэтому данные топологии будет отличаться. Значит вначале идут действия, позволяющие выбрать топологию, затем характеризующие топологию, а уже потом передача файла.

4) Пусть в задаче будут рассматриваться три топологии: «Шина», «Звезда» и «Кольцо». Первая – проще в организации и самый дешевый вариант, но не самый надежный. Вторая – надежнее чем первый, но дороже. Третий – «золотая середина» между первым и вторым. Надежнее, чем первый, и дешевле, чем второй. Для «Шина» требуется больше кабеля, для «Звезды» нужен центральный узел, а для «Кольца» потребуются сетевые контроллеры

5) Выше описанное можно преобразовать в следующие предложения типа «Если, то»:

  • Если субъект хочет сделать сеть и у субъекта есть достаточно кабеля, то субъект может организовать сеть;
  • Если топология Шина экономичнее и проще в организации, чем Звезда и Кольцо, то субъект выбирает Шина;
  • Если топология Звезда надежнее, чем Шина и Кольцо, то субъект выберет Звезду;
  • Если топология Кольцо надежнее, чем Шина и чуть дороже, но дешевле, чем Звезда, то субъект выбирает Кольцо;
  • Если субъект выбрал Шина, то ему потребуется больше кабеля;
  • Если субъект выбрал Звезда, то ему потребуется центр. узел;
  • Если субъект выбрал Кольцо, то ему потребуется сетевые контроллеры;
  • Если субъект выбрал Шина и имеет достаточно кабеля, то соединение занимает 50 мин;
  • Если субъект выбрал Звезда и имеет центр. Узел, то соединение занимает 30 мин;
  • Если субъект выбрал Кольцо и имеет сетевые контролеры, то соединении занимает 40 мин.;
  • Если сеть проведена будет через 50, или через 30, или через 40 минут, то можно будет соединится между компьютерами;
  • Если субъект может соединится, то он может передать файл;
Читайте также  Физкультурно оздоровительные методики и системы

Введем обозначения для фактов (Ф), действий (Д) и продукций (П), тогда:

Продукционная модель знаний

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

Продукционная модель обладает тем недостатком, что при накоплении достаточно большого числа (порядка нескольких сотен) продукций они начинают противоречить друг другу.

В общем случае продукционную модель можно представить в следующем виде:

  • – имя продукции;
  • – сфера применения продукции;
  • – условие применимости продукции;
  • – ядро продукции;
  • – постусловия продукции, актуализирующиеся при положительной реализации продукции;
  • – комментарий, неформальное пояснение (обоснование) продукции, время введения в базу знаний и т. д.;

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

Примеры продукционных правил:

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

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

Основные достоинства систем, основанных на продукционных моделях, связаны с простотой представления знаний и организации логического вывода. К недостаткам таких систем можно отнести следующее:

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

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

Продукционные модели представления знаний

Продукции (наряду с сетевыми моделями) являются наиболее по­пу­ляр­ными средствами представления знаний в информационных системах. В общем виде под про­дук­цией понимают выражение вида A ® B. Обычное прочтение продукции выглядит так: ЕСЛИ А, ТО B. Импликация может истолковываться в обычном логическом смысле, как знак логи­ческо­го следования B из истинного А. Возможны и другие интер­пре­та­ции про­дукции, например, А описывает некоторое условие, не­об­хо­ди­мое, чтобы можно было совершить действие B.

Продукционная модель или модель, основанная на правилах, позволяет представить знания в виде предложений типа

«Если (условие), то (действие)».

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

При использовании продукционной модели база знаний состоит из набора правил, Программа, управляющая перебором правил, называется машиной вывода. Чаще всего вывод бывает прямой (от данных к поиску цели) или обратный (от цели для ее подтверждения – к данным). Данные — это исходные факты, на основании которых запускается маши­на вывода.

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

В состав системы продукций входит база правил (продукций), глобальная база данных и система управления. База правил – это область памяти, которая содержит совокупность знаний в форме правил вида ЕСЛИ – ТО.

Приведем несколько примеров.

ЕСЛИ (намерение — отдых) и (дорога ухабистая) ТО (использовать джип)

ЕСЛИ (место отдыха — горы) ТО (дорога ухабистая)

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

Правила вывода бывает удобно представлять в виде дерева решений. Граф — множество вершин, связанных дугами. Дерево — граф, не содер­жа­щий циклов.

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

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

Пример. Имеется фрагмент базы знаний из двух правил:

П1: Если (отдых – летом) и (человек – активный) то (ехать в горы)

П2: Если (любит – солнце) то (отдых – летом)

Предположим, в систему поступили данные — (человек­ – активный) и (любит – солнце).

Прямой вывод — исходя из данных, получить ответ.

Шаг 1. Пробуем П1, не работает (не хватает данных (отдых–летом)).

Шаг 2. Пробуем П2, работает, в базу поступает факт (отдых–летом).

Шаг 3. Пробуем П1, работает, активируется цель (ехать в горы), которая и выступает как вывод.

Обратный вывод — подтвердить выбранную цель при помощи имеющихся правил и данных.

Шаг 1. Цель — (ехать в горы): пробуем П1 — данных (отдых– летом) нет, они становятся новой целью, и ищется правило, где она в правой части.

Шаг 2. Цель (отдых – летом): правило П2 подтверждает цель и активирует ее.

Шаг 3. Пробуем П1, подтверждается искомая цель.

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

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

Читайте также  распад Империи Каролингов

Приведем сильные и слабые стороны систем продукций.

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

• единообразие структуры (основные компоненты продукционной системы могут применяться для построения интеллектуальных сис­тем с различной проблемной ориентацией);

• естественность (вывод заключения в продукционной системе во мно­гом аналогичен процессу рассуждения эксперта);

• гибкость родовидовой иерархии понятий, которая поддер­жи­ва­ет­ся только как связь между правилами (изменение правила ведет за собой изменение в иерархии);

• простота создания и понимания отдельных правил;

• простота пополнения и модификации;

• простота механизма логического вывода.

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

• процесс вывода менее эффективен, чем в других системах, поскольку большая часть времени при выводе затрачивается на непроизводительную проверку применимости правил;

• сложно представить родовидовую иерархию понятий;

• неясность взаимных отношений правил;

• сложность оценки целостного образа знаний;

• отличие от человеческой структуры знаний;

• отсутствие гибкости в логическом выводе.

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

Продукционная модель представления знаний

Продукции (наряду с сетевыми моделями) являются наиболее по­пу­ляр­ными средствами представления знаний в информационных системах. В общем виде под про­дук­цией понимают выражение вида A ® B. Обычное прочтение продукции выглядит так: ЕСЛИ А, ТО B. Импликация может истолковываться в обычном логическом смысле, как знак логи­ческо­го следования B из истинного А. Возможны и другие интер­пре­та­ции про­дукции, например, А описывает некоторое условие, не­об­хо­ди­мое, чтобы можно было совершить действие B.

Продукционная модель или модель, основанная на правилах, позволяет представить знания в виде предложений типа

«Если (условие), то (действие)».

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

При использовании продукционной модели база знаний состоит из набора правил, Программа, управляющая перебором правил, называется машиной вывода. Чаще всего вывод бывает прямой (от данных к поиску цели) или обратный (от цели для ее подтверждения – к данным). Данные — это исходные факты, на основании которых запускается маши­на вывода.

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

В состав системы продукций входит база правил (продукций), глобальная база данных и система управления. База правил – это область памяти, которая содержит совокупность знаний в форме правил вида ЕСЛИ – ТО.

Приведем несколько примеров.

ЕСЛИ (намерение — отдых) и (дорога ухабистая) ТО (использовать джип)

ЕСЛИ (место отдыха — горы) ТО (дорога ухабистая)

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

Правила вывода бывает удобно представлять в виде дерева решений. Граф — множество вершин, связанных дугами. Дерево — граф, не содер­жа­щий циклов.

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

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

Пример. Имеется фрагмент базы знаний из двух правил:

П1: Если (отдых – летом) и (человек – активный) то (ехать в горы)

П2: Если (любит – солнце) то (отдых – летом)

Предположим, в систему поступили данные — (человек­ – активный) и (любит – солнце).

Прямой вывод — исходя из данных, получить ответ.

Шаг 1. Пробуем П1, не работает (не хватает данных (отдых–летом)).

Шаг 2. Пробуем П2, работает, в базу поступает факт (отдых–летом).

Шаг 3. Пробуем П1, работает, активируется цель (ехать в горы), которая и выступает как вывод.

Обратный вывод — подтвердить выбранную цель при помощи имеющихся правил и данных.

Шаг 1. Цель — (ехать в горы): пробуем П1 — данных (отдых– летом) нет, они становятся новой целью, и ищется правило, где она в правой части.

Шаг 2. Цель (отдых – летом): правило П2 подтверждает цель и активирует ее.

Шаг 3. Пробуем П1, подтверждается искомая цель.

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

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

Приведем сильные и слабые стороны систем продукций.

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

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

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

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

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

Имеется большое число программных средств, реализующих про­дукционных подход: OPS5, EXSYS RuleBook, ЭКСПЕРТ, ЭКО, G2 и др.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: