Войти
ФлеймФорумОбщее

Russian Ai Cup: Codetroopers (30 стр)

Страницы: 129 30 31 3234 Следующая »
#435
3:16, 4 дек. 2013

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


#436
11:30, 4 дек. 2013

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

#437
11:31, 4 дек. 2013

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

#438
16:22, 4 дек. 2013

Сделал я утилиту для настройки параметров локально с помощью дифференциальной эволюции (http://ru.wikipedia.org/wiki/%D0%94%D0%B8%D1%84%D1%84%D0%B5%D1%80… 6%D0%B8%D1%8F). В общем вот пища для размышлений:
1) Длительность одного боя 2х5 с 2-мя локальными стратегиями (одна - настраиваемая, другая - со значениями по-умолчанию) в релиз-версии занимает примерно 1-2 секунды. Но приходится ставить задержки на запуск, чтобы всё успело подключиться к локал-раннеру и стабильно работало в течение нескольких часов. Итого на бой уходит где-то 4-5 секунд.
2) Опыт работы с диф.эволюцией подсказывает, что размер популяции должен быть не менее 10.
3) Для каждого элемента популяции надо бы посчитать минимум один бой на карте, а для точности - лучше несколько. Я, например, считал по 8 боёв на карте, что даёт 8*7 (с новыми картами еще не настраивал) боёв для одного элемента популяции, или 560 боёв для всей популяции. С помощью std::thread удалось с минимальными знаниями запустить подсчёт боёв в 4 потока - это дало существенное ускорение, но всё равно, на одну популяцию уходило примерно 20 минут времени.
4) Настраивалось всего 27 параметров - множители для эвристик в функции оценки. Ну и для проверки - добавил "шуточный" параметр - вероятность сделать пропуск хода :)
5) Шуточный параметр сходился к 0-му значению у всех элементов популяции где-то спустя 20 поколений. Соответственно из всех других параметров спустя 100 поколений (считалось сутки) более-менее сошлось только парочка.
6) Спустя 100 поколений взял парочку лучших мутантов + "усреднённый лучший мутант" и запустил в длительные сравнительные бои со стратегией "по-умолчанию". Вероятность выигрыша была в пределах ошибки - примерно 50-55%. К примеру, даже если запускать две одинаковые стратегии - вероятность выигрыша будет так же плавать. Вот и возникает вопрос "а стоило ли того"?
7) Основная проблема - как считать оценку для элемента популяции. Варианты "сумма очков", "-сумма мест", "подсчёт как в раунде1-2" - первое, что приходит в голову. Но тогда часто получается так, что где-то какому-то мутанту сильно "повезёт", он выиграет кучу боёв, и его долго никто не сможет заместить.
8) Модификация алгоритма в виде "старения" оценок для элементов популяции, если те долго не замещались, вроде как немного улучшила скорость сходимости параметров, но всё равно - даже одних суток недостаточно, чтобы мутанты сошлись к каким-то значениям.

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

Скриншот того, как это выглядело, когда я настраивал бои 4х4 в 4 потока, ещё до того, как сделал запуск консолей "невидимыми": http://imgur.com/gUmk2o5

#439
10:55, 7 дек. 2013

Еще раз спасибо всем кто вэтам чати -- я пролез в финал, но в программе ужасный баг, поэтому первую часть финала провалил.

#440
17:01, 8 дек. 2013

}:+()___ [Smile], что произошло? Я до последнего ждал, что вы придете под самый конец, и покажете всем, как правильно играть. Забили? Не хватило свободного времени? Или выбрали направление развития, которое не оправдало себя? Извините за бестактность, но очень интересно.

#441
17:42, 8 дек. 2013

Интересно бы было после завершения, увидеть сырцы топов с каким ни буть не большим объяснением сути выбранной тактики.

#442
10:27, 9 дек. 2013

thevlad

Не знаю гожусь ли я на роль топа (сейчас болтаюсь около 30-го места в песочнице, и был бы где-то 30-тый в финале, если бы не глупый баг в первой половине финала (надо было убегать, и не успел протестить).

Вот мои сорцы: http://github.com/OlexiyO/CodeTroopers. Там можно посмотреть историю сабмитов, но только последний коммит -- с короткими комментами и без лишнего мусора.
Планирую написать статью чуть позже.

#443
10:48, 9 дек. 2013

Megabyte на предыдущем конкурсе неплохо натренировался и к прошлогоднему iPad добавил MacBook в этом году. Hohol тоже молодец, хотя я точно не помню, выиграл он в том году что-то или только в песочнице в конце в лидеры выбился?

#444
13:30, 9 дек. 2013

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

#445
14:32, 9 дек. 2013

Hohol
Да мне задача этого года не особо интересна была. Я все-таки физик, мне подавай реалтайм и все такое. А тут пошаговый перебор с грязными хаками, типа определения попадания в невидимого врага по очкам. Я, конечно, поучаствовал для порядка, однако при первых серьезных трудностях забил. Направление развития я изначально выбрал — точное предсказание возможных положений врагов, но оно не взлетело. И если в танках мне такое не помешало выкинуть кучу кода и переписать заново, то тут было просто лень разбираться. Возможно, если бы было больше времени, то что-нибудь и вышло бы...

#446
22:41, 9 дек. 2013

bahois
> Hohol вообще-то второй ноут в карман уже положил! Молодец! Хотя я почему-то был уверен, что на этот раз его первое место будет.
Решил поберечь карман - макбука про он бы уже не выдежал! :D

#447
15:45, 10 дек. 2013

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

#448
5:12, 11 дек. 2013

NightmareZ
Согласен с тем, что нормальный ЛокалРаннер надо было выложить сразу. По остальным пунктам, есть вопросы

Убрали из финала всех, кто не достинг 18 лет или не указал свой возраст. Ну вроде как да, соответствует правилам, но не бред ли по сути?

Это вопрос не к организаторам, а в ГосДуму и Верховну Раду. Причины, очевидно, юридического характера; если б организаторы могли -- они бы и нерожденных детей пускали, им-то что.

Рейтинг в песочнице считается совершенно непонятным образом

Точная формула неизвестна, ну и что? Пока что все изменения моего рейтинга более-менее адекватны.

Карты, которых было аж три (если не изменяет карта) штуки во время первого тура.

Ну сейчас-то уже карт дохрена?

#449
16:12, 11 дек. 2013

Olexiy
> Это вопрос не к организаторам, а в ГосДуму и Верховну Раду. Причины, очевидно, юридического характера; если б организаторы могли -- они бы и нерожденных детей пускали, им-то что.
Ну они же резрешали участвовать. И даже футболки раздадут. А вот ноуты — почему-то нет.

> Точная формула неизвестна, ну и что? Пока что все изменения моего рейтинга более-менее адекватны.
А мои нет. Ты можешь мне сказать, что конкретно делает чекбокс "Увеличить изменчивость рейтинга", например?

> Ну сейчас-то уже карт дохрена?
Ну сейчас-то они нафига нужны?

Страницы: 129 30 31 3234 Следующая »
ФлеймФорумОбщее

Тема в архиве.