Додати в закладки
Переклад Translate
Вхід в УЧАН Анонімний форум з обміну зображеннями і жартами. |
|
Скачати одним файлом. Книга: Моделювання та інформаційні системи в економіці: Міжвід. М.Г. Твердохліб
ТЕХНОЛОГІЯ РОЗРОБКИ ЕКСПЕРТНИХ СИСТЕМ У ТАБЛИЧНОМУ СЕРЕДОВИЩІ
У сучасних умовах успіх національної економіки значною мірою залежить від комплексу організаційно-технічних умов, що забезпечують ефективне використання інформації, поширення та застосування знань. Існують різні визначення поняття “знання”. Прагматичний аспект будь-якого поняття в операційному плані залежить, насамперед, від того, наскільки зміст цього поняття, набір його головних ознак можуть правити за основу під час розробки методів і засобів вирішення практичних задач, пов’язаних із цим поняттям. Із такої точки зору знання можна визначити як “основні закономірності предметної області, що дозволяють людині вирішувати конкретні виробничі, наукові та інші задачі, тобто це факти, поняття, взаємозв’язки, оцінки, правила евристики, а також стратегії прийняття рішень у цій області” [1]. Саме такі знання, закріплені в “людському капіталі” й технологіях, стали найважливішим джерелом упровадження нововведень, зростання продуктивності праці й економічного розвитку.
Для еволюції “економіки, що йде за знаннями”, визначальне значення має розвиток інформаційних технологій, які дозволяють поширювати знання й трансформувати їх в інформацію. Для перетворення знань в інформацію використовуються різноманітні програмні засоби, у тому числі й системи штучного інтелекту. Найбільш відомим практичним прикладом досягнень у галузі штучного інтелекту є експертні системи (ЕС). Ці інтелектуальні програми здатні робити логічні висновки на основі знань у конкретній предметній області, забезпечуючи тим самим розв’язання професійних задач на достатньо високому рівні. Зазвичай експертна система має такі характеристики: належить до окремої галузі знань із вузько обмеженою окремою темою; містить у собі евристику й знання експерта; має модель виведення висновків; підлягає розширенню; може використовувати неточну інформацію; пропонує поради; обґрунтовує логіку своїх висновків.
Досвід показав, що розробка ЕС суттєво відрізняється від створення звичайного програмного забезпечення й потребує іншої технології. Використання традиційної технології або надмірно затягує процес розробки, або навіть призводить до негативного результату. Це пояснюється перш за все необхідністю проводити постійну модифікацію й розширення системи в міру того, як збільшуються знання розробників у проблемній області. Крім того, можливість модифікувати систему повинні мати і її користувачі у зв’язку з накопиченням та зміною їхніх знань і уявлень. Оскільки на сьогоднішній день цю проблему остаточно не вирішено, виникає потреба в пошуку та вдосконаленні методів та інструментальних засобів розробки гнучких ЕС. Один із можливих підходів вирішення цієї проблеми розглядається в даній роботі.
Для прискорення розробки ЕС можуть використовуватися такі інструментальні засоби: символьні мови програмування; мови інженерії знань; оболонки експертних систем; системи, що автоматизують розробку (проектування) ЕС.
Сьогодні найбільш перспективними вважаються засоби третього й четвертого типу, такі як EMYCIN, KEE, ART, TEIRESIAS [2]. Проте в Україні вони поки що не знайшли достатньо широко го поширення. Тому в даній роботі розглянуто можливий варіант створення й використання генератора експертних систем у середовищі MS Excel. Які аргументи можна навести на користь саме такого підходу?
Як відомо, найбільші можливості з активізації складних інструментів та їх настроювання надають користувачам електронні таблиці, які зараз ефективно обробляють великі масиви як числової, так і символьної інформації. А завдяки тому, що фірма Microsoft вмонтувала в Excel візуальну мову програмування Visual Basic for Application (VBA), ця електронна таблиця стала засобом розробки із широким спектром можливостей — від автоматизації нескладних функцій силами кінцевих користувачів до розробки корпоративних систем. Оскільки VBA забезпечує повний доступ до всіх функцій аналізу даних і об’єктів, що є в Excel, його застосування як платформи для проектування прикладного програмного забезпечення дозволяє отримувати потужні програми з меншими зусиллями й витратами.
Ще одним аргументом на користь створення ЕС у середовищі електронної таблиці є те, що в цьому випадку існує можливість застосувати однакову методологію на всіх етапах як розробки, так і розширення ЕС, орієнтовану на масового користувача.
Перший і дуже відповідальний етап проектування ЕС, на якому виникає питання про використання ефективних технологічних засобів, — це етап концептуального аналізу (структурування) знань. На даному етапі проводиться змістовний аналіз проблемної області, метою якого є побудова її моделі, що складається із системи понять, семантичних відношень (взаємозв’язків) між ними та стратегії прийняття рішень. Серед моделей подання знань в основному використовуються три: правила-продукції, фрейми та семантичні мережі. Із точки зору простоти розширення системи модель, яка базується на правилах, є найкращою. Популярність правил-продукцій під час подання знань базується на таких чинниках:
1. Природність, обумовлена схожістю процесу виведення висновків у системі з процесом міркувань людини-експерта.
2. Універсальність. Вона забезпечується, по-перше, тим, що значну частину професійних знань можна подати декларативно (у вигляді правил), і, по-друге, тим, що продукції дозволяють реалізовувати також і процедурні знання (алгоритми).
3. Модульність, завдяки якій додавання та вилучення правил не впливає на інші елементи бази знань.
4. Однаковість структури, що дає змогу під час побудові ЕС різної проблемної орієнтації використовувати однакові компоненти.
5. Паралелізм і асинхронність — сприяють виведенню висновків із правил у будь-якій послідовності і, крім того, можуть стати в пригоді під час використання відповідної архітектури ЕОМ.
Серед недоліків продукційних систем відзначають такі [3]:
1. За великої кількості продукції складно забезпечити несуперечливість знань.
2. Системі видів продукції властива недетермінованість — неоднозначність вибору видів продукції із безлічі активізованих.
Через ці причини вважається, що застосовувати ЕС із кількістю видів продукції більше тисячі небажано. Перш за все слід відзначити, що другий недолік не є суттєвим, оскільки, як уже вказувалося, вибір послідовності виведення висновків не впливає на кінцевий результат. Щодо першого, то як буде показано далі, за запропонованої технології створення ЕС його можна позбави- тися.
Найбільш складною проблемою під час побудови моделі предметної області є виявлення стратегії прийняття рішень у конкретній предметній області, яка повинна відображати основні теоретичні представлення, фундаментальні закони, загальнови знані класифікації та евристику. Вирішенню цієї проблеми сприяє використання інструментарію, яке дозволяє наочно відобража ти зібрані знання, легко модифікувати форму їх представлення, а згодом легко перенести в модель. Останнє вимагає узгодженого вибору інструментів на етапах структуризації знань і реалізації моделі.
Під час побудови продукційних систем найкращим інструментом для структурування знань слід визнати таблиці рішень (decision table). Їх призначено для аналізу, опису й документування складних процесів, структур та задач, і служать вони для тієї ж мети, що й загальновідомі блок-схеми. Але у випадку, коли рішення в рамках одного процесу залежать від великої кількості пов’язаних між собою умов (а саме це характерно для ЕС), блок-схеми швидко стають недоступними для огляду й сприйняття, що ускладнює контроль повноти та істинності умов. Використання ж таблиць рішень суттєво спрощує вирішення таких задач. Таблиці рішень поділяються на таблиці з простими та з розширеними входами (або прості та розширені таблиці рішень ). Для представлення знань найбільше підходять останні. Вони являють собою табличне відображення упорядкованої сукупності правил вибору рішень у формі, наведеній у табл. 1, і складаються з чотирьох розділів.
Найхарактерніша особливість ЕС полягає не в тому, що вона містить деяку суму знань (це є суттю й змістом інформатики, і така властивість притаманна будь-якій програмі, що вирішує виробничі чи наукові завдання), а в тому, що ці знання певним чином організовано — вони повинні бути явно сформульованими й відокремленими від інших видів знань, які використовуються під час створення системи (наприклад, від правил написання програми й команд).
Таблиця 1
СТРУКТУРА РОЗШИРЕНОЇ ТАБЛИЦІ РІШЕНЬ
1. Змінні, що можуть приймати певні набори значень. | 2. Можливі варіанти наборів значень змінних з 1-го розділу. | 3. Змінні (чи дії), що визначаються за заданими правилами. | 4. Значення змінних (чи дії) для кожного набору значень із 2-го розділу. |
Виділені знання про предметну область називаються базою знань . Необхідність у такому способі організації предметних знань пояснюється тим, що саме вони є тією частиною ЕС, від легкості модифікації якої значною мірою залежить як вартість, так і ефективність ЕС. Додатково бажаною характеристикою ЕС (що багатьма розглядається як одна з основних) є здатність системи пояснювати, за вимогою, хід своїх “міркувань” у зрозумілій для користувача формі.
Загалом у концептуальній структурі запропонованої табличної експертної системи для забезпечення достатньо високого рівня її характеристик повинні бути присутні такі компоненти (рис.1): список понять, список усіх можливих значень понять, ділянка введення фактів, ділянка відображення висновків, ділянка правил, робоча пам’ять, механізм висновку та механізм пояснення.
База понять виконує сервісні функції і є основним місцем спілкування користувача з ЕС. Саме тут користувач вводить факти чні значення, що характеризують аналізовану ситуацію, і отримує висновки про її подальший розвиток. Зосередження в одному місці констант (формулювання понять та їхніх можливих значень), які багаторазово використовуються в конструюванні правил і введенні фактів, дозволяє обмежитись одноразовим їх набором із клавіатури з подальшим їх вибором через випадаючі списки. Тим самим підвищується ефективність роботи як розробників, так і користувачів ЕС, і значно зростає її надійність за рахунок зменшення помилок, неминучих під час введення даних із клавіатури.
Рис. 1. Концептуальна структура експертної системи
Робоча пам’ять зберігає поточний стан усіх змінних. Саме від значень цих змінних залежить, чи будуть виконуватись умови конкретних правил бази знань. Слід звернути увагу, що у формуванні висновків використовуються як робоча пам’ять, так і введені фактичні значення. За рахунок цього може бути виявлено ту частину правил, що суперечить фактам, чи, навпаки, суперечності у фактах.
Для наочності подальшого обговорення запропонованої технології звернімося до конкретної задачі — проектування ЕС фондової біржі. У даному випадку можуть бути корисними, наприклад, такі правила [4]:
1. ЯКЩО процентні ставки падають, ТО рівень цін на біржі зростає.
2. ЯКЩО процентні ставки зростають, ТО рівень цін на біржі падає.
3. ЯКЩО валютний курс долара падає, ТО процентні ставки зростають.
4. ЯКЩО валютний курс долара зростає, ТО процентні ставки падають.
5. ЯКЩО федеральний резерв зростає І ставка федерального резерву падає, ТО процентні ставки падають.
Фрагмент моделі предметної області, що містить ці знання, у формі розширенної таблиці рішень має такий вигляд:
Таблиця 2
ФРАГМЕНТ БАЗИ ЗНАНЬ ЕС ФОНДОВОЇ БІРЖІ
Процентні ставки | падають | зростають | | | | Валютний курс долара | | | падає | зростає | | Федеральний резерв | | | | | зростає | Ставка федерального резерву | | | | | падає | Рівень цін на біржі | зростає | падає | | | | Процентні ставки | | | зростають | падають | падають |
Після отримання порції знань і фіксації їх у вигляді таблиці рішень, відповідна частина понять предметної області та їх можливі значення заносяться до бази понять ЕС (рис. 2), причому поняття, які можна задавати як факти, обов’язково розміщують у її верхній частині. Деякі з цих понять можуть не тільки задаватися, тобто бути фактами, але й визначатися за допомогою відповідних правил. Для даного фрагмента знань таким поняттям є Процентна ставка .
Рис. 2. Фрагмент бази понять ЕС фондової біржі
Відомості користувача про поточну ситуацію повинні вводитися у клітини колонки Факти , бажано за допомогою списків. За невеликої кількості понять ці списки можуть бути встановленими безпосередньо у відповідних клітинах колонки Факти командою Дані / Перевірка електронної таблиці Excel. У випадку, коли треба зменшити витрати оперативної пам’яті, слід використати можливості візуального програмування на мові Visual Basic для розробки спеціальної форми. У будь-якому разі джерелом даних кожного списку є клітини відповідного рядка колонок Можливі значення . Клітини в колонці Факти можуть мати або одне зі значень цих колонок у відповідному рядку, або значення “пусто”, якщо відомості про дану характеристику предметної області відсутні.
У нижній частині таблиці розміщено поняття, які не можуть мати фактичних значень, а визначаються лише в результаті аналізу поточної ситуації. На рис. 2 таким поняттям є Рівень цін на біржі .
Клітини колонки Висновки посилаються на робочу пам’ять (якщо в базі знань є правила, що визначають значення відповідних понять), тобто вони виводять значення, отримані в результаті “міркувань” системи. Якщо ці значення не збігаються із фактичними, то вони виділяються червоним кольором (цього досягають за допомогою команди Формат/Умовне форматування ). На рис. 2 умовне форматування встановлено в клітині рядка Про- центна ставка .
Базу знань (рис. 3) організовано у вигляді сукупності таблиць, кожна з яких має багато спільного з розширеною таблицею рішень і є мінімальною структурою інформації для подання класів об’єктів, явищ чи процесів. На відміну від концептуальної структури ЕС (рис. 1), до бази знань включено робочу пам’ять (колонка Значення ), що спрощує реалізацію механізму пояснень. У кожній клітині ділянки правил, крім посилання на відповідну клітину ділянки Можливі значення бази понять, може знаходитися формула, яка включає функції. В Excel користувачі мають можливість створювати й використовувати в робочих аркушах функції, що реалізують алгоритми будь-якої складності. Таким чином, у базі знань можна розміщувати не тільки декларативні, але й процедурні знання про проблемну область.
Рис. 3. Фрагмент бази знань ЕС фондової біржі
Механізм виведення висновків повинен містити процедурні знання про те, як ефективно використовувати проблемні знання, що знаходяться в базі знань. Якщо принципово зрозумілим є те, як знання предметної області може бути занесено до бази знань електронної таблиці, то далеко не так ясно, яким чином сконструювати ефективний механізм висновку. Очевидно, що його структура залежитиме від того, як організовано й структуровано знання в базі знань. Також цей механізм повинен якомога менше залежати від специфіки предметної області.
Таблиці бази знань структуровано таким чином, щоб значення кожного поняття в нижній частині таблиці можна було визначити, зіставляючи поточні значення понять верхньої частини таблиці зі значеннями, поданими у відповідних правилах. Взаємозв’язок між значеннями понять із верхньої частини таблиці й значенням будь-якого поняття в нижній задається за допомогою логічних операцій кон’юнкції та імплікації у вигляді декількох виразів:
( р ); A 1 & A 2 & … An В , (1)
де р — ідентифікатор рядка, що складається з позначення таблиці й позначення того поняття, значення якого виводиться.
Логічний вираз (1) стверджує істинність В , якщо правдиві всі твердження A 1, A 2, …, An . У протилежному випадку про правдивість В нічого сказати не можна. Кількість виразів (1) з одним і тим самим консеквентом (частиною продукції справа від знака ) і різними антецедентами (частиною продукції зліва від знака ) визначається кількістю правил виведення твердження В . Зрозуміло, що, за наявності декількох правил, консеквентне твердження може бути отримано лише в тому разі, якщо правила сумісні. На рис. 3 антецеденти (умови) продукцій утворюються шляхом зіставлення понять і правил верхньої частини таблиці, а консеквенти (післяумови) — понять і правил нижньої. Наприклад, взаємозв’язок між значеннями понять із верхньої частини таблиці бази знань, показаної на рис. 3, і значенням поняття “Процентна ставка” задається сукупністю таких виразів:
( Т 1#2); | Валютний курс долара Зростає Процентна ставка Падає; | ( Т 1#2); | Валютний курс долара Падає Процентна ставка Зростає; | ( Т 1#2); | Федеральний резерв Зростає & Ставка федерального резерву Падає Процентна ставка Падає. |
Продукційна система, у якій спочатку активізується (перевіряється) антецедентна частина, а потім активізується (виводиться) консеквент, називається системою з архітектурою , що умовно виводиться, або системою з прямим ланцюжком міркувань . У запропонованому генераторі ЕС механізм виведення висновків із прямим ланцюжком міркувань реалізується за допомогою спеціально створеної для цього функції Імплікація , призначеної для виведення значення одного висновку із заданої сукупності тверджень з урахуванням усієї сукупності правил. Ця функція заноситься до клітин колонки Значення нижньої частини таблиць бази знань (на рис. 3 це клітини Е8 і Е9 ). Параметрами кожної функції є сукупність пар елементів. Кількість пар дорівнює кількості всіх правил, які потрібно враховувати під час виведення відповідного висновку. Перший елемент пари за допомогою логічної кон’юнкції (логічний оператор И в Excel) об’єднує всі умови А 1, А 2, ... , Аn одного правила. Другий елемент — це адреса клітини (у нижній частині стовпчика з правилом), що містить значення висновку за умови виконання усіх пунктів правила. Наприклад, висновок з останнього правила бази знань (ЯКЩО федеральний резерв зростає і ставка федерального резерву падає, ТО процентна ставка падає) формується в клітині Е9 (рис. 3) формулою = = Імплікація ($D$7 = $E$7; $E$6; $D$7 = $F$7; $F$6; И($D$8 = = $G$8; $D$9 = $G$9); $G$6) . Алгоритм реалізації функції наведено на рис.4. Вона не тільки виводить висновок, але й виявляє суперечливість в правилах, повертаючи в цьому разі значення # Суперечності .
Продукційні системи — це ітераційні системи. Ітерації в них виконуються до тих пір, поки не буде досягнуто кінцевого висновку. На кожній ітерації потрібно перевіряти, із яких правил можна зробити висновки. Із множини цих дозволених до виконання правил обирається одне, з нього виводиться висновок, відповідно до якого оновлюється стан робочої пам’яті. За умови побудови продукційної ЕС у середовищі електронної таблиці потреби в організації продукційних циклів немає. Це пояснюється властивістю цієї програми автоматично продовжувати циклічні перераховування формул до тих пір, доки змінюються їхні вхідні дані.
Найбільш поширений тип механізму пояснення реалізується за принципом ретроспективного міркування, що дозволяє зрозуміти, яким чином система досягла конкретного стану. Найчастіше ці пояснення полягають у демонстрації ланцюжків висновків, завдяки чому стає зрозуміло, на якій підставі було застосовано кожне правило в ланцюжку. Як вже вказувалося, можливість демонструвати власні процеси міркування й пояснювати свої висновки — одна з найважливіших особливостей експертних систем. Необхідність “самосвідомості” для експертної системи пояснюється такими причинами: стають явними припущення, покладені в основу роботи системи; користувачі більше довіряють результатам і значно впевненіші у висновках системи; прискорюється розвиток системи, тому що її легше тестувати й налаго- джувати; легше прогнозувати й виявляти вплив модифікацій на роботу системи.
Ще одна перевага запропонованого підходу до побудови ЕС полягає в тому, що табличне представлення бази знань і відображення в ній поточного стану робочої пам’яті (стовпець Значення в базі знань) забезпечує користувачам, без будь-яких додаткових зусиль із боку розробників, можливість перегляду ланцюжків висновків і осмислення підстав, на основі яких отримано висновки.
Вхід: | Процес: | Вихід: | | ПОВТОРЮВАТИ для кожного першого елемента пари параметрів: | і | Р, і | ЯКЩО (правило виконується) ТО | | ЗнФун | ЯКЩО (до цього ще не було правила, що виконується) ТО | | і | Імплікація = значення другого елемента поточної пари параметрів | ЗнФун | ЗнФун, Р, і | ІНАКШЕ ЯКЩО висновки не збігаються ТО | ЗнФун | | Імплікація = “#Суперечності” | | | Завершити процес | | | КЯкщо | | | КЯкщо | | | Кциклу | | ЗнФун, Р | ЯКЩО ((не було правила, що виконується) & (кількість параметрів непарна)) ТО | | | Імплікація = значення останнього параметра | ЗнФун | | КЯкщо | |
Умовні позначення : Р — масив параметрів; і — номер параметра; ЗнФун — значення, яке повертається функцією. | ||
Метод : послідовно перевіряють сукупність умов кожної пари параметрів. Якщо виконуються всі умови, то за вказаною адресою знаходять значення постумови. У разі парної кількості параметрів задається безальтернативна конструкція. За непарної — альтернативна конструкція. В останньому випадку в кінці списку параметрів зазначається лише післяумова (умова відсутня). | | Рис. 4. Алгоритм виведення висновку функцією Імплікація | |
|
Техпроцес створення експертної системи складається з таких основних етапів:
— ідентифікація — визначаються класи задач, що підлягають вирішенню, та джерела знань (книжки, методики, експерти, засоби автоматизованого отримання знань);
— концептуалізація понять — проводиться змістовний аналіз предметної області, виявляються її основні поняття, значення, яких можуть набувати ці поняття, створюється база понять;
— концептуалізація знань — виявляються зв’язки між поняттями, і будується модель предметної області у вигляді таблиць рішень;
— реалізація правил — основна операція — занесення посилань у колонки “Поняття” і “Правила” бази знань (рис. 3), посилань на клітини бази понять (рис. 2) відповідно до таблиць рішень, розроблених на попередньому етапі;
— реалізація механізму виведення висновків — для цього до колонки “Значення” (рис. 3) верхньої частини кожної таблиці бази знань заносять умовне посилання на відповіді клітини колонок “Факти” і “Висновки” (рис. 2) бази понять такого змісту: “Якщо фактичне значення не вказано, то брати відповідне значення з ко лонки Висновки , інакше брати відповідне значення з колонки Факти ”. Наприклад, до клітини Е4 бази знань заводиться така фор мула =ЕСЛИ (БП!C 5=0 ; БП!D 5 ; БП!C 5 ) . У нижній частині кожної таблиці бази знань до колонки “Значення” вводять формулу, створену з використанням функції Імплікація .
Загалом можна зробити висновок, що за умови створення інтерфейсу, який дозволить автоматизувати найбільш трудомісткі операції створення бази знань (занесення формул до бази знань під час формування правил), запропонована технологія забезпечує відносно простий спосіб розробки продукційних ЕС із достатньо високими експлуатаційними характеристиками.
СПИСОК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ
Гаврилова Т. А., Червинская К. Р. Извлечение и структурирование знаний для экспертных систем. — М.: Радио и связь, 1992. — 256 с.
Дюк В., Самойленко А. Data mining — С.Пб.: Питер, 2001. — 368 с.
Ус Г. О. Моделі подання знань для систем підтримки прийняття рішень // Моделювання та інформаційні системи в економіці. Вип. 63. — К.: КНЕУ, 2000, — С.103—113.
Левин Р., Дранг Д., Эделсон Б. Практическое введение в технологию искусственного интеллекта и экспертных систем с иллюстрациями на Бейсике: Пер. с англ. — М.: Финансы и статистика, 1990. — 235 с.
Н. С. ПІНЧУК, канд. екон. наук, доц.,
Н. С. ОРЛЕНКО, канд. екон. наук, доц.,
Київський національний економічний університет
Книга: Моделювання та інформаційні системи в економіці: Міжвід. М.Г. Твердохліб
ЗМІСТ
На попередню
|