Комп'ютерні системи штучного інтелекту

1. Вступ до інтелектуальних систем (іс)

1.1 узагальнена структура іс.

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

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

На рисунку 1.1. Зображено базову структуру іс.

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

Рис. 1.1. Базова структура іс

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

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

При визначенні доцільності застосування зоспр використовують наступні критерії:

1)                                   Дані і знання надійні і можуть змінюватися з часом;

2)                                    Область можливих рішень відносно невелика;

3)                                   В процесі рішення задачі використовуються формальні судження;

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

2. Прикладні іс 2.1. Призначення, склад і структура ес 2.1.1. Призначення ес

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

-                                 Постійність;

-                                 Не протиріччя;

-                                 Передавання знань;

-                                 Документування процесу рішення задачі.

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

2. 1.2. Склад і структура ес

Структура ес приведена на рисунку 2.1.

Рисунок 2.1 структура ес.

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

Бз призначена для зберігання довгострокових даних чи фактів, які

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

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

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

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

2.1.3. Функціонування ес.

Ес працює у 2-х режимах:

1)                                    Отримання знань;

2)                                     Рішення задач (режим консультації і використання). Розглянемо процес побудови і використання ес (рисунок 2.2):

Запитання, задачі

Провіряє

Рисунок 2.3. Схема взаємодії розробників і ес.

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

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

1)                                         Як правило, використовуючи інформацію користувача;

2)                                         Чому використовувалися або не використовувалися факти чи правила;

3)                                         Які були зроблені висновки і т. Д.

Всі пояснення робляться, як правило, на природній звичайній мові або з використанням графіки.

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

В режимі отримання знань спілкування між експертом і системою здійснюється через інженера по знаннях (рисунок 2.3).

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

2.1.4. Класифікація інструментальних засобів побудови ес

На проектування і створення одної ес раніше потрібно було дуже багато часу. З використанням інструментальних засобів час розробки скоротився в 3-5 рази. Інструментальні засоби (із) поділяються на апаратні і програмні. До апаратних відносяться:

1)                   Еом он

2)                   Пеом

3)                   Інтелектуальні станції

4)                   Користувальні символічні еом. До програмних:

1)                   Символічні мови, що орієнтовані на створення ес (lisp, ...)

2)                   Мови інженерії знань (prolog, ... )

3)                   Cарес

4)                    Оболонки ес.

2.2. Методологія розробки ес 2.2.1.доцільність розробки ес.

Перш за все ніж приступити до розробки ес, необхідно рішити 3 наступні задачі:

1)                       Чи можлива розробка ес для даного додатку.

2)                       Чи оправдана розробка ес.

3)                       Чи відповідають методи інженерії знань задачі, що вирішується.

Щоб розробка ес була можлива необхідно одночасно виконати наступні вимоги:

1)                         Експерти в даній по це ті, які рішають задачу краще і швидше ніж починаючі спеціалісти;

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

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

4)                       Задача покладена на ес потребує тільки роздумів, а не дій;

5)                        Задача не повинна бути дуже складною і її рішення повинно займати у експерта декілька годин, а не декілька днів чи тижнів;

6)                        Задача хоч і не повинна бути виражена у формальному вигляді, але все таки повинна відноситися до достатньо зрозумілої і структурованої по;

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

Використання ес може бути можливим, але не оправданим. Застосування ес може бути оправдане одним із наступних факторів:

1)                       Рішення задачі принесе значний інтерес (прибуток, час і т. Д.);

2)                       Використання людини експерта не можливе по яких-небудь причинах;

3)                             При передачі інформації до експерта чи від нього виникають недопустимі втрати часу чи/або інформації.

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

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

2)                       Повинна мати евристичну природу;

3)                       Повинна бути достатньо складною, щоб оправдати затрати на розробку. Але не повинна бути надмірно складною, щоб ес могла її рішити;

4)                       Повинна бути практично вагомою.

Технологію розробки ес можна представити у вигляді наступної схеми (рисунок 2.4):

Рисунок 2.4. Технологія розробки ес.

2.2.2. Етап ідентифікації.

На даному етапі визначаються наступні компоненти:

                                      Учасники процесу проектування і їх ролі;

                                       Задачі, що будуть рішатися;

                                       Необхідні ресурси;

                                       Мета системи.

Визначення учасників і їх ролей зводиться до визначення кількості експертів і інженерів по знаннях, а також форм їх взаємовідносин. Зазвичай в основному циклі розробки ес беруть участь 3-4 чоловіки (1 експерт, 1-2 інженери, 1 програміст). Програміст використовується для модифікації і погодження інструментальних засобів. Для складних застосувань краще залучати декілька експертів. В цьому випадку необхідно, щоб один із експертів відповідав за непротиріччя знань, які отримані від всіх експертів. Взаємовідносини між експертом і інженером по знаннях будуються у вигляді: вчитель-учень. Поради інженерам наступні:

1)                                До початку взаємодії з експертом оволодіти основами задачі, для якої розробляється ес (в іншому випадку затягується розробка);

2)                                Не повинен спеціаліст, що працює в області, що нас інтересує бути експертом;

3)                                    Експерт не повинен створювати ес. Від експерта вимагається доступність (можливість спілкування з інженером довгий час) і віра в успіх.

Ідентифікація задачі полягає в складані опису задачі, що рішається і включає:

1)                               Загальні характеристики задачі;

2)                               Підзадачі, які виділенні в середині даної задачі;

3)                               Ключові поняття (об'єкти);

4)                               Характеристики і відношення;

5)                               Вхідні і вихідні дані;

6)                       Передбачуваний вигляд рішення;

7)                       Приклади і тести рішення задач.

Мета ідентифікації задачі - охарактеризувати задачу і структуру знань, що її підтримують. Якщо вихідна задача дуже складна з точки зору ресурсів, що використовуються, то етап ідентифікації може мати декілька ітерацій. В процесі ідентифікації інженер і експерт працюють в тісному контакті.

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

1)                       Джерела знань;

2)                       Час розробки;

3)                       Обчислювальні засоби (апаратне і програмне забезпечення);

4)                        Об'єм фінансування.

Ідентифікація цілей полягає в формулюванні у явному вигляді цілей побудови ес.

Приклади цілей:

1)                       Тиражування знань;

2)                        Автоматизація рутинних процесів експерта;

3)                       Отримання прибутку.

2.2.3. Етап концептуалізації.

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

1)                       Типи доступних даних;

2)                       Вихідні і вивідні дані, загальні задачі і підзадачі;

3)                       Стратегії і гіпотези, що використовуються;

4)                           Види взаємозв'зку між об'єктами по (ієрархія, причина-наслідок, частина-ціле і т. Д.);

5)                       Процеси, що використовуються в ході рішення задачі;

6)                       Типи обмежень, що накладаються на процеси;

7)                       Склад знань, які використовуються для рішення задачі;

8)                       Склад знань, які використовуються для пояснення рішення.

Поради інженеру:

1)                             Для визначення переліку характеристик задач бажано складати детальний протокол дій і роздумів експерта в процесі рішення хоча б одної конкретної задачі;

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

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

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

1)                        Аналіз тексту;

2)                        Діалог;

3)                        Експертні ігри;

4)                        Лекції;

5)                        Дискусії;

6)                        Інтерв'ю;

7)                        Спостереження.

2.2.4. Етап формалізації.

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

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

1)                       Логічні методи;

2)                        Продукційні моделі;

3)                        Семантичні мережі ;

4)                        Фрейми;

5)                        Об'єктивно-орієнтовані мови і ін.

В ході формалізації визначається:

1)                         Структура простору пошуку, яка характеризує особливості вирішуваної задачі (простір гіпотез);

2)                           Модель, яка лежить в основі рішення задачі (модель процесу);

3)                        Властивості даних задачі, що розглядається (характеристики даних).

При визначенні структури простору пошуку, необхідно визначити

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

Для цього необхідно:

                               Формалізувати поняття (об'єкти, їх характеристики, їх значення);

                                Визначити як поняття зв'язані між собою при створенні гіпотези.

При цьому необхідно дати відповідь на наступні питання:

1) є поняття примітивними чи мають внутрішню структуру;

2)                       Чи необхідно представляти причинні, просторові і змішанні поняття;

3)                       Чи необхідна ієрархія гіпотез;

4)                       Чи необхідно розглядати поняття і процеси на різних рівнях абстракції.

Важливим кроком на цьому етапі є побудова моделі рішення задачі. Вона

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

1)                       Дані пояснюються чи ні в термінах гіпотез;

2)                       Тип відношень між даними;

3)                       Як взаємозв'язані дані, гіпотези і цілі в процесі рішення задачі.

2.2.5. Етап виконання (реалізації).

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

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

1)                       Користувацького інтерфейса;

2)                            Засобів для дослідження як бази знань, так і ланцюга виводів генеруючих систем;

3)                       Засобів для збору зауважень користувача;

4)                       Засобів зберігання бібліотеки задач системи.

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

Поради інженеру:

1)                          Не тільки спілкуйтесь з експертом, але також спостерігайте за його роботою над рішенням конкретної задачі і старайтесь визначити чому експерт виконує ту чи іншу дію;

2)                       Використайте терміни і методи експерта;

3)                        Старайтесь зберегти у експерта інтерес до розробки ес і віру в кінцевий успіх.

2.2.6.                         Етап тестування.

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

1)                         З точки зору експерта - це повнота і безпомилковість знань і правил вибору;

2)                         З точки зору інженера - це ефективність роботи ес (час, пам'ять);

3)                         З точки зору користувачів - зручність роботи і отримання практичної користі.

2.2.7.                         Етап дослідної експлуатації.

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

2.2.8. Структура процесу розробки промислової ес.

Ця структура представляється у вигляді 6-и етапів, які не залежать від конкретної по (рисунок 2.5).

 

Вибір проблеми

Розробка прототипу

Оцінка ес

Доробка до пром. Ес

Стикування ес

Супроводже ння ес

 

Демонстраційний

Дослідний

Робочий

Прототип

Промислова система комерційна система

 

Ідентифіка ція

Отримання знань

Концептуа лізація

Реалізація

Тестува ння

Формаліза ція знань

 

Проблеми задачі

Поле знань

Знання

Е і п

І

І - кр

Е - і

Бз на               програм.

Япз              прототип ес

Кр                            е і

П кр

 

П - програміст кр - користувач

Е - експерт

І - інженер по знаннях

Рисунок 2.5. Структура процесу розробки промислової ес.

Демонстраційний прототип рішає частину задач демонструючи життєздатність підходу.

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

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

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

Комерційний - придатний до продажу, тобто добре документований і забезпечений сервісом.

Зацікавило?

Змiст

Нові надходження

Всього підручників:

292