- •К.Є. Золотько, д.В. Красношапка
- •1. Теоретичні основи створення систем штучного інтелекту
- •1.1. Методи розв’язання задач
- •Розв’язання задач методом пошуку в просторі станів
- •Загальна схема алгоритму Харта, Нільсона і Рафаеля
- •Розв’язання задач методом редукції
- •Розв’язання задач дедуктивного вибору
- •Розв’язання задач, що використовують немонотонну логіку, імовірнісну логіку
- •1.2. Експертні системи
- •Експертні системи, засновані на правилах (пряме виведення – forward chaining)
- •Експертні системи, що ґрунтуються на логіці (зворотне виведення – backward chaining)
- •Модуль (компонент) пояснення
- •Модуль (компонент) набуття знань
- •Етапи проектування експертної системи
- •Відмінність експертних систем від традиційних програм
- •2. Основи програмування мовою Visual Prolog
- •2.1. Загальний огляд мови Пролог
- •2.2. Основні теоретичні відомості Основні визначення мови Visual Prolog
- •2.3. Структура програми, складеної мовою Visual Prolog
- •2.4. Предикати введення – виведення
- •2.5. Об’єкти даних
- •Завдання 1
- •2.6. Вбудовані механізми мови Пролог. Керування бектрекінгом
- •2.7. Організація циклів. Рекурсія
- •2.8. Використання динамічної бази даних
- •2.9. Рекомендації щодо створення програм мовою Пролог
- •Завдання 2
- •2.10. Рекурсивні структури даних
- •Структура даних типу дерево
- •Обходи дерева
- •Бінарний пошук на дереві
- •Сортування за деревом
- •Лексикографічне впорядкування
- •2.11. Списки
- •Info("Шевченко о.В.", ["Інформатика", "Чисельні методи"]).
- •Info("Нікольський а.С.", ["Комп’ютерна графіка"]).
- •Info("Рябчук м.В.", ["Фізика", "Хімія", "Астрономія"]).
- •Info("Рябчук м.В.", X), write (X), nl.
- •Ігри двох осіб із повною інформацією
- •Мінімаксний принцип
- •Реалізація деяких методів пошуку в просторі станів у мові Пролог
- •Завдання 3
- •Засоби програмування інтерфейсів у Visual Prolog 5.2
- •3.1. Створення найпростішого додатка
- •Додавання пункту меню
- •Додавання речення для реагування на вибір пункту меню
- •Використання діалогових вікон, створених користувачем
- •Завдання 4
- •Варіанти завдань
- •Тема 1. Консультативна інтерактивна експертна система з визначення оптимальної конфігурації пеом
- •Тема 2. Діагностична інтерактивна експертна система пошуку причини й усунення несправності кольорового телевізора lg cf-20f60k
- •Порядок пошуку причини й усунення несправності телевізора lg cf-20f60k
- •Тема 3. Консультативна експертна система для вибору породи собаки
- •Тема 4. Медична консультативна експертна система щодо вибору лікарських трав
- •Тема 5. Експертна система для визначення мінерального добрива
- •Тема 6. Консультативна інтерактивна експертна система, яка допомагає директору фірми в процесі прийняття кандидата на роботу
- •Тема 7. Консультативна експертна система прогнозу повені та необхідності евакуації населення міста
- •Тема 8. Діагностична медична експертна система
- •Список рекомендованої літератури
- •Посібник до вивчення курсу
Розв’язання задач дедуктивного вибору
У дедуктивних моделях подання й обробки знань вирішувану проблему записують у вигляді тверджень формальної системи, у вигляді твердження, правдивість якого треба встановити чи спростувати на підставі аксіом (загальних законів) і правил виведення формальної системи. Як формальну систему використовують числення предикатів першого порядку.
Відповідно до правил, установлених у формальній системі, заключному твердженню-теоремі, отриманому з початкової системи тверджень (аксіом, посилок), присвоюється значення ІСТИНА, якщо кожній посилці, аксіомі також присвоєно значення ІСТИНА. Процедура виведення – це процедура, яка із заданої групи виразів виводить відмінний від заданих вираз. Звичайно в логіці предикатів застосовують формальний метод доведення теорем, що допускає можливість його машинної реалізації, але існує також можливість доведення неаксіоматичним шляхом – прямим чи зворотним виведенням.
Метод резолюції застосовують як повноцінний (формальний) метод доведення теорем. Для застосування цього методу вихідну групу заданих логічних формул потрібно перетворити на деяку нормальну форму. Це перетворення проводять у кілька стадій, що складають машину виведення.
Розв’язання задач, що використовують немонотонну логіку, імовірнісну логіку
Дані й знання, із якими доводиться мати справу в ІС, рідко бувають абсолютно точними й достовірними. Властива знанням невизначеність може мати різноманітний характер, і для її опису застосовується широкий спектр формалізмів. Розглянемо один із типів невизначеності в даних і знаннях – їх неточність. Будемо називати висловлення неточним, якщо його істинність (чи хибність) не можна встановити з певністю. Основним поняттям у процесі побудови моделей неточного виведення є поняття ймовірності, тому всі описувані далі методи пов'язані з імовірнісною концепцією.
Модель оперування неточними даними й знаннями включає два складники: мову подання неточності й механізм виведення на неточних знаннях. Для побудови мови необхідно вибрати форму подання неточності (наприклад, скаляр, інтервал, розподіл, лінгвістичний вираз, множина) і передбачити можливість присвоювати міру неточності всім висловленням.
Механізми оперування неточними висловленнями можна поділити на два типи. До першого відносять механізми, що мають „приєднаний” характер: перерахування мір неточності неначе супроводжує процес виведення, здійснюваного на точних висловленнях. Для розробки „приєднаної” моделі неточного виведення в заснованій на правилах виведення системі необхідно задати функції перерахування, що дозволяють обчислювати:
а) міру неточності антецедента правила (його лівої частини) за мірами неточності складників його висловлень;
б) міру неточності консеквента правила (його правої частини) за мірами неточності правила і посилки правила;
в) об'єднану міру неточності висловлення за мірами, отриманими з правил.
Уведення міри неточності дозволяє додати в процес виведення щось принципово нове – можливість об'єднувати декілька свідчень, що підтверджують чи спростовують одну й ту саму гіпотезу. Іншими словами, у процесі використання мір неточності доцільно виводити одне й те саме твердження різними шляхами (з наступним об'єднанням значень неточності), що зовсім безглуздо в традиційній дедуктивній логіці. Для об'єднання свідчень потрібна функція перерахування, що займає центральне місце в перерахуванні. Зазначимо, що, незважаючи на „приєднаність” механізмів виведення цього типу, їх реалізація в базах знань (БЗ) впливає на загальну стратегію виведення: з одного боку, необхідно виводити гіпотезу всіма можливими шляхами для того, щоб урахувати всі релевантні цій гіпотезі свідчення, з іншого боку, слід унеможливити багаторазовий вплив сили тих самих свідчень.
Для механізмів оперування неточними висловленнями другого типу характерна наявність схем виведення, спеціально орієнтованих на використовувану мову подання неточності. Як правило, кожному кроку виведення відповідає перерахування мір неточності, обумовлене співвідношенням на множині висловлень (співвідношенням може бути елементарний логічний зв'язок безвідносно до того, чи є це відношення фрагментом якого-небудь правила). Таким чином, механізми другого типу застосовують не тільки до знань, виражених у формі правил. Водночас для них, як і для механізмів „приєднаного” типу, однією з головних є проблема об'єднання свідчень.