Пример методов Монте-Карло при проектировании ИИ - PullRequest
1 голос
/ 12 декабря 2011

Из того, что я читал в разных источниках, говорится, что метод Монте-Карло подобен получению случайной выборки, а затем тестированию различных решений и выбору наилучшего решения.Я не совсем понимаю, как это на самом деле работает в реальном ИИ.Можете ли вы дать мне простые примеры этого?Как это эффективно?Возможно ли использовать это параллельно с другими существующими алгоритмами специально для недетерминированных игровых ИИ?

Ответы [ 2 ]

1 голос
/ 12 декабря 2011

Метод Монте-Карло относится к созданию случайных чисел для моделирования определенных сценариев.Само по себе это не имеет ничего общего с ИИ.

То, что вы вместо этого ищете, возможно, Evolutionary Computing, Genetic Algorithms или Genetic Programming, где различные решения проблемы создаются и развиваются с использованием принципов биологического происхождения.эволюция.Это приводит к интенсивному использованию случайных чисел.

Например, см .: http://en.wikipedia.org/wiki/Genetic_algorithm

Эти технологии могут очень хорошо использоваться в параллельных вычислениях и очень подходят для недетерминированных игровых ИИ.

0 голосов
/ 08 февраля 2013

Когда вы разрабатываете ИИ с Монте-Карло (MC), вы делаете это так же, как и при каждой функции оптимизации:

Просто случайным образом генерируйте решения и выбирайте лучшее.

Пример:

У вас есть игра в защиту башни, и вы не обязательно хотите, чтобы ваши враги всегда выбирали лучший путь через ваш лабиринт. Просто сгенерируйте несколько путей для каждого человека и выберите лучший из N выборок. Теперь ваши враги будут выбирать разные, не плохие, не слишком хорошие пути через лабиринт.

Вы также можете использовать для этого генетический алгоритм, его алгоритм оптимизации, такой как MC.

Эволюционные вычисления или генетическое программирование - это совершенно разные вещи, и я бы не стал использовать их для создания ИИ, если вы не знаете, что делаете.

Создание хороших ИИ в играх зачастую связано не с использованием «лучшего» решения, а с интересным. Если вы используете dijkstra и все ваши враги используют один и тот же путь, это может быть эффективным, но, возможно, не интересным.

...