Motion Planning 是什么


前言與引用

這一個呢,主要是自己突然看一篇論文的時候不知道 為什么他提出的方法對於規划來說就是好的,規划又應該分為哪幾個部分,解決的是哪幾個部分的問題?帶着這個問題,我就去搜:Motion Planning是什么?hhhh 然后從參考的知乎鏈接中到了這個課(其實我曾經在b站刷到過 但是當時我還沒意識到自己的這一系列基礎性問題 沒問出問題,我向來是一個... 有問題再去學 再去找的 帶着問題走)

  1. 知乎《Apollo Lattice Planner從學習到放棄.額不....到實踐》:https://zhuanlan.zhihu.com/p/164635074
  2. 百度技術學院課程:https://bit.baidu.com/productsBuy?id=82
  3. 看的那篇論文是 Safe Trajectory Generation for Complex Urban Environments Using Spatio-temporal Semantic Corridor
  4. 課程中提到的參考 Steve Lavelle 的 Planning Algorithmhttp://planning.cs.uiuc.edu/par1.pdf

這里可能很多部分都是我看第二個參考百度技術學院課的一種文字總結形式而已哈

What is Motion Planning?

回答我當初看的初衷:什么是規划?

規划的本質是一個搜索。那搜索又是什么呢?

\[\arg \min _{x} f(x) \]

給一個函數\(f(x)\) 找出最優解。這是數學意義上的,那對於規划中,就是給定現在的狀態,給出最優的移動軌跡,那我們怎么定義出說這個軌跡是好的呢?也就是定出一個目標函數 像上面這樣的\(f(x)\)

  • [x] 所以,按這個想法看來,就是trajectory generation部分,並不包含控制器的forward backward 這樣的反饋

    並不是,在后面的過程中分類中,解釋了 只是不同的方向的人對於Motion Planning的定義不同,例如做機器人的考慮的是尋找目標點的路徑,隨后交給做控制的人去跟隨住這樣一個路徑。

構建規划問題

課程中提到,構建自動駕駛中的Motion Planning問題是比較復雜的。把問題分分成簡單的小問題,雖然其中有些問題又可以再次分成更小的問題,因為他們這一層還並不簡單

1. Path Finding Problem

不需要關心環境,只需要關心整體的路徑是怎樣的。看起來有點像我們現在用的導航,感覺也是全局的路徑規划問題

其中眾所周知的算法:

BFS DFS: non-informative search

A*: 對比起來就快很多了,從這里也衍生了其他的全局的

但是呢,后面我們就會考慮A* 需要對全局環境障礙物提前知道,但實際情況是很難的,因為路徑夠長你的傳感器就沒法探知那么遠的了。所以,在這里又分出了兩類對環境的掌握情況:partially observed和 fully observed

partially observed: 如果使用的是貪心算法的,表現的形式就是一種incremental search 看到多少就按看到的去求出一個最優解

2. 路徑的平滑

這一點在前面finding的舉例,都是折線,是因為我們沒考慮車輛運動學模型,也沒考慮控制動力學方面,但其實這點想低速場景苟着的話,就把折線用五次平滑曲線弄一弄 也是OK的

3. 環境的動態性

前者 我們在構建的過程中總是缺了點什么:環境是動態的,我們不能將周圍的所有東西都當做靜態障礙物,特別是高速行駛的場景。而這一個問題,至今在規划中還是一個很難很好的解決的問題

4. 交通規則

怎樣在模型中把交通規則給包含進去,然后再做規划

5. 實時性

視頻中介紹的百度apollo規划模塊的運轉周期:100ms,反應時間是0.2-0.3s;對比人駕駛的反應時間大致是0.4-0.5s

Motion Planning for Autonomous driving 要求

safely and smoothly,本質上來講是一個三維規划問題:X Y Time,但是從車輛動力學角度的話 維度可能還要進一步上升,因為涉及到車頭方向、轉向角、車輛速度、加速度等等

整體自動駕駛一覽

軌跡在這里的定義就不是前面在第一點中提到的 路徑是怎樣的,而應該是隨着時間這個路徑應該怎么走英文上就換了個詞:Trajectory

  • [x] 哦吼!所以Path和Trajectory是有分別的路徑的意思的

    Path是靜態的,不包括時間;Trajectory是除了路徑還有其他信息可以說是時間,speed profile,這條路徑上速度的變化關系

至此 Overview的部分課程就是這個,其中在最后提到的整個規划的框架內,感覺缺少了行為規划器那塊的東西,就是狀態機?

總結

所以回答了自己的問題?

  1. 規划又應該分為哪幾個部分

    就像上面提到的如果是針對整個車的規划問題,包括從全局到局部,到控制都是規划需要考慮的部分,如果是針對那篇論文,他解決的是第二部分的東西也就是Motion Planning: 局部感知后,對全局路徑的修正,論文中處理的也是怎樣把語義信息給結合起來

  2. 解決的是哪幾個部分的問題?

    好像和上面的問題是重合的 hhhh

感覺百度的這節課挺棒的


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM