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

Лабораторная работа №7 / Теория (входящий) / ТЕОРЕТИЧНІ ПИТАННЯ ЕКСПЕРТНИХ СИСТЕМ

.htm
Скачиваний:
25
Добавлен:
09.05.2015
Размер:
332 Кб
Скачать

ТЕОРЕТИЧНІ ПИТАННЯ ЕКСПЕРТНИХ СИСТЕМ ТЕОРЕТИЧНІ ПИТАННЯ ЕКСПЕРТНИХ СИСТЕМ   Області застосування експертних систем В даний час експертні системи використовуються в наступних областях:

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

-  прогноз, тобто прогнозування  ходу подій  у майбутньому на підставі моделі минулого чи сьогодення, іншими словами, висновок ймовірних наслідків із заданих ситуацій при наявності, як правило, неповної інформації;

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

-   моніторинг, тобто порівняння спостережень із критичними крапками плану і видача повідомлень при відхиленні від плану. Наприклад, контроль стану післяопераційного хворого при використанні апарата штучного дихання;

-   планування, тобто формування плану дій, які варто виконувати для досягнення поставлених цілей. Наприклад, планування експерименту в молекулярній генетиці;

-   проектування, тобто побудова визначених конфігурацій об'єктів, що задовольняють заданим вимогам і обмеженням. Наприклад, проектування цифрових чи логічних схем для ЕОМ;

-  налагодження, тобто вироблення рекомендацій з усунення несправностей;

-  ремонт, тобто виконання плану організації виправлення деякого виявленого дефекту;

-   керування, тобто керування поводженням деякої системи. Наприклад, керування повітряним чи наземним транспортом.

 

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

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

 

Ідеальна експертна система повинна володіти наступними основними властивостями:

-  компетентністю, тобто прийняті нею рішення повинні бути такого ж високого рівня, як і в експерта-професіонала;

-  здатністю до міркування на основі символьних перетворень;

-  здатністю використовувати як загальні, так і частки схеми міркування;

-  здатністю вирішувати важкі задачі зі складних реальних, предметних областей;

-  здатністю до пере формулювання запитів і задач;

-  здатністю до метарозмірковуванням, тобто до міркувань про власну роботу і структуру.

Ці властивості характеризують експертну систему як деякий клас систем штучного інтелекту, у складі яких обов'язкова наявність бази знань і деякої схеми міркування, яка називається системою логічного висновку.

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

Дослідники в області експертних систем для назви своєї дисципліни використовують термін knowledge engineering (буквально "інженерія знань"), включаючи в коло вивчення власне наукові, технологічні і методологічні питання. Цей термін був уведений Фейгенбаумом [1977]. Задачу даної дисципліни Фейгенбаум визначив як "привнесення принципів і інструментарію досліджень з області штучного інтелекту в рішення важких прикладних проблем, що вимагають знань експертів". Термін "експертні системи" використовується не тільки як родова назва систем, що імітують діяльність експерта, але і для позначення відповідної науково-технічної дисципліни.

Принципи створення експертних систем 1.          Потужність експертної системи обумовлена в першу чергу потужністю бази знань і можливістю її поповнення і тільки в другу чергу - використовуваними нею методами (процедурами).

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

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

Учасники процесу розробки експертної системи: 1.      Експерт у тій проблемній області, задачі якої буде вирішувати ЕС;

2.      Інженер по знаннях — фахівець з розробки ЕС;

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

Звичайно в розробці ЕС бере участь не менш чотирьох чоловік (1 експерт, 2 інженера по знаннях і 1 програміст). Необхідно особливо підкреслити, що відсутність серед учасників інженера по знаннях (тобто заміна їх програмістами) або приводить до невдачі процес розробки ЭС, або значно подовжує цей процесі.

У експертних системах вирішуються, як правило, неформалізовані задачі. До неформалізованого відносять задачі, що володіють однієї чи декількома з наступних характеристик:

-  задачі не можуть бути задані в числовій формі;

-  мети не можуть бути виражені в термінах точно визначеної цільової функції;

-  не існує алгоритмічного рішення задач;

-  алгоритмічне рішення існує, але його не можна використовувати через обмеженість ресурсів (час, пам'ять).

Неформалізовані задачі звичайно мають наступні особливості:

-  помилковість, неоднозначність, неповнота і суперечливість вихідних даних;

-  помилковість, неоднозначність, неповнота і суперечливість знань про проблемну область і про розв'язувану задачу;

-  великою розмірність простору рішення, тобто перебір при пошуку рішення дуже великий;

-  динамічно змінювальні дані і знання.

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

Етапи придбання системою знань У зв'язку з тим, що основним джерелом потужності ЭС є знання, ЭС повинні мати здатність здобувати знання.

 

Етапи придбання системою знань.

1.      Одержання знань від експерта;

2.      Організація знань, що забезпечує ефективну роботу системи;

3.      Представлення знань у зрозумілому системі виді.

 

Процес придбання знань здійснюється на основі аналізу діяльності експерта, що вирішує реальні задачі, так називаним "інженером по знаннях" (knowledge engineer). Процес придбання знань характеризується безліччю аспектів. Найбільш важливі з них:

-  фази придбання знань;

-  моделі придбання знань;

-  номенклатура знань;

-  рівні знань;

-  засоби налагодження знань.

 

Фази придбання знань:

-  попередня фаза;

-  початкова фаза;

-  фаза нагромадження.

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

 

На фазі нагромадження зважуються задачі:

-  виявлення неправильності, чи неповноти суперечливості знань, використовуваних ЭС;

-  витяг нових знань, що усувають виявлену неправильність, чи неповноту суперечливість;

-  перетворення нових знань у вид, зрозумілий ЭС;

-  об'єднання “нових” знань з “старими”.

 

Моделі придбання знань експертною системою:

-  за допомогою інженера по знаннях.

-  за допомогою інтелектуального редактора.

-  за допомогою індуктивної програми.

-  за допомогою програми розуміння тексту.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

На мал. 2 наведена схема придбання знань, на основі моделі, що використовує інтелектуальний інтерфейс.

Процеси (процедурні знання) представлені у виді прямокутників, обмежених одинарною лінією, а дані (декларативні знання) – у виді прямокутників, границі яких зображені подвійною лінією.

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

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

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

xi → Wyi (i=1,…,l), де хi, yi — слова в алфавіті С. Нехай деяке слово ψ починається словом хi,. Застосувати до ψ продукцію хі → Wyi — це значить викреслити з ψ початковий відрізок хi, і потім до слова, що залишилося, приписати слово уі,. Наприклад, застосувавши до слова аЬа продукцію аь → Wс, одержимо слово ас.

Кожна система продукций розуміється як формальна система з правилами висновку pi (i = 1…,l), де рi(Ф, ψ) вважається застосовним, якщо слово ψ виходить з Ф за допомогою продукції хі → Wyi.

Наклавши на набір упорядкованих продукций неявну керуючу структуру, ми переходимо до поняття нормального алгоритму Маркова. В алгоритмі Маркова упорядковані продукції (формули підстановок) застосовуються до деякого заданого слова. Перша ж з упорядкованих продукций, що може бути застосована до слова, застосовується, змінюючи слово. Потім процес перевірки застосовності продукций продовжується, починаючи з продукції, що має найвищий пріоритет. Цей цикл "перевірка / виконання" продовжується доти, поки не знайдеться ні однієї застосовної продукції або не буде застосована деяка продукція, позначена як заключна.

Психологічні дослідження процесів прийняття рішень людиною показали, що, міркуючи, людина використовує правила, аналогічні продукциям, тобто правила виду "умова - дія". Ньюэлл [1973] запропонував використовувати продукционные системи для моделювання на ЕОМ процесу прийняття рішень. Формалізуючи пропозиції Ньюэлла, визначимо продукционную систему (PS) у такий спосіб: РS={F,Р,I), де F — робоча пам'ять системи (база даних), що містить поточні дані (елементи робочої пам'яті), Р — база знань, що містить безліч продукций (правил виду: "умова -> дія"). I— інтерпретатор (решатель), що реалізує процедури висновку.

Інтерпретатор (решатель) виконує наступні дії:

1)       визначає безліч зазначених правил, що задовольняються на деякому наборі поточних даних;

2)       виконує визначені означування, роблячи зміни в робочій пам'яті. Інтерпретатор може бути представлений четвіркою: I = (V, S, R, W),

де V— процес вибору, що здійснює вибір з Р та з F підмножин активних продукций Рv і підмножини активних даних Fv відповідно, які будуть використані в черговому циклі роботи інтерпретатора. Механізм вибору може бути тривіальним (на кожнім циклі вибираються всі правила і всі дані) чи більш складним для того, щоб усунути з розгляду ті правила, умови яких свідомо не задовольняються на даних робочої чи пам'яті малокорисні. В ускладнених системах механізм вибору може використовувати ієрархію правил, метаправила чи складні схеми керування.

S — процес зіставлення, що визначає безліч пар: правило (рi) - дані (di), де рiєРv, { di ) Ì Fv, причому кожне рi застосовно до елементів безлічі di (будемо також говорити, що “рi, задовольняється на елементах безлічі di"). Операція зіставлення може вимагати багато часу, тому що в загальному випадку спричиняє визначення багатьох змінних.

R — процес вирішення конфліктів (чи процес планування). Механізм вирішення конфліктів может бути неявним чи явним (наприклад, у виді деякої безлічі метаправил чи процедур, що описують вибір виконуваного правила).

W — процес, що здійснює виконання обраного зазначеного правила (тобто виконання дій, зазначених у правій частині правила). Результатом виконання є модифікація даних у F чи операція введення / висновку.

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

1.      Здатність вести діалог про розв'язувану задачу мовою, зручною користувачу (експерту), і, зокрема, здобувати в ході діалогу нові знання.

2.      Здатність при рішенні задачі вистроювати лінії міркування, зрозумілі користувачу (експерту);

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

Перша вимога реалізується лінгвістичним процесором ЕС і компонентом придбання знань, а для виконання другої і третьої вимог у ЕС уводиться пояснювальний компонент. Крім того, друга вимога накладає обмеження на спосіб рішення задачі — хід міркування в процесі рішення повинна бути зрозумілим користувачу (експерту). Дане обмеження приводить до того, що в експертних системах, як правило, незастосовні, наприклад, статистичні методи.

Типова експертна система має наступні компоненти. 1.      База знань, що зберігає безліч продукций (у загальному випадку - правил).

2.      Робоча пам'ять, що зберігає дані (база даних).

3.      Інтерпретатор, що вирішує на основі наявних у системі знань пред'явлену йому задачу.

4.      Лінгвістичний процесор, що здійснює діалогову взаємодію з користувачем (експертом) на природному для нього мові (природна мова, професійна мова, мова графіки, і т.п.).

5.      Компонента придбання знань.

6.      Пояснювальний компонент, що дає пояснення дій системи і відповідає на питання про тім, чому деякі висновки були зроблені чи відкинуті.

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

-  перетворює повідомлення системи, виражені внутрішньою мовою, у повідомлення на обмеженій природній мові.

 

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

 

Пояснювальний блок повідомляє:

-  як правила використовують інформацію користувача;

-  чому використовувалися (не використовувалися) дані правила;

-  які були зроблені висновки. Усі пояснення даються на обмеженій природній мові.

База Знань (БЗ) Knowledge Base - організована сукупність знань, що відносяться до якої-небудь предметної області. Знанням є перевірений практикою результат пізнання дійсності. Це накопичені людством істини, факти, принципи та інші об'єкти пізнання. На відміну від бази даних  (БД), у БЗ розташовуються пізнавальні зведення, що містяться в документах, книгах, статтях, звітах.

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

-  Спільність - це зв'язок двох елементів по змісту їхніх характеристик.

-  Принцип партитивности має на увазі співвідношення цілого і його частин.

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

-  Взаємозв'язок відображає взаємну залежність елементів.

Бази широко використовуються не тільки для одержання користувачами тих чи інших знань. Вони також застосовуються і при вирішенні задач искусственного інтелекту. Так, у рамках експертних систем використовуються два важливих класи баз.

-  Статична БЗ містить зведення, що відбивають специфіку конкретної області і залишаються незмінними в ході рішення задачі.

-  Динамічна БЗ використовується для збереження даних, істотних для рішення конкретної задачі і необхідних у процесі цього рішення.

-  Кожна БЗ включає набір зведень, правил і механізм логічного висновку.

Види знань Интерпретуємі знання – знання, що може інтерпретувати вирішувач (інтерпретатор). Всі інші – неінтерпретуємі.

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

Підтримуючі знання використовуються при створенні системи і при виконанні пояснень, вони виконують роль описів (обґрунтувань) знань і дій системи.

Технологічні підтримуючі знання містять зведення про час створення описуваних ними знань, про автора знань і т.д.

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

Знання про представлення містять інформацію про те, яким образом у системі представлені интерпретируемые знання.

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

Фактуальні знання (база фактів) являють собою інформацію про конкретні факти, що збирається за допомогою діалогу з користувачем, що вказує, які факти варто вважати щирими.

Операційні знання містять інформацію про те, як можна змінювати опис предметної області в ході рішення задачі.

Фокусуючі знання описують, які знання варто використовувати в тій чи іншій ситуації.

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