Читайте также:
|
|
Схема функціонування керуючої компонента
У попередній теміі були розглянуті основні методи рішення задач, використовувані інтелектуальними системами. Для компактності і ясності викладу опису методів були наведені без посилань на спосіб функціонування системи, тобто розглядалися самі методи, а не спосіб їхнього виконання експертною системою. У даній темі буде розглянута робота керуючої компоненти, тобто питання про те, як здійснює рішення задачі сама інтелектуальна система. Необхідність використовувати в інтелектуальних системах нетрадиційні методи керування викликані в першу чергу неформалізованістю розв'язуваних ними задач. Особливості неформалізованих задач з погляду організації керування приводять до того, що процес рішення таких задач не вдається представити у виді детермінованої послідовності програмних модулів. Тут у деякий сучасний момент до виконання придатно кілька модулів (чи один модуль, але над різними даними), причому не існує надійної інформації, що дозволяє зволіти один модуль іншому. Задача керуючої компонента полягає в тому, щоб забезпечити функціонування системи в подібних умовах. Неформалізовану задачу можна характеризувати двома величинами: 1) середнім числом модулів, готових до виконання в сучасний момент; 2) середньою потужністю кожного модуля, готового до виконання. Ступінь неформалізованості задачі прямо пропорційна середньому числу модулів, готових у сучасний момент до виконання, і назад пропорційна середньої потужності. У традиційному програмуванні модулі (програми) викликаються по імені, тому програміст у ході складання і налагодження програми повинний виявити безліч усіх мислимих ситуацій, що виникнуть у ході роботи загальної програми при різних вхідних даних; і в кожній крапці, де завершується робота одного модуля, у явному виді (вказавши ім'я модуля і перелік використовуваних їм даних) запрограмувати однозначний перехід до чергового модуля. Така організація керування не дозволяє вирішувати неформалізовані задачі.
Основна відмінність керуючої компонента експертних систем від традиційних механізмів керування полягає в наступному: 1) окремі модулі викликають не по імені, а по описі ситуації; 2) спосіб взаємозв'язку модулів формується в процесі рішення задачі, тому що вибір чергового модуля залежить від поточної ситуації і не може бути сформований заздалегідь.
Класична схема керування експертною системою. Керуючу компонент експертних систем часто називають інтерпретатором. Завдання інтерпретатора полягає в тім, щоб на підставі поточного стану робочої пам'яті визначити, який модуль і з якими даними буде працювати, тобто виробити на черговому циклі роботи керуюче й інформаційне взаємодії модулів. По закінченні роботи поточного модуля інтерпретатор перевіряє умови закінчення задачі, і якщо вони не задоволені, то виконується черговий цикл. Модулі зберігаються в базі знань експертної системи. Модулі звичайно реалізуються у виді чи програм правил. Кожен модуль забезпечується зразком, тобто описом, що вказує, при виконанні яких умов цей модуль може приступити до роботи.
У загальному випадку робота інтерпретатора в кожнім циклі складається в послідовному виконанні чотирьох етапів: вибірки, зіставлення, дозволу конфліктів, виконання (дії). Іноді цикл роботи інтерпретатора поділяють на два етапи: розпізнавання і дія. У цьому випадку в етап розпізнавання включають вибірку, зіставлення і дозвіл конфліктів. При цьому говорять, що задача "розпізнавання" складається в дозволі конфлікту.
З погляду теорії робота інтерпретатора залежить тільки від стану робочої пам'яті і від складу бази знань. На практиці звичайно враховується історія роботи інтерпретатора, тобто поводження інтерпретатора в попередніх циклах. Інформація про поводження інтерпретатора запам'ятовується в так називаній пам'яті станів інтерпретатора. Звичайно пам'ять станів містить у тім чи іншому виді протокол роботи системи. У загальному випадку кожний з етапів використовує у своїй роботі три джерела знань: 1) робочу пам'ять; 2) базу знань; 3) пам'ять станів інтерпретатора. Кожний з етапів направляє свою роботу за допомогою стратегій, тобто за допомогою визначеного набору евристичних правил. Можливості стратегій по керуванню процесом функціонування залежать від того, які функції інтерпретатора убудовані в нього до, а які можуть змінюватися. Убудовування визначених функцій в інтерпретатор підвищує ефективність його роботи, але обмежує ступінь впливу на процес функціонування. Як правило, в інтерпретатор убудовують загальну схему пошуку рішення (тобто метод), а через стратегії керують деталями пошуку. Наприклад, у MYCIN вбудовано реалізований пошук рішення від мети, а стратегії вибору і дозволу конфліктів задаються розроблювачем (експертом).
Для більш глобального впливу на процес керування необхідно мати можливість вибирати ту чи іншу схему інтерпретації. Так, наприклад, у системі ONICOCIN використовуються керуючі модулі, що у залежності від поточного стану дозволяють змінювати напрямок пошуку, вибираючи пошук від даних чи від цілей. З погляду термінології мова йде про зміну вирішальних знань, тобто про зміну знань, що визначають спосіб інтерпретації. В даний час дане питання пророблене дуже слабко, тому надалі ми будемо виходити з того, що загальна схема роботи інтерпретатора залишається в процесі його роботи незмінної.
На етапі вибірки здійснюється визначення підмножини елементів робочої пам'яті і підмножини модулів бази знань, що можуть бути використані в поточному циклі. Іноді етап вибірки, робиться один раз на наступних один за одним циклів. При реалізації етапу вибірки звичайно використовується один із двох підходів. Перший підхід, названий іноді синтаксичною вибіркою, виконує грубий добір знань (даних і/чи модулів), що можуть бути корисні в поточному циклі. Підставою для вибірки знань у даному випадку є формальні (синтаксичні) знання, убудовані в систему розроблювачем.
Другий підхід, названий іноді семантичною вибіркою, здійснює добір знань на підставі таких зведень, як: модель предметної області, розбивка задачі на підзадачі, поточні цілі і т.п. Семантичні знання, використовувані на етапі вибірки, вводяться в систему експертом, наприклад, у виді метаправил. У результаті роботи етапу вибірки відбувається виділення активного набору даних і активного набору модулів, тобто здійснюється фокусування уваги системи на визначеній обмеженій кількості даних і модулів. На етапі зіставлення визначається, які активні модулі і на яких активних даних готові до роботи. Модуль готовий до роботи, якщо серед активних даних є дані, що задовольняють умовам цього модуля, зазначеним у його зразку. Такі модулі називаються зазначеними. Результатом роботи етапу зіставлення є набір зазначених модулів. Набір зазначених модулів часто називають конфліктним набором, підкреслюючи цим той факт, що до роботи готові всі модулі набору, але інтерпретатор не знає ще, який з них вибрати. Теоретично зіставлення виконується в кожнім циклі роботи інтерпретатора над всіма активними знаннями, тобто зразки всіх активних модулів зіставляються з всіма активними даними. На практиці з метою підвищення ефективності всі означення не виробляються заново на кожнім черговому циклі.
На етапі розв’язання конфліктів інтерпретатор вибирає з конфліктного набору те означування, що буде виконуватися в поточному циклі. На даному етапі інтерпретатор оцінює зазначені модулі з погляду їхньої корисності при досягненні поточної мети. Підкреслюючи цей факт, даний етап іноді називають етапом планування.
На етапі виконання здійснюється виконання модулів, обраних етапом розв’язання конфліктів. У ході цього етапу здійснюється модифікація робочої пам'яті, виконуються операції введення/висновку і змінюється пам'ять станів інтерпретатора.
В даний час при реалізації цієї загальної схеми використовуються дві основні архітектури. Розходження в реалізації загальної схеми є в першу чергу наслідком різної складності використовуваних модулів. В одному підході модулями є відносно невеликі автономні фрагменти знань, що представляються у виді правил (в окремому випадку - у виді продукційних правил), що зрозумілі користувачу (експерту), незнайомому з програмуванням. Цей підхід часто називають підходом, що використовує керовані зразками правила, а системи, засновані на даному підході, системами, керованими правилами. Відзначимо, що окремим видом таких систем є продукційні системи.
В другому підході як модулі використовуються великі складні автономні фрагменти знань, представлені у виді програм, зміст яких, звичайно, не може бути зрозумілий непрограмісту. Цей підхід називають підходом, що використовує керовані зразками модулі. Є один з тих модулів, зразки яких будуть зазначені елементами робочої пам'яті. В обох підходах взаємозв'язок модулів (інформаційна і керуюча) здійснюється через загальну пам'ять. У першому підході (підході керованих зразками правил) модуль називають правилом.
В другому підході використовується трохи відмінна термінологія. Робоча пам'ять називається “класною дошкою”, конфліктний набір називається агендой. Програми, що дозволяють конфлікти, називаються політичними модулями. Модулі називаються джерелами знань. Кожне джерело знання має зразок. Якщо зразок деякого джерела знань зіставляється з даними на “класній дошці”, то це зазначене джерело знання заноситься в агенду. Агенда являє собою упорядкований список робіт, готових до виконання. Під роботою розуміється джерело знання з описом даних, що! він може обробляти в поточний момент. У кожен момент часу з агендою працює один з політичних модулів. Вибір політичного модуля залежить від оброблюваної гіпотези. Політичний модуль переупорядковує агенду і вибирає деяку роботу на виконання. Результатом виконання роботи є зміна вмісту "класної дошки". Політичні модулі, будучи джерелами знання, також заносяться в агенду і вибираються на виконання. Множина політичних модулів забезпечує розмаїтість способів вироблення керуючих рішень. Модифікація систем подібного типу досягається за рахунок незалежності джерел знання.
Концепція керованих зразками модулів дозволяє вирішувати більш складні задачі і будувати більш ефективні системи. Однак цей підхід утрудняє реалізацію пояснювальних здібностей і здібностей по придбанню нових знань. Використання в даному підході великих фрагментів знань зв'язано з розробкою для кожної проблемної області своїх політичних модулів, що здійснюють детальне планування і використання знань. Крім того, можливості даного підходу до рішення задач різних класів обмежені номенклатурою наявних модулів і способами з взаємодії, передбаченими політичними модулями.
Концепція керованих зразками правил дозволяє (за рахунок обмеженої складності використовуваних фрагментів знання і представлення їх у зрозумілому для користувача вигляді) вирішувати різноманітні задачі, забезпечуючи розвинуті пояснювальні здібності і здібності по придбанню знань. Однак обмежена складність правил приводить до "комбінаторного вибуху" при рішенні складних задач.
[3;с.208-212]
Контрольні питання
1. Схема функціонування керуючої компоненти.
2.Які етапи роботи інтерпретатора?
3. Які є схеми інтерпретації?
4. В чому полягає концепція керованих зразками модулів?
5. В чому полягає концепція керованих зразками правил?
6. Конфлікти при функціонуванні інтелектуальних систем.
Дата добавления: 2015-07-20; просмотров: 201 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Тема 6. Алгоритмічні основи прийняття рішень в інтелектуальних системах | | | Тема 8. Організація спілкування інтелектуальних систем із персоналом |