Задача #304
Автор:IOAI 2026 Organizing Team
Сложность
Ваш лучший результат
Н/Д
Вы обучаете робота-доставщика на городской карте, состоящей из 8 × 8 клеток. В каждом эпизоде робот начинает со свободной клетки, достигает склада, где находится посылка, забирает её, перемещается к другому складу — пункту назначения — и доставляет её. Каждая карта содержит шесть складов и восемь заблокированных клеток.
Цель — изучить поведение робота по намеренно небольшому числу экспертных демонстраций. Это задача клонирования поведения: вы обучаете модель на примерах наблюдений/действий, а затем пошагово запускаете её в новых эпизодах.
Склады индексируются как 0..5 и обозначаются как A..F. Эпизод завершается успешно, когда робот выполняет допустимое действие dropoff в пункте назначения, неся посылку. Разрешено не более 120 actions.
| ID | Действие |
|---|---|
| 0 | юг |
| 1 | север |
| 2 | восток |
| 3 | запад |
| 4 | забрать посылку (pickup) |
| 5 | доставить посылку (dropoff) |
Движение в стену или за пределы карты не изменяет положение робота, но расходует один шаг. pickup выполняется успешно только на складе посылки, когда робот ещё не несёт посылку. dropoff выполняется успешно только в пункте назначения, когда робот несёт посылку. Недопустимый pickup или dropoff не изменяет state и расходует один шаг.
Каждое обучающее наблюдение содержит:
grid: тензор float32 формы (6, 8, 8);vector: 13 нормализованных числовых значений;action_mask: шесть булевых значений, указывающих допустимые actions;state: (row, column, package_field, destination).Каналы тензора grid представляют:
vector содержит в следующем порядке: нормализованные строку и столбец робота, поле посылки, пункт назначения, индикатор переноски, строку и столбец текущей цели, разности относительно цели, а затем четыре индикатора заблокированного движения в порядке юг, север, восток, запад.
Общедоступный набор данных содержит:
Пакет платформы использует JSON и безопасные массивы NumPy вместо Python pickle-файлов. Точные имена и код загрузки приведены в starter_kit.py. Загружайте файлы NumPy с allow_pickle=False.
Каждый layout_id является общим для четырёх эпизодов. Уникальным ключом всегда является:
(layout_id, episode_seed)Обучите детерминированную модель, которая предсказывает следующее действие по текущему наблюдению. Запустите модель на полных эпизодах и сгенерируйте по одной последовательности действий для каждого тестового сценария.
Вы можете использовать предоставленные демонстрации для обучения. Вам запрещено получать экспертные метки для валидационных или тестовых наборов, а также создавать дополнительные экспертные демонстрации с помощью поиска, планирования или другой экспертной модели. Решения, основанные на правилах или явно жёстко закодированные, могут быть проверены Научным комитетом. Организаторы могут запросить notebook или исходный код, использованный для создания отправленного решения.
Отправьте ZIP-архив с именем predictions.zip, содержащий ровно один файл в корне: predictions.json.
Файл должен содержать JSON-массив ровно из 1,600 объектов, по одному для каждого тестового эпизода:
[ {"layout_id":"test_0000","episode_seed":300000,"actions":[1,1,2,4,0,5]}]Требования:
(layout_id, episode_seed), а не по порядку строк;actions должен быть JSON-списком целых чисел — не булевых значений — от 0 до 5;Недопустимые архивы или неполные отправки отклоняются.
Метрика — доля успешных эпизодов:
SR = successful deliveries / evaluated episodesscore = 100 × SRЧастичные баллы не начисляются за достижение посылки, приближение к цели или использование меньшего числа шагов.
Для рейтинговой таблицы платформы тестовые карты делятся детерминированно:
Во время соревнования отображается частичный результат, а итоговая рейтинговая таблица использует полный набор. Принадлежность к двум подмножествам не включена в общедоступные данные. Среднее число шагов и недопустимые попытки pickup/dropoff могут отображаться в журналах оценщика, но не влияют на результат.
Адаптировано из «Академия роботизированной доставки: подготовительная программа» (IOAI 2026, Home Task 2). Безопасное представление данных, правила валидации, разделение рейтинговой таблицы и оценщик адаптированы для платформы MLCompete.