3 предполагаемые ворота инфекции — желудочно-кишечный тракт
имеются веские аргументы (0.7) за то,
что инфекционный агент является бактерией
Рис. 14.2. "Если-то"-правило медицинской консультативной системы MYCIN (Shortliffe, 1976). Параметр 0.7 показывает степень доверия этому правилу.
"Если-то"-правила часто применяют для определения логических отношений между понятиями предметной области. Про чисто логические отношения можно сказать, что они принадлежат к "категорическим знаниям", "категорическим" — потому, что соответствующие утверждения всегда, абсолютно верны. Однако в некоторых предметных областях, таких, как медицинская диагностика, преобладают "мягкие" или вероятностные знания. Эти знания являются "мягкими"; в том смысле, что говорить об их применимости к любым практическим ситуациям можно только до некоторой степени ("часто, но не всегда"). В таких случаях используют модифицированные "если-то"-правила, дополняя их логическую интерпретацию вероятностной оценкой. Например:
Рис. 14.2, 14.3 и 14.4 дают представление о разнообразии способов, которыми знания могут быть выражены при помощи "если-то"-правил. На этих рисунках приведены примеры правил из трех различных систем, основанных на знаниях: медицинской консультативной системы MYCIN, системы AL/X для диагностики неисправностей в оборудовании и системы AL3 для решения шахматных задач.
Вообще говоря, если вы хотите разработать серьезную экспертную систему для некоторой выбранной вами предметной области, вы должны провести консультации с экспертами в этой области и многое узнать о ней сами. Достигнуть определенного понимания предметной области после общения с экспертами и чтения литературы, а затем облечь это понимание в форму представления знаний в рамках выбранного формального языка — это искусство, называемое
давление в v-01 достигло уровня открытия выпускного клапана
выпускной клапан в v-01 открылся
[N=0.005, S=400]
давление в v-01 не достигло уровня открытия выпускного клапана и выпускной клапан в v-01 открылся
преждевременное открытие выпускного клапана (сместилась установка порогового давления)
[N=0.001, S=2000]
Рис. 14.3. Два правила из демонстрационной базы знаний системы AL/X для диагностики неисправностей (Reiter 1980). N и S — величины "необходимости" и "достаточности", детально описанные в разд. 14.7. Величина S указывает степень, с которой условие влечет за собой заключение (вывод). Величина N указывает, до какой степени истинность условия необходима для того, чтобы заключение было истинным.
1 существует гипотеза
2 существуют две гипотезы
3 имеют место факты:
гипотеза
гипотеза
1 породить гипотезу
2 породить факт:
Рис. 14.4. Правило уточнения плана из системы AL3 для решения шахматных задач (Bratko 1982).
Правила, содержащиеся в базе знаний, имеют вид
ИмяПравила : если Условие то Заключение
где Заключение
— это простое утверждение, а Условие
— это набор простых утверждений, соединенных между собой операторами и
и или
. Мы также разрешим в части условия использовать оператор не
, хотя и с некоторыми оговорками. При надлежащем прологовском определении этих операторов (как это сделано на рис. 14.5) правила станут синтаксически верными предложениями Пролога. Заметим, что оператор и
связывает операнды сильнее, чем или
, что соответствует обычным соглашениям.
% Небольшая база знаний для идентификации животных
:- op( 100, xfx, [имеет, 'кормит детенышей',
'не может', ест, откладывает, это]).
:- op( 100, xf, [плавает, летает, хорошо]).
прав1: если
Животное имеет шерсть
или
Животное 'кормит детенышей' молоком
то
Животное это млекопитающее.
прав2: если
Животное имеет перья
или
Животное летает и
Животное откладывает яйца
то
Животное это птица.