Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекцыи екон та орг / Змістовий модуль 4.doc
Скачиваний:
44
Добавлен:
23.02.2016
Размер:
971.78 Кб
Скачать

Змістовий модуль 6. Експертні системи. Інтелектуальні інформаційні системи (4 год.)

Мета: Ознайомитися з функціями та засобами програмного засобу MatLab для створення систем з нечіткою логікою. Створення нечітких мереж засобами MatLab.

План лекції:

1. Поняття та призначення експертних систем. Структура експертних систем

2. Організація знань в робочій системі.

3. Нейро - нечіткі мережі. Нечітка логіка в MatLab.

1. Поняття та призначення експертних систем. Структура експертних систем.

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

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

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

2. технологія ЕС є найважливішим засобом у вирішенні глобальних проблем традиційного програмування: тривалість і, отже, висока вартість розробки складних додатків;

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

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

На думку провідних фахівців, в недалекій перспективі ЕС знайдуть наступне застосування:

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

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

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

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

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

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

4. динамічно змінюються даними і знаннями.

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

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

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

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

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

Типова статична ЕС складається з наступних основних компонентів

інтерпретатора;

робочої пам'яті (РП), званої також базою даних (БД);

бази знань (БЗ);

компонентів придбання знань;

пояснювального компонента;

діалогового компонента.

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

База знань (БЗ) в ЕС призначена для зберігання довгострокових даних, що описують розглянуту область (а не поточних даних), і правил, що описують доцільні перетворення даних цієї області.

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

Компонент придбання знань автоматизує процес наповнення ЕС знаннями, здійснюваний користувачем-експертом.

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

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

У розробці ЕС беруть участь представники наступних спеціальностей:

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

2. інженер по знаннях - фахівець з розробки ЕС (використовувані ним технологію, методи називають технологією (методами) інженерії знань);

3. програміст по розробці інструментальних засобів (ІС), призначених для прискорення розробки ЕС.

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

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

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

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

Експертна система працює в двох режимах: режимі придбання знань і в режимі рішення задачі (званому також режимом консультації або режимом використання ЕС).

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

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

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