姓名:董夢圓 學號:21011110259 學院:通信工程學院
轉載自:https://www.zhihu.com/question/41013884/answer/596820367
【嵌牛導讀】決策和規(guī)劃已經開始合并盼铁,很多決策層可以直接決策到動作層粗蔚,如此,就意味著不需要規(guī)劃層饶火,回想起4年前李德毅院士試乘我們車時鹏控,問過一個問題:“無人車到底需不需要規(guī)劃?” 真是時間如梭胺羟蕖5狈!
【嵌牛鼻子】無人駕駛鲤看;決策與規(guī)劃
【嵌牛提問】無人車的決策和規(guī)劃分別是負責什么的缘揪?兩者的差別和聯系是什么?
在老AI里面 決策和規(guī)劃差不多一個意思 一個理性決策通骋骞穑可以表示為將預期的utility/reward最大化找筝,或者等價的,讓代價cost最小慷吊。為此需要預計到自己未來的一系列措施會有怎樣的結果袖裕,并根據這樣預計來調整優(yōu)化自己將要采取的措施,這個過程就叫規(guī)劃溉瓶。
無人車也一樣急鳄,你是要換道,還是超車堰酿,還是下高架疾宏,還是去停車場,找哪個停車位胞锰,這些目標會帶來不同的utility灾锯,而對應的utility事實上是不能提前知道的兢榨,因為utility和目標是否可以實現嗅榕,如何實現有關系。比如你嫌前面的車太慢吵聪,你覺得馬上去超它回報會很大凌那?但是如果這個時候旁邊的車道沒有空隙讓你超呢?你強行超會導致事故吟逝。 所以帽蝶,規(guī)劃能力的強弱,決定了決策是多聰明還是多笨块攒。
目前大部分實用AI決策系統(比如游戲AI)里面励稳,都是分層(hierarchical)的佃乘。 5,6年前的時候驹尼,許多無人車的上層規(guī)劃系統還比較簡單趣避,有些就是些簡單的有限狀態(tài)機,來根據場景簡單的覺定我是不是要超車了新翎,要換道了程帕,而不太管物理上是否可以實現。你也可以認為根據場景粗糙的估計了一下utility地啰,但實際情況可能和估計的完全不一樣愁拭。 這一步,被工業(yè)界叫做behavior planning亏吝,也被認為是decision making的一部分... 一旦確定好behavior以后岭埠,比如要超車了,下面的motion planning模塊嘗試在有限的預測時間里找到能超車的軌跡蔚鸥。
正如上面所描述的枫攀,因為過去許多無人車所謂‘decision making'的過程過于簡單,相當于沒什么planning的因素在里面株茶,因此做出的決策常常會不可行来涨,也就是下面的motion planning找不到實現上層behavior的具體運動,這樣會導致無人車有時看上去比較傻启盛,比較保守蹦掐,或者需要避障的時候卻沒有采取足夠聰明的措施,等等僵闯。
因此最近的一些努力是在behavior planning的時候也考慮vehicle motion卧抗,畢竟從問題本身來說decision making本身就是planning的問題,無非是能做的多好鳖粟,同時要可以real-time的跑社裆。另外上層如果做的太細,那就和下面的Motion planning就沒區(qū)別了向图,這樣也就失去了通過分層結構簡化問題加快計算的初衷泳秀。
事實上抽象和分層的能力是人類能解決復雜問題的重要因素。然而要在理論上保證分層決策系統一定的完備性是困難的榄攀,因為上層考慮的是一個簡單化的決策問題嗜傅,這樣上層產生的一系列sub tasks,在下層不一定能解決, 因而從完備性的角度上下層的交互常常是必要的檩赢。就好像我老板讓我發(fā)IEEE TAC吕嘀,我覺得自己的文章對不起TAC,我就要和老板反饋,老板重新判斷后覺得還是得發(fā)偶房,那我再執(zhí)行試試看趁曼。你看這就是不同hierarchy之間的交互過程。
因此在planning領域才有了很多如何做state abstraction和refinement棕洋,以及Motion planning領域所謂的adaptive dimension的方法彰阴。事實上,就連傳統的RL也有所謂hierarchical RL的概念拍冠,畢竟RL一大半內容就是在用DP做planning....當然現在的摩登AI都是神經網絡端到端一步到位了尿这,誰還管怎么搞分層呢。