Задача #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.