"умовою" (антецедентом) розуміється деяка пропозиція-зразок, по якій здійснюється пошук в базі знань, а під "дією" (консеквентом) - дії, що виконуються при успішному результаті пошуку (вони можуть бути проміжними, виступаючими далі як умови і термінальними або цільовими, такими, що завершують роботу системи).
Найчастіше вивід на такій базі знань буває прямим (від даних до пошуку мети) або зворотний (від мети для її підтвердження - до даним). Дані - це початкові факти, що зберігаються в базі фактів, на підставі яких запускається машина висновку або інтерпретатор правив, що перебирає правила з продукційної бази знань.
Продукційна модель найчастіше застосовується в промислових експертних системах. Вона привертає розробників своєю наочністю, високою модульністю, легкістю внесення доповнень і змін і простотою механізму логічного виводу.
Існує велике число програмних засобів, що реалізовують продукційний підхід (мова OPS 5; "оболонки" або "порожні" ЕС - EXSYS Professional, Карра, ЕКСПЕРТ; АЧ, інструментальні системи ПІЕС [2] і СПЕІС [3]), а також промислових ЕС на його основі (наприклад, ЕС, створених засобами G2 ).
Семантичні мережі. Термін семантична означає "смислова", а сама семантика - це наука, що встановлює відношення між символами і об'єктами, які вони позначають, тобто наука, що визначає сенс знаків.
Семантична мережа - це орієнтований граф, вершини якого - поняття, а дуги - відношення між ними.
Як поняття зазвичай виступають абстрактні або конкретні об'єкти, а відношення - це зв'язки типу: "це" ("АКО - A-Kind-Of", "is"), "має частиною" ("has part"), "належить", "любить". Характерною особливістю семантичних мереж є обов'язкова наявність трьох типів відношень:
клас - елемент класу (квітка - троянда);
властивість - значення (колір - жовтий);
приклад елементу класу (троянда - чайна).
Можна запропонувати декілька класифікацій семантичних мереж, пов'язаних з типами відношень між поняттями[1].
По кількості типів відношень:
Однорідні (з єдиним типом відношень).
Неоднорідні (з різними типами відношень).
За типами відношень:
Бінарні (у яких відношення зв'язують два об'єкти).
N-арні (у яких є спеціальні відношення, що зв'язують більше двох понять).
Найчастіше в семантичних мережах використовуються наступні відношення:
зв'язки типу "частина - ціле" { "клас - підклас", "елемент -множество", і т. п.);
функціональні зв'язки (визначувані зазвичай дієсловами "проводить", "впливає"...);
кількісні (більше, менше, рівно...);
просторові (далеко від, близько від, за, під, над...);
тимчасові (раніше, пізніше, в течію...);
атрибутивні зв'язки (мати властивість, мати значення);
логічні зв'язки (І, АБО, НЕ);
лінгвістичні зв'язки і ін.
Проблема пошуку рішення в базі знань типу семантичної мережі зводиться до завдання пошуку фрагмента мережі, відповідного деякій підмережі, що відображає поставлений запит до бази.
Дана модель представлення знань була запропонована американським психологом Куілліаном. Основною її перевагою є те, що вона найбільш відповідна сучасним уявленням про організацію довготривалої пам'яті людини [4].
Недоліком цієї моделі є складність організації процедури пошуку виводу на семантичній мережі.
Для реалізації семантичних мереж існують спеціальні мережеві мови, наприклад NET [5], мова реалізації систем SIMER+MIR [Осипов, 1997] і ін. Широко відомі експертні системи, що використовують семантичні мережі як мову представлення знань, - PROSPECTOR, CASNET, TORUS.
Фрейми. Термін фрейм (від англійського frame, що означає "каркас" або "рамка") був запропонований Марвіном Мінським [6], одним з піонерів ШІ, в 70-і роки для позначення структури знань для сприйняття просторових сцен. Ця модель, як і семантична мережа, має глибоке психологічне обгрунтування.
Фрейм - це абстрактний образ для представлення якогось стереотипу сприйняття.
У психології і філософії відоме поняття абстрактного образу. Наприклад, вимовлення вголос слова "кімната" породжує в слухачів образ кімнати: "житлове приміщення з чотирма стінами, підлогою, стелею, вікнами і дверима, площею 6-20 м2". З цього опису нічого не можна прибрати (наприклад, прибравши вікна, ми отримаємо вже комірку, а не кімнату), але в ньому є "дірки" або "слоти" - це незаповнені значення деяких атрибутів - наприклад, кількість вікон, колір стін, висота стелі, покриття підлоги і ін.
У теорії фреймів такий образ кімнати називається фреймом кімнати. Фреймом також називається і формалізована модель для відображення образу.
Розрізняють фрейми-зразки, або прототипи, що зберігаються в базі знань, і фрейми-екземпляри, які створюються для відображення реальних фактичних ситуацій на основі даних, що поступають. Модель фрейма є достатньо універсальною, оскільки дозволяє відобразити все різноманіття знань про світ через:
фрейми-структури, що використовуються для позначення об'єктів і понять (позика, застава, вексель);
фрейми-ролі (менеджер, касир, клієнт);
фрейми-сценарії (банкрутство, збори акціонерів, святкування іменин);
фреймы-ситуації (тривога, аварія, робочий режим пристрою) і ін.
Традиційно структура фрейма може бути представлена як список властивостей:
(ІМ'Я ФРЕЙМА:
(ім'я 1-го слота: значення 1-го слота),
(ім'я 2-го слота: значення 2-го слота),
...
(ім'я N-го слота: значення N-го слота)).
Існує декілька способів отримання слотом значень у фреймі-екземплярі:
за замовчуванням від фрейма-зразка (Default-значення);
через наслідування властивостей від фрейма, вказаного в слоті АКО;
по формулі, вказаній в слоті;
через приєднану процедуру;
явно з діалогу з користувачем;
з бази даних.
Найважливішою властивістю теорії фреймів є запозичення з теорії семантичних мереж - так зване наслідування властивостей. І у фреймах, і в семантичних мережах наслідування відбувається по АКО-зв'язках (A-Kind-Of - це). Слот АКО указує на фрейм вищого рівня ієрархії, звідки неявно успадковуються, тобто переносяться, значення аналогічних слотів.
Основною перевагою фреймів як моделі представлення знань є те, що вона відображає концептуальну основу організації пам'яті людини [7], а також її гнучкість і наочність.
Спеціальні мови представлення знань в мережах фреймів FRL (Frame Representation Language) [5], KRL (Knowledge Representation Language) [6], фреймова "оболонка" Kappa [8] і інші програмні засоби дозволяють ефективно будувати промислові ЕС. Широко відомі такі фрейм-орієнтіровані експертні системи, як ANALYST, МОДІС, TRISTAN, ALTERID [Ковригин, Перфилев, 1988; Николов, 1988; Sisodia, Warkentin, 1992].
Формальні логічні моделі. Традиційно в представленні знань виділяють