18

» XGM Конкурсы / Terrain Contest: Reforged

ThatGuyFromBar:
Это, конечно, моё субъективное мнение, но по-моему это как-то не особо честно по отношению к тем, кто всё сделал и сдал во время. :( (Нас, конечно, всего трое-четверо таких вроде, но у других получается преимущество, ведь в конкурсах важно и время рассчитывать правильно.)
Тру ребята всегда готовы к любым неожиданностям
18

» MARS / MARS 0.88c

Крутое оформление! (на пк чуть чуть мелковато ток)

ScorpioT1000
Загруженные файлы
18

» WarCraft 3 / Обучи ИИ в WC3

ScorpioT1000, откуда у вас такие цифры, мы же не людей создаем.
Причем тут back propagation и представленный код-геном, где цепочка команд, как днк, а не веса нейросети. Какое обучение с подкреплением, откуда мы знаем, какое поведение лучше, а какое не лучше. Если необходимое поведение известно заранее, то не проще ли его вбить сразу и не париться с самообучением?
18

» WarCraft 3 / Обучи ИИ в WC3

А как тогда развивались бактерии, насекомые, растения, люди, если не в процессе самой жизни
18

» WarCraft 3 / Обучи ИИ в WC3

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

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

» WarCraft 3 / Обучи ИИ в WC3

ScorpioT1000, ускорил на пару порядков за счет введения дополнительных генетических операторов. Если есть конкретные предложения, пиши)

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

» WarCraft 3 / Обучи ИИ в WC3

оценочная таблица двух раундов из видео
раунд_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)
18

» WarCraft 3 / Обучи ИИ в WC3

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

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

Yagosha, воо, похоже ваши боты развились дальше всех! Это очень важно, так как ранее некоторые ссылались на дерганья киркой во время удара. Хотя со временем ГА легко оптимизирует положение команд.
На этой карте бонусы даются за убийства и за малое число выживших работников. Интересно, что с течением времени вторая задача перетягивает первую
18

» WarCraft 3 / Обучи ИИ в WC3

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, бывает и паровозик из трех) Помните, что каждый кон один из слабых заменяется на абсолютно рандомного. А те, что имеют ауру меткости - либо дети двух случайных лучших, либо тоже два рандома
18

» WarCraft 3 / Обучи ИИ в WC3

IIIНекромантIII, спасибо! Про усложнение, удерживать флаг от кого, от зомби?) Просто бегать и стоять возле рандомных флагов легкая задача. Отмечу, что хоть мы и видим много юнитов, на самом деле мы обучаем одного. Если требуется два типа, то нужно создать две группы, одной сказать защищать, а другой нападать, тогда получатся кери и хиллеры, к примеру. С другой стороны мы обучаем группу, поэтому можно не разделять, кто то случайно станет хиллером, а кто то кери, а мы будем брать детей от двух случайных выживших, но в таком случае желательны более жесткие условия выживания и больший размер популяции.
18

» WarCraft 3 / Обучи ИИ в WC3


Обновление
  • Локация с сужающимся кольцом;
  • Полноценная система раундов;
  • Теперь приоритеты поощрения зависят от убийств и от числа выживших.
18

» WarCraft 3 / Обучи ИИ в WC3

bifurcated, спасибо за развернутое описание. Они могут использовать или не использовать что то, и это зависит от начального рандома. Как повлиял тот или иной фактор иногда вычленить очень сложно. Как я заметил, если при определении родителя учитывать остаточное количество жизни (kill and life), то особи в популяции получаются в среднем менее агрессивными к своим сородичам
18

» WarCraft 3 / Обучи ИИ в WC3

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

Bergi_Bear,
Да, бот выдает решение каждые 0.33 и вар сбивает приказ, даже если цель одна и та же. Увеличу скорость атаки, чтобы удар проходил
Сохранить понравившегося можно, если за эти 30 секунд написать s save)
Число при клике это JobEnd[] - оценка юнита за предыдущий раунд. Если его пересоздали, то она 0
18

» WarCraft 3 / Обучи ИИ в WC3

dondonchakka, межпопуляционный отбор имеет более широкий охват решений

IIIНекромантIII, все верно. Для сохранения жизни и в условиях бесконечного спавна зомби избегание боя является эффективной стратегией. Учитывая, что зомби достаточно мало и их скорость низка

ScorpioT1000, да, визуализация крутая конечно
18

» WarCraft 3 / Обучи ИИ в WC3

Да не сцы, в прошлый раз нейронка максимум за пару часов обучалась. Лучше скажи, почему ресурс твой лайк дропнул(
18

» WarCraft 3 / Обучи ИИ в WC3

ГА, back propagation обучает классификаторы, а тут экземпляр ии это цепочка команд
18

» WarCraft 3 / Обучи ИИ в WC3

Спасибо! Если не очень понятно что это и зачем, можете посмотреть видео. Архитектура и принцип работы почти такой же
18

» WarCraft 3 / Обучи ИИ в WC3

Здравствуй, мы сохраняем его в файл, чтобы потом иметь возможность пользоваться сразу готовым или продолжить обучение
18

» WarCraft 3 / Помощ в триггерах

Согласен , если запустить две способности с небольшой задержкой, то 123 дважды будет удален у одного юнита.
18

» WarCraft 3 / Выбор игрока в Preload

if GetLocalPlayer() == Player(индекс_игрока) then
// код
endif
18

» WarCraft 3 / Судейство конкурса 2020

Не сильно вижу, от чего бомбит берги.
Если в тонне информации, поинтов, пруфов в шапке и комментариях ничего не видно, то обсуждать тоже нечего