Семантические сети

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

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

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

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

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

/71: Если "отдых - летом" и "человек - активный", то "ехать в горы",

/72: Если "любит солнце", то "отдых летом",

Предположим, в систему поступили данные - "человек активный" и "любит "солнце"

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

1-й проход.

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

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

2-й проход.

Шаг 3. Пробуем /7/, работает, активируется цель "ехать в горы", которая и выступает как совет, который дает ЭС.

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

1-й проход.

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

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

2-й проход.

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

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

Имеется большое число программных средств, реализующих продукционный подход (язык OPS 5 [8]; "оболочки" или "пустые" ЭС - EXSYS [10], ЭКСПЕРТ [2]; инструментальные системы 11ИЭС [1!] и СПЭИС [3] и др.), а также промышленных ЭС на его основе (ФИАКР [8]) и др.

Термин семантическая означает смысловая, а сама семантика - это наука, устанавливающая отношения между символами и объектами, которые они обозначают, т.е. наука, определяющая смысл знаков,

Семантическая сеть- это ориентированный граф, вершины которого - понятия, а дуги - отношения между ними.

Понятиями обычно выступают абстрактные или конкретные объекты, а отношения - это связи типа: "это" ("is"), "имеет частью" ("has part"), "принадлежит", "любит". Характерной особенностью семантических сетей является обязательное наличие трех типов отношений:

  • класс - элемент класса;
  • свойство - значение;
  • пример элемента класса.

Можно ввести несколько классификаций семантических сетей. Например, по количеству типов отношений:

  • однородные (с единственным типом отношений);
  • неоднородные (с различными типами отношений).

По типам отношений:

  • бинарные (в которых отношения связывают два объекта);
  • парные (в которых есть специальные отношения, связывающие более двух понятий).

Наиболее часто в семантических сетях используются следующие отношения:

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

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

Пример 16.3. На рис. 16.1 изображена семантическая сеть. В качестве вершин понятия: Человек, Иванов, Волга. Автомобиль, Вид транспорта. Двигатель.

Рис.16.1. Семантическая сеть.

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

Для реализации семантических сетей существуют специальныесетевые языки, например NET[12] и др. Широко известны экспертныесистемы, использующие семантические сети в качестве языка представления знаний - PROSPECTOR, CASNBT, TORUS [8,10].