@BashkaMen
C# программист

Игровые боты. Как они реализованы?

Всем привет. Меня всегда увлекала тематика ботов.
За последнее время я пересмотрел много видео на темы: "Нейронные сети" и "Генетический алгоритм".
Очень хотел понять как работают боты в гонках к примеру.
После этих видео и пары реализаций генетического алгоритма я предположил (раньше вообще понятия не имел) что боты работают так:
Нейронная сеть определяет состояние (как близко мы к стене, в какую сторону двигаемся, угол поворота и тд), генетический алгоритм получая эти данные учится просто достигать лучшего результата. Скорее всего что такие боты работают просто на нейронной сети и вот у меня 2 вопроса.

1) Прав ли я, или может моя идея хоть близка или будет ли вообще она работать?
2) Хочу сделать бот в кс который будет хотя б похож на уже реализованных ботов кс (против которых в оффлайне можем играть), есть ли исходники тех ботов?
  • Вопрос задан
  • 2375 просмотров
Пригласить эксперта
Ответы на вопрос 4
@a0lwq
Нет.
Все очень сильно зависит от конкретной игры.
Рецептов нет.
Ответ написан
Комментировать
webinar
@webinar
Учим yii: https://youtu.be/-WRMlGHLgRg
генетический алгоритм

Это откуда Вы взяли? Нейронные сети и генетика это совершенно разные вещи. Даже в биологии это как кирпич и незабудка.

Ботов в игре много, если каждый из них будет на базе нейросетей - Вашу игру можно будет запустить только на суперкомпьютере. Так что разработчики делают иллюзию разума, а не разум. Чем сложнее логика бота, тем он больше грузит систему и интереснее, как оппонент.
Так что:

1) нет
2) для начала изучите хоть 1 язык программирования, далее основы ai и т.д. Если Вы думаете, что исходник чего либо даст Вам понимание как это все работает - нет.

Интересен игрострой - начните где-то тут:
https://unity3d.com/ru
https://www.cryengine.com/
https://www.unrealengine.com
Ответ написан
BasmanovDaniil
@BasmanovDaniil
Геймдизайнер-телепат
Нейросети в играх не используют, генетические алгоритмы практически тоже. Игровой ИИ строят на простых понятных правилах, которые легко настраивать и дебажить, а "умность" достигают за счёт разнообразных трюков, которые с интеллектом ничего общего не имеют. Например, противник, который кричит "кидаю гранату" перед броском, будет казаться умнее, по сравнению с точно таким же, но молчуном.
А вообще говоря, похожие вопросы уже задавались, не забывайте пользоваться поиском.
Ответ написан
Комментировать
@xdgadd
ML/Python/Cpp
Вы совсем не понимаете матчасть. Генетический алгоритм - это метод оптимизации. Например, нейронки.
Для начала подтяните математику и разберитесь в основах машинного обучения и нейронок.

Теперь о ботах.
Если вы имеете ввиду игровой ИИ, то тут прав Даниил Басманов.

Если же вы подразумеваете под ботами агентов, которые играют в игры, то тут не всё так просто.
В простых играх или играх с маленьким пространством ходов ещё можно обойтись захардкоженной логикой, но в чуть более сложных - уже нельзя.
Тут на помощь приходят нейронки и Reinforcment Learning(обучение с подкреплением). Самые яркие примеры - Doom ai competition или недавнее видео с игрой агента от OpenAI против топового игрока.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы