Це означає, що повинна бути з'ясована істинність всіх змінних, що входять в задіяні правила. Спрощений алгоритм функціонування експертних систем зворотного висновку можна
представити у наступному вигляді.
1. Задається набір цілей - змінних, значення яких потрібно визначити за допомогою експертної системи. Список цих змінних через інтерфейс вводиться в робочу пам'ять.
2. У базі знань машина логічного висновку виділяє список правил, з яких можна знайти невідомі змінні в робочій пам'яті.
3. З умов виділених правил, визначаються інші змінні, необхідні для застосування правил.
4. Визначається, які з знайдених в п.3 змінних можна отримати з правил бази знань.
5. Доповнюється список цілей змінними знайденими в п.4.
6. Значення змінних зі списку визначеного в п.3, за винятком знайдених в п.4, запитуються у користувача.
7. Виробляється спроба застосування правил бази знань для досягнення поставлених цілей.
8. Якщо не всі цілі досягнуті (не вдалося застосувати всі правила, що визначають цікавлять нас змінні), проводиться перехід до п.2, виключивши зі списку цілей знайдені змінні.
9. За досягненню всіх спочатку поставлених цілей диспетчер припиняє роботу машини логічного висновку і через інтерфейс виводить користувачеві значення цих змінних. Логічний висновок припиняється також, якщо не можна досягти поставлених цілей.
У більшості реально працюючих експертних систем, як правило, використовуються різні модифікації та комбінації розглянутих вище алгоритмів.
В В
4. ОСОБЛИВОСТІ СТВОРЕННЯ експертних систем
В
Проектування експертних систем має певні відмінності від створення традиційного програмного продукту. Суть цієї відмінності в тому, що розробники не намагаються відразу побудувати кінцевий продукт, а створюють прототип експертної системи. Прототип повинен задовольняти основним вимогам до системи при мінімальній трудомісткості при його створенні. Для задоволення цим вимогам використовуються різноманітні інструментальні засоби (спеціалізовані мови штучного інтелекту, оболонки експертних систем та ін) прискорюють процес розробки. Можливо, що може знадобитися створення не одного, кількох прототипів, що базуються на різних способах подання знань, з
подальшим вибором найбільш вдалого. B тому випадку коли досягнута задовільна робота прототипу з усього комплексу завдань, можливе прийняття рішення про остаточне перепрограммировании всієї системи на мовах низького рівня, з метою поліпшення її характеристик - збільшення швидкодії, зменшення займаної пам'яті, підвищення ергономічних параметрів інтерфейсу.
Досвід розробки експертних систем дозволяє виділити наступні етапи при їх створенні:
В· - Ідентифікація - визначення проблеми, ресурсів, цілей, експертів, проводиться неформальне (вербальне) опис проблеми.
В· - Концептуалізація - виділення ключових понять системи, відносин і характеристик, достатніх для повного і детального опису розглянутої проблеми.
В· - Формалізація - вираз введених понять на деяким формальним мовою, побудова моделі досліджуваної області.
В· - Етап виконання - створення одного або декількох прототипів. p> В· - Етап тестування - оцінка обраного методу подання знань і працездатності всієї системи в цілому на основі перевірки прототипу.
В· - Етап дослідної експлуатації - перевірка придатності системи для кінцевого користувача. p> В· - Модифікація системи - повне перепрограмування або доведення прототипу до стану програмного продукту.
Відомі три основні різновиди виконання експертних систем:
ВЁ - Експертні системи, виконані у вигляді окремих програм, на деякому алгоритмічній мові, база знань яких є безпосередньо частиною цієї програми. Як правило, такі системи призначені для вирішення завдань в одній фіксованого предметної області. При побудові таких систем застосовуються як традиційні процедурні мови PASCAL, C та ін, так і спеціалізовані мови штучного інтелекту LISP, PROLOG. p> ВЁ - Оболонки експертних систем - програмний продукт, що володіє засобами подання знань для певних предметних областей. Завдання користувача полягає не в безпосередньому програмуванні, а у формалізації і введенні знань з використанням наданих оболонкою можливостей. Недоліком цих систем можна вважати неможливість охоплення однією системою всіх існуючих предметних областей. Прикладом можуть служити Інтерексперт, РС +, VP-Expert. p> ВЁ - Генератори експертних систем - потужні програмні продукти, призначені для отримання оболонок, орієнтованих на те чи інше уявлення знань залежно від розглянутої предметної області. Приклади цього різновиду - системи KEE, ART та ін. <В В
5. ОБЛАСТІ ТА КРИТЕРІЇ ЗАСТОСОВНОСТІ ЕКСПЕРТНИХ СИСТЕМ
Не зупиняючись на докладному переліку численних областей застосування, відзначимо лише деякі галузі народного господарства розвинених країн, в яких методологія експерт...