Подтвердить что ты не робот

Игровая площадка для искусственного интеллекта?

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

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

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

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

4b9b3361

Ответ 1

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

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

Ответ 2

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

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

Ответ 3

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

Ответ 4

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

Ответ 5

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

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

Он не "лишен" AI-кода, он содержит его. Возможно, глядя на внедрение ИИ в Python, вы получите некоторое вдохновение для ваших усилий Java.

Изменить: Чтобы обратиться к комментарию vidstige, вы можете попробовать следующее: http://aichallenge.org/ - Программирование муравьев для сбора пищи и борьбы с врагом. Там, кажется, есть реализация Java.

Ответ 6

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

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

Ответ 7

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

2D-лига более абстрактна с такими командами, как move, catch, kick.

Трехмерная лига более сложна, так как вам нужно управлять углами каждого шарнира в теле 3D-робота (22 из них с моделью Nao).

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

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

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

Ответ 8

Отметьте ORTS.

Ответ 9

Torcs - это гоночный игровой движок, который позволяет вам создавать собственные драйверы на С++.

Ответ 10

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