Написание экспертной системы на языке Turbo-Prolo

Задание: Создать экспертную систему по породам дерева

Теория: Структура экспертных систем

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

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

1. База знаний (БЗ).

2. Механизм вывода (МВ).

3. Система пользовательского интерфейса (СПИ).

База знаний — центральная часть экспертной системы. Она содержит правила, описывающие отношения или явления, методы и знания для решения задач из области применения системы. Можно представлять базу знаний состоящей из фактических знаний и зна ний, которые используются для вывода других знаний. Утверждение «Джон Ф. Кеннеди был 35-м президентом Соединенных Штатов» — пример фактического знания. «Если у вас болит голова, то примите две таблетки цитрамона» — пример знания для вывода. Сама база знаний обычно располагается на диске или другом носителе.

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

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

Когда вопрос должен быть предварительно обработан, то доступ к базе знаний осуществляется через интерфейс с пользователем. Интерфейс — это часть экспертной системы, которая взаимодействует с пользователем.

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

Хорошо разработанные оболочки экспертных систем обычно содержат механизм для добавления и обновления информации в базе знаний.

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

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

Экспертные системы часто создаются «инженером по знаниям"(или проектировщиками экспертных систем), которые работают с человеком-экспертом, чтобы закодировать знания эксперта в базе знаний.

Первый способ — это классификация и помещение фактов и чисел (фрагментов фактического знания) в правила Турбо-Пролога.

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

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

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

1. Обработка данных, полученных с клавиатуры, и высвечивание вводимых и выводимых данных на экране.