Uzdevums #304
Autors:IOAI 2026 Organizing Team
Grūtības pakāpe
Jūsu labākais rezultāts
Nav pieejams
Jūs apmācāt piegādes robotu pilsētas kartē, kas sastāv no 8 × 8 šūnām. Katrā epizodē robots sāk darbu brīvā šūnā, sasniedz noliktavu, kurā atrodas paka, paņem to, dodas uz citu noliktavu — galamērķi — un piegādā to. Katrā kartē ir sešas noliktavas un astoņas bloķētas šūnas.
Mērķis ir iemācīties robota uzvedību no apzināti neliela ekspertu demonstrāciju skaita. Šī ir uzvedības klonēšanas problēma: jūs apmācāt modeli ar novērojumu/darbību piemēriem un pēc tam soli pa solim darbināt to jaunās epizodēs.
Noliktavas ir indeksētas ar 0..5 un apzīmētas ar A..F. Epizode beidzas sekmīgi, kad robots galamērķī izpilda derīgu darbību dropoff, nesot paku. Ir atļautas ne vairāk kā 120 actions.
| ID | Darbība |
|---|---|
| 0 | dienvidi |
| 1 | ziemeļi |
| 2 | austrumi |
| 3 | rietumi |
| 4 | paņemt paku (pickup) |
| 5 | piegādāt paku (dropoff) |
Pārvietošanās sienā vai ārpus kartes nemaina robota atrašanās vietu, bet patērē vienu soli. pickup izdodas tikai pakas noliktavā, kad robots vēl nenes paku. dropoff izdodas tikai galamērķī, kad robots nes paku. Nederīgs pickup vai dropoff nemaina state un patērē vienu soli.
Katrs apmācības novērojums satur:
grid: float32 tenzoru ar formu (6, 8, 8);vector: 13 normalizētas skaitliskas vērtības;action_mask: sešas Būla vērtības, kas norāda derīgos actions;state: (row, column, package_field, destination).grid tenzora kanāli attēlo:
vector šādā secībā satur: robota normalizēto rindu un kolonnu, pakas lauku, galamērķi, nešanas indikatoru, pašreizējā mērķa rindu un kolonnu, atšķirības attiecībā pret mērķi un pēc tam četrus bloķētas pārvietošanās indikatorus secībā dienvidi, ziemeļi, austrumi, rietumi.
Publiskā datu kopa satur:
Platformas pakotne Python pickle failu vietā izmanto JSON un drošus NumPy masīvus. Precīzus nosaukumus un ielādes kodu skatiet failā starter_kit.py. Ielādējiet NumPy failus ar allow_pickle=False.
Katrs layout_id ir kopīgs četrām epizodēm. Unikālā atslēga vienmēr ir:
(layout_id, episode_seed)Apmāciet deterministisku modeli, kas no pašreizējā novērojuma prognozē nākamo darbību. Darbiniet modeli pilnās epizodēs un ģenerējiet vienu darbību secību katram testa scenārijam.
Jūs drīkstat apmācībai izmantot sniegtās demonstrācijas. Jums nav atļauts iegūt ekspertu etiķetes validācijas vai testa kopām, kā arī ģenerēt papildu ekspertu demonstrācijas, izmantojot meklēšanu, plānošanu vai citu ekspertu modeli. Zinātniskā komiteja var pārskatīt uz noteikumiem balstītus vai nepārprotami stingri iekodētus risinājumus. Organizatori var pieprasīt notebook vai pirmkodu, kas izmantots iesnieguma ģenerēšanai.
Iesniedziet ZIP arhīvu ar nosaukumu predictions.zip, kura saknē ir tieši viens fails: predictions.json.
Failam jāsatur JSON masīvs ar tieši 1,600 objektiem — pa vienam katrai testa epizodei:
[ {"layout_id":"test_0000","episode_seed":300000,"actions":[1,1,2,4,0,5]}]Prasības:
(layout_id, episode_seed), nevis pēc rindu secības;actions jābūt JSON sarakstam ar veseliem skaitļiem — nevis Būla vērtībām — no 0 līdz 5;Nederīgi arhīvi vai nepilnīgi iesniegumi tiek noraidīti.
Metrika ir epizožu sekmīguma rādītājs:
SR = successful deliveries / evaluated episodesscore = 100 × SRDaļēji punkti netiek piešķirti par pakas sasniegšanu, tuvošanos mērķim vai mazāka soļu skaita izmantošanu.
Platformas rezultātu tabulai testa kartes tiek deterministiski sadalītas:
Sacensību laikā tiek rādīts daļējais rezultāts, bet galīgajā rezultātu tabulā tiek izmantota pilnā kopa. Piederība abām apakškopām nav iekļauta publiskajos datos. Vidējais soļu skaits un nederīgi pickup/dropoff mēģinājumi var parādīties vērtētāja žurnālos, bet tie neietekmē rezultātu.
Pielāgots no „Robotizēto piegāžu akadēmija: sagatavošanas programma” (IOAI 2026, Home Task 2). Drošais datu attēlojums, validācijas noteikumi, rezultātu tabulas sadalījums un vērtētājs ir pielāgojumi MLCompete platformai.