Reciprocal velocity obstacles (RVO)
Un metodo che permette a molti agenti di evitarsi con fluidità, facendo assumere a ciascuno metà della responsabilità della schivata.
Un velocity obstacle (Fiorini e Shiller, 1998) è l'insieme di tutte le velocità che prima o poi causeranno una collisione con un ostacolo. L'agente sceglie semplicemente una velocità al di fuori di quell'insieme. I problemi cominciano quando due agenti schivano nello stesso momento: si rimpallano da una parte all'altra e finiscono per oscillare.
L'RVO (van den Berg, Lin e Manocha, 2008) risolve il problema facendo supporre a ogni agente che l'altro si assuma metà dell'evitamento. Ne risulta il movimento fluido e quasi umano delle folle e delle unità negli RTS, senza tremolii. Il suo successore ORCA (2011) lo riformula come vincoli lineari e regge migliaia di agenti. L'RVO completa il pathfinding: la navmesh fornisce il percorso grossolano, l'RVO gestisce gli ultimi metri tra vicini.