Огляд видів експертних систем та їх класифікація

Blue check.png Дана стаття являється неперевіреним навчальним завданням.
Студент: Лунак О.
Викладач: Назаревич О. Б.
Термін до: 10 березня 2012

До вказаного терміну стаття не повинна редагуватися іншими учасниками проекту. Після завершення терміну виконання будь-який учасник може вільно редагувати дану статтю і витерти дане попередження, що вводиться за допомогою шаблону.


{{{img}}}
Імя Олена
Прізвище Лунак
По-батькові Михайлівна
Факультет ФІС
Група СНм-51
Залікова книжка СНм-11-235


Репозиторія
Презентація доповіді на тему Огляд видів експертних систем та їх класифікація
є розміщеною в Репозиторії.


Експертні системи - це методологія адаптації алгоритму успішних рішень одної сфери науково-практичної діяльності в іншу. З поширенням комп’ютерних технологій це тотожна (подібна, основана на оптимізуючому алгоритмі) інтелектуальна комп'ютерна програма, що містить знання та аналітичні здібності одного або кількох експертів у відношенні до деякої галузі застосування і здатна робити логічні висновки на основі цих знань, тим самим забезпечуючи вирішення специфічних завдань (консультування, навчання, діагностика, тестування, проектування тощо) без присутності експерта (спеціаліста в конкретній проблемній галузі).

Експертні системи - це клас комп’ютерних програм, які пропонують рекомендації, проводять аналіз, виконують класифікацію, дають консультації і ставлять діагноз. Вони орієнтовані на розв’язування задач, вирішення яких вимагає проведення експертизи людиною-спеціалістом. На відміну від програм, що використовують процедурний аналіз, експертні системи розв’язують проблеми у вузькій предметній площині (конкретній ділянці експертизи) на основі логічних міркувань. Такі системи часто можуть знайти розв’язок задач, які неструктуровані і неточно визначені. Вони через використання евристик компенсують відсутність структурованості, що корисно в ситуаціях, коли недостатня кількість необхідних даних або часу виключає можливість проведення повного аналізу.
Основою експертної системи є сукупність знань, яка структурується для спрощення процесу прийняття рішення. Для спеціалістів в галузі штучного інтелекту термін “знання“ означає інформацію, що потрібна програмі для того, щоб вона вела себе інтелектуально. Ця інформація приймає форму фактів або правил. Факти і правила не завжди правдиві або неправильні, інколи існує деяка міра неправильності в достовірності факту або точності правила. Якщо сумнів виражається явно, то він називається коефіцієнтом впевненості.

Знання

Основою експертних систем є знання.
Знання - це цілісна і систематизована сукупність понять про закономірності природи, суспільства і мислення, нагромаджена людством в процесі активної перетворюючої діяльності і спрямована на подальше пізнання і зміни об’єктивного світу. Знання з предметної ділянки називається базою знань. База знань експертної системи містить факти (дані) і правила (способи подання знань). Механізм висновку містить: інтерпретатор, який визначає, як застосовувати правила для виводу нових знань, та диспетчерів, що встановлюють порядок застосування цих правил.

Експертна система містить три типи знань:

  1. Структуровані знання про предметну ділянку - після того, як ці знання виявлені, вони не змінюються;
  2. Структуровані динамічні знання - змінні знання з предметної ділянки, які обновляються по мірі виявлення нової інформації;
  3. Робочі знання, які використовуються для розв’язування конкретної задачі або проведення консультації.

Всі перераховані знання зберігаються в базі знань. Для її побудови потрібно провести опит спеціалістів, які є експертами в конкретній предметній ділянці, а потім систематизувати, організувати та індексувати отриману інформацію для простоти її використання.

Склад експертної системи

Повністю оформлена ЕС включає 4 важливі компоненти:

  1. База знань;
  2. Машина висновку;
  3. Інтерпретатор команд;
  4. Інтерфейс (система пояснення).
Склад експертної системи

Ядром ЕС є БЗ та процедура висновку. Їх слід розглядати разом, оскільки знання, на основі яких не можна зробити висновки, не мають сенсу.

База знань База знань це сукупність всіх знань що містить експертна система.
Зазвичай БД описують на логічному та фізичному рівнях:

  • Логічний рівень даних: концептуальна схема, яка у структурованому вигляді описує предметну область та її кількісні характеристики у вигляді даних;
  • Фізичний рівень даних: схема, що показує адреси даних в зовнішній пам’яті ЕОМ (файлові структури з різним доступом).

Машина висновку

В галузі ЕС існують суперечки між прихильниками „прямого ланцюжка міркувань” та „зворотного ланцюжка міркувань” як стратегії логічного висновку в цілому. Перше – ланцюг міркувань, що веде від даних до гіпотез, а друге - спроба найти дані для доведення або спростування певної гіпотези.
Прямий ланцюг часто веде до некерованого режиму виникнення питань в діалозі, а зворотний – до наполегливого повторення питань щодо мети. З цієї причини найбільш вдалі системи використовують комбінацію обох ланцюгів. Але в якому б напрямі ні працювала процедура, вона буде мати справу з ненадійними даними, що краще відповідає реальному світу, ніж попередні абстракції, хоча останні зручніше втискувалися в жорсткі рамки комп’ютера.

Інтерпретатор команд

Інтерпретатор команд визначає, як застосовувати правила для виводу нових знань, та диспетчерів, що встановлюють порядок застосування цих правил.

Інтерфейс (система пояснення)

Спеціаліст використовує інтерфейс для введення інформації і команд в експертну систему та одержання вихідної інформації з неї. Команди містять у собі параметри, що спрямовують процес опрацювання знань. Інформація звичайно видається у формі значень, що присвоюються певним змінним.
Технологія експертних систем передбачає можливість одержувати в якості вихідної інформації не тільки рішення, але і необхідні пояснення.

Розрізняють два види пояснень:

  • пояснення, що видаються за вимогою. Користувач у будь-який момент може зажадати від експертної системи пояснення своїх дій;
  • пояснення отриманого рішення проблеми. Після одержання рішення користувач може зажадати пояснень того, як воно було отримано. Система повинна пояснити кожний крок своїх міркувань, що ведуть до розв’язання задачі. Хоча технологія роботи з експертною системою не є простою, інтерфейс користувача цих систем є дружнім і звичайно не викликає труднощів при веденні діалогу.

Класифікація експертних систем

Класифікація ЕС за завданням, що вирішується:

  • Інтерпретація даних
  • Діагностика
  • Моніторинг
  • Проектування
  • Прогнозування
  • Планування
  • Навчання
  • Керування
  • Підтримка ухвалення рішень

Класифікація ЕС за зв'язком з реальним часом:

  • Статичні ЕС
  • Квазідинамічні ЕС
  • Динамічні ЕС

Класифікація ЕС за цілями навчання:

  • Системи, в яких проблематично сформулювати цілі навчання
  • Системи, в яких можна сформулювати ціль навчання, але невідомо, як це зробити
  • Системи з відомими цілями та стратегіями навчання

Етапи розробки експертних систем

Етапи розробки ЕС:

  • Етап ідентифікації проблем - визначаються завдання, які підлягають вирішенню, виявляються цілі розробки, визначаються експерти і типи користувачів
  • Етап витягання знань - проводиться змістовний аналіз проблемної області, виявляються поняття і їх взаємозв'язки, визначаються методи розв'язання задач.
  • Етап структуризації знань - обираються ІС і визначаються способи подання всіх видів знань, формалізуются основні поняття, визначаються способи інтерпретації знань, моделюється робота системи, оцінюється адекватність цілям системи зафіксованих понять, методів рішень, засобів представлення й маніпулювання знаннями.
  • Етап формалізації - здійснюється наповнення експертом бази знань. У зв'язку з тим, що основою ЕС є знання, даний етап є найбільш важливим і найбільш трудомістким етапом розробки ЕС. Процес придбання знань поділяють на вилучення знань з експерта, організацію знань, що забезпечує ефективну роботу системи, і представлення знань у вигляді, зрозумілому ЕС. Процес придбання знань здійснюється інженером зі знань на основі аналізу діяльності експерта з вирішення реальних завдань.
  • Реалізація ЕС - відбувається створення одного або декількох прототипів ЕС котрі вирішують поставлені задачі.
  • Етап тестування - проводиться оцінка обраного способу представлення знань в ЕС в цілому.

Область застосування експертних систем

Експертні системи досить давно використовуються у діагностиці, зокрема у медичній та автомобільній. Також ЕС використовують в прогнозуванні, плануванні, контролі, управлінні та навчанні. Наприклад, експертні системи вже застосовуються в банківській справі в таких напрямках:

  • програмах аналізу інвестиційних проектів
  • програмах аналізу стану валютного, грошового та фондового ринку
  • програмах аналізу кредитоспроможності чи фінансового стану підприємств і банків.

Процес створення експертних систем значно змінився за останні роки. Завдяки появі спеціальних інструментальних засобів побудови експертних систем значно скоротились терміни та зменшилась трудомісткість їх розробки.

Переваги та недоліки ЕС

Переваги:

  • сталість: знання експертної системи зберігаються протягом невизначено довгого часу і нікуди не зникають, у той час як людська компетенція слабшає із часом, перерва у діяльності людини-експерта може серйозно відбитися на її професійних якостях, крім того експерти-люди можуть піти на пенсію, звільнитися з роботи або вмерти, тобто їхні знання можуть бути втрачені;
  • легкість передачі або відтворення: передача знань від однієї людини до іншої – довгий і дорогий процес, передача штучної інформації – це простий процес копіювання програми або файлу даних;
  • підвищена доступність: експертна система – засіб масового виробництва експертних знань, що дозволяє багатьом користувачам одержати доступ до експертних знань;
  • можливість одержання й об’єднання експертних знань з багатьох джерел: за допомогою експертних систем можуть бути зібрані знання багатьох експертів і притягнуті до роботи над задачею, виконуваної одночасно і безупинно у будь-яку годину дня і ночі; рівень експертних знань, скомбінованих шляхом об’єднання знань декількох експертів, може перевищувати рівень знань окремо узятого експерта-людини;
  • стійкість і відтворюваність результатів: експерт-людина може приймати в тотожних ситуаціях різні рішення через емоційні фактори або утому, у той час, як результати експертних систем стабільні і являють собою незмінно правильні, позбавлені емоцій і повні відповіді за будь-яких обставин;
  • низька вартість: експерти, особливо висококваліфіковані, обходяться дуже дорого, у той час, як експертні системи, навпаки, є порівняно недорогими – їхня розробка є дорогою, але вони є дешевими в експлуатації: вартість надання

експертних знань у розрахунку на окремого користувача істотно знижується;

  • зменшена небезпека: експертні системи можуть використовуватися в таких варіантах середовища, що можуть виявитися небезпечними для людини;
  • швидкий відгук: експертна система може реагувати швидше і бути більш готовою до роботи, ніж експерт-людина, особливо в деяких екстрена льних ситуаціях, де може знадобитися більш швидка реакція, ніж у людини;
  • підвищена надійність: застосування експертних систем дозволяє під вищити ступінь довіри до того, що прийнято правильне рішення, шляхом надання ще однієї обґрунтованої думки людині-посереднику за наявності неузгоджених думок між декількома експертами-людьми;
  • можливість пояснення рішень: експертна система здатна докладно пояснити свої рішення, що привели до визначеного висновку, а людина може виявитися занадто втомленою, не схильною до пояснень або нездатною робити це постійно;
  • можливість застосування в якості інтелектуальної навчальної програми: експертна система може діяти як інтелектуальна навчальна програма, передаючи учню на виконання приклади програм і пояснюючи, на чому засновані судження системи;
  • можливість застосування у якості інтелектуальної бази даних: експертні системи можуть використовуватися для доступу до баз даних за допомогою інтелектуального способу доступу;
  • формалізація і перевірка знань: у процесі розробки експертної системи знання експертів-людей перетворяться в явну форму для введення в комп’ютер, у результаті чого вони стають явно відомими і з’являється можливість перевіряти знання на правильність, несуперечність і повноту.

Недоліки:

  • експертні системи погано вміють: подавати знання про часові та просторові відношення, розмірковувати, виходячи зі здорового глузду, розпізнавати межі своєї компетентності, працювати із суперечливими знаннями;
  • інструментальні засоби побудови експертних систем погано вміють: виконувати набуття знань, уточнювати бази знань, працювати зі змішаними схемами подання знань;
  • побудова експертних систем не під силу кінцевому користувачу, який не володіє експертними знаннями про проблемну область;
  • необхідність залучення людини-експерта з проблемної області, що є носієм знань; неможливість повного відмовлення від експерта-людини;
  • можливі труднощі взаємодії експерта зі спеціалістом-когнітологом, який шляхом діалогу з експертом оформляє отримані від експерта знання в обраному формалізмі подання знань;
  • необхідність повної переробки програмного інструментарію, у випадку, якщо наявна оболонка експертної системи та / або використовувана нею модель подання знань погано підходять для обраної проблемної області, задачі;
  • тривалість процесів витягу знань з експерта, їхньої формалізації, перевірки на несуперечність і усунення протиріч.

Головна відмінність ІС і ЕС від інших програмних засобів - це наявність бази знань (БЗ), у якій знання зберігаються у формі, зрозумілій фахівцям предметної області і можуть бути змінені і доповнені також у зрозумілій формі. Це і є мови представлення знань - МПЗ.

Відомі експертні системи

Можна навести такі відомі експертні системи:

  • CLIPS — мова програмування, використовується для створення експертних систем
  • Dendral — аналіз даних мас-спектрометрії
  • Dipmeter Advisor — аналіз даних, отриманих під час пошуку нафти
  • Jess — від англ. Java Expert System Shell, оболонка експертних систем на Java. Рушій CLIPS реалізований на мові програмування Java, використовується для створення експертних систем
  • MQL 4 — MetaQuotes Language 4, спеціалізована мова програмування для опису фінансової стратегії
  • Mycin — діагностика інфекційних хвороб крові та рекомендація антибіотиків
  • Prolog — мова програмування, використовується для створення експертних систем
  • R1 (експертна система)/XCon — обробка замовлень
  • SHINE Real-time Expert System — від англ. Spacecraft Health INference Engine, рушій для отримання даних про стан і безпеку космічного корабля
  • STD Wizard — експертна система для рекомендації та вибору медичних аналізів (діагностики)

ЕС на сучасному етапі

Експертні системи досить молоді - перші системи такого роду, MYCIN [Shortliffe, 1976] і DENDRAL [Buchanan, Feigenbaum, 1978], з'явилися в США в середині 70-х рр. У даний час у світі нараховується кілька тисяч промислових ЕС, що дають поради:

  • при керуванні складними диспетчерськими пультами, наприклад мережі розподілу електроенергії;
  • при постановці медичних діагнозів - ARAMIS [Shortliffe, Buchanan, Feigenbaum, 1979], NEUREX [Reggia, 1988];
  • при пошуку несправностей в електронних приладах, діагностика відмовлень контрольно-вимірювального устаткування - Intelligence Ware [Slagle, Gardiner, Kyungsook, 1990];
  • по проектуванню інтегральних мікросхем - DAA [Сойер, Фостер, 1988];
  • по керуванню перевезеннями - AIRPLAN [Masui, McDermott, 1983];
  • по прогнозуванню воєнних дій - ANALYST [Bonasso, 1984];
  • по формуванню портфеля інвестицій, оцінці фінансових ризиків - RAD [Kestelyn,1992], оподатковуванню - RUNE [Durkin, 1998] і т.д.

Список літературних джерел

  • Попов Э.В. Экспертные системы реального времени./Открытые системы, 2(10), 1995.
  • Уотермен Д. Руководство по экспертным системам: пер. с англ./ Под ред. В.Л. Стефанюка. - М.: Мир, 1989.
  • Курс «Експертні системи», Дистанційне навчання ТНТУ.

Посилання