
- •1. Искусственный интеллект: предмет, история развития, направления исследований.
- •1.1. Направления исследований в области ии
- •1.2. Основные задачи, решаемые в области искусственного интеллекта Представление знаний и разработка систем, основанных на знаниях
- •Игры и творчество.
- •Разработка естественно-языковых интерфейсов и машинный перевод
- •Распознавание образов
- •Новые архитектуры компьютеров
- •Интеллектуальные роботы
- •Специальное программное обеспечение
- •Обучение и самообучение
- •2. Система знаний
- •3. Модели представления знаний
- •3.1. Семантические сети
- •3.2. Фреймовая модель
- •3.3. Продукционная модель
- •3.4. Логическая модель
- •4. Экспертные системы
- •4.1. Назначение экспертных систем
- •4.2. Типы задач, решаемых с помощью экспертных систем
- •4.3. Структура экспертных систем
- •4.4. Основные этапы разработки экспертных систем
- •1. Выбор подходящей проблемы
- •2. Разработка прототипной системы
- •3. Развитие прототипа до промышленной экспертной системы.
- •4. Оценка системы
- •5. Стыковка системы
- •6. Поддержка системы
- •4.5. Инструментальные средства разработки экспертных систем
- •5. Пролог - язык логического программирования
- •5.1. Общие сведения о пролоГе.
- •5.2. Предложения: факты и правила
- •5.3. Запросы
- •5.4. Переменные в пролоГе
- •5.5. Объекты и типы данных в пролоГе
- •5.6. Основные разделы пролог-программы
- •5.7. Поиск с возвратом
- •1 Solition
- •5.8. Управление поиском с возвратом: предикаты fail и отсечения
- •5.9. Арифметические вычисления
- •5.10. Рекурсия
- •5.11. Списки
- •5.12. Стандартные задачи обработки списка
- •1. Генерирование списка из (n2-n1) последовательных целых чисел, начиная с n1.
- •2. Объединение списков.
- •3. Поиск заданного элемента
- •4.Удаление элемента из списка.
- •5. Вставка символа X в список
2. Система знаний
Данные – отдельные факты, характеризующие объекты, процессы и явления в предметной области.
Знанием является информация, которая отражает объективные свойства и связи некоторых объектов, явлений, процессов, сущностей и отношениями между ними как в субъективном, так и научном (объективном) выражении.
Под системой знаний понимается совокупность знаний, образующих целостное описание некоторой проблемы с доступной и достаточной степенью точности. Целостность означает, что между отдельными сведениями, входящими в знание, существуют связи и, следовательно, одни сведения могут быть выводимы из других.
В системах искусственного интеллекта знания являются основным объектом формирования, обработки и исследования. База знаний, наравне с базой данных, - необходимая составляющая программного комплекса ИИ. Машины, реализующие алгоритмы ИИ, называют машинами, основанными на знаниях, а подраздел теории ИИ, связанный с построением экспертных систем, - инженерией знаний.
Знания можно разделить на процедурные и декларативные. Исторически первичными были процедурные знания, т.е. знания, "растворенные" в алгоритмах. Они управляли данными. Для их изменения требовалось изменять программы. Однако с развитием искусственного интеллекта приоритет данных постепенно изменялся, и все большая часть знаний сосредоточивалась в структурах данных (таблицы, списки, абстрактные типы данных), т.е. увеличивалась роль декларативных знаний.
Сегодня знания приобрели чисто декларативную форму, т.е. знаниями считаются предложения, записанные на языках представления знаний, приближенных к естественному и понятных неспециалистам.
Для решения задач некоторой предметной области, необходимо создание её концептуальной модели. Для представления знаний в ЭВМ они должны быть формализованы.
Представление знаний - это соглашение о том, как описывается реальный мир. Основная цель представления знаний: получить математические модели реального мира, с целью получения на их основе, необходимых решений.
В системах искусственного интеллекта используются следующие универсальные модели представления знаний:
Семантические сети
Фреймы
Логическая модель
Продукционная модель.
3. Модели представления знаний
3.1. Семантические сети
Семантическая сеть- это ориентированный граф, вершины которого - понятия, а дуги - отношения между ними.
Понятиями обычно выступают абстрактные или конкретные объекты, а отношения - это связи типа: "это" ("is"), "имеет частью" ("has part"), "принадлежит", "любит".
Можно ввести несколько классификаций семантических сетей. Например, по количеству типов отношений:
однородные (с единственным типом отношений);
неоднородные (с различными типами отношений).
Наиболее часто в семантических сетях используются следующие отношения:
связи типа "часть-целое" ("класс-подкласс", "элемент-множество" и т.п.);
функциональные связи (определяемые обычно глаголами "производит", "влияет"...);
количественные (больше, меньше, равно...);
пространственные (далеко от, близко от, за, под, над...);
временные (раньше, позже, в течение...);
атрибутивные связи (иметь свойство, иметь значение...);
логические связи (и, или, не) и др.
рис.1 Фрагмент семантической сети, описывающей предметную область «животные».
Виды отношений: 1–«часть-целое», 2–«подкласс-класс», 3–«имеет свойство», 4–«умеет».
Проблема поиска решения в базе знаний типа семантической сети сводится к задаче поиска фрагмента сети, соответствующего некоторой подсети, соответствующей поставленному вопросу.
Преимущества сетей: 1) модель адекватно отображает представления о мире, 2) позволяет работать не с полностью определенными знаниями.
Недостатки: Чем сложнее модель, тем больше сеть, тем сложнее поиск.
Эта модель ориентирована на использование языка LISP.