Курсовая работа: Разработка оболочки экспертной системы

3. От п=1 до M*N /организуем просмотр всех правил на совпадение с «рабочей» переменной вывода/

{если МПУ(п,1) = ОПВ(1) то нап=округление до большего целого (п/м); ну=1;пу= (нап-1)*м; /определяем номер правила, в котором присутствует«рабочая» переменная вывода/

кпу=0

от у=1 до м /проверяем текущее правило/

пока МПУ(пу+у,1)<> «»; ЗУ(у)= МПУ(пу+у,2); кпу=кпу+1;

нпу=МПУ(пу+у,3) /считываем номер текущей переменной условия из СПУ /

если СПУ (нпу,2) = «», то вывести пользователю вопрос ТПУ.вопрос (нпу) с вариантами ответов из ТПУ.значение(нпу);

записать в СПУ(нпу,2) выбранный пользователем ответ;

ЗУП(у) = СПУ(нпу,2);

Проверяем правило:

ЗП= Истина; от у=1 до кпу; если ЗУ(у) = ЗУП(у), то ЗУТ=Истина; ЗП=ЗП and ЗУТ;

если ЗП=Истина, то СПВ([МПВ(нап,3),2] = МПВ(нап,2); СПВ([МПВ(нап,3),3] = кпв; кпв=кпв+1; ОПВ(кпв)= МПВ(нап,1);}

Если достигнут конец МПУ, удаляем из ОПВ() ОПВ(1) и устанавливаем ОПВ(1) следующую по порядку в очереди переменную.

Выводим на экран последнюю выведенную СПВ. Если пользователь запрашивает объяснения полученного вывода, выводим все сработанные СПУ в обратном порядке.

3.3 Структура разработанной экспертной системы

3.3.1 Проект « Expert »

Проект «Expert» служит для создания базы знаний и для редактирования уже существующей. Модуль «Unit1» проекта служит показательной формой при загрузке экспертной системы в режиме приобретения знаний. В этом режиме эксперт, используя компонент приобретения знаний, наполняет систему знаниями, которые позволяют ЭС в режиме решения самостоятельно (без эксперта) решать задачи из проблемной области. Эксперт описывает проблемную область в виде совокупности данных и правил. В этом модуле эксперт непосредственно создает саму базу знаний, формирует правила. При этом имеется возможность редактирования правил, удаления правил, сохранения базы знаний, загрузки ранее сохраненной базы знаний. Модуль «Unit1» и модуль «Unit 2» необходимы для введения экспертом вопросов к переменным условия и рекомендаций к переменным вывода соответственно.

Модуль «Unit4» предназначен для вывода справки об авторе.

В программе используются процедуры и функции, которые написаны для удобства работы и понимания программы.

procedure dobav_uslClick(Sender: TObject) - Добавление условия в правило;

procedure FormCreate(Sender: TObject) – Начальные установки при открытии формы;

procedure udal_uslClick(Sender: TObject) - Удаление условия в правиле;

procedure newClick(Sender: TObject) - Формирование новой базы зныний;

procedure Button4Click(Sender: TObject) - Добавление нового правила;

procedure Button3Click(Sender: TObject) - Перемещение по правилам назад;

procedure Button2Click(Sender: TObject) - Перемещение по правилам вперед;

procedure Button6Click(Sender: TObject) - Удаление правила;

procedure SpiskiShow(Sender: TObject) - Просмотр списков переменных условия и вывода;

procedure tpv1Show(Sender: TObject) - Просмотр таблицы переменных условия;

procedure tpu1Show(Sender: TObject) - Просмотр таблицы переменных вывода;

procedure pravShow(Sender: TObject) - Переход к просмотру правил;

К-во Просмотров: 470
Бесплатно скачать Курсовая работа: Разработка оболочки экспертной системы