Описание тега monte-carlo-tree-search

Monte-Carlo Tree Search is a best-first, rollout-based tree search algorithm. It gradually improves its evaluations of nodes in the trees using (semi-)random rollouts through those nodes, focusing a larger proportion of rollouts on the parts of the tree that are the most promising. This tag should be used for questions about implementation of this algorithm.
0 ответов

Алгоритм Монте-Карло для бинарных деревьев не запускается правильно

Я пытался применить алгоритм Монте-Карло к бинарным деревьям, но у меня сложилось впечатление, что в алгоритме есть ошибка, потому что он возвращает мое значение по умолчанию. Вот структура дерева в графическом виде: 10 / \ 6 14 / \ / \ 5 8 11 18 Вы…
1 ответ

Крестики-нолики Монте-Карло - Бедный агент

Я пытаюсь реализовать поиск по дереву Монте-Карло, чтобы играть в крестики-нолики в Python. Моя текущая реализация выглядит следующим образом: У меня есть класс Board, который обрабатывает изменения в крестики-нолики. Состояние платы представлено ма…
1 ответ

MCTS * дерево * распараллеливание в Python - возможно?

Я хотел бы распараллелить мою программу MCTS. Есть несколько способов сделать это: Распараллеливание листьев, где каждый лист разворачивается и моделируется параллельно. Корневое распараллеливание, где каждый поток / процесс создает отдельное дерево…
1 ответ

Проблема с кучей Java в моем плеере MCTS Gomoku

Когда я запускаю свою программу, я получаю эту ошибку: Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap space at MCTSNode.setPossibleMoves(MCTSNode.java:66) at MCTSNode.Expand(MCTSNode.java:167) at MctsPlayer.getBestMove(…
0 ответов

Connect 4 с обучением через самостоятельную игру (например, alphazero) не играет оптимально

После прочтения этой статьи Дэвидом Фостером ( https://medium.com/applied-data-science/how-to-build-your-own-alphazero-ai-using-python-and-keras-7f664945c188) и обучения моделям в течение нескольких дней, пока ошибка не перестала уменьшаться, я обна…
2 ответа

JAVA - Копирование массива в конструкторе неожиданно медленно после большого количества вызовов

В настоящее время я пытаюсь улучшить производительность кода Java. Немного покопавшись, чтобы увидеть, где требуется оптимизация, я получил следующую настройку (упрощено для ясности). Конструктор Board, который вызывается большое количество раз (~20…
05 апр '18 в 14:36
2 ответа

Поиск дерева Монте-Карло - обработка конечных узлов игры

Я реализовал MCTS для игры для 4 игроков, которая работает хорошо, но я не уверен, что понимаю расширение, когда ход окончания игры находится в реальном дереве, а не в развертывании. В начале игры выигрышные / проигрышные позиции обнаруживаются толь…
1 ответ

Количество симуляций на узел в поиске дерева Монте-Карло

В алгоритме mcts, описанном в Википедии, он выполняет ровно одно воспроизведение (симуляцию) при каждом выборе узла. Сейчас я экспериментирую с этим алгоритмом в простой игре connect-k. Интересно, на практике, мы проводим больше игр, чтобы уменьшить…
1 ответ

Алгоритм трассировки, порядок обновления

Я читаю Silver et al (2012) "Поиск различий во времени на компьютере" и пытаюсь понять порядок обновления для алгоритма трассировки приемлемости. В Алгоритме 1 и 2 статьи веса обновляются перед обновлением трассы приемлемости. Интересно, правильный …
1 ответ

Улучшения поиска по дереву Монте-Карло

Я пытаюсь реализовать алгоритм MCTS в игре. Я могу использовать только около 0,33 секунды за ход. За это время я могу сгенерировать одну или две игры для каждого ребенка из начального состояния, которое содержит около 500 дочерних узлов. Мои симуляц…
0 ответов

Поиск по дереву Монте-Карло (рекомендация по языку программирования)

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

Более быстрая реализация дерева поиска Python

У меня есть реализация treesearch в Python, которая просто медленна для моего использования. Как я могу запустить это быстрее? Я читал, что есть numba, но я не могу понять, как это будет работать, что он может поддерживать, а что нет. Кто-нибудь исп…
2 ответа

Как работает дерево поиска Монте-Карло?

Попытка изучить MCST, используя видео и документы YouTube, подобные этой. http://www0.cs.ucl.ac.uk/staff/D.Silver/web/Applications_files/grand-challenge.pdf Однако мне не очень повезло с пониманием деталей, выходящих за рамки теоретических объяснени…
28 май '17 в 18:55
0 ответов

Оптимизация Монте-Карло

Я пытаюсь сделать минимизацию Монте-Карло, чтобы решить для параметров данного уравнения. Мое уравнение имеет 4 параметра, что делает мою итерацию около 4**n когда я попробую итерацию n = 100Я видел, что не стоит искать во всем пространстве параметр…
0 ответов

Unity struct переменная типа инициализация массива структуры

У меня проблема с моей структурой. Я работаю над реализацией алгоритма поиска по дереву Монте-Карло и создал структуру с именем Node, которая имеет определенные переменные. Теперь мне нужно хранить родительские и дочерние объекты типа узла. Поскольк…
0 ответов

Имеет ли смысл придавать больший вес результатам поиска в Монте-Карло с меньшим выигрышем в повороте?

Я программирую на Connect6 с MCTS. Поиск по дереву Монте-Карло основан на случайных движениях. Подсчитывает количество побед в определенных ходах. (Выигрывает ли он с 3-мя ходами или 30 ходами) Является ли движение с меньшим количеством ходов более …
1 ответ

Поиск по дереву Монте-Карло

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

Поиск дерева Монте-Карло - "самая многообещающая" функция перемещения

Я пытался реализовать игру TTS-Tac-Toe Hello-World MCTS, но столкнулся с проблемой. При моделировании игры и выборе "самого многообещающего" (эксплуатирующего / исследующего) узла я учитываю только общее количество выигрышей (часть "эксплойт") - это…
1 ответ

Как Монте-Карло Tree Search реализован на практике

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

Как поделиться объектом в многопроцессорной среде Python

Спасибо, что прочитали это. Я разработал шахматный ИИ, например, AlphaGo Lee или AlphaGo Zero. Я использовал Python и tenorflow. Шахматный AI состоит из поиска по методу Монте-Карло, сети политик и сети ценностей. Я изучал политику и сеть ценностей …