Задача в этом году такая: есть двумерные шахты с препятствиями, по которым ездят роботы с манипуляторами-кисточками; задача роботов — закрасить все доступные клетки. По шахтам разложены бонусы, помогающие роботам: дополнительные манипуляторы, дрели для разрушения препятствий, ускорители. Всё визуализируется примерно так: серое — не закрашено, жёлтое — заграшено, чёрное — препятствия, оранжевый — робот с манипуляторами
Оценивается затраченное на закрашивание конкретной шахты время; чем меньше время, больше шахта и больше отличие по времени от других игроков — тем лучше. Как в прошлом, 2018 году. Ощущения новизны нам определённо не хватает, пока всё предельно понятно
Как обычно, за первые несколько часов надо написать модели игровых объектов и парсеры для них, сделать решалку базовым глупым алгоритмом и придумать идеи для НОРМАЛЬНЫХ, сделать визуализатор для дебаггинга (будем хачить и дорабатывать тот, что дали организаторы), сделать автоматический пайплайн для оценки-проверки-сдачи решений и контроля их качества. Вроде, всё понятно, работаем
Пара команд уже запостили самые простые решения, выданные организаторами. А нам пока и с нулём очков нормально :)
У нас в команде «tech.kontur.ru» я @igorlukanin, Вероника @Aminopyrodin, Ваня @spaceorc, Паша @xoposhiy, Алексей @beevee_ru, Андрей @kostousov, Алексей @kungurtsev и Миша Хрущёв. Всего 8 человек. Кто играет за команду «PLASTIC WORLD (tech.kontur.ru)», я пока не понял :)
Кстати, пока мы тут заняты, можете посмотреть, как выглядит покраска шахты. Открывайте визуализатор от организаторов (https://icfpcontest2019.github.io/solution_visualiser/), загружайте задание и его решение:
18 часов с начала контеста. Три из восьми участников нашей команды, включая автора этих строк, пока не спят. Остальные заслуженно ушли передохнуть: за последние два-три часа наша команда закрепилась на первой строчке рейтинга. Соперники наступают, но мы пока держим отрыв:
Пока главные причины нашего лидерства — это длинная палка и глубокий волк :) Они встречаются почти во всех наших алгоритмах. Несложно ведь догадаться, что это за штуки? Расскажу о них подробнее, когда вздремну
А пока несколько картинок. Вот как выглядит htop на 24-ядерной машинке с линуксом и .NET Core, где мы запустили обсчёт всех наших стратегий для всех заданий:
Вот наш привычный дашборд для просмотра результатов обсчёта и сравнения качества работы разных алгоритмов. Красим зелёным лучшие решения, чтобы видеть, в каких случаях разные алгоритмы лажают:
Все периодические задания вроде сборки решений для сдачи в проверяющую систему сделали через GitLab CI. Собираем Docker-образы, запускаем, логи билдов используем вместо красивых отчётов: