- •Введение
- •1. Искусственный интеллект в роботах
- •1.1. Обеспечение взаимодействия системы управления с человеком
- •1.2. Схема интеллектуального управления в робототехнических комплексах
- •1.3. Интеллектуальное программирование и интеллектуальный интерфейс
- •1.4. Организация интеллектуальных систем
- •2. Экспертные системы
- •2.1. Структура экспертных систем
- •2.2. Технология разработки экспертных систем
- •2.3. Механизм вывода в экспертных системах
- •2.4. Методы поиска решений в экспертных системах
- •2.5. Поиск в одном пространстве состояний
- •2.6. Поиск решения методом редукции
- •2.7. Поиск решения во множестве факторизованных пространств
- •2.8. Поиск в фиксированном множестве пространств
- •2.9. Поиск в изменяющемся множестве пространств (метод нисходящего уточнения)
- •2.10. Поиск в альтернативных пространствах
- •2.11. Поиск с использованием нескольких моделей
- •3. Представление знаний в системах
- •3.1. Продукционные системы
- •3.2. Системы поиска на основе классической логики
- •3.3. Использование логики предикатов первого порядка при представлении знаний
- •3.4. Использование фреймов при представлении данных
- •3.5. Семантические сети
- •4. Нейронные сети в системах искусственного интеллекта
- •4.1. Области применения нейронных сетей
- •4.2. Персептронные нейронные сети
- •4.3. Обучение персептронных сетей
- •4.4. Сети встречного распространения
- •4.5. Обучение нейронных сетей методом обратного распространения ошибки
- •4.6. Обучение без учителя
- •4.7. Сети без обучения
- •4.8. Нейронные сети с радиальными базисными функциями (вероятностные сети)
- •4.9. Коллективы нейронных сетей
- •4.10. Аппаратно-программные средства реализации нейронных сетей для задач робототехники
- •2. Использование сетей для распознавания речи
- •3. Использование сетей для формирования законов управления
- •5. Методы нечеткой логики в интеллектуальных системах
- •5.1. Логические операции над нечеткими множествами
- •5.2. Получение выводов в нечеткой логике
- •5.3. Алгоритмы поиска решения в нечеткой логике
- •Заключение
- •Библиографический список
- •394026 Воронеж, Московский просп., 14
2.4. Методы поиска решений в экспертных системах
Предметная область представляется пространством состояний. Каждое состояние – это или признак объекта ПО, или сам объект. Процесс поиска решений состоит в переходе от одного элемента в пространстве состояний к другому до тех пор, пока не будет определено состояние классифицирующееся как решение. Алгоритмы перехода в пространстве перехода определяются как методы поиска решения. Выбор метода зависит от вида пространства состояний. Если пространство ограничено по количеству признаков и переходов между ними, то поиск выполняется в одном пространстве состояний. Если пространство состояний велико или имеет большую степень неопределенности, поиск реализуется во множестве пространств (иерархия пространств).
2.5. Поиск в одном пространстве состояний
Поиск в одном пространстве состояния рассматривается в графовой интерпретации. Граф представляет из себя совокупность признаков, объединенных связями: G=G(X,Y),
где G – представление графа;
X – множество признаков;
Y – множество пар Xi,Xj;
Xi,Xj – признаки из множества X, объединенных связями f,
f – оператор переводящий состояние Xi в состояние Xj .
Каждому Х соответствует вершина графа, а каждому f – линия соединяющая вершины (дуга). Таким образом,
16
пространство состояния представляется множеством вершин, объединенных дугами. Во множестве вершин выделяются следующие:
X0 – вершина начального состояния;
Xц – целевые вершины (вершины, соответствующие решениям);
Xт – терминальные вершины (вершины, означающие отсутствие решения, или тупиковые). К терминальным вершинам не применяется ни один оператор.
Граф обычно представляется в виде слоев (Рис. 5). В каждом графе нулевой слой – слой начальных состояний (исходные данные из предметной области). Поиск решения состоит в применении операторов к признакам нулевого слоя. Эта операция называется раскрытием вершин. Состояние, получившееся в результате применения оператора, соответствует дочерней вершине, множество которых образует слой номер 1. Дальнейшее раскрытие вершин слоя 1 порождает слой 2 и т.д. пока не будут достигнуты вершины Ху (целевые) или Хт (терминальные).
Процесс поиска может заканчиваться различными исходами:
раскрытием всех целевых и терминальных вершин;
раскрытием определенного количества целевых вершин;
достижением определенной глубины поиска.
Глубина поиска определяется номером слоя, до которого проводится раскрытие вершин. Если в этом граничном слое
имеются целевые вершины, то они принимаются как решения,
если отсутствуют, то признается отсутствие решения. Направления поиска – последовательность раскрытия вершин в графе. При поиске в ширину вершины раскрываются послойно. На рисунке 6 это представлено нумерацией вершин без скобок. При поиске в ширину сначала раскрываются все вершины нулевого слоя, результаты раскрытия хранятся в рабочей памяти
системы. Затем раскрываются порожденные вершины до завершения поиска по одному из критериев, указанных выше.
17
X01 X02 X03
X11 X12 X13 X14 X15
X21
Xy1 Xy2 Xт1 Xy3 Xт3
Xт2
Рис. 5. Представление поиска в пространстве состояний в виде графа
При поиске в глубину раскрытие начинается от одной из вершин нулевого слоя и далее по одному из направления графа (например, (1), (2), (3)). По достижении нижнего слоя осуществляется возврат до вершины, к которой можно применить несколько операторов. Далее раскрытие выполняется по новому направлению (возврат с (3) на (2) и на (4)). После раскрытия всех дочерних вершин одного направления выполняется возврат в нулевой слой и реализуется поиск по другому направлению, исходящему из начальной вершины ((1) – (5)). Может применяться смена направлений, т.е. по ходу поиска поиск в глубину может сменяться поиском в ширину.