Sintesi Tecnica: ContactIPM
Definizione del Problema
L'ottimizzazione di traiettorie contact-implicit (CITO) mira a ottimizzare simultaneamente gli stati del robot, gli input, le forze di contatto e le modalità di contatto senza prescrivere una sequenza di contatto. Questa flessibilità introduce i Programmi Matematici con Vincoli di Complementarità (MPCC), dove il contatto unilaterale e l'attrito sono modellati tramite condizioni di complementarità (ad esempio, 0≤a⊥b≥0).
Questi problemi presentano una sfida numerica fondamentale: nei punti di complementarità ammissibili, i gradienti dei vincoli di non-negatività attivi e di prodotto sono strutturalmente dipendenti, causando il fallimento delle normali qualifiche di regolarità dei vincoli (come la LICQ). Questa degenerazione rende inaffidabili i convenzionali solver di programmazione non lineare primal–dual, portando spesso a sistemi KKT singolari o mal condizionati.
Gli approcci esistenti affrontano questo problema di robustezza abbandonando il passo di Newton primal–dual completamente accoppiato. Metodi come CRISP ottimizzano solo la traiettoria primal attraverso sottoproblemi convessi, mentre IMPACT utilizza un ciclo esterno di lagrangiana aumentata con discesa a coordinate a blocchi. Al contrario, i solver di controllo ottimo (OCP) che sfruttano la struttura (ad esempio, acados) utilizzano ricorsioni di Riccati per l'efficienza, ma spesso non riescono a generare un contatto utile se viene imposta la complementarità esatta senza un trattamento speciale. Rimane un divario tra la robustezza specifica per gli MPCC e l'efficienza dei solver di controllo ottimo (OCP) basati sulla struttura.
Metodologia: ContactIPM
ContactIPM propone un metodo interior-point primal–dual unificato che mantiene la struttura a blocchi a bande (block-banded) dell'OCP necessaria per la ricorsione di Riccati, gestendo al contempo in modo robusto i vincoli di complementarità.
1. Rilassamento Interior Elastico Accoppiato al Barrier
Invece di utilizzare pesi di penalità o lagrangiane aumentate, ContactIPM introduce un rilassamento interior elastico locale per stadio per ogni coppia di complementarità marcata (a,b):
- Variabili di Slack: Vengono introdotte slack per il lato positivo (sa,sb) e una slack di prodotto (sc).
- Lift Elastico: La condizione di complementarità viene trasformata in un sistema di uguaglianze:
ga+sa=0,gb+sb=0,gagb−θ(μ)+sc=0
dove θ(μ)=γmpccμ lega direttamente l'irrigidimento della complementarità al parametro di barriera μ.
- Regolarità: Questa costruzione assicura che lo Jacobiano del vincolo "liftato" contenga un blocco identità rispetto alle variabili di slack. Di conseguenza, il problema rilassato soddisfa la Linear Independence Constraint Qualification (LICQ) in ogni punto interiore, garantendo moltiplicatori unici e un sistema primal–dual regolare.
- Nessuna Penalità Indipendente: A differenza dei metodi di penalità, l'irrigidimento della complementarità è controllato dallo stesso parametro di barriera μ che definisce il percorso centrale (central path), eliminando la necessità di coefficienti di penalità regolati indipendentemente.
2. Eliminazione Primal–Dual per Stadio e Ricorsione di Riccati
Il solver mantiene la coerenza primal–dual, aggiornando la traiettoria, i moltiplicatori della dinamica, i moltiplicatori delle disuguaglianze e le variabili di slack come componenti di un singolo sistema KKT perturbato.
- Eliminazione Locale: Poiché le coppie di complementarità e le variabili elastiche sono locali ai singoli stadi, il solver elimina le variabili di slack (Δsk) e duale (Δλk) per stadio.
- Sistema Ridotto: Questa eliminazione modifica solo l'Hessiana locale dello stadio (H~k) e il gradiente (q~k). La dinamica rimane l'unico accoppiamento tra gli stadi adiacenti, preservando la struttura a blocchi a bande.
- Risoluzione Efficiente: Il sistema ridotto viene risolto utilizzando una ricorsione di Riccati all'indietro seguita da una sostituzione in avanti, raggiungendo una complessità lineare O(N) rispetto alla lunghezza dell'orizzonte.
3. Recupero MPCC Multi-Fase
Per gestire le molteplici branche stazionarie associate a diverse modalità di contatto, ContactIPM impiega un programma di recupero fisso che prevede:
- Continuazione: Irrigidimento graduale del parametro di barriera cercando di rimanere nel bacino di attrazione della modalità di contatto corrente.
- Restart: Se la continuazione fallisce (ad esempio, a causa della perdita di condizionamento), il solver ripristina la stima primal originale e riparte con un parametro di barriera più grande e curvatura Gauss–Newton per esplorare diversi bacini.
- Terminazione: Il solver termina solo quando il residuo di complementarità fisica non rilassato (rphys=max∣akbk∣) scende sotto una soglia specificata, garantendo che la traiettoria finale soddisfi il modello di contatto fisico, non solo la formulazione rilassata.
4. Scalatura e Globalizzazione
Il metodo applica una scalatura delle coordinate diagonale coerente con l'orizzonte, derivata dalle magnitudo delle derivate per stadio. La globalizzazione è ottenuta tramite una ricerca di linea con filtro che bilancia la riduzione dell'obiettivo e la violazione dei vincoli, con una regola "fraction-to-boundary" per mantenere le slack positive.
Contributi Chiave
- Formulazione Unificata: Una formulazione per stadio che converte le coppie di complementarità marcate in righe di prodotto elastiche accoppiate al barrier all'interno di un framework di dinamica, costo e disuguaglianze non lineari.
- Metodo di Newton Primal–Dual Consapevole di MPCC: Un metodo che preserva la struttura KKT perturbata accoppiata utilizzando l'eliminazione locale di slack/duale e la ricorsione di Riccati. Include il precondizionamento della scala della traiettoria e una politica di recupero multi-fase.
- Valutazione Riproducibile: Una suite sperimentale completa che confronta ContactIPM con CRISP, IMPACT e un baseline di tipo acados (con complementarità esatta), inclusi 50 rollout in loop chiuso sotto varie perturbazioni.
Risultati Sperimentali
Prestazioni vs. CRISP
- Velocità: Su quattro casi benchmark fissi (Cartpole, Push Box, Transport, Push T), ContactIPM è da 2.17× a 8.87× più veloce di CRISP su 20 ripetizioni temporali accoppiate.
- Robustezza: ContactIPM eguaglia CRISP su Cartpole e Transport, ma ha successo in 5 casi aggiuntivi di Push Box (24/25 rispetto a 19/25). Sulla suite Push T, ContactIPM ha successo in tutti i 50 casi, mentre CRISP ha successo solo in 27/50 quando viene imposta una stretta complementarità fisica.
Prestazioni vs. IMPACT
- Velocità: ContactIPM è 2.96× più veloce su Push T e 4.91× più veloce su Cart Transport. Tuttavia, IMPACT è 4.46× più veloce su Push Box.
- Robustezza: ContactIPiamo ha successo in 150/150 casi in tre suite da 50 casi (Push Box, Push T, Cart Transport), rispetto ai 147/150 di IMPACT.
Confronto con il Baseline Strutturato OCP (acados)
- Quando acados è configurato con complementarità esatta (senza rilassamento elastico), spesso fallisce nel generare un contatto utile. Ad esempio, nel benchmark Push Box, acados supera i controlli di ammissibilità fisica in tutti i 25 casi, ma 0/25 raggiungono l'obiettivo terminale, terminando spesso su una traiettoria a contatto zero.
- In 165 casi ricchi di contatto (CRISP Transport, CRISP Push T, IMPACT Push T, e IMPACT Cart Transport), acados ha prodotto solo 1 traiettoria accettata, mentre ContactIPM ha avuto successo in 158. Ciò dimosta che sfruttare solo la struttura OCP è insufficiente per superare la degenerazione MPCC.
Validazione in Loop Chiuso
- In 50 rollout di Push Box in loop chiuso coinvolgenti mismatch del modello, rumore e reset dello stato, ContactIPM ha avuto successo in tutti i 50 casi.
- Latenza: Il tempo di risoluzione mediano è stato di 2.08 ms, con il 99.37% delle risoluzioni che rispettava il limite di controllo di 100 ms.
- Amissibilità: Il feedback in loop chiuso ha mantenuto la fattibilità primal e la complementarità fisica, con i prodotti di complementarità fisica massima rimasti al di sotto di 1.01×10−6.
Significato e Rivendicazioni
L'articolo sostiene che la robustezza MPCC, la coerenza primal–dual e la struttura di controllo ottimo possono coesistere in un singolo solver. ContactIPM dimostra che la separazione della gestione della complementarità dal passo di Newton primal–dual (come visto in CRISP e IMPACT) non è un costo inevitabile della complementarità di contatto. Combinando un rilassamento interior elastico con l'eliminazione per stadio e la ricorsione di Riccati, il solver ottiene sia la robustezza numerica richiesta per i problemi di contatto sia l'efficienza computazionale del controllo ottimo che sfrutta la struttura. I risultati suggeriscono che un trattamento specializzato per MPCC è necessario anche quando si utilizzano tecniche avanzate di algebra lineare per l'OCP.