Apollo預測規劃二——運動規劃(1)
- 定位:Where we are
- 感知:What we see
- 預測:How the environment will change
- 規劃:How we move
- 控制:How to control the car
Basic Motion Planning and Overview 基本運動規劃 和概述
Motion Planning with Autonomous Driving 自動駕駛中的運動規劃(know your approaches)
Motion Planning with Environment 運動規劃的 環境(know your enviorment)
Optimization Inside Motion Planning 動態規劃的 內部優化 (know the problem solver)
Understand More on the MP Difficulty MP難度 (build an autonomous driving motion planner)
Reinforcement Learning and Data Driven Approaches 強化學習和資料驅動方法 (build an generic eco system)
運動規劃
決策規劃的本質問題是什麼:搜尋
- 首先在不考慮環境情況,在global下尋找一條最優路徑
- 然後再加入動態環境資訊,進一步的做 motion planning
- 最後在深入到控制模組,做motion planning control
最簡單的問題:路徑規劃(查詢最優路徑)
BFS廣度優先查詢(non-information algorithm)
A* 演算法(information algorithm)(fully observed)(global routing)
D*演算法 (Partially observed) (local routing)
使用平滑的曲線連線——生成較為平滑的路徑
動態環境中還需考慮
- 動態障礙物
- 融入交通規則
- 實時計算
- 導航資訊 HD map
- 。。。
使得無人車 安全、舒適的到達目的地
車輛行走的軌跡是隨著時間變化,不斷變化的
自動駕駛中的運動規劃(know your approaches)
方法概述
從機器人到自動駕駛
模擬基礎方法: RRT 、Lattice
基於自動駕駛方法: Frenet(車輛座標系)等等
常用方法:
質點模型 和 實際場景的剛體模型 是不一樣的(比如說碰撞問題)
空間複雜性、幾何複雜性
路徑約束(限制)
避免碰撞、運動曲率、最短路徑等。。
motion planning框架
從連續空間——>分解成離散空間(比如說網格)——>再使用演算法(A*)求最優解
離散空間的方法(Roadmap mothods)
隨機撒點連線(PRM) (抽象連續空間的方法)
RRT(只看當下,不管全域性,找路徑的方法)
- 先隨機撒離散點
- 點的連線(限制範圍,行之有效的點)
- 平滑曲線連線
Lattice(網格法)
運動規劃的 環境(know your enviorment)
- 從質點模型 到 車輛模型
- 車輛控制從環境中的需要(動態障礙物的問題)
- 平滑的行車路徑和速度曲線(重要的效能指標)
- 幾何計算,超幾何計算,評估邊界框
- 平滑的SL到XY Frenet對映技術
- 障礙物測繪
bicycle model
前輪相對車身的一個轉向角(有一個轉向圓心,和一個轉向半徑)(前後輪轉向半徑是不一樣的(差速器))
後輪沿著切線(轉向中心的圓的切線)方向行駛
曲面座標系(車輛座標系)
從車輛座標系到世界座標系下的mapping(運動學模型)
抽象曲線是根據一系列的離散點【這塊理解不太好】
再使用平滑的曲線連線(曲率在一定範圍,並且連續)
優化使得更平滑(smooth spline)
在不同的維度(多階導)
平滑座標系 Spline 2D
既要滿足約束條件,又要讓他足夠平滑
使用一個五階的函式
動態規劃的 內部優化 (know the problem solver)