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

Начало

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

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

— Минимальный набор действий это: скачать карту, запустить на ~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
17
4 года назад
Отредактирован Vlod
0
bifurcated, спасибо за развернутое описание. Они могут использовать или не использовать что то, и это зависит от начального рандома. Как повлиял тот или иной фактор иногда вычленить очень сложно. Как я заметил, если при определении родителя учитывать остаточное количество жизни (kill and life), то особи в популяции получаются в среднем менее агрессивными к своим сородичам
2
17
4 года назад
2

Обновление
  • Локация с сужающимся кольцом;
  • Полноценная система раундов;
  • Теперь приоритеты поощрения зависят от убийств и от числа выживших.
1
11
4 года назад
1
Загруженные файлы
1
15
4 года назад
1
Динамическое кольцо: Жёлтый работник придерживается тактики самоубийства (выходит за круг), остальные движутся в центр используя способности (этот интеллект не может понять, что атака из-под невидимости наносит больше урона и что можно использовать шипы примерно там, где работник исчез? Да и обычно под невидимостью они стоят на месте, иногда идут чуть ближе к дереву). Зомби не выживают. Итог по золоту 1100.
Загруженные файлы
0
32
4 года назад
0
Кстати по поводу атаки из невидимости, если мне не изменяет память ии не способен совершить атаку из инвиза
0
3
4 года назад
0
Образовалась одна интересная особь, чьё поведение заметно отличается и выглядит умнее остальных) Все сначала сразу бегут в центр, сбиваются в одну кучу с зомбаками, и начинают применять шипы, пока не перебьют всех зомби, задевая друг друга, после чего продолжают болтаться возле дерева, уходя в инвиз, но друг к другу агрессии не проявляют. А этот предпочитает остаться в стороне, а когда в центре перебьют всех зомби, подбегает и осторожно пытается добить выживших, ударил, отбежал, ударил, отбежал.
Загруженные файлы
0
17
4 года назад
0
IIIНекромантIII, спасибо! Про усложнение, удерживать флаг от кого, от зомби?) Просто бегать и стоять возле рандомных флагов легкая задача. Отмечу, что хоть мы и видим много юнитов, на самом деле мы обучаем одного. Если требуется два типа, то нужно создать две группы, одной сказать защищать, а другой нападать, тогда получатся кери и хиллеры, к примеру. С другой стороны мы обучаем группу, поэтому можно не разделять, кто то случайно станет хиллером, а кто то кери, а мы будем брать детей от двух случайных выживших, но в таком случае желательны более жесткие условия выживания и больший размер популяции.
2
13
4 года назад
Отредактирован Esea
2
Хм... у меня частые забеги за кольцо, при том бывает достаточно забавная ситуация когда один бежит за другим а тот бежит за кольцо.
0
17
4 года назад
Отредактирован Vlod
0
bifurcated, придерживается тактики самоубийства - звучит забавно) 1) Урон от инвиза я убрал см. РО 2) Все команды no target - указание в виде области или точки. По этому он физически не может никого ударить из инвиза, ему не дает вакрафт. Да таргет система в управлении стара как мы, по этому хотелось уйти от нее. Но спасибо за наводку, кажется я понял откуда дерганья у стандартной атаки. Сейчас ии как может узнать что он в инвизе? Нажать на инвиз и получить в ответ false. Не слишком удобный способ) Логично добавить ему флаг проверки на бафф, пока систему команд не трогал для совместимости Cod.txt между картами. Сам список команд добавил в описание. Спасибо!

Bergi_Bear, из инвиза да, только impale пустить.
Возможно, дерганья были из за отдачи кучи команд атаки в точку в один тик. Попробую сменить это на цель-объект и проверить.
function action_who_attack takes integer ind, unit tu returns boolean
  return IssuePointOrderById(Men[ind], 851983, GetUnitX(tu), GetUnitY(tu))
endfunction

Yagosha, спасибо! Согласен, поведение уже интереснее и подойдет для фарма стандартных мобов. А в плане логики мне как то встречалось, что ии сравнивает расстояние от центра зоны с жизнью случайного зомби. Мммм!

Esea, бывает и паровозик из трех) Помните, что каждый кон один из слабых заменяется на абсолютно рандомного. А те, что имеют ауру меткости - либо дети двух случайных лучших, либо тоже два рандома
3
13
4 года назад
3
Первый мой сейв (статическое кольцо убийства и жизни). Даже не знаю что сказать. Заметил 2 интересных персонажей: коричневый который то бегал на небольшое расстояние туда сюда рядом с деревом то вообще убегал за кольцо, и красный который один раз наматывал круги рядом с кольцом, но умер забежав за него (видимо его беговой круг расширялся). Ну и еще не могу смотреть на бесполезные инвизы и неравноценные размены ударами.
Загруженные файлы
0
11
4 года назад
0
удерживать флаг от кого, от зомби
Друг от друга.

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