8.3.Инструментальные средства построения систем баз знаний.

Для создания СБЗ могут использоваться следующие средства:

  1. Традиционные языки программирования - C, Basic, Pascal, Lisp и др. Особо в этом ряду стоит выделит язык функционального программирования Lisp. Его основные свойства: данные представляются в виде списков, для получения решений используется рекурсия.
  2. Языки представления знаний (такие как Prolog) - имеют специфические средства описания знаний и встроенный механизм поиска вывода.
  3. Пустые оболочки экспертных систем - содержат реализации некоторого языка представления знаний и средства организации интерфейса пользователя. Позволяют практически полностью исключить обычное программирование при создании прикладной экспертной системы.

В заключение приведем пример, заимствованный из книги К.Нейлора (см. список литературы). Создадим экспертную систему, с помощью которой можно отличить птицу от самолета. В следующей таблице представлен массив FACTS (факты), который фактически является в нашем случае базой знаний. В нем перечислены некоторые характеристики объектов "птица" и "самолет", наличие данной характеристики и объекта отмечено цифрой 1, отсутствие - 0.
ХарактеристикаПтицаСамолетRULES
Крылья110
Хвост110
Клюв101
Двигатель01-1
Перья101
Шасси01-1
Сформируем теперь правило вывода. Для этого тем характеристикам, которые присущи обоим объектам, присвоим нулевые весовые коэффициенты. Характеристикам присущим только "птице" поставим в соответствие весовой коэффициент 1, присущим только объекту "самолет" -1. Массив RULES, содержащий правило вывода представлен в крайнем правом столбце таблицы. Тогда механизм получения решений будет иметь вид:

Массив VALUES заполняется при опросе пользователя. Нетрудно убедиться, что при полном и правильном указании всех харакетристик объектов механизм получения решений дает 2 для "птицы" и -2 для "самолета". При неполном указании характеристик объекта вывод о его принадлежности можно сделать на основании того, насколько близок полученный результат к одному из этих предельных значений.
Литература:

Следующая глава: 9.Источники информации по базам данных в Интернет.

Введение в базы данных. (c) Зеленков Ю.А. (yz@yars.free.net) 1997 г.
(c) Центр Интернет ЯрГУ