- •Тема 1. Информационный процесс представления знаний.
- •1.1 Основные понятия дисциплины.
- •1.2 Классификация знаний.
- •I группа.
- •II группа.
- •III группа.
- •IV группа.
- •Тема 2.
- •2.1 Модели представления знаний в ис
- •2.2 Продукционная модель знаний.
- •Пример 2.1
- •2.3 Фреймы.
- •Пример 2.3.
- •2.4 Семантические сети
- •2.5 Формальные логические модели на основе исчисления предикатов
- •Пример 2.5
- •Пример 2.6
- •Пример 2.7
- •Пример 2.8
- •Тема 3. Язык Пролог.
- •3.1 Пролог с процедурной точки зрения.
- •Пример 3.1
- •Пример 3.2
- •Пример 3.3
- •3.2 Передача параметров и возврат значений в предикат.
- •Пример 3.4
- •Тема 4. Вычислительная модель Пролога.
- •4.1 Факты, запросы, переменные и правила.
- •4.1.1 Факты.
- •4.1.2 Запросы.
- •4.1.3 Переменные.
- •4.1.4 Правила.
- •Пример 4.1
- •Пример 4.2
- •4.2 Сравнение термов на равенство.
- •Тема 5. Дедуктивные системы. Логический вывод и логическое программирование.
- •5.1 Исчисления и дедуктивные системы.
- •5.2 Общая схема построения формальной системы.
- •5.3 Основные понятия логического программирования.
- •5.4 Простой абстрактный интерпретатор логических программ.
- •Пример 5.2
- •Пример 5.3
- •Тема 6. Экспертные системы (эс).
- •6.1 Понятие эс. Основные характеристики.
- •6.2 Области применения эс. Типы эс и подходы к их реализации.
- •6.3 Типы задач, решаемых эс.
- •6.4 Отличие эс от традиционных программ.
- •6.5 Типовая структура эс.
- •6.6 Инструментальные средства эс.
- •Тема 7. Технологии проектирования и разработки экспертных систем (эс).
- •1. Выбор проблемы.
- •2. Разработка прототипа эс.
- •3. Доработка коммерческой версии.
- •4. Оценка эс.
- •5. Стыковка системы.
- •6. Поддержка системы.
- •Тема 8. Вывод на знаниях.
- •8.1 Основные положения.
- •8.2 Стратегии управления выводом.
- •Пример 8.1
- •Тема 9. Представление нечетких знаний в ис.
- •Пример 9.1
- •Тема 10. Инженерия знаний.
- •10.1 Поле знаний.
- •10. 2 Стратегии получения знаний.
- •10.3 Теоретические аспекты извлечения знаний.
- •10.4 Структурирование знаний.
6.4 Отличие эс от традиционных программ.
ЭС работают со знаниями, а обычные программы – с данными.
Обычные программы выполняют детерминированные алгоритмы, т.е. дают одинаковый результат при одинаковых входных данных. ЭС ведут себя как люди-эксперты, т.е. могут ошибаться, но, в отличие от обычных программ, в которых имеются скрытые ошибки, ЭС имеют потенциальную возможность обучения на ошибках (коррекция).
В ЭС алгоритмы представляют собой эвристики.
Обычные программы выполняют эффективную обработку БД, а ЭС – БЗ (за счет механизма логического вывода).
6.5 Типовая структура эс.
1) Приобретение знаний – это сбор, передача и анализ опыта решения проблем из необходимых источников знаний в БЗ ЭС.
В качестве источников знаний выступают:
люди-эксперты;
справочники;
учебная литература;
опыт разработчиков и др.
2) База знаний содержит все необходимые сведения о предметной области (факты и правила), описывающие знания.
3) Машина вывода – это управляющая структура, обеспечивающая процедуры извлечения знаний из БЗ, формирование и выполнение последовательности шагов при решении задачи.
Машина вывода включает:
1 – интерпретатор;
2 – планировщик.
Интерпретатор выполняет алгоритм поиска решения, выбирая нужные правила и факты из БЗ.
Планировщик управляет работой интерпретатора, т.е. контролирует процесс поиска решения, оценивает эффект от применения различных правил и формирует альтернативные стратегии поиска решения.
4) Рабочая память – это БД, в которой хранятся входные, промежуточные и конечные результаты решения задач, а также текущие гипотезы, проверенные на данном шаге работы машины вывода, и параметры управления (выбранная стратегия, алгоритм поиска и существующие альтернативы).
5) Подсистема совершенствования вывода. Люди-эксперты могут анализировать свою работу, накапливать опыт, знания и улучшать процесс поиска решения. Эти задачи в ЭС должна решать подсистема совершенствования вывода, которая анализирует принятые решения, изучает работу алгоритма и модифицирует их с целями оптимизации поиска решения (по времени, по точности представления результата и т.д.).
В современных ЭС этот блок практически не реализуется.
6) Интерфейс пользователя представляет собой языковой процессор для общения пользователя и экспертной системы. Он выполняет 2 функции:
1 – преобразование запросов пользователя с естественного языка на внутренний язык системы, соответствующий моделям представления знаний.
2 – синтез ответов из внутреннего представления системы в форму, понятную человеку.
Варианты общения:
Табличное представление запросов и ответов.
Через систему меню.
Запись запроса и выдача ответа в виде текста на естественном языке.
Общение на естественном языке в виде речевых высказываний (современное направление).
Общение с помощью мысли (не реализовано).
7) Подсистема объяснения обеспечивает возможность проверки правильности полученных выводов и решений исходным запросом в виде ответов на вопросы, соответствующие поведению ЭС.
Типовые вопросы:
Каким образом было получено найденное решение?
Почему были отвергнуты альтернативные гипотезы?
Какова была стратегия поиска решений?
8) Подсистема рекомендаций. Если ЭС формирует решения в виде причинно-следственных связей, то этот блок выполняет анализ таких связей и выбор некоторой оптимальной стратегии действий согласно некоторой целевой функции.
Коллектив разработчиков представляет собой группу специалистов, занимающихся как разработкой, так и эксплуатацией ЭС.
Он включает:
пользователя;
эксперта;
инженера по знаниям;
программистов.
Приведем основные характеристики разработчиков ЭС.
1. К пользователю предъявляются самые минимальные требования:
1 – дружелюбие;
2 –умение объяснить, что он хочет от системы;
3 – отсутствие психологического барьера работы на компьютере;
4 – базовый уровень квалификации в предметной области (знание терминов, с которыми работает ЭС).
2. Эксперт не является программистом, но обладает глубоким уровнем знаний предметной области, опытом работы и высокой квалификацией.
К нему предъявляются следующие требования:
1 – доброжелательность;
2 – готовность поделиться своим опытом;
3 – умение объяснить (педагогические навыки);
4 – заинтересованность в успешности разработки.
3. Программисты характеризуются самой низкой потребностью в общении с другими людьми.
Для разработки ЭС к нему предъявляются следующие требования:
1 – общительность;
2 – способность осваивать новые методы;
3 – интерес к разработке;
4 – достаточный уровень квалификации.
4. Инженер по знаниям – это один из самых малочисленных, высокооплачиваемых и дефицитных специалистов.
Его основная задача не программирование, а анализ информации, ее структурирование, определение взаимосвязей между элементами и формирование поля знаний ЭС.
Инженер по знаниям работает с различными формами представления знаний:
знания в памяти человека;
знания в книгах и других носителях;
поле знаний;
модели представления знаний;
БЗ экспертных систем.