Площадка для искусственного интеллекта? - PullRequest
35 голосов
/ 28 мая 2010

В школе один из моих профессоров создал 3D-игру (а не просто движок), где все игроки полностью контролировались ИИ, и это было наше задание - программировать ИИ одного игрока. В основном нам предоставили API для взаимодействия с игровым миром.

Затем наши реализации ИИ были добавлены в игру, и мы наблюдали, как наши программы вступают в битву друг с другом.

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

Сейчас я ищу что-нибудь подобное (и с открытым исходным кодом ) для игры. (Желательно на Java, но я открыт для любого языка.) Я не ищу игровой движок или фреймворк ... Я ищу законченную игру, в которой просто не хватает кода AI ... желательно настроить для такого рода упражнений. Предложения?

Ответы [ 10 ]

21 голосов
/ 28 мая 2010

Это звучит очень похоже на Robocode .

Robocode - это игра для программирования, целью которой является разработка боевого танка робота для сражения с другими танками в Java или .NET. Сражения роботов ведутся в режиме реального времени и на экране.

10 голосов
/ 22 июня 2010

Возможно, вы захотите посетить AIIDE в 2010 году, где они будут принимать Starcraft Broodwar AI соревнование . Вы можете загрузить программное обеспечение, API и прокси-серверы, чтобы вы могли подключить свой доморощенный ИИ к симуляции Broodwar.

В отличие от других платформ, таких как 3D Robocup, механизм Broodwar будет обрабатывать физику и, вероятно, позволит вам сосредоточить большую часть вашего времени на аспектах более высокого уровня, таких как планирование пути, стратегия, распределение ресурсов и т. Д. Есть также основные формы ИИ, которые вы можете использовать в качестве заполнителей, пока работаете над своим конкретным улучшением, например, искусственный интеллект ближнего боя.

9 голосов
/ 28 мая 2010

Выезд Марио AI . Вы можете запрограммировать ИИ для управления Марио. Есть соревнование и некоторые документы, связанные с ним. Очень легко настроить и запустить с Java или любым языком JVM.

6 голосов
/ 28 мая 2010

Мой AI-класс использовал открытый код BZFlag , который оказался весьма интересным и информативным.

4 голосов
/ 21 ноября 2011

Вы могли бы рассмотреть Open NERO («(желательно на Java, но я открыт для любого языка.)»), Но он написан на Python. Если ни одно из предложений Java не подходит вам, посмотрите здесь:

http://code.google.com/p/opennero/

Он не «лишён» кода AI, он его содержит. Возможно, рассмотрение внедрения ИИ в Python даст вам вдохновение для ваших усилий в Java.

Редактировать: чтобы ответить на комментарий vidstige - вы можете попробовать это: http://aichallenge.org/ - Программирование муравьев для сбора еды и борьбы с врагом. Кажется, там есть реализация Java.

2 голосов
/ 18 июня 2010

Я знаю, что вы косвенно ссылались на RoboCup в своем вопросе, но я думаю, что здесь стоит упомянуть, учитывая заголовок. Существуют как 2D, так и 3D версии:

2D-лига более абстрактна с такими командами, как перемещение, отлов, удар.

Трехмерная лига более сложна, поскольку вам необходимо контролировать углы каждой петли в теле трехмерного робота (22 из них с моделью Нао).

Оба являются одинаково действительными упражнениями для ИИ. Вероятно, это зависит от того, с какой областью ИИ вы хотите играть.

Оба могут быть запрограммированы на любом языке / платформе, поддерживающей сокеты TCP. Вы найдете образец кода на Java онлайн, чтобы начать работу. Я веду список существующих библиотек для 3D RoboCup в SimSpark Wiki здесь .

Если вы хотите использовать .NET для 3D-лиги, вы можете использовать библиотеку TinMan , которую я создал.

2 голосов
/ 28 мая 2010

Вы можете начать с эта игра

Некоторые ИИ уже реализованы, так что вы можете взять пример

1 голос
/ 14 августа 2010

Torcs - движок гоночных игр, позволяющий создавать собственные драйверы на C ++.

1 голос
/ 28 мая 2010

Выезд ОРТС .

0 голосов
/ 02 мая 2011

Игра вашего профессора очень напоминает мне старую игру для Macintosh Assassin , которая потратила впустую многие мои часы после школы. Это была интересная пошаговая игра, в которой игроки вводили свои ходы в начале каждого хода, а затем их ходы выполнялись одновременно. ИИ игры были довольно глупы, и я всегда хотел, чтобы я мог их обойти и улучшить, но я так и не нашел версию игры с открытым исходным кодом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...