Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Представление пространства поиска.






а) Каким образом организовано пространство состояний?

б) Существуют ли в пространстве состояний не пересекаемые подмножества состояний, каким образом их можно определить?

в) Какие существуют отношения между состояниями пространства поиска?

 

а) Организацию пространства состояний удобно представить в виде ориентированного графа (в дальнейшем - орграфа), где множество вершин орграфа сопоставимо с состояниями, а множество дуг графасопоставимы с операторами преобразующими состояния множества.

Представление пространства состояний в виде орграфа позволяет выделить дополнительные свойства и организацию состояний. Свойстваопределяются отношением подмножеств, входящих и выходящих дуг.

Рассмотрим наиболее весомые условия соотношений множеств Yin { yj } (входящих дуг) и Yout { yj } (выходящих дуг), устанавливающие организацию орграфа G: Если для всякой вершины xiÎ X орграфа G, выполняются условия: ç Yin { yj= n-1 и ç Yout { yj=n- 1, то орграф представляет собой замкнутую структуру.



Свойства некоторых вершин так же влияют на организацию орграфа:

1. Если для некоторой вершины xiÎ X орграфа G, выполняются условия: ç Yin { yj³ 1 и ç Yout { yj, то такая вершина xi является «терминальной». Терминальная вершина указывает на то, что для соответствующего состояния si, множество применимых к нему операторов: F=Æ. Такое состояние не может быть далее преобразовано.

2. Если для некоторой вершины xiÎ X орграфа G, выполняются условия: ç Yin { yj и ç Yout { yj³ 1, то такая вершина xi является «корневой». Корневая вершина не может быть порождена ни одной вершиной орграфа G. Так, если корень дерева не представляет собой кольцо, то в дереве есть только одна корневая вершина.

Итак, граф G задает пространство состояний, т.е. пространство, в котором осуществляется поиск решения. Построение пространства осуществляется с помощью следующего процесса. Берется некая вершина, к ней применяются все возможные операторы, порождающие все дочерние вершины. Этот процесс называют процессом раскрытия вершин. Если получена целевая вершина, то она не раскрывается. Процесс построения пространства состояний заканчивается, когда все нераскрытые вершины являются целевыми, или терминальными (т.е. вершинами, к которым нельзя применить никаких операторов). В связи с тем, что пространство состояний может содержать бесконечное количество вершин, на практике процесс порождения пространства ограничивают либо временем, либо объемом памяти.

б) В пространстве состояний существуют не пересекаемые подмножества.

Родовые признаки (одинаковое количество символов, цифры в последовательности не повторяются) выделяют пространство состояний, следовательно, родовые признаки не пересекаемых подмножеств не равны пустому множеству, т.е. КR≠ Ø

На практике требуется обеспечить полноту поиска, т.е. организовать поиск так, чтобы все целевые вершины были найдены, если они существуют. Надежным способом обеспечения полноты является полный перебор всех вершин. Для задания процесса перебора необходимо определить. порядок, в котором будут перебираться вершины графа. Обычно выделяют два основных способа поиска: поиск в глубину (сначала раскрывается та вершина, которая была построена самой последней) и поиск в ширину (вершины раскрываются в том же порядке, в котором они порождаются).

Но при реализации игры «перестановка» следует учитывать условия:

1) Если количество знаков в состоянии 2 m и применяется прямое правило, то мощность пространства поиска будет равным n! / 2.

2) Если количество знаков в состоянии 2 m -1 и применяется прямое правило, то мощность пространства поиска будет равным n!.

3) Если количество знаков в состоянии 2 m и применяется обратное правило, то мощность пространства поиска будет равным n!.

4) Если количество знаков в состоянии 2 m -1 и применяется обратное правило, то мощность пространства поиска будет равным n! / 2.

Эти условия необходимы для того, чтобы определить существуют ли в пространстве состояний не пересекаемые подмножества состояний. Пример: если следовать условиям 2 и 3, то таких состояний не появится т.к из родительской вершины, состоящей из n символов можно образовать n! возможных комбинаций, а если следовать условям 1 и 4, то можно образовать только половину возможных состояний и в пространстве состояний окажутся непересекаемые вершны. Можно сделать вывод, что обязательним условием существованя искомой вершины является проверка количества символов в состоянии на четность/нечетность.

в) Отношения между состояниями пространства.

Пространство поиска в составе пространства состояний образуется за счет обобщения видовых признаков некоторых состояний. В этом случае обобщенные видовые признаки дополняют множество родовых признаков данных состояний, образуя собственное пространство поиска в пространстве состояний или класс состояний.

Каждое состояние пространства состояний получено прямым или обратным преобразованием.

Глубина пространства поиска меньше либо равна n-1, где n-число цифр в состоянии.

Элементы пространства поиска различны.

 

3. Условия задачи:

а) Описание начального условия решения задачи.

б) Описание требуемого результата решения задачи.

а) Характеристика способов генерации.

Процедура генерации является отличительным (видовым) признаком класса «слепых» методов поиска. В отношении процедуры генерации различают слепые методы поиска: по лучу, в глубину и в ширину.

Характеристика метода поиска по лучу:

1) Для очередного si формируется множество применимых операторов Fi.

2) Если Fi¹ Æ, то выбирается одно " fjÎ Fi, иначе si является терминальным состоянием. Если имеются терминальные состояния, то следует ввести в алгоритм механизма возврата. Обычно, следует вернуться назад, выбрать иное " fjÎ Fi- 1 для si- 1 не порождающие терминальное si (более подробно об обходе терминальных состояний будет сказано ниже).

3) Состояние si раскрывается si Å fj = si+ 1 (далее результат генерации или раскрытие состояния будем именовать «фронтом»).

4) Если выполняется условие: si+ 1 º sjtÎ St, то задача решена (выполняется одно из условий решения первой задачи), иначе переход к п.1 применительно для очередного состояния si+ 1.

Алгоритмы поиска в методе в глубину:

1) Для одной " siÎ Si формируется множество применимых операторов Fi.

2) Если Fi=Æ, то si является терминальным состоянием, (при наличии терминальных состояний, используют иную " sjÎ Si или поступают так же, как в методе поиска по лучу).

3) Состояние si раскрывается si Å Fi=Si+ 1.

4) Если выполняетсяусловие: $ si+ 1 Î Si+ 1, º sjtÎ St, то задача решена (выполняется одно из условий решения первой задачи), иначе переход к п.1., но применительно для очередного фронта состояний Si+ 1.

В методе в ширину реализуется следующий алгоритм поиска:

1) Для всех siÎ Si формируется множество применимых операторов Fi.

2) Если для всех siÎ Si, Fi=Æ, то решения не существует, иначе п.3.

3) Si раскрывается: Si Å Fi = Si+ 1.

4) Если выполняется условие: $ siÎ Si+ 1, º sjtÎ St, то задача решена (выполняется одно из условий решения первой задачи), иначе переход к п.1. применительно для очередного фронта состояний Si+ 1.

 

Для осуществления поиска необходим комплекс действий. Комплекс действий определяют процедуры генерации, проверки, планирования.

Для осуществления поиска:
1. So = {S1, S2…Sn}

Задать начальное состояние с которого начинается поиск.

2. St = {S1, S2…Sm}

Множество целевых состояний. m - мощность множества.

Пересечение множеств So и St не должно быть пустым.

3. F = {f1, f2…fk}

Множество операторов.

4. Sc ={S1, S2…Si}

Множество текущих состояний. Sc ¹ Æ. (в некоторых случаях выполнение данного условия необязательно).

 

б) Используя «слепые» методы поиска возможно получить следующие результаты решения задачи:

1) Определение количества требуемых состояний при прохождении заданного числа итераций.

2) Поиск целевого состояния (при заданном начальном состоянии) любым методом поиска.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.