Improved Trajectory Planning for On-Road Self-Driving Vehicles Via Optimization
本文解析Improved trajectory planning for on-road self-driving vehicles via combined graph search, optimization & topology analysis 的chapter 6。 DDP(differential dynamic programming)進行trajectory planning。
我們將軌跡trajectory理解成一個狀態序列和一個時間序列。
並且還有狀態轉移方程:
定義目標函式就是要:
需要找到一個控制量U的在時間上的序列,能夠最小化cost function J。
然後我們再定義一個在狀態 i 的時候的value function(optimal cost-to-go)為最小的在狀態 i 的中間cost g與 下一個狀態 i+1的value function的和:
現在把v function中的兩個項叫做P:
再定義P的微小擾動為Q:
我們將Q在(0,0)附近做二次化,也就是做二階泰勒展開:
其中:
公式比較枯燥, 但是就是分佈求導以及一些表達的簡化。
然後,我們現在不是要求最優的控制序列嗎,由於這裡的Q的表達是微小擾動,那我們要找的就是這個最優的微小擾動,然後透過一遍遍的迭代,讓動作序列一直畢竟最優的動作序列,這個和
這張圖裡的意思是一樣的,從一個初始狀態,透過每一個迭代一點點delta, 最後畢竟最優狀態,以及獲得最優狀態下的最優控制序列。論文推土機:對特斯拉決策規劃技術的理解(ddp optimization)
因為這個表示式是二次泰勒,所以求導為0即是最優點:
得到最優解為:
現在這裡還有一步和標準iLQR(DDP)不太一樣的,就是上面的Q的各種求導表示式中有V,而我們要拿Q去求V,所以這裡的trick是將上述表示式帶回去消除V。這個原因在論文推土機:Synthesis and Stabilization of Complex Behaviors through Online Trajectory Optimization解釋過。
演算法的流程如下:
詳細的推導見上課的ppt:
http://
rail。eecs。berkeley。edu/
deeprlcourse/static/slides/lec-10。pdf
以及:
https://
jonathan-hui。medium。com
/rl-lqr-ilqr-linear-quadratic-regulator-a5de5104c750
最後的trajectory規劃效果如圖:
是不是和tesla的影片很像。
接下來是cost function的詳解:to be continue。