Лабораторні роботи
Ознайомлення з експертними системами
Створення власної простої бази знань для вирішення задачі класифікації
Поняття експертної системи
Експертна система (ЕС) – це прикладна система штучного інтелекту, що використовує формалізовані емпіричні знання фахівців з деякої вузько спеціалізованої предметної області та здатна в межах цієї області приймати рішення на рівні експерта-професіонала.
Експертними системами зазвичай заміняють експертів у небезпечних чи шкідливих умовах (наприклад, в умовах радіоактивного зараження) або для оперативної оцінки ситуації та ухвалення рішень, коли особиста участь експерта утруднена або неможлива (наприклад, на кораблях далекого плавання).
Приклади сфер застосування ЕС:
- інтерпретація даних експериментів,
- виявлення хімічних і біологічних структур,
- прогнозування подій після природних або техногенних катастроф,
- діагностика несправностей техніки або захворювань людини,
- планування цільових експериментів,
- пошук корисних копалин,
- керування наземним транспортом,
- тощо.
Метою дослідженьв області експертних систем є розробка таких програм (пристроїв), що при вирішенні важких для експерта-людини завдань одержують не гірші за якістю та ефективністю результати, в порівнянні з експертними результатами. У більшості випадків ЕС вирішують важкоформалізовувані завдання або такі, що не мають алгоритмічного рішення.
Класифікація експертних систем:
Основні задачі, що ставляться для ЕС, описані нижче:
- Інтерпретація – аналіз спостережуваних даних чи ситуацій з метою визначення їх змісту чи опису. Прикладом ЕС такого типу є SIAP, що використовується для виявлення та ідентифікації різних типів океанських суден.
- Діагностика – класифікація та пошук несправностей у живих чи неживих системах, що базуються на результатах інтерпретації. Прикладом діагностичної ЕС є ANGY, що допомагає здійснювати діагностику та терапію звуження коронарних судин. Для діагностики помилок в апаратурі та математичному забезпеченні ЕОМ використовується ЕС GRIP.
- Моніторинг – порівняння спостережуваних величин чи ситуацій з опорними (критичними) точками плану та видача повідомлень при відхиленні від плану; інший вид моніторингу – неперервний процес інтерпретації сигналів і видача повідомлень у ситуаціях, що вимагають втручання системи вищого рівня або людини. Приклади: допомогу диспетчерам атомного реактора забезпечує ЕС REACTOR; контроль аварійних датчиків на хімічному заводі – FALCON.
- Проектування – знаходження такої конфігурації компонентів системи, що задовольняє цільовим умовам та множині проектних обмежень. Прикладом є ЕС SYN для синтезу електричних ланцюжків.
- Прогнозування – проектування можливих наслідків даної ситуації. Прикладами таких ЕС є: WILLARD для передбачення погоди, ECON для здійснення прогнозів в економіці, тощо.
- Планування – розробка послідовності дій для досягнення множини поставлених цілей при заданих початкових умовах і часових обмеженнях. Прикладами ЕС цього типу є система ISIS для планування промислових замовлень, MOLGEN для планування експериментів, тощо.
- Інструктування (навчання) – допомога в освітньому процесі для вивчення певної дисципліни. Системи навчання за допомогою ЕОМ діагностують помилки при вивченні певного предмету та підказують правильні рішення, а також – планують процес спілкування учителя з учнем, в залежності від успіхів учня з метою передачі знань. Приклад: система PROUST для вивчення мови програмування Паскаль.
- Керування – керування поведінкою складного середовища або системи.
- Тестування – перевірка якості роботи за допомогою спеціальних тестів.
- Ремонт – виконання плану організації виправлення деякого виявленого дефекту.
Класифікація ЕС за зв'язком з реальним часом:
- Квазідинамічні ЕС інтерпретують ситуацію, що змінюється з деяким фіксованим інтервалом часу. Приклад: мікробіологічні ЕС, що знімають лабораторні виміри та покази щодо певного процесу раз в 4–5 годин (например, при виробництві лізину) та аналізують динаміку одержаних показників по відношенню до попередніх результатів.
- Статичні ЕС розробляються для предметних областей, для яких база знань та інтерпретовані дані не змінюються в часі, а є повністю стабільними. Приклади: діагностика несправностей в автомобілях.
- Динамічні ЕС працюють разом із датчиками об'єктів у режимі реального часу з неперервною інтерпретацією даних, що надходять. Прикладами є керування гнучкими промисловими комплексами, моніторинг в палатах реанімації, тощо.
Згідно класифікації за типом ЕОМ, нині існують:
- ЕС для унікальних стратегічно важливих задач на суперкомп’ютерах (таких, як Ельбрус, CRAY, CONVEX та інші);
- ЕС на ЕОМ середньої потужності;
- ЕС на символьных процесорах та робочих станціях (SUN, APOLLO);
- ЕС на міні- та суперміні- ЕОМ (VAX, micro- VAX і т.д.);
- ЕС на персональних комп’ютерах (IBM PC, MAC II та ініш).
Класифікація за ступенем інтеграції з іншими програмами:
- Автономні ЕС працюють безпосередньо в режимі консультації з користувачем для вирішення специфічних «експертних» завдань, при чому немає необхідності залучати традиційні методи опрацювання даних, моделювання, тощо.
- Гібридні ЕС – це програмні комплекси, що мають у собі стандартні пакети прикладних програм (наприклад, математичну статистику, лінійне програмування або системи керування базами даних) і засоби маніпулювання знаннями.
Означення продукційної експертної системи
Продукційна система – це спосіб представлення знань у вигляді:
1. невпорядкованого набору продукційних правил,
2. робочої пам’яті,
3. механізму логічного виведення типу «розпізнавання-дія».
Продукційні правила часто називають ще продукціями. Продукція – це пара типу «умова-дія», «ситуація-дія», «причина-наслідок», «умова-висновок» і т.д., що визначає одну порцію знань, необхідних для вирішення завдання. В умовній частині правила, природно, знаходяться умови, при яких виконується інша частина правила – частина дії.
Узагальнений запис правила-продукції такий:
,де
– ідентифікатор -продукції в -наборі продукцій; – пріоритет правила продукції; – передумова застосовності ядра продукції, що є предикатом, при виконанні якого активізується ядро продукції; – ядро продукції; – дії та процедури, що повинні бути виконані після виконання ядра продукції.Ядро продукції може бути детермінованим або недетермінованим, в залежності від того, чи воно звучить як «Якщо
, то » (детерміноване), чи як «Якщо , то, можливо, » (недетерміноване). Тобто в деяких випадках при виконанні умови друга частина виконується обов’язково, а в інших випадках – з певною ймовірністю. При чому велиина цієї ймовірності може бути також визначена. Тоді ядро правила буде звучати як «Якщо , то з ймовірністю реалізувати ».Детерміновані продукції можуть також бути однозначними або альтернативними. В другому випадку в правій частині ядра вказуються альтернативні можливості вибору, що оцінюються спеціальними вагами коефіцієнтами вибору. В якості таких ваг можуть бути ймовірнісні, лінгвістичні, експертні оцінки, тощо. Наприклад: «Якщо
, то найчастіше реалізовується , а рідше – ».У системі, що базується на продукційних правилах, їх кількість визначає розмір бази знань. Достатньо складні системи можуть використовувати бази знань, що містять більше, ніж 5000 продукційних правил. Тому при складанні правил необхідно:
1. використовувати мінімально достатній набір умов для визначення продукційного правила,
2. уникати суперечливих продукційних правил,
3. конструювати правила, опираючись на структуру відповідної предметної області.
Робоча пам'ять містить опис поточного стану об’єкта в процесі міркувань, який співставляється з умовними частинами продукційних правил з метою вибору відповідних дій при рішенні завдання. Якщо умова деякого правила відповідає вмісту робочої пам'яті, то може виконуватися дія, пов'язана із цією умовою. Дії продукційних правил призначені для зміни вмісту робочої пам'яті.
Механізм «розпізнавання-дія» (пошук за зразком). Поточний стан досліджуваної предметної області відображений в робочій пам'яті у вигляді сукупності образів, кожен з яких представляється за допомогою фактів. Факти співставляються з умовними частинами продукцій та вибираються відповідні правила. Якщо факти співпали з умовами більше, ніж одного правила, то такі правила утворюють так звану конфліктну множину і називаються допустимими. Відповідно до обраного механізму вирішення конфлікту вибирається та активізується одна із продукций конфліктної множини. Активація правила означає виконання його дії. При цьому змінюється вміст робочої пам'яті і далі все повторюється. Процес закінчується, якщо вміст робочої пам'яті не відповідає жодній з умов наявних продукційних правил.