- •2. Формальні методи у системах штучного інтелекту 21
- •3. Зображення знань. Мова програмування Пролог 55
- •4. Задачі класифікації, експертні системи 99
- •5. Інтелектуальні пакети 110
- •1.1.Основні поняття та історія розвитку штучного інтелекту
- •1.2. Галузі застосування штучного інтелекту
- •Ведення ігор
- •Автоматичні міркування і доведення теорем
- •Експертні системи
- •Розуміння природних мов та семантичне моделювання
- •Моделювання роботи людського інтелекту
- •Планування та робототехніка
- •Мови та середовища ші
- •Машинне навчання
- •Альтернативні уявлення: нейронні мережі та генетичні алгоритми
- •Штучний інтелект і філософія
- •Контрольні питання
- •2. Формальні методи у системах штучного інтелекту
- •2.1. Основні поняття
- •2.2. Основні закони правильного мислення
- •2.3. Класифікація міркувань
- •Дедуктивні міркування. Основні ідеї та складні міркування
- •Безпосередні розумові висновки
- •2.4.Опосередковані висновки
- •Прості силогізми, складні розумові висновки
- •2.5. Індуктивні міркування та висновки за аналогією
- •2.6 Числення висловлювань
- •2.7. Нечіткі множини та нечітка логіка
- •2.8. Предикати. Формальні теорії
- •2.9. Процедура резолюції
- •2.10. Формальні граматики. Теорія алгоритмів
- •2.11. Продукції як алгоритмічна система. Ігри та рішення
- •2.12. Задачі та методи дискретної оптимізації
- •Динамічне програмування
- •Метод віток та меж
- •2.13. Багатокритеріальні задачі
- •2.14. Контрольні запитання
- •3. Зображення знань. Мова програмування Пролог
- •3.1. Ціль та методи зображення знань
- •3.2. Декларативне та процедурне зображення знань. Семантичні мережі
- •3.3. Фрейми та продукційні системи
- •3.4. Програмування мовою Пролог
- •Вступ до прологу. Загальна характеристика та основні поняття
- •Структура програми, домени, предикати та твердження
- •3.5. Управління обчисленнями у мові Пролог Зіставлення та повернення
- •Відтинання
- •Рекурсивні обчислення, обчислення факторіалу, знаходження квадратного кореня методом ітерацій
- •Списки у мові Пролог, бінарні дерева
- •3.6. Застосування Прологу, практична робота з використанням мови Пролог Застосування Прологу у програмуванні, системах ші, базах даних, у математиці
- •Практична робота на мові Пролог, основні інструменти та методика роботи
- •3.7. Контрольні запитання
- •4. Задачі класифікації, експертні системи
- •4.1. Особливості експертних систем, приклади та їх розробка
- •4.2. Розробка ес, мови та оболонки, набуття знань та приклад сценарію
- •4.3. Контрольні питання
- •5. Інтелектуальні пакети
- •5.1. Обчислювальні моделі, задачі та синтез програм
- •5.2. Загальна характеристика та меню системи тк Solver. Зображення обчислювальної моделі
- •5.3.Мова специфікації обчислювальних задач. Обчислювальна модель в tks
- •5.4. Складання обчислювальних моделей і задач, практична робота в tks
- •5.5. Завдання для самостійної роботи
- •5.6. Контрольні запитання
- •Додатки Додаток 1 Операції над нечіткими числами на основі принципу узагальнення. Використання в теорії штучного інтелекту
- •Література
1.2. Галузі застосування штучного інтелекту
Предметом уваги розробників ШІ є дві найбільш фундаментальні проблеми – це зображення знань (knowledge representation) та пошук(search). Зображення знань належить до проблеми отримання знань за допомогою формальної мови, що підходить для комп’ютерних маніпуляцій, усього спектру знань, потрібних для формування розумної поведінки. Пошук – це метод розв’язання проблеми, в якому систематично проглядається простір станів задачі (problem states), тобто альтернативних стадій її розв’язку. Прикладами станів задачі є різні розміщення фігур на дошці у грі або ж проміжні кроки логічного обґрунтування. Далі в цьому просторі альтернативних розв’язків здійснюється перебір з метою пошуку остаточної відповіді. Ньюел і Саймон стверджують, що такою є техніка людського способу розв’язання різних задач. Як і більшість наук ШІ розбивається на різні піддисципліни, які поділяючи основний підхід до розв’язання проблем, мали різні застосування.
Ведення ігор
У більшості ігор застосовують чітко визначений набір правил: це дає змогу легко будувати простір пошуку і позбавляє дослідника від неясності і плутанини, притаманних менш структурованим проблемам. Позиції фігур легко зображуються в комп’ютерній програмі, вони не потребують створення складних формалізмів, необхідних для передавання семантичних тонкощів більш складних предметних галузей. Тестування ігрових програм не породжує ніяких фінансових чи етичних проблем. Пошук у просторі станів – це принцип, що лежить в основі більшості досліджень у галузі ведення ігор.
Ігри можуть породжувати досить великі простори станів. Для пошуку в них потрібні потужні методики, котрі визначають, які альтернативи слід розглядати. Такі методики називаються евристиками і застосовуються в багатьох дослідженнях ШІ. Евристика – це корисна стратегія, проте здатна упустити правильний розв’язок. Прикладом евристики може бути рекомендація перевірити, чи включено прилад у розетку, перш ніж робити припущення про його поломку чи виконувати рокіровку в шахматній грі, щоб спробувати вберегти короля від шаху. Більша частина того, що називається розумністю, спирається на евристики, які люди використовують, розв’язуючи задачі. Ігри є надійною основою для вивчення евристичного пошуку. Програми ведення ігор ставлять перед дослідниками нові питання, включно варіант, коли ходи суперника неможливо детерміновано передбачити. Наявність суперника ускладнює структуру програми, додає до неї елемент непередбачуваності і потребу приділяти увагу психологічним і тактичним факторам ігрової стратегії.
Автоматичні міркування і доведення теорем
Автоматичне доведення теорем – одна з найстаріших частин ШІ, корені якої йдуть до системи Logic Theorist (логічний теоретик) Ньюела і Саймона та General Problem Solver (універсальний розв’язувач задач) і далі до намагань Рассела та Уайтхеда побудувати всю математику на основі формальних виведень теорем з початкових аксіом. Цей напрямок має великі здобутки. Завдяки дослідженням у галузі доведення теорем було формалізовано алгоритми пошуку і розроблено мови формальних зображень, такі як числення предикатів і логічна мова програмування PROLOG.
Привабливість автоматичного доведення теорем базується на строгості і загальності логіки. У формальній системі логіка спонукає до автоматизації. Різноманітні проблеми можна спробувати розв’язати, преподавши опис задачі та істотну інформацію, що її стосується, у вигляді логічних аксіом і розглядаючи різні випадки задачі як теореми, які необхідно довести. Цей принцип лежить в основі автоматичного доведення теорем і систем математичних обґрунтувань.
Привабливість міркувань, що базуються на формальній логіці, дедалі зростає. Такі проблеми, як проектування та перевірка логічних ланцюгів, коректності комп’ютерних програм та управління складними системами, є актуальними. Окрім того, дослідникам автоматичного доведення вдалося розробити потужні евристики, які базуються на оцінюванні синтаксичної форми логічного виразу. Вони знижують складність простору пошуку. Однією з причин зростання інтересу до автоматичного доведення теорем є розуміння того, що системі не обов’язково розв’язувати найскладніші проблеми без участі людини. Багато сучасних програм доведень працюють, як розумні помічники, надаючи людині можливість класифікувати задачі на підзадачі, продумувати евристики для з’ясування можливості обґрунтування. Далі програма для автоматичного доведення розв’язує простіші задачі доведення лем, допомагає перевіряти менш істотні речення, доповнює формальні аспекти доведення, окресленого людиною.
