cuNRTO: GPU-Accelerated Nonlinear Robust Trajectory Optimization
Autori: Jiawei Wang, Arshiya Taj Abdul, Evangelos A. Theodorou · RSS 2026
Licenze
- Open access
- Articolo: CC BY 4.0
Tutto ciò che segue si basa sull'articolo completo secondo la sua licenza CC BY 4.0; la figura è riportata citando gli autori.
In breve
cuNRTO rielabora il solutore interno dell'ottimizzazione robusta non lineare delle traiettorie in modo che le proiezioni coniche girino in parallelo su una GPU, riducendo i tempi di risoluzione fino a 139,6x rispetto ai metodi a punto interno.
Perché è importante
Le policy robuste con guadagni di retroazione offrono garanzie contro disturbi limitati, ma il loro costo le ha confinate a problemi piccoli. Spostare il ciclo interno sulla GPU fa crescere l'accelerazione con il numero di vincoli, il che porta l'ottimizzazione robusta delle traiettorie di un braccio a 7 gradi di libertà (7-DoF) con vincoli di ostacoli da circa un'ora di tempo di risoluzione a pochi minuti.
Problema
L'ottimizzazione robusta delle traiettorie calcola una policy di controllo che soddisfa i vincoli di sicurezza per ogni disturbo di un insieme limitato. Il framework NRTO gestisce dinamiche e vincoli non lineari, ma i suoi sottoproblemi riformulati contengono molti vincoli conici del secondo ordine, e risolverli con metodi a punto interno è troppo lento per sistemi ad alta dimensionalità con molti vincoli.
Soluzione proposta
Gli autori sostituiscono in due modi la costosa risoluzione del sottoproblema interno di NRTO. NRTO-DR lo risolve con lo splitting di Douglas-Rachford, fattorizzando una sola volta una matrice KKT sparsa fissa ed eseguendo le proiezioni coniche in parallelo. NRTO-FullADMM ristruttura l'intero ciclo ADMM interno in modo che le proiezioni coniche facciano parte degli aggiornamenti ADMM e il ciclo giri interamente sulla GPU, usando kernel CUDA personalizzati (un warp per vincolo) per le proiezioni coniche, catene GEMM di cuBLAS per gli aggiornamenti dei guadagni di retroazione e il gradiente coniugato precondizionato per il blocco QP.
Idee chiave
- Le proiezioni sui coni del secondo ordine nel sottoproblema robusto sono separabili tra i vincoli, quindi ciascuna può essere assegnata a un proprio warp della GPU
- Integrare le proiezioni coniche direttamente negli aggiornamenti ADMM interni elimina il solutore annidato di NRTO-DR ed evita il trasferimento di dati CPU-GPU all'interno del ciclo
- Gli operatori lineari che restano costanti all'interno di un'iterazione esterna (fattorizzazione KKT, precondizionatori) possono essere calcolati una volta e riutilizzati nelle iterazioni interne
- Il vantaggio della GPU cresce con la dimensione del problema: più ostacoli significano più vincoli robusti e più proiezioni in parallelo
Risultati principali
- Monociclo con 5 ostacoli: NRTO-FullADMM ha ridotto il tempo di risoluzione da 30.423,523 s a 217,932 s (139,60x); quadricottero con 5 ostacoli: da 13.374,375 s a 199,935 s (66,89x)
- Con l'orizzonte nominale T = 30: monociclo da 32,137 s a 6,231 s (5,16x) e quadricottero da 1.327,390 s a 98,585 s (13,46x); con T = 45 le accelerazioni sono state di 6,94x e 13,21x
- Franka Panda a 7-DoF con un ostacolo: 3.948,523 s (NRTO) contro 1.342,455 s (NRTO-DR) contro 152,384 s (NRTO-FullADMM), un'accelerazione di 25,9x
- Con l'estensione per l'errore di linearizzazione (NRTO-LE) tutti i metodi hanno raggiunto il 100 % di soddisfacimento dei vincoli in ogni configurazione riportata, verificato con 1.000 rollout con disturbi casuali e 1.000 con disturbi sul bordo
- Senza NRTO-LE il successo è calato al crescere dell'incertezza (81-82 % con tau = 0,075 per tutti e tre i solutori); i solutori su GPU sono rimasti a pochi punti dalla baseline, ad es. 72 % e 69 % contro 74 % sul quadricottero con 5 ostacoli
Limiti
- Gli autori indicano come lavori futuri l'estensione di cuNRTO alla manipolazione e alla locomozione ricche di contatti con programmi conici più grandi, a sciami multi-agente e a forme eterogenee di incertezza (nessuna sezione dedicata ai limiti)
- Tutti i risultati principali sono in simulazione; il modello del Franka è un modello semplificato nello spazio dei giunti con smorzamento per giunto e inerzia unitaria, e l'unico test su robot reale (un monociclo del Robotarium, in appendice) è qualitativo e usa la policy di NRTO
- Anche le risoluzioni più rapide richiedono da circa 6 s a oltre 200 s, quindi nelle configurazioni riportate il metodo accelera la pianificazione offline anziché fornire un controllo in tempo reale
- Il ciclo esterno di linearizzazione successiva gira ancora sulla CPU, e sul problema di monociclo più piccolo (T = 15) NRTO-FullADMM è stato più lento di NRTO-DR (5,983 s contro 5,324 s)
- Senza l'estensione NRTO-LE, il soddisfacimento dei vincoli con disturbi uniformi e sul bordo è sceso fino al 69 % per NRTO-FullADMM sul quadricottero con 5 ostacoli
Impatto sul settore
Finalista al RSS 2026 Outstanding Paper Award; 1 citazione finora. L'articolo non indica un rilascio del codice né una pagina del progetto.
Abstract
L'ottimizzazione robusta delle traiettorie consente ai sistemi autonomi di operare in sicurezza in condizioni di incertezza calcolando policy di controllo che soddisfano i vincoli per tutti i disturbi limitati. Tuttavia, questi problemi portano spesso a grandi vincoli di programmazione conica del secondo ordine (Second Order Conic Programming, SOCP), computazionalmente costosi. In questo lavoro proponiamo il framework CUDA Nonlinear Robust Trajectory Optimization (cuNRTO), introducendo due architetture di ottimizzazione dinamica che hanno applicazione diretta al processo decisionale robusto e sono implementate in CUDA. La prima architettura, NRTO-DR, sfrutta il metodo di splitting di Douglas-Rachford (DR) per risolvere i sottoproblemi SOCP interni di NRTO, riducendo così in modo significativo il carico computazionale tramite proiezioni SOCP in parallelo e risoluzioni dirette sparse. La seconda architettura, NRTO-FullADMM, è una nuova variante che sfrutta ulteriormente la struttura del problema per migliorare la scalabilità usando il metodo delle direzioni alternate dei moltiplicatori (Alternating Direction Method of Multipliers, ADMM). Infine, forniamo un'implementazione su GPU delle metodologie proposte usando kernel CUDA personalizzati per i passi di proiezione SOC e catene GEMM di cuBLAS per gli aggiornamenti dei guadagni di retroazione. Validiamo le prestazioni di cuNRTO con esperimenti simulati su modelli di monociclo, quadricottero e manipolatore Franka, dimostrando accelerazioni fino a 139,6×.
Link
- arXiv 2603.02642: https://arxiv.org/abs/2603.02642
- DOI 10.48550/arXiv.2603.02642: https://doi.org/10.48550/arXiv.2603.02642
- PDF: https://arxiv.org/pdf/2603.02642v1