Алгоритм полного перебора

Вершины раскрываются в том порядке, в котором они были порождены. Первой раскрывается начальная вершина. Проверяется среди порожденных вершин наличие целевой. Если есть, поиск заканчивается. Если нет, то раскрывается первая из порожденных вершин и проверяется наличие целевых вершин. Затем раскрывается вторая из порожденных вершин и т.д.

Для записи алгоритмов поиска в пространстве состояний введем понятия списков открытых (ОТК) и закрытых (ЗКР) вершин. Список закрытых вершин – это список, где размещаются идентификаторы раскрытых вершин и идентификатор вершины, которую предстоит раскрыть в данный момент. Вершины из списка ЗКР, кроме последней, раскрывать нельзя. Список открытых вершин – это список, где размещаются идентификаторы вершин, которые могут и должны быть раскрыты.

Стратегии поиска различаются правилами размещения вершин в списке ОТК и выбора очередной вершины для раскрытия.

Алгоритм полного перебора включает следующие шаги.

1. Поместить начальную вершину в список ОТК.

2. Если список ОТК пуст, выдать сообщение о неудаче поиска, иначе перейти к следующему шагу.

3. Взять первую вершину из списка ОТК и перенести ее в список ЗКР, присвоить вершине идентификатор .

4. Раскрыть вершину . Поместить все дочерние неповторяющиеся (т.е. не встречающиеся в списке ЗКР) вершины в конец списка ОТК и построить указатели, ведущие от них к вершине . Если вершина не имеет дочерних вершин, то перейти к шагу 2.

5. Проверить, не является ли одна из дочерних вершин целевой. Если является, то выдать решение, в ином случае перейти к шагу 2.

В этом алгоритме предполагается, что начальная вершина не может быть

целевой. Алгоритм позволяет найти оптимальное (минимальное по числу дуг) решение. Например, использование этого алгоритма для решения задачи о выборе маршрута (минимальной длины) сводится к построению графа состояний (см. рис. 8.3). Имея этот граф и сравнивая длины различных маршрутов, ведущих к целевым состояниям, можно выбрать оптимальные маршруты. Как следует из графа состояний, таких маршрутов два – маршруты, ведущие к целевым состояниям ABCDA и ADCBA.








Дата добавления: 2016-04-22; просмотров: 1958;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.