Слайд 2Тема 2. Поиск в пространстве состояний
![Тема 2. Поиск в пространстве состояний](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-1.jpg)
Слайд 3Поиск в пространстве состояний (англ. state space search) — группа методов, предназначенных для решения задач искусственного
![Поиск в пространстве состояний (англ. state space search) — группа методов, предназначенных](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-2.jpg)
интеллекта
Слайд 5Первым шагом в решении задачи является формулировка цели с учётом текущей ситуации
![Первым шагом в решении задачи является формулировка цели с учётом текущей ситуации и показателей производительности агента.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-4.jpg)
и показателей производительности агента.
Слайд 6Формулировка задачи представляет собой процесс определения того, какие действия и состояния следует
![Формулировка задачи представляет собой процесс определения того, какие действия и состояния следует](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-5.jpg)
рассматривать с учётом некоторой цели.
Слайд 7Описанный процесс определения такой последовательности называется поиском.
Любой алгоритм поиска принимает в
![Описанный процесс определения такой последовательности называется поиском. Любой алгоритм поиска принимает в](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-6.jpg)
качестве входных данных некоторую задачу и возвращает решение в форме последовательности действий.
После выполнения этого решения агент формулирует новую цель.
Слайд 8Задача формально определяется с помощью следующих четырёх компонентов:
Начальное состояние, в котором агент
![Задача формально определяется с помощью следующих четырёх компонентов: Начальное состояние, в котором](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-7.jpg)
приступает к работе.
Функция определения преемника – описание возможных действий, доступных агенту.
Слайд 10Путём в пространстве состояний является последовательность состояний, соединённых последовательностью действий.
![Путём в пространстве состояний является последовательность состояний, соединённых последовательностью действий.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-9.jpg)
Слайд 11Проверка цели позволяет определить, является ли данное конкретное состояние целевым состоянием.
![Проверка цели позволяет определить, является ли данное конкретное состояние целевым состоянием.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-10.jpg)
Слайд 12Функция стоимости пути назначает числовое значение стоимости каждого пути.
![Функция стоимости пути назначает числовое значение стоимости каждого пути.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-11.jpg)
Слайд 13Решением задачи является путь от начального состояния до целевого состояния.
Качество решения
![Решением задачи является путь от начального состояния до целевого состояния. Качество решения](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-12.jpg)
измеряется функцией стоимости пути, а оптимальное решение имеет наименьшую стоимость пути среди всех прочих решений.
Слайд 15Наиболее известные примеры решения задач подразделяются на два типа: упрощенные и реальные
![Наиболее известные примеры решения задач подразделяются на два типа: упрощенные и реальные задачи.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-14.jpg)
задачи.
Слайд 16Упрощенные задачи предназначены для иллюстрации или проверки различных методов решения задач.
Реальные
![Упрощенные задачи предназначены для иллюстрации или проверки различных методов решения задач. Реальные](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-15.jpg)
задачи, которые действительно требуются людям, не имеют, как правило, единого приемлемого для всех описания
Слайд 18Задачи со скользящими фишками часто используются в искусственном интеллекте для проверки новых
![Задачи со скользящими фишками часто используются в искусственном интеллекте для проверки новых](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-17.jpg)
алгоритмов поиска.
Известно, что этот общий класс задач является NP-полным.
Слайд 19Задачи относятся к классу недетерминированных полиномиальных задач (NP-классу, сокращение от Nondeterministic Polynomial),
![Задачи относятся к классу недетерминированных полиномиальных задач (NP-классу, сокращение от Nondeterministic Polynomial),](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-18.jpg)
если существует алгоритм, позволяющий выдвинуть гипотезу о возможном решении, а затем проверить правильность этой гипотезы с помощью полиномиальных затрат времени.
Слайд 20Примеры реальных задач
Одними из наиболее распространённых являются задачи поиска маршрута в терминах
![Примеры реальных задач Одними из наиболее распространённых являются задачи поиска маршрута в](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-19.jpg)
заданных местонахождений и переходов между ними.
Слайд 21В задачах автоматического упорядочения сборки сложных объектов роботом цель состоит в определении
![В задачах автоматического упорядочения сборки сложных объектов роботом цель состоит в определении](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-20.jpg)
последовательности, в которой должны собираться детали некоторого объекта.
Слайд 23Сформулировав определённые задачи, необходимо найти их решения. Такая цель достигается посредством поиска
![Сформулировав определённые задачи, необходимо найти их решения. Такая цель достигается посредством поиска в пространстве состояний.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-22.jpg)
в пространстве состояний.
Слайд 24Порядок, в котором происходит развёртывание состояний, определяется стратегией поиска.
![Порядок, в котором происходит развёртывание состояний, определяется стратегией поиска.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-23.jpg)
Слайд 25Корнем этого дерева поиска является поисковый узел, соответствующий начальному состоянию
Первый этап
![Корнем этого дерева поиска является поисковый узел, соответствующий начальному состоянию Первый этап](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-24.jpg)
состоит в проверке того, является ли это состояние целевым.
Слайд 26Развёртывание текущего состояния приводит к формированию его преемника - нового множества состояний
![Развёртывание текущего состояния приводит к формированию его преемника - нового множества состояний](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-25.jpg)
Слайд 27Суть поиска состоит в том, что пока проверяется один вариант, другие откладываются
![Суть поиска состоит в том, что пока проверяется один вариант, другие откладываются](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-26.jpg)
в сторону на тот случай, когда первый вариант не приводит к решению.
Слайд 28Узлы представляют собой структуры данных, применяемых при построении дерева поиска, а состояние
![Узлы представляют собой структуры данных, применяемых при построении дерева поиска, а состояние соответствует конфигурации мира.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-27.jpg)
соответствует конфигурации мира.
Слайд 31Каждый узел имеет родительский узел, содержит данные о состоянии и имеет различные
![Каждый узел имеет родительский узел, содержит данные о состоянии и имеет различные вспомогательные поля.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-30.jpg)
вспомогательные поля.
Слайд 32Структура данных может включать в себя:
State - соответствующее данному узлу состояние
![Структура данных может включать в себя: State - соответствующее данному узлу состояние](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-31.jpg)
в общем пространстве состояний;
Parent-Node – родительский узел;
Action – действие, которое было применено к родительскому узлу для формирования данного узла;
Path-Cost – стоимость пути от начального состояния до данного узла;
Depth – количество этапов (глубина) пути от первоначального состояния до данного узла.
Слайд 33Производительность решения задачи
![Производительность решения задачи](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-32.jpg)
Слайд 34Принято оценивать производительность алгоритма с помощью следующих четырёх показателей
Полнота. Гарантирует ли алгоритм
![Принято оценивать производительность алгоритма с помощью следующих четырёх показателей Полнота. Гарантирует ли](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-33.jpg)
обнаружение решения, если оно имеется?
Оптимальность. Гарантирует ли данная стратегия нахождение оптимального решения в соответствие с выбранным критерием?
Временная сложность. Время нахождения решения при данном алгоритме.
Пространственная сложность. Необходимый объём памяти для осуществления поиска.
Слайд 36Методы поиска в пространстве состояний подразделяются на две группы: методы «слепого» и
![Методы поиска в пространстве состояний подразделяются на две группы: методы «слепого» и упорядоченного (эвристического) поиска.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-35.jpg)
упорядоченного (эвристического) поиска.
Слайд 37Методы «слепого» поиска называют также «не информированными» методами, так как в процессе
![Методы «слепого» поиска называют также «не информированными» методами, так как в процессе](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-36.jpg)
поиска пути на графе не учитывается информация о степени близости текущей и целевой вершин.
Это приводит к тому, что в методах «слепого» поиска выполняется полный просмотр всего пространства состояний.
Слайд 38Методы "слепого" поиска можно разделить на три группы:
Случайный поиск;
Поиск «в глубину
![Методы "слепого" поиска можно разделить на три группы: Случайный поиск; Поиск «в](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/977464/slide-37.jpg)
и ширину»;
Алгоритм равных цен.