Zamknięta pętla na poziomie kodu - nowa filozofia robotyki
Wiele współczesnych systemów robotycznych opiera się na modelach językowo-wizyjnych (VLM), które generują decyzje sterujące. Tradycyjnie, aby takie modele działały w praktyce, trzeba je dopasować do konkretnego zadania - proces znany jako fine-tuning. To wymaga dużych zbiorów danych i czasu. VLCP idzie inną drogą: zamiast modyfikować model, pozostawia go niezmienionym (frozen) i używa go do generowania funkcji sterującej w języku Python. Co ważne - nie potrzebuje przykładów ani przeszkodzenia w treningu.
Kluczową innowacją jest zamknięcie pętli sterowania na poziomie samego kodu, a nie na poziomie decyzji lub subtasku. Gdy robot popełnia błąd - np. nie chwyta przedmiotu - system nie wybiera nowego zadania ani nie powtarza tej samej funkcji. Zamiast tego, co kilka kroków, model ponownie analizuje scenę z wielu perspektyw i przepisuje kod sterujący, który właśnie się nie udał. To pozwala na poprawę błędu w trakcie jednego epizodu, zanim stanie się nieodwracalny.
Skuteczność: dziesięć razy więcej sukcesów niż tradycyjne podejście
Badania przeprowadzone na zbiorze zadań MuJoCo/RoboVerse, obejmującym 57 różnych czynności manipulacyjnych, wykazały drastyczny wzrost skuteczności. System VLCP osiągnął znacznie lepszy wynik niż identyczny system działający w trybie otwartym (z jednym zapytaniem na epizod). Różnica ta nie jest przypadkowa - przedziały ufności nie nakładają się nawet dla pojedynczych rodzin scen.
Główne uzdrowienie wynika z wewnątrzepizodowej poprawy błędów. Badanie wykazało, że system potrafi odzyskać część przypadków nieudanego chwytu - czyli tych sytuacji, które tradycyjne systemy otwarte traktują jako koniec epizodu. Gdy robot nie chwyta przedmiotu, VLCP nie reaguje na poziomie decyzji, ale przepisuje kod sterujący, który może już działać poprawnie w nowej sytuacji.
Efektywność obliczeniowa: niska kosztowność i wysoka wydajność
Pomimo zaawansowanej funkcji replanowania, VLCP nie jest obciążeniem obliczeniowym. Badanie pokazuje, że duża część tokenów wejściowych trafia do pamięci podręcznej (cache), co znacznie redukuje czas odpowiedzi. Na jeden epizod wystarcza około 10 krótkich zapytań - nie więcej niż potrzeba do jednego pełnego przetworzenia.
Dodatkowo, funkcje kontrolne generowane podczas replanowania są przechowywane w bibliotece umiejętności używanej w kolejnych epizodach. To oznacza, że system nie tylko poprawia się w trakcie działania, ale także uczy się na własnym doświadczeniu - co może prowadzić do długoterminowego rozwoju kompetencji bez konieczności nowego treningu.
Granice i znaczenie dla przyszłości robotyki
Wyniki VLCP są obiecujące, ale należy pamiętać, że zostały osiągnięte w symulacji - na platformie MuJoCo/RoboVerse. To oznacza, że nie ma jeszcze potwierdzenia działania w rzeczywistym świecie z fizycznymi robotami i szumem sensorycznym. Warto też podkreślić, że system działa tylko w przypadku zadań, które można opisać jako krótkie funkcje Pythona - co ogranicza jego zastosowanie do konkretnych typów manipulacji.
Jednak znaczenie tej pracy jest ogromne. Pokazuje, że roboty mogą nie tylko wykonywać zadania, ale także analizować i poprawiać swój własny kod w czasie rzeczywistym. To krok w stronę autonomicznych systemów, które nie są ograniczone do wcześniej zaprogramowanych działań, ale potrafią się adaptować na poziomie samego sterowania.



