Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Проектирование экспертных систем. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
Эти диапазоны могут быть менее обширными, мы выбрали такие широкие,
по счатнсгически значительные группы для простоты демонстрации. Аналогично мы можем сгруппировать по категориям вес:
вес=40_или_мепыпе вес =между_40_и_60 вес =между_60_и_80 вес=между_80_и_100 вес=100_или_более Вес будет оцениваться и связи с другими факторами, каждый из которых
также имеет диапазон возможных значений:
рост =5_футов_или_меныне рост =между_5_фу тами_и_5_с половинойфу то» рост=межАу_5_с_ноловиной_футов_и_6_футами рост =6_футов_или_6ольше комплекция =мелкая комплекция =средняя комплекция =крупная После завершения разработки, экспертная система будет выводить заключе-
ние на основе перечисленных фактов о весе человека. Вывод системы будет пред­ставлен выражениями:
вес =недостаточпый вес=нормальпый вес =излишний Когда система запрашивает оператора о привычке к курению, возможны два
факта:
курение=да курение=нст
151
Наша демонстрационная система анализируег также потребление холесте-
рина, ненасыщенных жиров, соли и кальция. Ранжируя возможные значения каж­дого объекта, мы можем построить следующие выражения:
потребление_холестерина =высокое потребление_холестерина =нормальное погребление_холестерина =низкое потребление_ненасыщенных_жиров =высокое потре6ление_ненасыщенных_жиров =нормальное потрс6ление_ненасыщенных_жиров =низкое потребление_соли =высокое потребление_соли =нормальное потребление_соли =низкое потребление_кальция =высокое потребление_кальция =нормальное потребление кальция =низкое Система контроля здоровья будет также учитывать тип личности субъекта. В
соответствии с исследованиями Фридмана-Росса, которые мы примем за основу, возможны два значения типа. Поскольку оценка типа является в значительной сте­пени условной, доверие к каждому факту определяется коэффициентом 75.
Тип_личности =тип_а, кд =75 тип_личности =тип_b, кд=75 При построении заключения системы будут учитываться такие дополнитель-
ные факты:
риск_сердечных_заболеваний =выше_среднего риск_сердечных_заболеваний=средний риск_сердечных_заболеваний =ниже_среднего риск_рака =выше_среднего риск_рака =средний риск_рака =ниже_среднего
152
риск_остеопороза =отсутствует риск_остеопороза =умеренный риск_остеопороза =высокий Потребление человеком алкоголя также попадает в одну из трех статистиче-
ски определенных категорий:
потребление_алкоголя=нет пoтребление_алкоголя=умеренно потребление_алкоголя=чрезмерно Поскольку система должна быть способна находить более одного решения,
объект ПРЕАСКАЗАННАЯ_ПРОДОЛЖИТЕЛЬНОСТЬ имеет такие возможные значения:
предсказанная_продолжительность =84 предсказанная_продолжительность =82 предсказанная_продолжительность =80 предсказанная_продолжигельность =72 предсказанная_продолжительность =70 предсказанная_продолжительность =68 предсказанная_продолжительность =64 предсказанная_продолжительность =60 предсказанная_продолжительность =56 предсказаниая_продолжительность =52 предсказанная_продолжительность =50 Чтобы проверить новые модули, откомпилируйте и запустите программу в
исправленном варианте. Исходное меню будет содержать новую возможность - вы­бор 4, "объявление объекта многозначным". Выберите один из набора фактов этого раздела и добавьте к базе знаний первую пару "объект - значение". Затем выберите возможность 4 и введите имя объекта. Теперь вы можете добавить к набору остав­шиеся пары .
153
Кроме того, можно проверить следующие возможности меню: Ввод разре-
шенных значений; Добавление вопросов об объекте; Ответ на вопрос об объекте;
Для выхода из программы достаточно нажать красный крестик в правом
верхнем углу экрана.
Для проверки последних модулей необходима доработка системы оценки со-
стояния здоровья, использовавшейся в предыдущих параграфах. Ранее мы ввели в базу знаний факты в виде пар "объект - значение", потом снабдили выражения фак­тов коэффициентами доверия, наконец, сделали объекты многозначными. Теперь воспользуемся этими фактами для формирования вопросов и разрещенных значе­ний, с помощью которых наша демонстрационная система будет проводить кон­сультацию.
После загрузки программы выберите из меню возможность «Ввод разрешен-
ных значений». Введите список разрешенных значений в следующем формате:
ОБЪЕКТ =ЗНАЧ1, ЗНАЧ2, ..., ЗНАЧn где n - последнее paзpешеннoe значение. После ввода каждого списка выби-
райте возможность 6 для описания вопроса. Здесь приведены разрешенные значе­ния и вопросы, требующиеся нашей гипотетической программе оценки состояния здоровья.
Изменив основную программу для включения новых модулей, ее можно за-
пустить в действие, гак как к настоящему моменту у нас есть достаточно модулей для проведения консультации.
В приведенном ниже листинге дана вся основная программа, включая моди-
фикации для вызова новых подпрограмм. В первую очередь, это введение новой возможности для оператора - "Достижение цели". Когда в качестве выбора вво­дится 8, программа предлагает оператору ввести цель в форме имени объекта. За­тем она считывает это имя и вызывает процедуру pursue.
Испытание системы. Хотя программа нашей экспертной системы теперь со-
держит достаточно команд для проведения настоящей консультации, ей нужна база
154
знаний. Чтобы испытать программу, сначала скомпилируйте новые модули и пере­работайте основную программу. Затем сделайте следующее:
1. Используя текстовый редактор создайте текстовый файл, содержащий ряд
правил с парами "объект - значение" в предпосылке и заключении. Для ввода пра­вил воспользуйтесь следующим форматом:
правило1: если [ОБЪЕКТ]=[ЗНАЧЕНИЕ1] то [ОБЪЕКТ]=[ЗНАЧЕНИЕ2]. При чтении файла правил, программа ищет точку в конце каждого правила.
Если вы опустите эгу точку, система не сможет отличить одно правило от другого.
Вы можете также добавить в этот текстовый файл предложения "вопрос",
"разрешен" и "многозначный".
2. Запустите основную программу.
3. Для проведения консультации выверите возможность "Достижение цели".
4. Введите имя объекта, представляющего цель, и нажмите клавишу
RETURN.
Пробный запуск программы. При запуске программы expert, она считает пра-
вила из текстового файла на текущий дисковод, введет их в базу знаний, а затем выведет на экран меню возможностей оператора.
Кроме правил, текстовый файл может содержать предложения с разрешен-
ными значениями, вопросами и множественными значениями. Когда программа читает файл правил, она добавляет эти элементы к базе знаний, избавляя вас от необходимости вводить их с помощью программы меню. В следующей главе мы рассмотрим метол ввода в файл правил полной базы знаний.
Изменения в программе. Для того чтобы включить в программу новые мо-
дули, нам нужно добавить в процедуру PURSUE две строки: одну для вызова EXPLAIN_HOW и одну для вызова процедуры EXPLAIN_WHY. Кроме того, в ос-
155
новную программу перед первым оператором WHILE нужно добавить предложе­ние EXPLA1N:=TRUE. Процедуры EXPLAINHOW и EXPLA1N_WHY нужно вста­вить в программу непосредственно перед процедурой PURSUE.
Ниже приведен полный листинг подпрограммы PURSUE с новыми предло-
жениями. Переработанная основная программа целиком приведена в Приложении А.
Порядок работы с системой. При запуске появляется основная экранная
форма, но активна только одна опция: «Ввод». Необходимо нажать на эту иконку. После этого на экране появляется надпись: «Введите фамилию». В базе субъектов имеется только два человека: Салли Шепард и Роберт Морган. При выборе этих фамилий компьютер считает часть информации о них из базы и задаст меньше во­просов при выводе. Если же введена другая фамилия, компьютер первоначально проведет поиск по базе данных и не найдя фамилии, а следовательно и информации о возрасте, росте весе, происхождении, расе задаст все эти вопросы в ходе дальней­шего диалога.
После введения фамилии загорается надпись: «Цель». Необходимо нажать
эту иконку. Появится вопрос: «Какова ваша цель?». Обычная консультация с этой системой сводится к оценке продолжительности жизни, поэтому в появившееся лкно необходимо вписать слово – продолжительность. Далее необходимо нажать иконку результат и в мемо-поле появится результат консультации.
По меню в верхней части экрана видно, что программа может проверять ис-
тинность фактов, добавлять новые факты, правила, вопросы.
156
4 Методические указания к выполнению лабораторных работ
На базе описанной экспертной системы можно организовать следующий ла-
бораторный практикум.
4.1 Лабораторная работа №1
Название работы: Изучение функций экспертной системы Цель работы: исследовать работу всех функций системы включенных в менб
экспертной системы.
Порядок выполнения работы:
1. Запустить программу. На экране должно появиться диалоговое окно экс-
пертной системы с опциями: добавление в БЗ, проверка факта, просмотр фактов, многозначность, ввод, вопросы, цель, результат, добавление факта.
2. Провести консультацию с одним из субъектов Салли Шепард, Роберт Мор-
ган, Вики Швapц.
3. Добавить правило в БЗ. Сформулировать правило, проверить на непроти-
воречивость с уже имеющимися в базе правилами. Выполнить требования интер­фейса, убедиться, что правило добавлено.
4. Проверить факт. Выбрать факт, связанный с каким-либо объектом про-
граммы. Задать его верное и неверное значения. Убедиться, что программа реаги­рует адекватно.
5. Просмотреть факты. Отдельно убедиться, что программа 1)считала факты
из файла, предварительно открыв файл SUBJECTS и 2) правильно ввела ваши от­веты на вопросы.
6. Просмотреть факты и выбрать объект, который вы хотите объявить много
значным. Выполнить требования интерфейса. Убедиться, что объявленный объект действительно стал многозначным.
157
7. Выбрать новый объект. Сформулировать вопрос, обеспечивающий одно-
значный ввод информации. Добавить вопрос, убедиться, что программа его задает во время диалога.
8. Добавление факта. Просмотреть факты, выбрать не активизированный
факт. Выполнить требования интерфейса и задать факт, включая коэффициент до­верия. Еще раз просмотреть факты для проверки активизации выбранного факта.
4.2 Лабораторная работа №2
Название работы: разработка элементов диалоговой составляющей эксперт-
ной системы.
Цель работы: Научиться вводить новые объекты и формулировать вопросы,
связанные с информацией об этих объектах.
Порядок выполнения работы:
1. Просмотреть факты. Выбрать объект, отсутствующий в данных.
2. Выбрать свойства вновь введенного объекта. Сформулировать вопрос ка-
сающийся значений выбранного свойства.
3. Добавить значения к имеющимся свойствам. Просмотреть файл RULES,
выбрать объект и дополнить его разрешенные значения.
4. Проконсультироваться с экспертной системой. Убедиться, что вновь вве-
денные объекты и разрешенные значения востребованы программой.
4.3 Лабораторная работа № 3
Название работы: изучение компоненты пополнения базы знаний Цель работы: научиться формулировать новые правила Порядок выполнения работы:
1. Найти в имеющейся базе знаний логические неувязки. Проверить базу зна-
ний на полноту всех условий, означенных в имеющихся правилах.
158
2. Сформулировать новое правило, увязав его с имеющимися условиями.
Можно ввести новое условие, связанное с новым объектом и добавить правили от­носительно этого объекта.
3. Убедиться в верности встроенного правила. Проверить не будет ли про-
грамма обращаться только к этому правилу, обходя аналогичные или не являются ли сформулированные условия невостребованными.
4. Убедиться в работоспособности введенных правил. Проконсультироваться
с программой добавив при необходимости в файл SUBJECTS нового человека со значениями объектов, использованными в новых правила.
4.4 Лабораторная работа №4
Название работы: изучения интерфейса экспертной системы Цель работы: научиться применять программные средства, делающие интер-
фейс дружественным.
Порядок выполнения работы:
1. Отыскать недосток в интерфейсе, имеющейся программы. Недостатками
могут быть: видимость меток или полей, не использующихся в данной опции, Не­удачное местоположение элементов интерфейса, неотключенные пункты меню и так далее.
2. Работа с программой. Открыть программу и отыскать место, реализующее
функцию с выявленным недостатком интерфейса.
3. Разобраться, как работает программа и придумать новое решение.
4.Запустить программу и убедиться, что внесенные изменения валидны.
4.5 Лабораторная работа №5
Название работы: разработка базы знаний экспертной системы. Цель работы: приобрести навыки формулирования и логической увязки но-
вых знаний.
159
Порядок выполнения работы:
1. Выбрать область консультирования. Область должна быть ограниченной
количеством объектов – не более пяти.
2. Задание разрешенных значений. Определиться с количеством и наимено-
ванием разрещенных значений.
3. Сформулировать вопросы. Вопросы должны однозначно пониматься в от-
ношении определяемых свойств объектов.
4. Сформулировать небольшое количество правил. Это количество должно
быть достаточным для проведения простейшей консультации.
5. Проверка работоспособности экспертной системы. Запустить программу и
провести консультацию с экспертной системой, убедившись, что построенная база знаний функционирует.
160
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]