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

Начало

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

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

— Минимальный набор действий это: скачать карту, запустить на ~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 оцениваются только убийства
Пишите, какую разницу в поведении юнитов обучаемых разным способом вы заметили.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
11
4 года назад
0
удерживать флаг от кого, от зомби
Друг от друга.

Ну, я не особо понимаю чему можно научить такую штучку, да и есть ли смысл учить чему-то, кроме как для собственного удовольствия.
3
3
4 года назад
3
Я оставил на ночь несчастных ботов развиваться в их бессмысленном мире. Теперь уже они пытаются в первую очередь убить друг друга, а не зомби и, что самое главное, научились уверенно бить киркой, без сброса приказа!

Загруженные файлы
2
17
4 года назад
2
Esea, движение по кругу оказывается движением по спирали из за погрешности, поэтому юниты, которые не учитывают дистанцию до кольца, будут нещадно уничтожены)
Смотри, пользоваться инвизом по кд явно лучше, чем вообще им не пользоваться, а поиск правильного условия задача более сложная. Сначала ребенок учится двигать ногами, а потом уже бегать кросс, тут то же самое

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

Yagosha, воо, похоже ваши боты развились дальше всех! Это очень важно, так как ранее некоторые ссылались на дерганья киркой во время удара. Хотя со временем ГА легко оптимизирует положение команд.
На этой карте бонусы даются за убийства и за малое число выживших работников. Интересно, что с течением времени вторая задача перетягивает первую
0
3
4 года назад
0
Vlod, вы только посмотрите на красного чемпика в видео, как он держит дистанцию и маневрирует, ни разу не подставился, и ему не хватило буквально секунды чтобы добрать синего. Он доминировал ещё парочку раундов, а потом в его голове что-то щёлкнуло и, к моему огорчению он почему-то решил самоликвидироваться и целенаправленно убежал за круг в самом начале :(
0
17
4 года назад
Отредактирован Vlod
0
оценочная таблица двух раундов из видео
раунд_1раунд_2
10_451 7_403
7_369 10_397
5_366 4_346
4_352 1_345
2_348 5_336
0_294 2_325
9_275 0_318
1_256 9_258
11_084 3_044
3_077 11_038
8_000 8_000
Yagosha, так как этот чемпик красного цвета, то имеет индекс 0. Как видно из таблицы, он имеет рейтинг ниже среднего. Возможно, это связано с низким количеством убийств.
Все, кто попадают в последнюю четверку, будут перезаписаны. Скорее всего, это с ним и произошло. Как раз для таких случаев была создана команда s save)
0
37
4 года назад
Отредактирован ScorpioT1000
0
Помните, что каждый кон один из слабых заменяется на абсолютно рандомного. А те, что имеют ауру меткости - либо дети двух случайных лучших, либо тоже два рандома
Жесть, ты еще и умышленно замедлил скорость эволюции) рекомендую почитать материалы по теме

В целом интересно выходит, но надо докидать лейеров и скорости апнуть, пока все это очень не научно и тратите своё время цпу
0
15
4 года назад
0
Можно добавить возможность заключать союзы между собой
Уменьшать зомби по 1 каждые 3-5 раунда и сделать в конце концов 1 зомби с большем количеством хп и атаки, так же добавить возможность лечение рабочим, сделать возможность выбора типа класса танк маг лекарь дд, будут ли они выбирать правильно что бы убить сильного зомби, вот что то подобное, возможно я что то не то предлагаю=)
0
17
4 года назад
0
ScorpioT1000, ускорил на пару порядков за счет введения дополнительных генетических операторов. Если есть конкретные предложения, пиши)

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

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

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

С его помощью можно изменить поведение монстров, которые обычно тупо стоят или патрулируют в РПГ данжах на более разнообразное
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.