Описание тега iterative-deepening

0 ответов

8 загадок итеративная реализация глубокого поиска

Я реализовал поиск в глубину (рекурсивный) для 8 задач головоломки в Java: protected PuzzleState depthFirstSearch(PuzzleState state) { PuzzleState start = this.getStartState(); PuzzleState goal = this.getGoalState(); PuzzleState stop = null; int lim…
21 ноя '16 в 14:15
1 ответ

Почему моя реализация итеративного углубления поиска в глубину занимает столько же памяти, сколько BFS?

BFS требует O(b^d) память, тогда как известно, что IDDFS работает только O(bd) объем памяти. Однако при профилировании этих двух реализаций оказывается, что они используют одинаковый объем оперативной памяти - что мне не хватает? Я использую Tree кл…
2 ответа

Как итеративное углубление поиска может быть эффективно реализовано в haskell?

У меня есть проблема оптимизации, которую я хочу решить. У вас есть какая-то структура данных: data Foo = { fooA :: Int , fooB :: Int , fooC :: Int , fooD :: Int , fooE :: Int } и рейтинговая функция: rateFoo :: myFoo -> Int Я должен оптимизирова…
1 ответ

Итеративная углубленная поисковая реализация Java

Я пытался реализовать итеративный углубленный поиск в Java. Однако, по некоторым причинам, не все дочерние элементы для каждого узла посещаются, что приводит к неверным результатам. Вот мой код до сих пор: public int IDS(Node start, Node goal){ int …
25 апр '17 в 16:54
1 ответ

Итеративное углубление с ограничением по времени

Я работаю над реализацией итеративного углубления с принципиальным изменением для альфа-бета-поиска для программы компьютерных шахмат, и я надеялся включить ограничение по времени для поиска. Я задавался вопросом о последствиях ограничения по времен…
1 ответ

Астар против IDAstar производительность

Кажется, я не могу понять причину, по которой A * превосходит IDA* в большинстве случаев. Мой профессор сказал, что причина не в том, что ранние (ближе к корню) узлы повторно исследуются как возвратные пути IDA* после достижения f-предела, а скорее …
0 ответов

Найти количество узлов, исследованных в Итеративном углублении поиска

Я учусь для своего AI экзамен, и я застрял в Iterative Deepening Search, Я страдаю, чтобы рассчитать количество узлов, исследованных, когда branching factor из 4 а также goal node в level 3, Пожалуйста, кто-нибудь, помогите мне. По этому вопросу мож…
0 ответов

Проблема с ИИ с обрезкой альфа-бета - Java

Я беру урок искусственного интеллекта, где нам нужно создать ИИ, который будет играть в крестики-нолики. Инструктор указал использовать альфа-бета-обрезку для процесса принятия решения ИИ при размещении следующего хода. Проблема, с которой я сталкив…
1 ответ

Управление памятью хвостовых вызовов в haskell

Я использую следующую структуру управления (которую я считаю хвостовой рекурсивной) untilSuccessOrBigError :: (Eq e) => (Integer -> (Either e a)) -> Integer -> e -> (Either e a) untilSuccessOrBigError f count bigError = case f count o…
1 ответ

Как синхронизировать алгоритм в Ruby?

У меня есть алгоритм, который потенциально может работать в течение неограниченного периода времени, обновляя результаты по мере необходимости. Он использует что-то похожее на итеративный углубленный поиск. Через определенное время я бы хотел, чтобы…
22 апр '14 в 22:48
1 ответ

Поиск с ограниченной глубиной - логика - как нам прекратить возвращаться назад?

Нужны некоторые логические советы. Я выполняю поиск с ограниченной глубиной, чтобы перейти из начального состояния в конечное. Я расширяю все возможные ходы от каждого узла, который на глубине> 0 включает в себя исходный узел (это проблема). Я пытал…
1 ответ

CLIPS LHS переменные привязки

Я пытаюсь написать программу CLIPS, которая использует алгоритм итеративного углубления для решения проблемы планирования. По этой же причине я хотел бы сохранить низкий коэффициент ветвления. В следующем коде ?s переменная, которая представляет уро…
13 июл '18 в 10:50
1 ответ

Depth First Итеративный алгоритм углубления, не дающий результатов (в Java)

У меня есть алгоритм поиска, который должен анализировать все дерево, найти все результаты, которые могут соответствовать поисковому запросу, и вернуть их все в виде списка. Я понимаю, что это не совсем суть алгоритма, но я делаю это как тест с шири…
1 ответ

Итеративный углубленный поиск: рекурсивен ли он?

Я искал в интернете алгоритм IDS, и я продолжаю находить некоторые примеры, но все они с рекурсией, и, как я понял, итеративный не рекурсивен. Так что вы можете дать мне несколько примеров для алгоритма IDS?(Реализация была бы отличной и без рекурси…
07 ноя '13 в 07:34
1 ответ

Планировщик Prolog STRIPS никогда не завершает

Следующие примеры Ивана Братко по искусственному интеллекту в Прологе из его книги: "Прологическое программирование для искусственного интеллекта - 3-е издание" (ISBN-13: 978-0201403756) (1-е издание, 1986 г., Аддисон-Уэсли, ISBN 0-201-14224-4) Я за…
1 ответ

Чем итеративное углубление более эффективно, чем простое сканирование узлов на заданном уровне глубины.

Не избыточно ли повторно сканировать n-1 уровней узлов для каждой итерации?
2 ответа

Шахматы: высокий коэффициент ветвления

Я пытаюсь разработать простой шахматный движок, но я борюсь с его производительностью. Я реализовал Negamax с альфа-бета-обрезкой и итеративным углублением (без какой-либо дополнительной эвристики), но я не могу получить разумное время поиска, превы…
1 ответ

Попытка реализовать Ожидание покоя

Я пытаюсь реализовать итеративное углубление до расслабления. Если вы не помните, я имею в виду, что в случае больших различий между уровнями дерева будет продолжаться проверка глубже, пока различия не станут большими. лучший пример - создание длинн…
0 ответов

График алгоритма идёт по порядку, а не по уровню

Я пытаюсь реализовать Iterative Deeping A* Search. Проблема в том, что он идет обычным образом, а не так, как я хочу. Когда я объявил узел, я также написал уровень, на котором он находится (adancime). Так что моя логика будет такой: если (уровень, н…
2 ответа

Как итеративное углубление влияет на сложность времени?

У меня есть алгоритм обхода дерева, который обычно работает в O (bm), где b - фактор ветвления, а m - максимальная глубина. Используя итеративное углубление, этот алгоритм запускается снова и снова, m раз с увеличением глубины: O (bm) = b⁰ + b¹ + b²…