IV) Измените в программе правила таким образом, чтобы в них был реализован механизм распространения коэффициентов уверенности по мере формирования гипотез и выполнения тестирующих процедур. Комбинирование коэффициентов должно выполняться в соответствии с формулой
Z = X+Y-XY,
где Z— новое значение коэффициента уверенности, полученного на основании значений X и Y, связанных с симптомами. Таким образом, если программа приходит к заключению increase in low-specific-gravity solids (повышение доли твердых включений) исходя из симптома increase in viscosity (повышение вязкости), который характеризуется коэффициентом уверенности X, и результатов теста МВТ (тест синевы метилена), которые характеризуются коэффициентом Y, то с помощью приведенной выше формулы можно получить значение коэффициента Z, характеризующее степень достоверности заключения.
V) Запустите программу на выполнение и проверьте, как она будет реагировать на разные варианты ответов на вопросы.
10. Приведенная ниже модель диагностики взята из руководства владельца автомобиля BMW 320.
I) Представьте приведенные ниже инструкции по поиску неисправностей в виде модели предметной области, которая используется в системе MORE (см. рис. 12.1).
Симптом |
Причины |
||
Двигатель не заводится |
|
||
На стартер не подается ток |
Разряжена аккумуляторная батарея |
||
|
Поврежден провод, подключенный к одной из клемм батареи |
||
|
Поврежден соленоид стартера |
||
|
Плохой контакт с "массой" |
||
На стартер подается ток |
Заклинило шестерню стартера |
||
|
Поврежден двигатель стартера |
||
Двигатель проворачивается, |
но не запускается |
||
Нет искры между электродами свечи |
Загрязнены контакты прерывателя Наличие влаги в распределителе |
||
|
Неправильно подключены контакты прерывателя |
||
|
Поврежден конденсатор (модель прежних лет выпуска) |
||
|
Поврежден ключ прерывателя |
||
|
Повреждена катушка (модель прежних лет выпуска) |
||
Нет топлива в жиклере карбюратора |
Нет топлива в баке Паровая пробка в системе подачи топлива |
||
|
(в жаркое время года) |
||
|
Засорен жиклер |
||
|
Неисправен бензонасос |
||
Двигатель заглох и вновь не |
заводится |
||
Заливает карбюратор |
Заедание игольчатого клапана |
||
|
Поврежден поплавок |
||
|
Неправильно установлен уровень поплавка |
||
Нет топлива в жиклере карбюратора |
Нет топлива в баке Вода попала в систему подачи топлива |
||
Замечания в круглых скобках в столбце "Причины" следует рассматривать как фоновые условия в системе MORE.
II) Постройте на основе этой инструкции набор порождающих правил и разработайте соответствующую CLIPS-программу. Фоновые условия должны вводиться пользователем в ответ на запросы программы.