(1) Trening: bierze sekwencję akcji ekspertckich a_0:T, dodaje szum gaussowski w K krokach (forward diffusion), trenuje sieć epsilon_theta(a_t, t, obserwacja) do przewidywania dodanego szumu. (2) Inferencja: startuje z czystego szumu a_K ~ N(0,I), iteracyjnie odszumia w K krokach używając schedulera DDPM lub DDIM, warunkując na bieżącej obserwacji o_t. (3) Wykonanie: z przewidzianej sekwencji T_p akcji wykonuje tylko pierwsze T_a (receding horizon), potem powtarza inferencję na nowej obserwacji.
Diffusion Policy rozwiązuje problem wielomodalnych demonstracji eksperckich w robotyce. Klasyczny behavior cloning regresją MSE uśrednia różne poprawne akcje dla tego samego stanu i produkuje akcje pomiędzy, które nie wykonują zadania. Diffusion Policy modeluje cały rozkład warunkowy akcji bezpośrednio, dzięki czemu jeden model uczy się wszystkich poprawnych strategii.
Sieć neuronowa epsilon_theta(a_t, t, obs) przewidująca szum dodany do sekwencji akcji w kroku t. W oryginalnej pracy: 1D U-Net (CNN) z warunkowaniem FiLM lub Transformer z cross-attention nad obserwacjami.
Oficjalna
Algorytm definiujący trajektorię szumu w forward diffusion (beta schedule: linear, cosine) oraz strategię samplingu w inferencji (DDPM iteracyjny, DDIM deterministyczny i skrócony do K=10-20 kroków).
Oficjalna
Pre-treniowany backbone wizji (ResNet-18/50, ViT, CLIP) przetwarzający obrazy z kamer i stan robota na zwarty wektor warunkowania dla denoising network.
Oficjalna
K kroków odszumiania (zwykle 10-100) wykonywanych sekwencyjnie znacząco zwiększa czas predykcji w porównaniu do jednowarstwowej polityki. Dla wysokich częstotliwości sterowania (50-100 Hz) staje się to wąskim gardłem.
Trening diffusion zakłada wejścia o zerowej średniej i jednostkowej wariancji. Surowe akcje robota (pozycje stawów, prędkości) mają różne skale i rozkłady — bez normalizacji denoising loss staje się niestabilny i model nie zbiega.
Zbyt mały T_p (np. 1 akcja) traci stabilność charakterystyczną dla DP i sprowadza ją do standardowego policy. Zbyt duży T_p zwiększa rozmiar wyjścia bez korzyści, a duże T_a (zbyt rzadkie re-planowanie) sprawia że robot ignoruje nowe obserwacje.
Diffusion Policy wymaga typowo 50-200 trajektorii per zadanie dla solidnej zbieżności. Niekonsekwentne demonstracje lub błędy w teleoperacji są kodowane jako prawdopodobne mody rozkładu — model uczy się ich wiernie.
Praca Ho, Jain, Abbeel definiująca probabilistyczny framework diffusion dla generowania obrazu — fundament matematyczny, na którym później oparto Diffusion Policy.
Energy-based policy uczona porównawczo (InfoNCE) — bezpośredni poprzednik Diffusion Policy w idei modelowania niejawnej gęstości warunkowej zamiast regresji. Diffusion Policy poprawia stabilność i jakość względem IBC.
Artykuł Diffusion Policy: Visuomotor Policy Learning via Action Diffusion (arXiv 2303.04137) wprowadza diffusion jako schemat polityki robota. Otwarta implementacja referencyjna (diffusion-policy.github.io) szybko staje się standardem w społeczności robot learningu.
Octo (Berkeley) i RDT-1B (Tsinghua) skalują Diffusion Policy do miliardowych parametrów i pretreningu na Open X-Embodiment. OpenVLA łączy LLaMA-2 7B z action head bazującym na diffusion. Diffusion Policy przestaje być pojedynczym podejściem i staje się standardowym blokiem foundation modeli robotyki.
Physical Intelligence publikuje π0, w którym diffusion zostaje zastąpiony przez flow matching (continuous normalizing flows). Argumentowana zaleta to jednoetapowa inferencja zamiast iteracyjnego samplingu. Pokazuje to początek tendencji odchodzenia od iteracyjnych metod ku ciągłym.
Foundation modele robotyki w produkcji (GO-1 dla humanoidów AgiBot G1/G2) używają diffusion w action head jako standardowego, sprawdzonego komponentu. Architektura Diffusion Policy jest dziś wbudowanym standardem, a nie eksperymentalnym podejściem.
Główny koszt inferencji Diffusion Policy to K forward passes przez sieć odszumiającą (typowo K=10 z DDIM, K=100 z DDPM). Dla manipulatora pracującego na 10 Hz, K=10 z prostym U-Net 1D na RTX 4090 jest realistyczne; K=100 wymaga DDIM lub dystylacji. Trening dominują standardowe koszty backpropu przez U-Net/Transformer.
Trening masowo równoległy na GPU. Inferencja K kroków denoising też dobrze mapuje się na GPU dzięki batchowaniu wielu agentów lub równoległych predykcji.
Lekka wersja DP (U-Net 1D, DDIM K=10) działa na Jetson AGX Orin / Thor z latencją <30 ms dla 7-DoF manipulatora. Wymagana kwantyzacja INT8 dla cięższych modeli Transformer.
Iteracyjny denoising na CPU jest zbyt wolny dla sterowania robotem w czasie rzeczywistym (>200 ms latencji per inferencja).