Добавлен , опубликован

Начало

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

Что надо делать?

— Минимальный набор действий это: скачать карту, запустить на ~30+ минут. Ввести слово "save". Дождаться появления файла по пути ./save/GA_test_01/Cod.txt. Скинуть. Лучший найденный скидывается вам обратно. И так несколько раз =)

Кратко об ии

— Каждый объект представляет собой кольцевую цепочку команд. Каждая команда является точкой на отрезке. Проекция дерева решений на отрезок однозначно соотносит точку и конкретное решение.
Примерный список команд
  • Сравнить
    • Число
    • Юнит (случайный, ближайший, дохлый)
      • Жизнь
      • Дистанция
      • Количество
    • Зомби (...)
      • Жизнь
      • Дистанция
      • Количество
    • Я
      • Жизнь
      • Отклонение времени
      • Отклонение времени2
    • Кольцо
      • Положение
      • Дистанция
    • Центр
      • Дистанция
  • Сделать
    • Я
      • Остановится
      • Инвиз
    • Юнит (...)
      • Бежать
      • Атаковать
      • Проколоть
    • Зомби (...)
      • Бежать
      • Атаковать
      • Проколоть
    • Зона
      • К
      • От
      • Вправо
      • Влево
    • Пространство
      • Наверх
      • Вниз
      • Направо
      • Налево
Другие вопросы
Как сохранить ИИ?
Для сохранения лучшего экземпляра введите слово "save". Файл кода будет лежать в папке варкрафта ./save/GA_test_01/Cod.txt
Могу я сохранить понравившийся ии?
Да, для этого нажмите на юнита и введите слово "s save". Код сохранится, даже если юнит умрет до конца условного раунда.
Можно загрузить сохраненный ии?
Да, введите слово "download". В начале следующего раунда он будет загружен и подключен.

Ехало

Первое видео
Задача - прожить как можно дольше
Приветствую вырезки интересного поведения, а также предложения по улучшению обучающей среды и внутренних механизмов.
Скачать:
v02 Динамичное кольцо:
03 KodG3_king of the mountain.w3x оцениваются убийства и количество выживших
Можете улучшить готовый вариант или собрать свой с нуля Cod.txt
v01 Статичное кольцо:
02 KodG3_kill_and_life.w3x оцениваются убийства и жизни
01 KodG3_only_kill.w3x оцениваются только убийства
Пишите, какую разницу в поведении юнитов обучаемых разным способом вы заметили.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
1
27
4 года назад
Отредактирован MpW
1
Vlod, сделай задачу поинтереснее. знаешь карту Necris? там есть три базы: Альянса, Орды, Эльфов. Каждая расположены по углам. На них иногда нападает нежить. То посылают по одному, то всем скопом. Вроде играл часто в сингле, и приходилось одному бегать одним героем и помогать ботам-союзникам отбиваться. Игра не сложная. Но одному там просто не выжить, в начале ты слаб, а в конце толпа нежити просто окружает героя, и он мрет. Но интереснее так, бегать там, там. Надо успевать помогать.
Там сложность только прокачаться вначале, но со временем и Нежить становится сильнее. Пробовал играть в мультиплеере, и скажу, что чем больше игроков тем легче играется, тк крипов становится меньше. И интерес теряется. Тк бот нежити туповат
Иногда думал добавить ИИ больше интеллекта. К примеру как окружить героя-одиночку, вышедшего погулять, или раздербанить базу союзника - без баз герои-одиночки ничего не смогут сделать.
у эльфов 3-4 прохода, база огорожена деревьями
у альянса 2 прохода, база огорожена клиффами, удобно пристроились
орки 3 прохода окружена скалами
Сколько проходов, а дурачки-скелетосы прутся через основной. Им не хватает мозгов действовать неординарно. Они всегда идут по короткому пути. И брать всякие тактики. Нападать скопом в менее защищенные точки, отвлекать, атаковать/херачить воздухом, катапультами. Но и с защитой у ИИ нежити проблема. у нежити много производных здании, и для ослабления натиска нежити нужно их сносить. Но не всегда защищает.

могу и сам сделать. но ваша карта не очень понятна как работает. можно сделать мини-игру "защити базу" с конкурсом на лучший ИИ. Делать одну небольшую карту, и попробовать выжить. Но наверное это будет не та игра, тк херачить умные крипы себя не дадут как у вас.

а еще помню эту тему кстати у меня есть наработка, где рабочие ходят сами косят, копают, сеют семена, собирают. Хотел сделать систему, чтобы они сами все делали после отдачи указании. Это даже интереснее получилось
0
17
4 года назад
Отредактирован Vlod
0
МрачныйВорон, я тебя понял. Смотри, сейчас 10 юнитов могут атаковать, убегать, лечить друг друга - действовать слаженно, но они будут вести себя так, как если бы ими управляли 10 различных игроков. Если нужна скоординированная атака с разных сторон нескольких групп юнитов, то ими желательно должен управлять один ии. То есть это не управление юнитом, а управление армией. Представим список его команд: разделить на два отряда, разделить на три, отделить летающе войска, послать вторую группу к первому проходу, начать строительство юнита, группы юнитов. Тут работы непочатый край, да и вопрос к реализациям некоторых команд) Если есть идеи команд и конкретная карта для тестирования, то могу помочь с реализацией. А этот ии планировался для выполнения задач типа: разбойники нападают на караван/деревню, где решения убегать нападать принимаются либо лидером, либо голосованием, о чем упоминал Desgul, или наемник взял квест убить медведя и пошел на его поиски -- симуляция естественных процессов каждой личности отдельно.

С его помощью можно изменить поведение монстров, которые обычно тупо стоят или патрулируют в РПГ данжах на более разнообразное
0
37
4 года назад
0
В NPC было бы круто поддерживать самообучение в процессе самой игры, но генетиками это врятли добиться (разве что в fps и жанрах, где боты учатся с каждым раундом)
0
17
4 года назад
0
А как тогда развивались бактерии, насекомые, растения, люди, если не в процессе самой жизни
0
37
4 года назад
Отредактирован ScorpioT1000
0
Vlod, игра на миллионы лет?)
тут бы помогло обучение с подкреплением, а не отбором лучших результатов с каждой генерацией
по аналогии метода проб и ошибок, здесь и приходит back propagation (изменение весов градиентным спуском)
0
17
4 года назад
Отредактирован Vlod
0
ScorpioT1000, откуда у вас такие цифры, мы же не людей создаем.
Причем тут back propagation и представленный код-геном, где цепочка команд, как днк, а не веса нейросети. Какое обучение с подкреплением, откуда мы знаем, какое поведение лучше, а какое не лучше. Если необходимое поведение известно заранее, то не проще ли его вбить сразу и не париться с самообучением?
0
23
3 года назад
0
ну создаете нейроный сеть и популяции 100 человек за 1 час они станут богом в игре.
habr.com/ru/post/336612 Я тоже его применяю в игре не варкрафте а другом месте.
0
17
3 года назад
0
pro100master, работу с ии типа классификатор описывал тут Хотелось бы, но на jass 100 сетей игру сильно грузят
0
17
3 года назад
0

Челлендж завершен, всем спасибо!

PS Добавил комментарии в KodG3_king of the mountain для тех, кто хочет разобраться в том, как всё работает
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.