- •Введение
- •1. Основные направления исследований в области искусственного интеллекта
- •Контрольные вопросы и задания
- •2. Классификация интеллектуальных информационных систем
- •2.1. Системы с интеллектуальным интерфейсом
- •2.2. Экспертные системы
- •2.3. Самообучающиеся системы
- •2.4. Адаптивные информационные системы
- •Контрольные вопросы
- •3. Представление данных и знаний
- •3.1. Данные
- •3.2. Знания
- •Контрольные вопросы
- •4. Классические способы представления знаний в интеллектуальных системах
- •4.1. Логическая модель представления знаний
- •4.2. Представление знаний правилами продукций
- •4.3. Объектно-ориентированное представление знаний фреймами
- •4.4. Семантические сети
- •Контрольные вопросы
- •5. Способы обработки знаний
- •5.1. Методы поиска решений на основе исчисления предикатов
- •5.2. Прямой и обратный вывод в экспертных системах продукционного типа
- •5.3. Обработка знаний в интеллектуальных системах с фреймовым представлением
- •Контрольные вопросы
- •6. Методы приобретения знаний
- •6.1. Проблемы структурирования знаний
- •Контрольные вопросы
- •7. Методы принятия решений на основе нечетких знаний
- •7. 1. Элементы теории нечетких множеств
- •7.2. Нечеткие операции, отношения и свойства отношений
- •7.3. Многокритериальный выбор альтернатив с использованием правила нечеткого вывода
- •7.4. Ранжирование альтернатив на множестве лингвистических векторных оценок
- •7.5. Метод нечеткого логического вывода в задаче выбора фирмой кандидата на замещение вакантной должности бухгалтера
- •Контрольные вопросы и задания
- •8. Технологии разработки экспертных систем
- •8.1. Технология проектирования и разработки экспертных систем
- •8.2. Этапы проектирования баз знаний
- •8.3. Методы проектирования баз знаний
- •8.4. Характеристика инструментальных средств
- •Контрольные вопросы и задания
- •9. Технологические процессы объектно-ориентированного программирования в проектировании интеллектуальной системы поддержки управления
- •Заключение
- •Библиографический список
- •Оглавление
Контрольные вопросы и задания
Перечислите и дайте определения основным элементам теории нечетких множеств.
Дайте определение нечетким операциям, отношениям и свойствам отношений.
Постановка задачи принятия решений на основе лингвистической векторной оценки.
Разработайте алгоритмы и программы для решения задачи многокритериального выбора с использованием метода лингвистического векторного критерия.
Постановка задачи многокритериального выбора с использованием правила нечеткого вывода.
Разработайте алгоритмы и программы для решения задачи выбора рациональной альтернативы на основе математического аппарата нечеткого логического вывода.
8. Технологии разработки экспертных систем
Технология создания интеллектуального программного обеспечения существенно отличается от разработки традиционных программ с использованием известных алгоритмических языков (таблица).
Характеристика |
Программирование в системах искусственного интеллекта |
Традиционное программирование |
Тип обработки Метод
Задание шагов решения Искомое решение Управление и данные Знания Модификации |
Символьный Эвристический поиск Неявное
Удовлетворительное Смешаны
Неточные Частые |
Числовой Точный алгоритм
Явное
Оптимальное Разделены
Точные Редкие |
Рассмотрим отработанные на сегодняшний день элементы технологии создания ИИС на примере разработки экспертных систем. Этот выбор обусловлен тем, что ЭС получили весьма широкое распространение во многих сферах человеческой деятельности, а технологии их создания имеют универсальный характер и не требуют аппаратных реализаций.
Экспертными системами называют сложные программные комплексы, аккумулирующие знания специалистов в конкретных предметных областях и тиражирующие этот эмпирический опыт для консультаций менее квалифицированных пользователей [4].
В самых первых ЭС не учитывалось изменение знаний, используемых в процессе решения конкретной задачи. Их назвали статическими ЭС. Типичная статическая ЭС содержит следующие основные компоненты (рис. 8.1):
• базу знаний;
• рабочую память, называемую также базой данных;
• решатель (интерпретатор);
• систему объяснений;
• компоненты приобретения знаний;
• интерфейс с пользователем (диалоговый компонент).
Эксперт
пользователь
Рис. 8.1. Обобщенная схема экспертной системы
База знаний в ЭС предназначена для хранения долгосрочных данных, описывающих рассматриваемую область (а не текущих данных), и правил, описывающих целесообразные преобразования данных в этой области.
База данных (рабочая память) служит для хранения текущих данных решаемой задачи.
Решатель (интерпретатор), используя исходные данные из рабочей памяти и знания из БЗ, формирует такую последовательность правил, которые, будучи примененными к исходным данным, приводят к решению задачи.
Система объяснений показывает, как система получила решение задачи (или почему она не получила решения) и какие знания она при этом использовала, что облегчает эксперту тестирование системы и повышает доверие пользователя к полученному результату.
Компоненты приобретения знаний необходимы для заполнения ЭС знаниями в диалоге с пользователем-экспертом, а также для добавления и модификации заложенных в систему знаний.
Интерфейс с пользователем (диалоговый компонент) ориентирован на организацию дружелюбного общения со всеми категориями пользователей как в ходе решения задач, так и приобретения знаний, объяснения результатов работы.
В разработке ЭС участвуют представители следующих специальностей:
эксперт в той проблемной области, задачи которой будет решать ЭС;
инженер по знаниям – специалист по разработке ЭС;
программист – специалист по разработке инструментальных средств (ИС).
Необходимо отметить, что отсутствие среди участников разработки инженера по знаниям (т.е. его замена программистом) либо приводит к неудаче процесс создания ЭС, либо значительно удлиняет его.
Эксперт определяет знания (данные и правила), характеризующие проблемную область, обеспечивает полноту и правильность введенных в ЭС знаний.
Инженер по знаниям помогает эксперту выявить и структурировать знания, необходимые для работы ЭС, осуществляет выбор того ИС, которое наиболее подходит для данной проблемной области, и определяет способ представления знаний в этом ИС, выделяет и программирует (традиционными средствами) стандартные функции (типичные для данной проблемной области), которые будут использоваться в правилах, вводимых экспертом.
Программисты разрабатывают программное обеспечение ЭС и осуществляют его сопряжение со средой, в которой оно будет использоваться.
Экспертная система работает в двух режимах: приобретения знаний и решения задач (называемом также режимом консультации или режимом использования ЭС).
Любая ЭС должна иметь, по крайней мере, два режима работы. В режиме приобретения знаний эксперт наполняет систему знаниями, которые впоследствии позволят ЭС самостоятельно (без помощи эксперта) решать определенные задачи из конкретной проблемной области. Эксперт описывает проблемную область в виде совокупности данных и правил. Данные определяют объекты, их характеристики и значения, существующие в области экспертизы. Правила определяют взаимные связи, существующие между данными, и способы манипулирования данными, характерные для рассматриваемого класса задач.
В режиме консультации пользователь ЭС сообщает системе конкретные данные о решаемой задаче и стремится получить с ее помощью результат. Пользователи-неспециалисты обращаются к ЭС за результатом, не умея получить его самостоятельно, пользователи-специалисты используют ЭС для ускорения и облегчения процесса получения результата. Следует подчеркнуть, что термин «пользователь» является многозначным, так как использовать ЭС могут и эксперт, и инженер по знаниям, и программист. Поэтому, когда хотят подчеркнуть, что речь идет о том, для кого создавалась ЭС, используют термин «конечный пользователь».
В режиме консультации входные данные о задаче поступают в рабочую память. Решатель на основе входных данных из рабочей памяти и правил из БЗ формирует решение. В отличие от традиционных программ компьютерной обработки данных ЭС при решении задачи не только исполняет предписанную последовательность операций, но и сама формирует ее.
Существует широкий класс приложений, в которых требуется учитывать изменения, происходящие в окружающем мире за время исполнения приложения. Для решения таких задач необходимо применять динамические ЭС, которые наряду с компонентами статических систем содержат подсистему моделирования внешнего мира и подсистему связи с внешним окружением. Подсистема моделирования внешнего мира необходима для прогнозирования, анализа и адекватной оценки состояния внешней среды. Изменения окружения решаемой задачи требуют изменения хранимых в ЭС знаний, для того чтобы отразить временную логику происходящих в реальном мире событий. Компонента связи с внешним миром актуальна для автономных интеллектуальных систем (роботов), а также для интеллектуальных систем управления. Связь с внешним миром осуществляется через систему датчиков и контроллеров.