Robot wyszedł poza planszę. Benchmark uznał to za sukces
W oryginalnym benchmarku CrowdNav++ aż 19,8% trajektorii PDPO zaliczonych jako sukces opuszczało wyznaczony obszar. Robot omijał tłum bokiem, a benchmark nie traktował tego jako błędu. To wynik z tych samych scen ewaluacyjnych, w których autorzy mierzyli udział takich skrótów.
Świeży preprint Wendonga Li i Jochena Garcke dotyczy robot crowd navigation: sterowania robotem, który ma przejść przez gęsty, zmienny tłum bez kolizji. Praca proponuje Planning Diffusion Policy Optimization (PDPO), ale równie ważna jest jej lekcja o eksperymentach: najpierw trzeba zamknąć planszę, dopiero potem porównywać algorytmy.
Jedna akcja nie pokazuje zamiaru
Typowa polityka PPO (Proximal Policy Optimization) dla sterowania ciągłego zwraca w każdym kroku jedną dwuwymiarową prędkość, często z jednego rozkładu Gaussa. PPO to algorytm reinforcement learning, który aktualizuje politykę na podstawie przewagi nagradzanych zachowań, ograniczając zbyt duże zmiany między aktualizacjami. Taka polityka jest wygodna, lecz nie przedstawia jawnie kilku poprawnych możliwości naraz: robot może minąć człowieka z lewej, z prawej albo zwolnić i przepuścić go.
PDPO zamiast pojedynczej komendy wykorzystuje diffusion policy, która z szumu tworzy action chunk: pięć kolejnych dwuwymiarowych komend prędkości. Rozkład nad całymi sekwencjami może mieć wiele trybów, więc osobne lokalne plany nie muszą zostać ściśnięte do jednego wariantu.
Obserwacja obejmuje stan robota oraz bieżące i przewidywane pozycje widocznych ludzi na pięć kroków. Autorzy używają prognozy stałej prędkości. Visibility mask usuwa z attention osoby niewidoczne i sztuczne wpisy dodane tylko po to, by wyrównać rozmiar batcha; attention pooling skupia reprezentację na ludziach najważniejszych dla najbliższego ruchu.
Plan z szumu, aktualizowany co 0,25 sekundy
Sekwencja pięciu ruchów zaczyna jako szum Gaussa. Sieć wielokrotnie ją odszumia, za każdym razem korzystając z zakodowanej obserwacji tłumu. Wynikiem jest dziesięć liczb: pięć wektorów prędkości w dwóch wymiarach.
Robot nie wykonuje jednak całej sekwencji. Stosuje receding-horizon control: realizuje tylko pierwszą komendę, po 0,25 sekundy ponownie obserwuje ludzi i generuje nową piątkę. Horyzont planu ma 1,25 sekundy, ale sterowanie pozostaje zamknięte w pętli informacji zwrotnej.
Pięć kart ruchu w tłumie dwudziestu osób
Wyobraź sobie fizyczną planszę 12 × 12 metrów, jednego robota i dokładnie 20 poruszających się osób — to ustawienie symulatora z pracy. Robot w każdym takcie kładzie przed sobą pięć kart. Na każdej zapisuje wektor prędkości na następne 0,25 sekundy.
Pierwsza piątka kart może oznaczać: lekko w lewo, dalej w lewo, prosto, prosto, w prawo. Robot wykonuje ruch z pierwszej karty. W tym czasie człowiek zmienia kierunek, więc pozostałe cztery karty przestają być zobowiązaniem. Robot odkłada je i układa nową piątkę z aktualnej obserwacji.
| Element przykładu | Element algorytmu |
|---|---|
| plansza 12 × 12 m i 20 osób | środowisko CrowdNav++ |
| pięć kart | action chunk o długości H = 5 |
| dwie liczby na karcie | prędkość w dwóch wymiarach |
| wykonanie pierwszej karty | akcja wysłana do środowiska |
| nowa piątka po 0,25 s | receding-horizon control |
| odszumianie całej piątki | generowanie przez diffusion policy |
Koszt jest widoczny. Przez cztery takty robot tworzy łącznie 20 planowanych komend, choć wykonuje tylko cztery. Każda piątka powstaje ponadto w iteracyjnym procesie odszumiania. Tabela hiperparametrów podaje 20 kroków diffusion podczas pretrainingu, czyli wstępnego uczenia na demonstracjach, i 10 podczas fine-tuningu z nagrodą, ale praca nie raportuje czasu inferencji. Autorzy sami wskazują dodatkowy narzut jako ograniczenie.
Najpierw demonstracje, potem nagroda
Uczenie ma dwa etapy. Najpierw behavioral cloning na około 3000 epizodach demonstracyjnych z ORCA, regułowego algorytmu omijania kolizji. Z kolejnych komend ORCA powstają pięcioelementowe sekwencje, a sieć przez 200 iteracji uczy się usuwać dodany do nich szum. To daje punkt startowy z sensownymi zachowaniami, nie końcową politykę.
Potem PDPO przechodzi około 12 milionów kroków online fine-tuningu z PPO. Autorzy traktują każdy krok odszumiania jak wewnętrzną decyzję w osobnym procesie. Dopiero pierwsza komenda gotowego action chunku trafia do symulatora i daje nagrodę środowiskową. Ta sama przewaga z poziomu środowiska trafia do przejść odszumiania, lecz wcześniejsze, bardziej zaszumione kroki są osłabiane przez współczynnik:
PPO aktualizuje więc nie tylko gotową prędkość, ale cały proces, który ją wytworzył.
Dwa benchmarki, dwie odpowiedzi
W oryginalnym CrowdNav++ bez granic PDPO osiągnęło 90,6% sukcesów, wariant ablation bez action chunku 86,2%, a CrowdNav++ 87,0%. Wynik CrowdNav++ oraz ORCA autorzy przepisali z wcześniejszej pracy, więc to porównanie nie jest tym samym kontrolowanym rerunem co eksperyment z granicami. Co więcej, odpowiednio 19,8%, 18,7%, 16,1% i 31,8% udanych trajektorii PDPO, ablation, CrowdNav++ i ORCA wychodziło poza obszar.
W Bounded CrowdNav wyjście poza ścianę liczy się jako kolizja. Wszystkie metody uczone, w tym CrowdNav++, wytrenowano ponownie w tym samym środowisku. Na 500 niewidzianych seedach testowych, czyli ustalonych losowych scenach nieużytych w treningu, dla każdej końcowej polityki, po trzech seedach treningowych, PDPO uzyskało 84,7 ± 1,4% sukcesów, CrowdNav++ 74,5 ± 2,1%, a ablation z diffusion policy generującą jedną akcję 73,7 ± 0,7%. To przewaga odpowiednio 10,2 oraz 11,0 punktu procentowego. Tekst pod tabelą 2 podaje 11,7 punktu dla porównania z CrowdNav++, ale z wartości w tabeli wynika 10,2; tutaj trzymam się tabeli. Najważniejsze porównanie z action chunk ablation wskazuje, że zysk nie wynika wyłącznie z samej parametryzacji diffusion.
Jest istotne zastrzeżenie: do testu autorzy wybierają checkpoint z najwyższą skutecznością na epizodach walidacyjnych podczas treningu. To wynik best-checkpoint, a nie wynik ostatniego kroku. W Bounded CrowdNav PDPO miało też intrusion rate — częstość wejść w strefę osobistą człowieka — 6,81 ± 0,04% wobec 8,53 ± 0,30% dla CrowdNav++, ale nadal porównujemy symulowane trajektorie, nie zachowanie wobec prawdziwych ludzi.
Co ten wynik pokazuje — i czego nie
Praca pokazuje w jednym symulatorze, że planowanie pięciu ruchów naraz pomaga bardziej niż diffusion policy zwracająca jedną akcję, zwłaszcza po usunięciu skrótu przez ścianę. Nie pokazuje, że PDPO jest bezpieczne w realnym tłumie. Ludzie w symulacji poruszają się według ustalonej polityki ORCA i nie obserwują robota, więc nie reagują na niego tak jak człowiek.
Nie znamy też kosztu czasowego iteracyjnego odszumiania na robocie ani zachowania poza jedną konfiguracją z 20 osobami. Wybór najlepszego checkpointu może dodatkowo podnosić raportowany wynik względem przeciętnego momentu treningu.
Najbardziej użyteczna wskazówka jest prostsza od nowej architektury: przed optymalizacją polityki wymuś fizyczne ograniczenia w benchmarku i policz, ile „sukcesów” korzysta z nierealnego skrótu. Dopiero w takim środowisku sprawdzaj, czy dłuższy lokalny plan rzeczywiście pomaga.
Źródło: https://arxiv.org/abs/2608.27158
Wykorzystuję treści generowane przez AI jako część mojego codziennego procesu nauki.