Примеры экспертных систем

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

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

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

Концепция механизма вывода ЭС часто вызывает некоторое не­доумение среди начинающих разработчиков. Обычно ясно, как зна­ния предметной области могут быть записаны в виде фактов и пра­вил, но далеко не ясно, каким образом конструировать и использо­вать так называемый «механизм вывода». Это недоумение происхо­дит от отсутствия простого и общего метода организации логическо­го вывода. Его структура зависит и от специфики предметной области и от того, как знания структурированы и организованы в ЭС. Многие языки высокого уровня, предназначенные для построе­ния экспертных систем, например EMYCIN, имеют механизм вывода, в неко­тором смысле встроенный в язык как его часть.

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

Языки более низкого уровня, например LISP, требуют, чтобы создатель ЭС спро­ектировал и реализовал механизм вывода.

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

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

Добавить комментарий