![2023人工智能機(jī)器人_第1頁](http://file4.renrendoc.com/view12/M02/37/06/wKhkGWXY0ZOAKLu8AAA07GAVHmE696.jpg)
![2023人工智能機(jī)器人_第2頁](http://file4.renrendoc.com/view12/M02/37/06/wKhkGWXY0ZOAKLu8AAA07GAVHmE6962.jpg)
![2023人工智能機(jī)器人_第3頁](http://file4.renrendoc.com/view12/M02/37/06/wKhkGWXY0ZOAKLu8AAA07GAVHmE6963.jpg)
![2023人工智能機(jī)器人_第4頁](http://file4.renrendoc.com/view12/M02/37/06/wKhkGWXY0ZOAKLu8AAA07GAVHmE6964.jpg)
![2023人工智能機(jī)器人_第5頁](http://file4.renrendoc.com/view12/M02/37/06/wKhkGWXY0ZOAKLu8AAA07GAVHmE6965.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
人工智能機(jī)器人目錄TOC\o"1-2"\h\u214541.1機(jī)器人 5288821.2機(jī)器人硬件 7319461.2.1機(jī)器人的硬件層面分類 716111.2.2感知世界 977451.2.3產(chǎn)生運(yùn)動(dòng) 12171201.3機(jī)器人學(xué)解決哪些問題 13127161.4機(jī)器人感知 15104321.4.1定位與地圖構(gòu)建 16114641.4.2其他感知類型 2225151.4.3機(jī)器人感知中的監(jiān)督學(xué)習(xí)與無監(jiān)督學(xué)習(xí) 2321711.5規(guī)劃與控制 2560421.5.1構(gòu)形空間 2591291.5.2運(yùn)動(dòng)規(guī)劃 3038181.5.3軌跡跟蹤控制 4321994規(guī)劃與策略 48282861.5.4最優(yōu)控制 485221.5.5規(guī)劃不確定的運(yùn)動(dòng) 51257821.5.6機(jī)器人學(xué)中的強(qiáng)化學(xué)習(xí) 5573831.5.7利用模型 5519579利用其他信息 5731161.5.8人類與機(jī)器人 5815631.5.9人類作為近似理性的智能體 5948481.5.10預(yù)測(cè)人類動(dòng)作 608341.5.11人類對(duì)機(jī)器人的預(yù)測(cè) 62258021.5.12人類作為黑箱智能體 6410021.5.13學(xué)習(xí)做人類期望的事情 6525131.偏好學(xué)習(xí):學(xué)習(xí)代價(jià)函數(shù) 657632.直接從模仿中學(xué)習(xí)策略 6763501.5.14其他機(jī)器人框架 70116651.5.15反應(yīng)式控制器 7076821.5.16包容架構(gòu) 71277051.5.17應(yīng)用領(lǐng)域 7424547小結(jié) 78在本文中,智能體被賦予傳感器和實(shí)體效應(yīng)器,以便它們?cè)谡鎸?shí)世界中四處走動(dòng)、完成各種任務(wù)。PAGEPAGE1388機(jī)器人機(jī)器人是通過操縱真實(shí)世界去完成任務(wù)的實(shí)體智能體。為此,它們配備了像腿、輪子、關(guān)節(jié)和夾具之類的效應(yīng)器(effector)。效應(yīng)器用于對(duì)環(huán)境施加物理力量。這時(shí),會(huì)發(fā)生一些事情:機(jī)器人的狀態(tài)可能改變(例如,一輛車旋轉(zhuǎn)車輪,促使它在路面上行進(jìn)),環(huán)境的狀態(tài)可能改變(例如,機(jī)械臂使用夾具推動(dòng)馬克杯滑過吧臺(tái)),甚至連機(jī)器人周圍的人類的狀態(tài)都可能改變(例如,外骨骼運(yùn)動(dòng)會(huì)改變?nèi)送鹊臓顟B(tài),或移動(dòng)式機(jī)器人向電梯門前進(jìn),引起人類的注意并好心地為機(jī)器人讓路,甚至幫它按下按鈕)。機(jī)器人還配備了傳感器,這使得它們能夠感知其所處的環(huán)境。目前的機(jī)器人使用各種各樣的傳感器,包括攝像頭、雷達(dá)、激光和麥克風(fēng),以便測(cè)量環(huán)境和周圍人類的狀態(tài),而陀螺儀、壓力與扭矩傳感器和加速度計(jì)則用來測(cè)量機(jī)器人自身的狀態(tài)。應(yīng)器施加正確的力,也就是能夠使?fàn)顟B(tài)向積累最多預(yù)期獎(jiǎng)勵(lì)的方向變化。最終,機(jī)器人會(huì)試圖在物理世界中完成某些任務(wù)。機(jī)器人在部分可觀測(cè)且隨機(jī)的環(huán)境中運(yùn)作:攝像頭看不到拐角背機(jī)器人需要對(duì)其進(jìn)行預(yù)測(cè)。機(jī)器人通常將其所處的環(huán)境建模為連續(xù)狀態(tài)空間(機(jī)器人的位置具有連續(xù)的坐標(biāo))和連續(xù)動(dòng)作空間(機(jī)器人發(fā)送到電動(dòng)機(jī)的電流也是以連續(xù)單位測(cè)量的)。一些機(jī)器人運(yùn)行于高維空間:汽車需要知道其自身和周圍智能體的位置、朝向和速度,機(jī)械臂有六七個(gè)可以相互獨(dú)立運(yùn)動(dòng)的關(guān)節(jié),人形機(jī)器人則具有數(shù)百個(gè)關(guān)節(jié)。機(jī)器人的學(xué)習(xí)是受約束的,因?yàn)檎鎸?shí)世界頑固地拒絕比真實(shí)時(shí)間運(yùn)行得更快。在模擬環(huán)境中,可以使用學(xué)習(xí)算法(如第22章所述的Q學(xué)習(xí))在幾小時(shí)內(nèi)從幾百萬次試驗(yàn)中學(xué)習(xí)。在真實(shí)環(huán)境中,運(yùn)行這些試驗(yàn)可能需要花掉數(shù)年,機(jī)器人也無法承擔(dān)可能導(dǎo)致?lián)p害的試驗(yàn)風(fēng)險(xiǎn)(因此也無法從中學(xué)習(xí))。因此,將從模擬環(huán)境中學(xué)到的東西轉(zhuǎn)移到真正的機(jī)器人上,也就是從模擬到現(xiàn)實(shí)人系統(tǒng)需要體現(xiàn)關(guān)于機(jī)器人的先驗(yàn)知識(shí)、物理環(huán)境和要執(zhí)行的任務(wù),以便機(jī)器人可以快速學(xué)習(xí)、安全運(yùn)行。機(jī)器人綜合了我們?cè)诒緯兴吹降脑S多概念,包括概率狀態(tài)估本文中會(huì)介紹其連續(xù)版本。機(jī)器人硬件務(wù)的傳感器和效應(yīng)器設(shè)計(jì)的依賴并不少于智能體程序。機(jī)器人的硬件層面分類當(dāng)你想到機(jī)器人時(shí),你可能會(huì)想象它有一個(gè)腦袋和兩條胳膊,用腿或輪子移動(dòng)。這種擬人機(jī)器人(anthropomorphicrobot)在電影《終結(jié)者》和動(dòng)畫《杰森一家》這樣的虛構(gòu)作品中十分流行。但真正的機(jī)器人有各種各樣的外形和大小。機(jī)械手(manipulator)只是機(jī)器手臂。它們不需要附加在機(jī)器人的身體上,可能只是被螺栓固定在桌面或地板上,就像在工廠里那樣(圖26-1a)。一些機(jī)械手(如用來組裝汽車的機(jī)械手)的載荷很大。而另一些機(jī)械手(如裝在輪椅上用于幫助運(yùn)動(dòng)障礙者的機(jī)械手,見圖26-1b)不能負(fù)重太多,但在人類環(huán)境中更安全。圖26-1 具有定制末端效應(yīng)器的工業(yè)機(jī)器人。圖片來源:Macor/123RF。(b)安裝在輪椅上的Kinova?JACO?AssistiveRobot機(jī)械臂。Kinova和JACO是Kinova股份有限公司的商標(biāo)移動(dòng)機(jī)器人(mobile robot)使用輪子、腿或螺旋槳在環(huán)境中動(dòng)。四旋翼無人機(jī)(quadcopter drone)是一種無人駕駛航空器(unmanned aerial vehicle,UAV),自主水下航行器(autonomousunderwatervehicle,AUV)則在海底漫游。許多移動(dòng)機(jī)器人(如酒店的吸塵機(jī)器人或者毛巾遞送機(jī)器人)只待在室內(nèi),并用輪子移動(dòng)。在室外,則有自主無人車(autonomous car),以及甚至能在火星上探索地形的巡視器(rover)(圖26-2)。最后,腿式機(jī)器人(leggedrobot)用于在輪子無法通行的惡劣地形行動(dòng)。它的缺點(diǎn)在于,正確地控制腿比轉(zhuǎn)動(dòng)車輪更具有挑戰(zhàn)性。其他類型的機(jī)器人包括假體機(jī)器人、外骨骼機(jī)器人、有翼機(jī)器人、蜂群機(jī)器人和全屋就是一個(gè)機(jī)器人的智能環(huán)境。圖26-2 (a)美國國家航空航天局的好奇號(hào)巡視器在火星上自拍。圖片來自美國國家航空航局。(b)Skydio無人機(jī)伴隨一家人騎行。圖片由Skydio提供感知世界傳感器是機(jī)器人與環(huán)境之間的感知接口。攝像頭之類的被動(dòng)傳感器(passivesensor)是環(huán)境的真實(shí)狀態(tài)觀察者:它們捕獲環(huán)境中的信號(hào)。如聲吶之類的主動(dòng)傳感器(activesensor)則向環(huán)境發(fā)送能量,它們依賴能量會(huì)反射回傳感器這樣的規(guī)律。主動(dòng)傳感器通常能比被動(dòng)傳感器提供更多信息,但代價(jià)是增加能耗,并面臨同時(shí)使用的多個(gè)被動(dòng)傳感器互相干擾的風(fēng)險(xiǎn)。我們也可以根據(jù)傳感器是用于感知環(huán)境、感知機(jī)器人位置還是感知機(jī)器人的內(nèi)部配置對(duì)其分類。測(cè)距儀(rangefinder)是用于測(cè)量與周圍物體距離的傳感器。聲吶(sonar)波就會(huì)回到傳感器。返回信號(hào)的強(qiáng)度和時(shí)間表明與周圍物體的距離。聲吶是最受歡迎的自主水下航行器,在早期室內(nèi)機(jī)器人中也十分流行。立體視覺(stereovision)(見25.6節(jié))依靠多個(gè)相機(jī)從稍有不同的視角對(duì)環(huán)境進(jìn)行成像,分析圖像中的視差來計(jì)算與周圍物體的距離。對(duì)地面移動(dòng)機(jī)器人來說,聲吶和立體視覺現(xiàn)在已很少使用,因?yàn)樗鼈兊木炔粔蚩煽?。Kinect是一種流行的低成本傳感器,它結(jié)合了相機(jī)和結(jié)構(gòu)光投影儀,能夠?qū)⒕W(wǎng)格線的形狀投射到場(chǎng)景中。攝像頭觀測(cè)網(wǎng)格的彎曲情況,就可以將場(chǎng)景中物體的形狀反饋給機(jī)器人。根據(jù)需要,這種投影可以是紅外光,以使其不與其他傳感器(如人眼)發(fā)生干擾。大多數(shù)地面機(jī)器人現(xiàn)在配備有主動(dòng)光學(xué)測(cè)距儀。像聲吶傳感器一樣,光學(xué)距離傳感器發(fā)射主動(dòng)信號(hào)(光)并測(cè)量信號(hào)返回傳感器的時(shí)間。圖26-3a展示了一臺(tái)飛行時(shí)間照相機(jī)(time-of-flightcamera)。這臺(tái)照相機(jī)能以最高60幀/秒的速度獲取圖26-3b所示的距離成像。無人汽車常常使用掃描激光雷達(dá)(scanning lidar),lidar是light detection ranging(光探測(cè)與測(cè)距)的縮寫。這是一種發(fā)射激光束并感知反射光束的主動(dòng)傳感器,它能夠在100m處給出精度小于1厘米的距離測(cè)量。它使用復(fù)雜精密的鏡子或旋轉(zhuǎn)機(jī)構(gòu)來對(duì)環(huán)境掃射光束,并繪制地圖。掃描光雷達(dá)在長距離下的性能通常好于飛行時(shí)間照相機(jī),在明亮的白天也有較好的性能。圖26-3 (a)飛行時(shí)間照相機(jī)。圖片由MesaImaging股份有限公司提供。(b)用該照相機(jī)得到的三維距離成像。這種距離成像使機(jī)器人檢測(cè)附近的障礙物和物體成為可能。圖片由WillowGarage有限責(zé)任公司提供雷達(dá)(radar)通常是航空器(自主或非自主)最青睞的距離探測(cè)傳感器。雷達(dá)傳感器可以探測(cè)以千米計(jì)的距離,與光學(xué)傳感器相比,它的優(yōu)勢(shì)在于能夠穿透云霧。而近端距離探測(cè)則有觸覺傳感器(tactilesensor),如觸須傳感器、碰撞板傳感器和觸敏表皮傳感器。這些傳感器基于物理接觸測(cè)量距離,僅用于測(cè)量距離機(jī)器人非常近的物體。第二個(gè)重要的類別是位置傳感器(locationsensor)。許多位置傳感器使用距離測(cè)量技術(shù)作為確定距離的首要組成部分。在室外,全球定位系統(tǒng)(globalpositioningsystem,GPS)是定位問題最常見的解決方案。GPS測(cè)量與發(fā)射脈沖信號(hào)的衛(wèi)星的距離。現(xiàn)在,軌道上有31顆正常運(yùn)行的衛(wèi)星,并有24顆衛(wèi)星。是俄羅斯的衛(wèi)星定位系統(tǒng)。GPS接收器可以通過分析相移來解算其與衛(wèi)星的距離。通過對(duì)多個(gè)衛(wèi)星使用三角定位法,GPS接收器可以確定其在地球上的絕對(duì)位置,精度可以到米。差分GPS(differential GPS)需要用到已知其位置的另一個(gè)地面接收器,在理想條件下可以提供毫米級(jí)定位。遺憾的是,GPS無法在室內(nèi)或水下工作。室內(nèi)定位通常通過在環(huán)境中的已知位置增設(shè)信標(biāo)來實(shí)現(xiàn)。許多室內(nèi)環(huán)境布滿了無線基站,這有助于機(jī)器人通過分析無線信號(hào)來定位。在水下,主動(dòng)聲吶信標(biāo)可以提供位置感知,它使用聲音告知AUV與信標(biāo)的相對(duì)距離。第三個(gè)重要的類別是本體感受傳感器(proprioceptivesensor),它將自身運(yùn)動(dòng)告知機(jī)器人。要測(cè)量機(jī)器人關(guān)節(jié)的確切狀態(tài),電動(dòng)機(jī)通常配有軸編碼器(shaft encoder),它能夠精確測(cè)量軸的運(yùn)動(dòng)角度。在機(jī)臂上,軸編碼器有助于追蹤關(guān)節(jié)位置。在移動(dòng)機(jī)器人上,軸編碼器報(bào)告輪子的旋轉(zhuǎn)以便于計(jì)程(odometry),也就是測(cè)量行進(jìn)距離。遺憾的是,輪子會(huì)漂移并打滑,因此計(jì)程只在短距離移動(dòng)時(shí)才比較精確。像風(fēng)力、洋流這樣的外力會(huì)增加位置的不確定性。慣性傳感器(inertialsensor),如陀螺儀等,通過依靠質(zhì)量對(duì)速度變化的抗性來減小這種不確定性。機(jī)器人狀態(tài)的其他重要方面使用力傳感器(forcesensor)和扭矩傳感器(torquesensor)來測(cè)量。當(dāng)機(jī)器人處理確切尺寸未知的易碎物體時(shí),這些傳感器是不可或缺的。想象一噸重的機(jī)械臂在擰緊燈泡。它很容易就會(huì)用力過猛而弄碎燈泡。力傳感器使機(jī)器人能夠感知它用了多大的力來握燈泡,扭矩傳感器則使機(jī)器人能夠感知它用了多大的力來旋轉(zhuǎn)。高級(jí)的傳感器可以在3個(gè)平移方向和3個(gè)旋轉(zhuǎn)方向上測(cè)量力的大小。它們能夠以每秒幾百次的頻率進(jìn)行測(cè)量,因此,機(jī)器人可以快速檢測(cè)到不希望出現(xiàn)的力并在捏碎燈泡前對(duì)其動(dòng)作進(jìn)行糾正。不過,為機(jī)器人配備高端傳感器和足以監(jiān)控它們的計(jì)算能力則又是一個(gè)難題。產(chǎn)生運(yùn)動(dòng)使效應(yīng)器運(yùn)動(dòng)的機(jī)械裝置叫作執(zhí)行器(actuator),其中包括變速箱、齒輪、電纜和鏈接。最常見的執(zhí)行器是電動(dòng)執(zhí)行器(electricactuator),它使用電力來旋轉(zhuǎn)電動(dòng)機(jī)。它們大多用于需要旋轉(zhuǎn)運(yùn)動(dòng)的系統(tǒng),如機(jī)械臂的關(guān)節(jié)。液壓執(zhí)行器(hydraulic actuator)使用加壓液壓液(如油或水),而氣動(dòng)執(zhí)行器(pneumatic actuator)則使用壓縮氣體來產(chǎn)生機(jī)械運(yùn)動(dòng)。執(zhí)行器常用于移動(dòng)關(guān)節(jié),關(guān)節(jié)則連在機(jī)器人固定的主體或其他活動(dòng)連接物上。手臂和腿就有這樣的關(guān)節(jié)。旋轉(zhuǎn)關(guān)節(jié)(revolute joint)的個(gè)連接物相對(duì)于另一個(gè)連接物旋轉(zhuǎn)。而平移關(guān)節(jié)(prismaticjoint)的一個(gè)連接物沿著另一個(gè)連接物滑動(dòng)。這些都是單軸關(guān)節(jié)(只有一個(gè)運(yùn)動(dòng)軸)。其他類型的關(guān)節(jié)包括球形關(guān)節(jié)、柱狀關(guān)節(jié)和平面關(guān)節(jié),這些都屬于多軸關(guān)節(jié)。機(jī)器人使用夾具與環(huán)境中的物體交互。最簡單的夾具是平行鉗夾具(paralleljawgripper),它有兩根“手指”和一個(gè)執(zhí)行器,該執(zhí)行器能夠合攏兩根手指來抓住物體。由于結(jié)構(gòu)簡單,這種效應(yīng)器讓人又愛又恨。三指夾具提供稍高的靈活性,卻不失簡潔性。所有夾具中最復(fù)雜的是仿人(擬人)手。例如,Shadow靈巧手(ShadowDexterousHand)總共有20個(gè)執(zhí)行器。這為復(fù)雜的操作(包括掌上動(dòng)作操控,想想拿起手機(jī)并在手中對(duì)其進(jìn)行旋轉(zhuǎn),使其右端向上)提供了更多的自由度,但這種自由度是有代價(jià)的——學(xué)會(huì)控制這些復(fù)雜的夾具更困難。機(jī)器人學(xué)解決哪些問題我們已經(jīng)知道機(jī)器人硬件是什么樣子了,現(xiàn)在可以考慮驅(qū)動(dòng)這些硬件以實(shí)現(xiàn)我們的目標(biāo)的智能體程序了。首先,我們需要確定這個(gè)智能體的計(jì)算框架。我們已經(jīng)討論了確定性環(huán)境下的搜索、隨機(jī)但完全可觀測(cè)環(huán)境下的MDP、部分可觀測(cè)環(huán)境下的POMDP以及在智能體并非單獨(dú)行動(dòng)情形下的博弈。給定一個(gè)計(jì)算框架,我們需要實(shí)現(xiàn)其要素——獎(jiǎng)勵(lì)或效用函數(shù)、狀態(tài)、動(dòng)作、觀測(cè)空間等。我們已經(jīng)講過,機(jī)器人學(xué)問題是非確定性的、部分可觀測(cè)的以及多智能體的。使用第18章的博弈論概念,我們可以看到,有時(shí)候智能體之間是合作的,而有時(shí)候是競(jìng)爭(zhēng)的。在只能容納一個(gè)智能體先通過的狹窄走廊中,機(jī)器人和人類會(huì)因?yàn)槎枷氪_保不會(huì)撞到對(duì)方而協(xié)作。但在一些情況下,它們也可能有一些競(jìng)爭(zhēng),以更快到達(dá)目的地。如果機(jī)器人太過于禮貌而不停讓路,它就可能卡在擁擠的環(huán)境中而無法到達(dá)目的地。因此,當(dāng)機(jī)器人在已知環(huán)境中單獨(dú)行動(dòng)時(shí),它們要解決的問題可以形式化為MDP;當(dāng)它們?nèi)笔Я四承┬畔r(shí),問題就會(huì)變成POMDP;當(dāng)它們?cè)谌祟惛浇袆?dòng)時(shí),問題常??梢杂貌┺膩硇问交?。在這種形式化下,機(jī)器人的獎(jiǎng)勵(lì)是什么?通常,機(jī)器人的動(dòng)作是為人類服務(wù),例如,為醫(yī)院的患者送餐是為了得到患者的獎(jiǎng)勵(lì),而非機(jī)器人自身的獎(jiǎng)勵(lì)。在大多數(shù)機(jī)器人學(xué)的問題設(shè)定下,即使機(jī)器人設(shè)計(jì)者可能試著確定了足夠好的代理獎(jiǎng)勵(lì)函數(shù),真正的獎(jiǎng)勵(lì)函數(shù)也隱藏在機(jī)器人試圖幫助的用戶之中。機(jī)器人要么需要理解用戶的需求,要么需要依賴工程師確定對(duì)用戶需求的估計(jì)。對(duì)于機(jī)器人的動(dòng)作、狀態(tài)和觀測(cè)空間,最常見的形式是,觀測(cè)就是原始的傳感器反饋(例如,來自攝像頭的圖像,或激光雷達(dá)收到的反射的激光),動(dòng)作就是發(fā)送到電動(dòng)機(jī)的原始電流,而狀態(tài)就是機(jī)器人決策所需的知識(shí)。這就意味著,在底層感知與電動(dòng)機(jī)控制和機(jī)器人要做出的頂層規(guī)劃之間,存在巨大的鴻溝。要填平這個(gè)鴻溝,機(jī)器人科學(xué)家分離問題的不同層面以對(duì)其進(jìn)行簡化。例如,我們知道,當(dāng)我們恰當(dāng)?shù)厍蠼釶OMDP時(shí),感知與動(dòng)作會(huì)進(jìn)行交互:感知告知智能體哪些動(dòng)作有道理,而當(dāng)智能體采取動(dòng)作收集到離感知,消耗掉感知的輸出并假裝自己在未來不會(huì)再收集到任何新信息。另外,我們還需要分層規(guī)劃,因?yàn)橄瘛叭タХ瑞^”這樣的頂層目標(biāo)與“旋轉(zhuǎn)主軸1°”這樣的電動(dòng)機(jī)指令相去甚遠(yuǎn)。在機(jī)器人學(xué)中,我們往往需要3級(jí)層次。任務(wù)規(guī)劃(taskplanning)層級(jí)為高層級(jí)動(dòng)作確定規(guī)劃或策略,有時(shí)也稱為原始動(dòng)作或子目標(biāo),如移動(dòng)到門口、打開門、走到電梯、按下按鈕等。隨后的運(yùn)動(dòng)規(guī)劃(motionplanning)層級(jí)負(fù)責(zé)找到使機(jī)器人從一個(gè)點(diǎn)到另一個(gè)點(diǎn)的路徑,完成每個(gè)子目標(biāo)。最后,控制(control)層級(jí)用于使用機(jī)器人的執(zhí)行器完成規(guī)劃的運(yùn)動(dòng)。由于任務(wù)規(guī)劃層級(jí)通常定義在離散的狀態(tài)和動(dòng)作之上,因此本文將主要介紹運(yùn)動(dòng)規(guī)劃和控制。分別地,偏好學(xué)習(xí)(preferencelearning)負(fù)責(zé)估計(jì)最終用戶的目標(biāo),而人類預(yù)測(cè)(peopleprediction)則用于預(yù)測(cè)機(jī)器人環(huán)境中其他人類的動(dòng)作。它們一同確定機(jī)器人的行為。的迫切需要:同時(shí)進(jìn)行運(yùn)動(dòng)規(guī)劃和控制,同時(shí)進(jìn)行任務(wù)規(guī)劃和運(yùn)動(dòng)規(guī)人學(xué)注重在各個(gè)領(lǐng)域取得進(jìn)展,并在進(jìn)展之上實(shí)現(xiàn)更好的整合。機(jī)器人感知感知是機(jī)器人將傳感器測(cè)得的數(shù)據(jù)映射到環(huán)境的內(nèi)部表示的過程。這一過程用到第25章講述的很多計(jì)算機(jī)視覺技術(shù)。但機(jī)器人學(xué)的感知還必須處理其他類型的傳感器,如光雷達(dá)和觸覺傳感器。感知很難,因?yàn)閭鞲衅饔性肼?,而環(huán)境是部分可觀測(cè)的、不可預(yù)測(cè)的,并且往往是動(dòng)態(tài)的。也就是說,機(jī)器人面臨著14.2節(jié)所述的狀態(tài)估計(jì)(或?yàn)V波)的所有問題。通常來說,機(jī)器人的良好內(nèi)部表示有3個(gè)性質(zhì)。它們具有能使機(jī)器人進(jìn)行良好決策的足夠信息。它們是結(jié)構(gòu)化的,進(jìn)而可以高效更新。態(tài)變量。在第14章,我們知道卡爾曼濾波器、HMM以及動(dòng)態(tài)貝葉斯網(wǎng)絡(luò)可以表示轉(zhuǎn)移以及部分可觀測(cè)環(huán)境的傳感器模型,我們也闡述了更新狀態(tài)(也就是環(huán)境狀態(tài)變量的后驗(yàn)分布)這一過程的動(dòng)態(tài)貝葉斯網(wǎng)絡(luò)模型在第14章進(jìn)行了展示。對(duì)于機(jī)器人學(xué)問題,我們將機(jī)器人自身的過往動(dòng)作作為模型中的已觀測(cè)變量。圖26-4展示了本文所使用的記法:Xt是環(huán)境(包括機(jī)器人在內(nèi))在時(shí)刻t的狀態(tài),zt是在時(shí)刻t接收到的觀測(cè)值,而At是在接收到觀測(cè)值后采取的動(dòng)作。圖26-4 機(jī)器人感知可以看作動(dòng)作和測(cè)量序列的時(shí)序推斷,如本動(dòng)態(tài)決策網(wǎng)絡(luò)所示我們想從當(dāng)前信念狀態(tài)和新觀測(cè)計(jì)算新的信念狀態(tài)。我們?cè)?4.2節(jié)做過同樣的事,但此處有兩個(gè)區(qū)別:們修改14.2.1節(jié)的遞歸濾波方程[式(14-5)]來使用積分而非求和:(26-1)該式表明狀態(tài)變量X在時(shí)刻t+1的后驗(yàn)概率是由前一時(shí)刻的對(duì)應(yīng)估計(jì)遞歸算出的。這個(gè)計(jì)算需要先前的動(dòng)作at和當(dāng)前的傳感器測(cè)量。如,如果我們的目標(biāo)是開發(fā)足球機(jī)器人,可能包含足球與機(jī)器人的相對(duì)位置。后驗(yàn)概率是所有刻畫了我們從已有傳感器測(cè)和控制所得到的信息的狀態(tài)的概率分布。式(26-1)告訴我們?nèi)绾芜f歸地估計(jì)這一位置:通過逐漸地加入傳感器測(cè)量(如攝像頭圖像)和機(jī)器人運(yùn)動(dòng)指令。概率稱為轉(zhuǎn)移模型或運(yùn)動(dòng)模型(motion而是傳感器模型。定位與地圖構(gòu)建定位(localization)是找出東西在哪里的問題,包括找到機(jī)器人本機(jī)器人已知該環(huán)境的精確地圖。(圖26-7就展示了這樣的一種地圖。)這種移動(dòng)機(jī)器人的位姿使用它的兩個(gè)值為x和y的笛卡兒坐標(biāo)及其值為的朝向定義,如圖26-5a所示。如果我們將其寫作向量中的3個(gè)值,則任意特定狀態(tài)可以由給出。這些東西目前看起來不錯(cuò)。圖26-5(a)移動(dòng)機(jī)器人的簡化運(yùn)動(dòng)模型。機(jī)器人用圓表示,圓內(nèi)的半徑線表示機(jī)器人的前進(jìn)方向。狀態(tài)xt包括位置和方向角。新狀態(tài)xt+1通過位置的更新和方向的更新取得。在處還顯示了一個(gè)在時(shí)刻t觀測(cè)到的地標(biāo)。(b)距離掃描傳感器模型。對(duì)于給定的距離掃描 ,我們展示了兩個(gè)可能的機(jī)器人位姿。左邊的位姿生成該距離掃描的可能遠(yuǎn)大于右邊在運(yùn)動(dòng)學(xué)近似中,每個(gè)動(dòng)作包含兩個(gè)“瞬時(shí)”速度——平移速度vt和旋轉(zhuǎn)速度。對(duì)于很小的時(shí)間間隔,這種機(jī)器人的一個(gè)粗略的確定運(yùn)動(dòng)模型由下式給出:符號(hào)表示確定性狀態(tài)預(yù)測(cè)。當(dāng)然,真實(shí)的機(jī)器人在某種程度上說不可預(yù)測(cè)。這通常使用均值為、協(xié)方差為的高斯分布建模。(附錄A介紹了數(shù)學(xué)定義。)這個(gè)概率分布是機(jī)器人的運(yùn)動(dòng)模型。它對(duì)運(yùn)動(dòng)at對(duì)機(jī)器人位置的影響建模。接下來,我們需要一個(gè)傳感器模型。我們要考慮兩種傳感器模型。第一種模型假設(shè)傳感器探測(cè)的是環(huán)境中穩(wěn)定的、可辨認(rèn)的地標(biāo)(landmark)。機(jī)器人報(bào)告每個(gè)地標(biāo)的距離和方位。假設(shè)機(jī)器人的狀態(tài)為,它感知到一個(gè)位置已知為的地標(biāo)。在沒有噪聲的情況下,距離和方位的預(yù)測(cè)可以用簡單的幾何學(xué)計(jì)算(見圖26-5a):同樣,噪聲會(huì)使測(cè)量失真。為簡單起見,假設(shè)噪聲服從協(xié)方差為的高斯分布,則傳感器模型為距離傳感器的傳感器陣列(sensorarray)使用有所不同的傳感器模型,每個(gè)傳感器與機(jī)器人有固定的方位角。這些傳感器產(chǎn)生一個(gè)距離值向量。給定位姿xt,令為xt中沿著第j個(gè)波束方向算得的與障礙物的最近距離。如前所述,它會(huì)被高斯噪聲干擾。通常,我們假設(shè)不同波束的誤差是獨(dú)立同分布的,因此有圖26-5b展示了一個(gè)例子,它包含四波束距離掃描和兩個(gè)可能的機(jī)器人位姿,其中一個(gè)很有可能產(chǎn)生了觀測(cè)到的掃描結(jié)果,而另一個(gè)則沒有。比較距離掃描模型與地標(biāo)模型,我們看到距離掃描模型好在不需要在呈現(xiàn)距離掃描結(jié)果前識(shí)別地標(biāo)。實(shí)際上,在圖26-5b中,機(jī)器人面對(duì)一面沒有特征的墻。但是,如果有可見的、可識(shí)別的地標(biāo),這些地標(biāo)就能很快給出定位。14.4節(jié)描述了卡爾曼濾波器,它將信念狀態(tài)用單個(gè)多元高斯分布表示,而粒子濾波器則用一系列對(duì)應(yīng)狀態(tài)的粒子表示信念狀態(tài)。大多數(shù)定位算法使用其中一個(gè)來表示機(jī)器人的信念。使用粒子濾波的定位稱為蒙特卡羅定位(MonteCarlolocalization,MCL)。MCL算法是圖14-17中的粒子濾波算法的實(shí)例。我們只需提供合適的運(yùn)動(dòng)模型和傳感器模型即可。圖26-6展示了其中的一個(gè)版本,它使用距離掃描傳感器模型。算法的操作如圖26-7所示,其中機(jī)器人試圖找出它在辦公大樓中的位置。第一張圖片中,根據(jù)先驗(yàn)概率,粒子均勻分布,代表機(jī)器人位置的全局不確定性。第二張圖片中,第一組測(cè)量值抵達(dá),粒子在高后驗(yàn)信念的區(qū)域堆積。第三張圖中,充足的測(cè)量數(shù)據(jù)使粒子全部位于一個(gè)位置。圖26-6 使用有獨(dú)立噪聲的距離掃描傳感器模型的蒙特卡羅定位算法圖26-7 蒙特卡羅定位,這是一種用于移動(dòng)機(jī)器人定位的粒子濾波算法。(a)起初,全局具不確定性。(b)在導(dǎo)航到(對(duì)稱的)走廊后形成近似雙峰的不確定性。(c)在進(jìn)入到特定的房間后形成單峰不確定性高斯分布的后驗(yàn)概率。高斯分布的均值為,協(xié)方差為。高斯信念的主要問題是它僅在線性運(yùn)動(dòng)模型f和線性測(cè)量模型h下閉合。對(duì)于非線性的f和h,更新濾波器的結(jié)果通常不符合高斯分布。因此,使用卡爾曼濾波器的定位算法線性化了運(yùn)動(dòng)模型和傳感器模型。線性化是用線性函數(shù)對(duì)非線性函數(shù)的局部近似。圖26-8展示了線性化一個(gè)(一維)機(jī)器人運(yùn)動(dòng)模型的概念。左圖描述了非線性運(yùn)動(dòng)模型(動(dòng)作變量at在圖中省略,因?yàn)樗挥绊懢€性化)。右圖函數(shù)被近似為線性函數(shù)。該線性函數(shù)選擇了f在處的切線,即我們?cè)跁r(shí)刻t的平均狀態(tài)估計(jì)。這種線性化叫作一階泰勒展開(Taylorexpansion)。通過泰勒展開來線性化f和h的卡爾曼濾波器叫作擴(kuò)展卡爾曼濾波器(extendedKalmanfilter,EKF)。圖26-9展示了運(yùn)行擴(kuò)展卡爾曼濾波定位算法的機(jī)器人的一系列估計(jì)。圖26-8 線性化運(yùn)動(dòng)模型的一維圖示:(a)函數(shù)f以及均值和協(xié)方差區(qū)間(基于)在時(shí)刻的投影。(b)線性化后的函數(shù)表示f在處的切線。均值的投影是正確的,而協(xié)方差的投則與不同圖26-9 使用擴(kuò)展卡爾曼濾波器的定位。機(jī)器人沿直線運(yùn)動(dòng)。在行進(jìn)中,它位置的不確定性加,如誤差橢圓所示。當(dāng)它觀測(cè)到位置已知的地標(biāo)時(shí),不確定性減小當(dāng)機(jī)器人運(yùn)動(dòng)時(shí),對(duì)其位置估計(jì)的不確定性增加,如誤差橢圓所在看不到地標(biāo)后誤差又增大。如果地標(biāo)很容易識(shí)別,則EKF算法效果很好。否則,后驗(yàn)概率分布可能會(huì)是多峰的,如圖26-7b所示。需要知道地標(biāo)的信息是圖15-3討論過的數(shù)據(jù)關(guān)聯(lián)問題的一個(gè)例子。在某些情況下,環(huán)境地圖不可取得。因此機(jī)器人必須獲取地圖。這有點(diǎn)像先有雞還是先有蛋的問題:機(jī)器人必須根據(jù)它不太了解的地圖導(dǎo)航,同時(shí)還要在不知道自己的確切位置時(shí)構(gòu)建地圖。這一問題對(duì)于很多機(jī)器人應(yīng)用很重要,并且得到了廣泛的研究。這一領(lǐng)域叫作同時(shí)定位與地圖構(gòu)建(simultaneouslocalizationandmapping,SLAM)。許多不同的概率方法解決了SLAM問題,包括上述的擴(kuò)展卡爾曼濾波器。使用EFK很直接:只需擴(kuò)展?fàn)顟B(tài)向量,納入環(huán)境中地標(biāo)的位置即可。幸運(yùn)的是,EKF更新規(guī)模是二次增長的,因此對(duì)小型地圖來說(如幾百個(gè)地標(biāo)),得,類似于第13章討論的貝葉斯網(wǎng)絡(luò)推斷。期望最大化也常用于SLAM。其他感知類型并非所有的機(jī)器人感知都涉及定位或地圖構(gòu)建。機(jī)器人也感知溫布,以及描述測(cè)量數(shù)據(jù)與狀態(tài)變量關(guān)系的傳感器模型。將機(jī)器人規(guī)劃為反應(yīng)型智能體而無須顯式地對(duì)狀態(tài)的概率分布進(jìn)行推理也是可以的,我們將在26.9.1節(jié)對(duì)此進(jìn)行介紹。技術(shù)在許多困難的問題(如定位和地圖構(gòu)建)上的表現(xiàn)超過了其他方實(shí)踐。機(jī)器人感知中的監(jiān)督學(xué)習(xí)與無監(jiān)督學(xué)習(xí)機(jī)器學(xué)習(xí)在機(jī)器人感知中扮演著重要的角色,當(dāng)最佳的內(nèi)部表示未知時(shí)尤其如此。一個(gè)常見的方法是用無監(jiān)督機(jī)器學(xué)習(xí)方法將高維傳感器流映射到低維空間(見第19章)。這種方法稱為低維嵌入(low-dimensional embedding)。機(jī)器學(xué)習(xí)使從數(shù)據(jù)中學(xué)習(xí)傳感器模型和運(yùn)模型,并同時(shí)發(fā)現(xiàn)合適的內(nèi)部表示成為可能。不會(huì)認(rèn)為他們的臉突然變綠了。我們的感知快速地適應(yīng)了新的光照條件,我們的大腦忽略了這種不同。適應(yīng)性感知技術(shù)使機(jī)器人能夠根據(jù)這種變化進(jìn)行調(diào)節(jié)。圖26-10展示了一個(gè)例子,它來自自動(dòng)駕駛領(lǐng)域。此處,一輛無人地面車輛的分類器適應(yīng)了“可行駛表面”的概念。它的原理是什么?機(jī)器人使用激光為分類器提供機(jī)器人面前的一小片區(qū)域。如果這片區(qū)域被激光測(cè)距掃描視為平整的,則它就用作“可行駛表面”概念的訓(xùn)練正樣本。類似于第20章討論的EM算法的混合高斯技術(shù)隨后被訓(xùn)練用于識(shí)別這一小塊樣本的特定顏色和紋理系數(shù)。圖26-10中的圖像是對(duì)整個(gè)圖像應(yīng)用這種分類器的結(jié)果。圖26-10 使用適應(yīng)性視覺取得的一系列“可行駛表面”分類。(a)只有路面被分類為可行駛的(粉色區(qū)域)。藍(lán)色的V形線表示車輛的行駛方向。(b)分草地分類為可行駛的。(c)車輛更新了它的可行駛表面模型,以將草地視作路面。圖片由SebastianThrun提供使機(jī)器人自己收集訓(xùn)練數(shù)據(jù)(和標(biāo)簽)的方法叫作自監(jiān)督(self-supervised)。這個(gè)例子中,機(jī)器人使用機(jī)器學(xué)習(xí)來讓對(duì)地形分類很有效的短距傳感器變得能夠看得更遠(yuǎn)。這就使機(jī)器人能開得更快,只在傳感器模型表明此處有需要用短距傳感器更仔細(xì)地檢查的地形時(shí)才減速。規(guī)劃與控制機(jī)器人的思考最終會(huì)落實(shí)到?jīng)Q定如何移動(dòng),也就是從抽象的任務(wù)層級(jí)一直落實(shí)到發(fā)送到電動(dòng)機(jī)的電流。本節(jié)中,為簡化問題,我們假設(shè)感知(以及預(yù)測(cè),如果有必要)已經(jīng)給定,那么世界變?yōu)榭捎^測(cè)的。我們還假設(shè)世界具有確定性的轉(zhuǎn)移(動(dòng)態(tài))。我們先將運(yùn)動(dòng)從控制中分離。我們將路徑定義為機(jī)器人(或機(jī)器人部件,如手臂)將遵循的幾何空間中的一系列點(diǎn)。這涉及第3章的概念,但此處我們的意思是空間中的一系列點(diǎn),而非一系列離散動(dòng)作。找出良好路徑的任務(wù)叫作運(yùn)動(dòng)規(guī)劃。有了路徑以后,我們執(zhí)行一個(gè)動(dòng)作序列來跟蹤這條路徑稱為軌跡跟蹤控制(trajectorytrackingcontrol)。一條軌跡是一條路徑中每個(gè)點(diǎn)具有對(duì)應(yīng)時(shí)間的路徑。一條路徑只會(huì)說“從A到B到C”之類的東西,而一條軌跡則會(huì)說“從A開始,用1秒到達(dá)B,再用1.5秒到達(dá)C”,以此類推。構(gòu)形空間假設(shè)一個(gè)簡單的機(jī)器人R的形狀為直角三角形,如圖26-11左下角的淡紫色三角形所示。機(jī)器人需要規(guī)劃路徑來躲避一個(gè)矩形障礙物O。機(jī)器人在其中移動(dòng)的空間叫作工作空間(workspace)。這個(gè)機(jī)器人可以在xy平面朝任意方向移動(dòng),但不能旋轉(zhuǎn)。圖26-11a展示了機(jī)器人的5個(gè)可能位置(用虛線表示),它們都與障礙物盡可能地接近。圖26-11 一個(gè)可以平移的簡單機(jī)器人,它需要躲避矩形障礙物。(a)工作空間,(b)構(gòu)形間機(jī)器人的身體可以用點(diǎn)(x,y)或點(diǎn)(x,y,z)(對(duì)三維空間機(jī)器人來說)的點(diǎn)集表示,障礙物也一樣。在這種表示之下,躲避障礙物意味著機(jī)器人上的點(diǎn)不與障礙物上的任何點(diǎn)重疊。運(yùn)動(dòng)規(guī)劃需要在點(diǎn)集上進(jìn)行運(yùn)算,這是很復(fù)雜且費(fèi)時(shí)的。我們可以用一種表示方法來簡化計(jì)算,其中用一個(gè)抽象多維空間中的點(diǎn)表示所有構(gòu)成機(jī)器人的點(diǎn),我們稱之為構(gòu)形空間(configurationspace),或C空間(C-space)。思路是,構(gòu)成機(jī)器人的點(diǎn)集是可以計(jì)算的,只要我們知道機(jī)器人的基本尺寸數(shù)據(jù)(對(duì)這里的三角形機(jī)器人來說,三邊的長度就可以了)以及機(jī)器人的當(dāng)前位姿向。對(duì)這里的三角形機(jī)器人來說,二維C空間就足夠了:如果我們知道機(jī)器人上某個(gè)點(diǎn)的(x,y)坐標(biāo)(這里用它的直角頂點(diǎn)),就可以算出三角形的所有其他點(diǎn)的位置(因?yàn)槲覀冎廊切蔚拇笮『托螤?,且三角形不能旋轉(zhuǎn))。在圖26-11的左下角,淡紫色三角形可以用構(gòu)形(0, 0)示。如果我們改變規(guī)則,使機(jī)器人可以旋轉(zhuǎn),則我們需要3個(gè)維度——,以便于計(jì)算每個(gè)點(diǎn)的位置。這里的是機(jī)器人在平面上的旋角度。如果機(jī)器人具有拉伸自己的能力,能夠根據(jù)縮放因子s均勻地變,則C空間就會(huì)有4個(gè)維度,?,F(xiàn)在我們僅使用簡單的二維C空間,且機(jī)器人不可旋轉(zhuǎn)。接下來的任務(wù)是估計(jì)C空間中障礙物所在的點(diǎn)的位置。考慮圖26-11左圖所示的5個(gè)虛線三角形,注意每個(gè)三角形中直角頂點(diǎn)的位置。然后想象三角形能夠滑動(dòng)的所有位置。顯然,直角頂點(diǎn)不能進(jìn)入障礙物內(nèi)部,也不可能比圖示的5個(gè)虛線三角形中的頂點(diǎn)更接近障礙物。因此,你可以發(fā)現(xiàn)直角頂點(diǎn)無法到達(dá)的區(qū)域(也就是C空間障礙物)就是圖26-11右圖所示的五邊形,用Cobs表示。在日常語言中,我們提及機(jī)器人所面對(duì)的障礙物時(shí),指的是桌子、椅子或者墻。但數(shù)學(xué)概念稍微簡單一點(diǎn),前提是我們將這些障礙物想象成恰好具有各個(gè)不連通分量的單個(gè)“障礙物”。大體上來說,C空間障礙物就是C中所有點(diǎn)q的集合,使得如果將機(jī)器人放置于這個(gè)構(gòu)形中,其工作空間幾何位置就會(huì)與工作空間中的障礙物位置相交。令工作空間中的障礙物為點(diǎn)集O,并令在構(gòu)形q的點(diǎn)集為,則C空間障礙物定義為且且自由空間(freespace)為對(duì)有活動(dòng)部件的機(jī)器人來說,C空間則更有趣??紤]圖26-12a所示的二連桿機(jī)械臂。它被用螺栓固定在桌子上,因此基座不會(huì)移動(dòng),但它的手臂有兩個(gè)獨(dú)立運(yùn)動(dòng)的關(guān)節(jié)——我們稱之為自由度(degree offreedom,DOF)?;顒?dòng)關(guān)節(jié)改變了肘部、夾具和手臂上所有點(diǎn)的(x, 坐標(biāo)。手臂的構(gòu)形空間是二維的,即,其中是肩關(guān)節(jié)的角度,則是肘關(guān)節(jié)的角度。圖26-12 (a)有兩個(gè)自由度的機(jī)械臂的工作空間表示。工作空間是一個(gè)盒子,其中扁平障物懸掛在天花板上。(b)同一個(gè)機(jī)器人的構(gòu)形空間。只有空間中的白色區(qū)域是沒有碰撞的構(gòu)形。圖中的點(diǎn)對(duì)應(yīng)左圖所示的機(jī)器人構(gòu)形知道我們的二連桿機(jī)械臂的構(gòu)形意味著我們可以通過簡單的三角幾何確定機(jī)械臂上每個(gè)點(diǎn)的位置。一般來說,正向運(yùn)動(dòng)學(xué)(forwardkinematics)映射是函數(shù)它以一個(gè)構(gòu)形作為輸入并輸出該構(gòu)形下機(jī)器人上特定點(diǎn)b機(jī)器人的終端效應(yīng)器EE的正向運(yùn)動(dòng)學(xué)映射特別有用。特定構(gòu)形q下機(jī)器人上的所有點(diǎn)的集合使用表示:而反向問題是將機(jī)器人上的點(diǎn)需要處于的位置映射到機(jī)器人需要處于的構(gòu)形。這稱為逆向運(yùn)動(dòng)學(xué)(inversekinematics):受限于約束有時(shí)逆向運(yùn)動(dòng)學(xué)映射不僅需要輸入位置,還需要輸入所需的朝向。例如,當(dāng)我們想讓機(jī)械手抓住一個(gè)物體時(shí),我們可以算出需要其夾具所處的位置和朝向,并使用逆向運(yùn)動(dòng)學(xué)來確定該機(jī)器人的目標(biāo)構(gòu)形。隨后規(guī)劃器需要找出在不觸碰障礙物的情況下使機(jī)器人從當(dāng)前構(gòu)形變成目標(biāo)構(gòu)形的方法。工作空間中的障礙物常被描述為簡單的幾何形式——特別是在傾向于關(guān)注于多邊形障礙物的機(jī)器人學(xué)教科書中。但這些障礙物在構(gòu)形空間中是什么樣子?對(duì)二連桿機(jī)械臂來說,工作空間中的簡單障礙物(如一條垂直的線)在C空間中具有非常復(fù)雜的形狀,如圖26-12b所示。上色不同的區(qū)子,另一個(gè)圓形區(qū)域?qū)?yīng)左邊的墻。最后,構(gòu)形空間中最有趣的物體是從天花板上垂下來阻礙機(jī)器人運(yùn)動(dòng)的障礙物。這個(gè)物體在構(gòu)形空間中的形狀很好玩:它高度非線性,有些地方甚至是凹的。做一點(diǎn)點(diǎn)想象,讀者就能明白夾具在左上端時(shí)的形狀。我們鼓勵(lì)讀者暫停一下來研究這幅圖。C空間中障礙物的形狀一點(diǎn)也不直觀!圖26-12b中的點(diǎn)標(biāo)出了圖26-12a中機(jī)器人的構(gòu)形。圖26-13描述了另外3個(gè)構(gòu)形,它們都同時(shí)繪制在了工作空間和構(gòu)形空間中。在構(gòu)形conf-1中,夾具正在抓垂直障礙物。圖26-13 工作空間和構(gòu)形空間中的3個(gè)機(jī)器人構(gòu)形間的形狀仍然可以非常復(fù)雜。因此,在實(shí)際中,人們通常探查構(gòu)形空是否有碰撞。運(yùn)動(dòng)規(guī)劃運(yùn)動(dòng)規(guī)劃(motion planning)問題就是在不與障礙物發(fā)生碰撞的提下,找出使機(jī)器人從一種構(gòu)形變?yōu)榱硪环N構(gòu)形的規(guī)劃。這是運(yùn)動(dòng)與操縱的基本組成要素。26.5.4節(jié)將討論如何在復(fù)雜動(dòng)力學(xué)中完成這件事,例如,如果你轉(zhuǎn)彎太快,打方向可能導(dǎo)致汽車滑出路徑。目前,我們只專注于簡單的運(yùn)動(dòng)規(guī)劃問題,找出不會(huì)碰撞的幾何路徑。運(yùn)動(dòng)規(guī)劃是經(jīng)典的連續(xù)狀態(tài)搜索問題,但常??梢噪x散化其空間,并應(yīng)用第3章的搜索算法。運(yùn)動(dòng)規(guī)劃問題有時(shí)稱為搬鋼琴問題(pianomover’sproblem)。它得名于搬運(yùn)者糾結(jié)于如何將一架很大的、形狀不規(guī)則的鋼琴從一個(gè)房間搬運(yùn)到另一個(gè)房間并且不磕碰到任何東西。對(duì)于運(yùn)動(dòng)規(guī)劃問題,我們有如下約定:一個(gè)工作空間——世界W,對(duì)平面來說是,或?qū)θS世界來是;一個(gè)障礙物區(qū)域 ;個(gè)具有構(gòu)形空間C、點(diǎn)集(其)的機(jī)器人;起始構(gòu)形;目標(biāo)構(gòu)形。障礙物區(qū)域包括C空間障礙物Cobs以及其對(duì)應(yīng)的自由空間Cfree,如26.5.2節(jié)所述。我們需要找到一個(gè)貫穿自由空間的連續(xù)路徑。我們使用參數(shù)化的曲線(t)來表示路徑,其中,,t在0到1之間的(t)則是Cfree中的某個(gè)點(diǎn)。也就是說,t參數(shù)化了我們從起點(diǎn)到目標(biāo)沿著路徑行進(jìn)了多遠(yuǎn)。注意,t的作用類似于時(shí)間,因?yàn)楫?dāng)t增加時(shí),在路徑上的距離也增加,但t始終是區(qū)間[0, 1]上的一點(diǎn),并且不使用秒來量。有很多方法會(huì)使運(yùn)動(dòng)規(guī)劃問題更復(fù)雜:將目標(biāo)設(shè)定為可能構(gòu)形的集合而非單個(gè)構(gòu)形;將目標(biāo)定義在工作空間而非C空間;定義一個(gè)需要最小化的代價(jià)函數(shù)(如路徑長度);滿足一些約束條件(例如,如果路徑中需要運(yùn)送一杯咖啡,則需要確??Х缺冀K朝上以免弄灑咖啡)。運(yùn)動(dòng)規(guī)劃的空間間。首先,有工作空間,或世界W。W中的點(diǎn)是普通三維世界中的點(diǎn)。然后,我們有構(gòu)形空間C。C中的點(diǎn)q是d維的,d是機(jī)器人的自由度數(shù)量,并映射到W中的點(diǎn)集。最后,有一個(gè)路徑空間。路徑空間是個(gè)函數(shù)空間??臻g中的每一個(gè)點(diǎn)映射到一條貫穿C空間的曲線。這個(gè)空間是維的!直觀上看,路徑上的每一個(gè)構(gòu)形需要d維,而路徑上構(gòu)形的數(shù)量與數(shù)軸上區(qū)間[0,1]中點(diǎn)的數(shù)量一樣多?,F(xiàn)在我們考慮求解運(yùn)動(dòng)規(guī)劃問題的一些方法。能見度圖對(duì)有二維構(gòu)形空間和多邊形C空間障礙物的簡化情形來說,能見度圖(visibilitygraph)是求解運(yùn)動(dòng)規(guī)劃問題的一種很簡便的方法,它可以確保求出路徑最短的解。令 為構(gòu)成Cobs的頂點(diǎn)集,并令。們?cè)陧旤c(diǎn)集V上構(gòu)建一個(gè),其連接頂點(diǎn)vi和頂點(diǎn)vj,如果連接這兩個(gè)點(diǎn)的線段無碰撞,也就是說,,我們就說兩個(gè)頂點(diǎn)“能夠看到對(duì)方”,“能見度”圖也得名于此。要解決運(yùn)動(dòng)規(guī)劃問題,我們要做的是在圖G上以qs為起始狀態(tài),以qg為目標(biāo)狀態(tài)運(yùn)行離散圖搜索(如最佳優(yōu)先搜索)。圖26-14中我們可以看到一張能見度圖以及一個(gè)最優(yōu)的有3步的解。能見度圖上的最優(yōu)搜索始終能給出最優(yōu)路徑(如果存在),或報(bào)告搜索失?。ㄈ绻淮嬖谶@樣的路徑)。圖26-14 一張能見度圖。每個(gè)能夠相互“看到”的頂點(diǎn)都用線段連接,也就是不穿過障礙物的段。最短路徑必然在這些線段上沃羅諾伊圖式能見度圖促使路徑直接與障礙物相接——最短路徑就是盡可能地貼著桌子。然而,如果運(yùn)動(dòng)或感知是非確定性路徑長度并非需要我們優(yōu)化的唯一度量。26.8.2節(jié)展示了如何從人類行為樣本中學(xué)到一個(gè)良好的度量。第三種方法則使用了另一種技術(shù),它使路徑盡可能地遠(yuǎn)離障礙物,而非緊挨著它們。沃羅諾伊圖式(Voronoidiagram)是一種能夠使我們辦到這件事的表示。為理解沃羅諾伊圖式的概念,考慮一個(gè)空間,其中障礙物為平面上的十幾個(gè)點(diǎn)。我們?yōu)槊恳粋€(gè)障礙物點(diǎn)繪制一個(gè)區(qū)域(region),每個(gè)區(qū)域由所有距離這個(gè)障礙物點(diǎn)比距離其他障礙物點(diǎn)更近的點(diǎn)構(gòu)成。這樣,這些區(qū)域就劃分了平面,如圖26-15所示。沃羅諾伊圖解由區(qū)域的集合構(gòu)成,而沃羅諾伊圖(Voronoigraph)則由區(qū)域中的頂點(diǎn)和邊構(gòu)成。圖26-15 沃羅諾伊圖式展示了構(gòu)形空間中與周圍兩個(gè)或多個(gè)障礙物等距的點(diǎn)的集合(紅色線)當(dāng)障礙物為區(qū)域而非點(diǎn)時(shí),做法基本相同。每個(gè)區(qū)域仍然包含所有距離一個(gè)障礙物比另一個(gè)障礙物更近的點(diǎn),其中,距離是到障礙物上最近的點(diǎn)的距離。區(qū)域之間的邊界仍然對(duì)應(yīng)于與兩個(gè)障礙物等距的點(diǎn),但現(xiàn)在邊界可能是曲線而非直線。在高維空間計(jì)算這些邊界的代價(jià)極高。要求解運(yùn)動(dòng)規(guī)劃問題,我們用直線連接起始點(diǎn)qs和沃羅諾伊圖上距其最近的點(diǎn),并對(duì)目標(biāo)點(diǎn)qg也進(jìn)行同樣的操作。然后使用離散圖搜索來找到圖上的最短路徑。對(duì)于類似于室內(nèi)走廊導(dǎo)航的問題,它能夠給出一條沿著走廊中間行駛的漂亮的路徑。然而,在室外情況下,它會(huì)產(chǎn)生低效的路徑,例如,為了保持在一個(gè)開闊的空間的中間行駛,它會(huì)不必要地走一些彎路。單元分解運(yùn)動(dòng)規(guī)劃的另一種方法是離散化C空間。單元分解(celldecomposition)方法將自由空間分解為有限數(shù)量的相鄰區(qū)域,稱為單元。這些單元旨在使單個(gè)單元內(nèi)的路徑規(guī)劃問題可以用簡單方法(直線移動(dòng))解決。因此,路徑規(guī)劃問題變?yōu)殡x散圖搜索問題(圖和沃羅諾伊圖一樣),在單元序列中找到路徑。將空間劃分為大小均勻的網(wǎng)格是一種最簡單的單元分解。圖26-16a展示了空間的方形網(wǎng)格分解,以及一條在這一網(wǎng)格大小下最優(yōu)的解路徑。(這些值可以使用圖17-6所示的VALUE-ITERATION算法的確定性形式計(jì)算。)圖26-16b展示了手臂在對(duì)應(yīng)的工作空間的軌跡。當(dāng)然,我們還可以使用A*算法來找出最短路徑。圖26-16 (a)為構(gòu)形空間的網(wǎng)格單元近似找到的價(jià)值函數(shù)和路徑。(b)相同路徑在工作空坐標(biāo)中的可視化。注意機(jī)器人是如何彎曲肘部來避免與垂直障礙物發(fā)生碰撞的這種網(wǎng)格分解的好處在于它很容易實(shí)現(xiàn),但它有3點(diǎn)局限性。首先,它只能用于低維構(gòu)形空間,因?yàn)榫W(wǎng)格的數(shù)量隨維數(shù)d呈指數(shù)級(jí)增長。(這就是維度詛咒。)其次,經(jīng)過離散狀態(tài)空間的路徑不總是平滑的。我們?cè)趫D26-16a中看到,路徑的斜線部分是鋸齒形的,因此機(jī)器人很難準(zhǔn)確地跟蹤這條路徑。機(jī)器人可以試著平滑解路徑,但這很難。最后,存在如何處理“混合”單元(也就是既不完全在自由空間中又不完全在被占用空間中的單元)的問題。包含這種單元的解路徑可能不是真正的解,因?yàn)榭赡懿淮嬖诎踩┻^這個(gè)單元的路徑。這就會(huì)導(dǎo)致路徑規(guī)劃器不可靠。此外,如果我們堅(jiān)持只使用完全自由的單元,規(guī)劃器就會(huì)是不完備的,因?yàn)槲ㄒ荒軌虻竭_(dá)目標(biāo)的路徑可能通過混合單元——它可能是寬度足夠機(jī)器人通過的走廊,但走廊被混合單元覆蓋。這個(gè)問題的第一種解決方法是進(jìn)一步細(xì)分混合單元,如使其為原先的一半大小。這種方法可以迭代使用,直到找到的路徑完全在自由單元中。這種方法很有效,并且是完備的,前提是存在一種確定給定單元是混合單元的方法,但這僅在構(gòu)形空間的邊界具有簡單數(shù)學(xué)描述的情形下才容易做到。這里要注意的一個(gè)重點(diǎn)是,單元分解并不一定需要顯式地表示障礙物空間Cobs。我們可以通過使用碰撞檢查器(collisionchecker)來決定是否納入一個(gè)單元。這是運(yùn)動(dòng)規(guī)劃中的一個(gè)重要概念。碰撞檢查器是構(gòu)形與障礙物碰撞時(shí)映射到,否則映射到0的函數(shù)。檢查某個(gè)特定構(gòu)形是否產(chǎn)生碰撞比顯式地構(gòu)建整個(gè)障礙物空間Cobs容易得多。檢查圖26-16a的解路徑,我們可以發(fā)現(xiàn)另一個(gè)必須解決的難題。這條路徑包含毫無修飾的鋒利拐角,但真正的機(jī)器人具有動(dòng)量,不能瞬間改變方向。這個(gè)問題可以通過對(duì)每個(gè)網(wǎng)格單元存儲(chǔ)確切的狀態(tài)(位置和速度)來解決,而這些狀態(tài)在搜索到達(dá)該單元時(shí)取得。進(jìn)一步地,假設(shè)在向周圍網(wǎng)格單元傳播信息時(shí),我們以連續(xù)狀態(tài)為基礎(chǔ),并應(yīng)用機(jī)器人運(yùn)動(dòng)模型來進(jìn)入鄰近單元。這樣我們就不會(huì)采用90°急轉(zhuǎn)彎,而會(huì)采用符合運(yùn)動(dòng)法則的圓角轉(zhuǎn)彎。我們現(xiàn)在可以確保產(chǎn)生的軌跡是平滑的,能夠被機(jī)器人真正執(zhí)行。混合A*(hybrid A*)是一種實(shí)現(xiàn)這個(gè)目標(biāo)的法。隨機(jī)運(yùn)動(dòng)規(guī)劃隨機(jī)運(yùn)動(dòng)規(guī)劃在構(gòu)形空間的隨機(jī)分解上進(jìn)行圖搜索,而非在均勻單元分解上。其核心思路是采樣一個(gè)隨機(jī)點(diǎn)集,如果點(diǎn)之間有簡單的無碰撞到達(dá)方式(如直線),就在它們之間創(chuàng)建邊;然后就可以在這張圖上進(jìn)行搜索。概率路線圖(probabilisticroadmap,PRM)算法運(yùn)用了這一思路。q1到q2的路徑(或失?。┑暮唵我?guī)劃器(simpleplanner)B(q1,q2)。這個(gè)簡單規(guī)劃器不是完備的——它可能返回失敗,即使確實(shí)存在一個(gè)解。它的作用是快速地嘗試連接q1和q2并使主算法知道是否成功。我們要使用它來定義兩個(gè)頂點(diǎn)之間是否存在一條邊。算法從采樣qs和qm之外的M個(gè)里程碑——Cfree中的點(diǎn)開始。它使用拒絕采樣,其中構(gòu)形被隨機(jī)采樣并使用進(jìn)行檢查,直到找出M個(gè)里程碑。接下來,算法使用簡單規(guī)劃器來嘗試連接每對(duì)里程碑。如果簡單規(guī)劃器返回成功,則這對(duì)里程碑之間的邊被加入圖中;否則,圖不發(fā)生變化。我們嘗試連接每個(gè)里程碑到它的k個(gè)最近鄰(我們稱之為k-PRM),或到半徑為r之內(nèi)的所有里程碑。最后,算法在這張圖上搜索從qs到qg的路徑。如果沒有找到路徑,則再采樣M個(gè)里程碑添加到圖中,并重復(fù)這一過程。圖26-17展示了找出了兩個(gè)構(gòu)形之間路徑的路線圖。PRM不完備,但它們是所謂概率完備的——只要存在路徑,它們最終就會(huì)找到路徑。直覺上,這是因?yàn)樗鼤?huì)一直采樣更多的里程碑。PRM在高維構(gòu)形空間中的性能仍然很好。PRM在多查詢規(guī)劃(multi-query planning)中也十分流行。多查規(guī)劃中,在同一個(gè)C空間中存在多個(gè)運(yùn)動(dòng)規(guī)劃問題。通常,機(jī)器人到達(dá)目標(biāo)后,立刻就會(huì)被要求到達(dá)同一個(gè)工作空間內(nèi)的另一個(gè)目標(biāo)。PRM很有用,因?yàn)闄C(jī)器人可以預(yù)先花時(shí)間構(gòu)建路線圖,并在多次查詢中利用這張圖。圖26-17 概率路線圖(PRM)算法。左上:起點(diǎn)構(gòu)形與目標(biāo)構(gòu)形。右上:采樣M個(gè)無碰撞里程碑(此處M=5)。左下:將每個(gè)里程碑與其k個(gè)最近鄰連接(此處k=3)。右下:在產(chǎn)生的圖找出從起點(diǎn)到目標(biāo)的最短路徑快速探索隨機(jī)樹PRM的一個(gè)擴(kuò)展稱為快速探索隨機(jī)樹(rapidly-exploring tree,RRT),它在單查詢規(guī)劃中十分流行。我們逐漸地構(gòu)建兩棵樹,一棵以qs為根節(jié)點(diǎn),另一棵以qg為根節(jié)點(diǎn)。選擇隨機(jī)里程碑,并嘗試將每個(gè)里程碑連接到現(xiàn)有的樹上。如果一個(gè)里程碑同時(shí)連接到了兩棵樹,就意味著已經(jīng)找到了解,如圖26-18所示。如果沒有這樣的連接,則算法找到每棵樹上最近的點(diǎn),并將一條指向該里程碑的、長度為的邊加入樹中。這能使樹的生長趨向于空間中先前沒有探索過的區(qū)域。圖26-18 雙向RRT算法通過漸增地將每個(gè)樣本連接到每棵樹上最近的節(jié)點(diǎn)(如果可以連接)建了兩棵樹(一棵從起點(diǎn)開始,另一棵從目標(biāo)開始)。如果一個(gè)樣本同時(shí)連接到了兩棵樹,就代表我們已經(jīng)找到了一條解路徑機(jī)器人學(xué)家很喜歡RRT的易用性。然而,RRT的解往往不是最優(yōu)的,且缺乏平滑性。因此,RRT常常需要在后面附加一個(gè)后處理步驟。最常見的一種后處理是“走捷徑”,它隨機(jī)地選擇解路徑上的一個(gè)頂點(diǎn)并通過(用簡單規(guī)劃器)來不太自然,因?yàn)槲覀冞x擇了位置隨機(jī)的里程碑,如圖26-19所示。圖26-19 RRT生成并經(jīng)過“走捷徑”后期處理的截圖。圖片由AncaDragan提供RRT*是RRT的一個(gè)修改版,它使算法逼近最優(yōu):解在越來越多的碑時(shí),如果改變已有節(jié)點(diǎn)的父節(jié)點(diǎn)能使從新里程碑到達(dá)它們的代價(jià)更小,則交換這些父節(jié)點(diǎn)。用于運(yùn)動(dòng)學(xué)規(guī)劃的軌跡優(yōu)化來避免碰撞。它的目標(biāo)是找到一條能優(yōu)化路徑的代價(jià)函數(shù)[1]的路徑。也就是說,我們想最小化代價(jià)函數(shù),其中,。機(jī)器人學(xué)家喜歡最小化代價(jià)函數(shù)J,但在人工智能的其他領(lǐng)域,我們?cè)噲D最大化效用函數(shù)U或者獎(jiǎng)勵(lì)函數(shù)R。J稱為泛函(functional),因?yàn)樗呛瘮?shù)的函數(shù)。J的參數(shù)是,本身就是一個(gè)函數(shù):以區(qū)間[0, 1]內(nèi)的點(diǎn)為輸入,并將其映射到一個(gè)形。標(biāo)準(zhǔn)的代價(jià)函數(shù)在機(jī)器人運(yùn)動(dòng)的兩個(gè)方面(即避免碰撞和效率)進(jìn)行權(quán)衡:其中,效率Jeff測(cè)量路徑的長度,也可以用來測(cè)量平滑性。定義效率的一種簡便方式是使用平方,它對(duì)的一階導(dǎo)數(shù)的平方進(jìn)行積分(我們稍后來看它為何能對(duì)短路徑進(jìn)行激勵(lì)):對(duì)于障礙物項(xiàng),假設(shè)我們可以計(jì)算從任意點(diǎn)到最近障礙物的的距離d(x)。在障礙物外部時(shí)這一距離為正,在邊緣上時(shí)為0,在內(nèi)部時(shí)為負(fù)。這叫作有符號(hào)的距離場(chǎng)(signeddistancefield)。我們現(xiàn)在就可以定義工作空間中的代價(jià)場(chǎng)了,我們稱其為c,它在障礙物內(nèi)部具有大代價(jià),并在緊挨著障礙物的外部具有小代價(jià)。有了代價(jià)之后,我們可以使工作空間中的點(diǎn)討厭處于障礙物內(nèi)部,且不喜歡緊挨著障礙物(以免像能見度圖一樣始終貼著障礙物的邊緣)。當(dāng)然,我們的機(jī)器人不是工作空間中的點(diǎn),因此我們還需要做一些事——考慮機(jī)器人身體上的所有點(diǎn)b:這稱為路徑積分(pathintegral)——它不僅在路徑上對(duì)身體上的每個(gè)點(diǎn)的c進(jìn)行積分,還乘以導(dǎo)數(shù)以使代價(jià)對(duì)路徑的重計(jì)時(shí)保持不變。想象一個(gè)掃過代價(jià)場(chǎng)的機(jī)器人在移動(dòng)時(shí)累積代價(jià)。無論機(jī)器人在場(chǎng)內(nèi)移動(dòng)得有多快或多慢,它都必須積累到完全相同的代價(jià)。求解上述優(yōu)化問題并找出路徑的最簡單的辦法是梯度下降法。如果你想知道如何求泛函關(guān)于函數(shù)的梯度,變分法可以幫助你。它對(duì)如下形式的泛函來說很簡單:它是僅依賴參數(shù)s、函數(shù)在s處的值以及函數(shù)在s處的導(dǎo)數(shù)的函數(shù)的積分。這種情況下,歐拉-拉格朗日方程(Euler-Lagrangeequation)表明其梯度為如果我們仔細(xì)察看Jeff和Jobs,它們都遵循這種形式。特別地,對(duì)于Jeff,我們有 。為便于理解,我們僅計(jì)算Jeff度。我們看到F沒有直接依賴,因此公式的第一項(xiàng)為0,剩余部分為為F關(guān)的偏導(dǎo)數(shù)。注意我們?cè)诙xJeff時(shí)是如何化簡問題的——它是導(dǎo)數(shù)的簡單二次函數(shù)(我們甚至在前面乘以1/2以便2可以輕松地約去)。實(shí)際中,你會(huì)在優(yōu)化中看到很多這樣的技巧,其中的技藝不僅在于選擇如何優(yōu)化代價(jià)函數(shù),還在于選擇能夠很容易優(yōu)化的代價(jià)函數(shù)。對(duì)梯度進(jìn)行簡化,有現(xiàn)在,由于Jeff是二次的,因此將梯度設(shè)為0就能給出在不需要處理障礙物時(shí)的解。一次積分后,我們就能獲得一階導(dǎo)數(shù),它應(yīng)當(dāng)是一個(gè)常數(shù);再次積分后,我們得到,其中a和b由端點(diǎn)和確定。對(duì)于Jeff礙物,它確實(shí)是從一點(diǎn)到另一點(diǎn)最高效的路徑。當(dāng)然,附加的Jobs才是制造困難的那一項(xiàng),我們就不在此處推導(dǎo)其梯度了。機(jī)器人通常將其路徑初始化為直線,它常常會(huì)直接穿過一些障礙物。隨后它會(huì)計(jì)算當(dāng)前路徑的代價(jià)的梯度,然后梯度用于使路徑遠(yuǎn)離障礙物(圖26-20)。注意,梯度下降只能產(chǎn)生局部最優(yōu)解——就像爬山法一樣。像模擬退火(4.1.2節(jié))這樣的方法可以用于探索,以使找到的局部最優(yōu)更可能是足夠好的解。圖26-21展示了經(jīng)過軌跡優(yōu)化后躲避障礙物的任務(wù)。圖26-20 運(yùn)動(dòng)規(guī)劃的軌跡優(yōu)化。兩個(gè)點(diǎn)狀障礙物周圍的圓形帶上代價(jià)下降。優(yōu)化器從直線軌開始,逐漸使路徑遠(yuǎn)離障礙物以避免碰撞,進(jìn)而找出通過代價(jià)場(chǎng)的最短路徑圖26-21 用軌跡優(yōu)化器解決了伸手抓住瓶子的任務(wù)。左圖:為末端效應(yīng)器繪制的初始軌跡。圖:優(yōu)化后的最終軌跡。右圖:目標(biāo)構(gòu)形。圖片由AncaDragan提供,見(Ratliffetal.,2009)軌跡跟蹤控制我們已經(jīng)介紹了如何規(guī)劃運(yùn)動(dòng),但沒有討論如何真正地移動(dòng),也就是將電流傳送給電動(dòng)機(jī)來產(chǎn)生扭矩,進(jìn)而使機(jī)器人移動(dòng)。這屬于論個(gè):如何將路徑的數(shù)學(xué)描述轉(zhuǎn)換為真實(shí)世界中的一系列動(dòng)作(開環(huán)控制),以及如何確保我們?cè)谲壽E范圍內(nèi)(閉環(huán)控制)。開環(huán)跟蹤中,從構(gòu)形到扭矩:路徑給出了構(gòu)形。機(jī)器人在矩,以形成運(yùn)動(dòng)。但機(jī)器人的扭矩要以什么為目標(biāo)才能使它到達(dá)?這就需要引入動(dòng)力學(xué)模型(dynamics model)(或轉(zhuǎn)移模型)的概念。我們可以給模型一個(gè)函數(shù)f來計(jì)算扭矩對(duì)構(gòu)形的作用。還記得物理學(xué)中的F=ma嗎?扭矩中也有類似的東西,形式為,其u為扭矩,為速度,為加速度。[2]如果機(jī)器人位于構(gòu)形q并具有速度,施加扭矩u,就會(huì)造成加速度。元組為動(dòng)態(tài)狀態(tài)(dynamic state),因?yàn)樗婕八俣?,而q則是運(yùn)動(dòng)學(xué)狀態(tài)(kinematicstate),它不足以準(zhǔn)確計(jì)算要施加的扭矩。f是MDP中以扭矩作為動(dòng)作時(shí),動(dòng)態(tài)的確定性動(dòng)力學(xué)模型。f?1是逆動(dòng)力學(xué)(inversedynamics)模型,它告訴我們?nèi)绻覀冃枰囟ǖ募铀俣葋砀淖兯俣冗M(jìn)而改變動(dòng)態(tài),需要施加多大的扭矩。此處我們省略了f?1的細(xì)節(jié),它涉及質(zhì)量、慣性、重力以及科里奧利力和離心力?,F(xiàn)在我們可以簡單地將考慮成尺度為從0到1的“時(shí)間”,并用逆動(dòng)力學(xué)選擇扭矩:(26-2)假設(shè)機(jī)器人始于。盡管在實(shí)際中情況沒這么簡單。路徑可能不滿足(機(jī)器人初始速度為0),甚至不滿足是可的(更不用說二階導(dǎo)數(shù))。另外,終點(diǎn)“1”的含義不清楚:它代表多少秒呢?實(shí)際中,在我們考慮跟蹤一條參考路徑之前,我們通常對(duì)其進(jìn)行重計(jì)時(shí),也就是將其轉(zhuǎn)換為一個(gè)把某個(gè)時(shí)長T的區(qū)間[0,T]中的點(diǎn)的軌。重計(jì)時(shí)比你想象的要難,但它有近似方法,例如,選定一個(gè)最大速度和加速度,并使用加速到最大速度并盡可能長時(shí)間地保持該速度,隨后減速到0的配置。假設(shè)我們可以這樣做,式(26-2)就可以重寫為(26-3)即使從變成了實(shí)際軌跡,用于施加扭矩的式(26-3)——稱為制律——在實(shí)際中還是有一個(gè)問題。回想21.8.3節(jié),你可能就猜到是什么問題了。該式在f很精確的時(shí)候沒有問題,但實(shí)際情況并不是這樣的:在實(shí)際系統(tǒng)中,我們沒辦法精確地測(cè)量質(zhì)量和慣性,f恰當(dāng)?shù)乜紤]到像電動(dòng)機(jī)中的靜摩擦力(趨向于阻止靜止表面相互運(yùn)動(dòng)的摩擦力,也就是使它們黏在一起)這樣的物理現(xiàn)象。因此,當(dāng)機(jī)械臂根據(jù)錯(cuò)誤的f開始施加扭矩時(shí),誤差就會(huì)累積,你就會(huì)越來越偏離參考路徑。機(jī)器人可以用控制過程來避免誤差累積。控制過程查看機(jī)器人自認(rèn)為其所處的位置,并將其與它想要處于的位置進(jìn)行比較,然后施加扭矩來最小化誤差。施加反比于觀測(cè)誤差的扭矩的控制器稱為比例控制器,或簡稱為P控制器。計(jì)算這個(gè)力的公式為其中,qt為當(dāng)前構(gòu)形,KP為代表控制器增益因子(gain factor)常數(shù)。KP刻畫控制器糾正實(shí)際位置qt和預(yù)期位置 之間偏差的能力。圖26-22a闡釋了比例控制器可能產(chǎn)生的問題。當(dāng)發(fā)生偏差時(shí)(不論是由于噪聲還是由于機(jī)器人的施力限制),機(jī)器人提供一個(gè)大小與偏差成比例的反向力。直覺上,這似乎挺有道理,因?yàn)槠顟?yīng)當(dāng)使用反向的力來補(bǔ)償,以使機(jī)器人回到正軌。然而,如圖26-22a所示,比例控制器會(huì)導(dǎo)致機(jī)器人施力過大,超過了所預(yù)期的路徑并來回抖動(dòng)。這是由于機(jī)器人的自然慣性:機(jī)器人回到參考位置后仍然具有速度,因此不能瞬間停止。圖26-22 使用不同方式控制機(jī)械臂:(a)增益因子為1.0的比例控制。(b)增益因子為0.1的比例控制。(c)比例分量增益因子為0.3,微分分量為0.8的比例微分控制。所有情形下,機(jī)臂都試圖遵循平滑的路徑線,但在(a)和(b)中,機(jī)械臂明顯偏離了路徑圖26-22a中,參數(shù)KP=1。乍看起來,我們可能會(huì)認(rèn)為選擇較小的KP值,讓機(jī)器人較緩慢地接近預(yù)期的路徑就可以糾正問題。遺憾的是,情況并非如此。圖26-22b展示了KP = 0.1的軌跡,它仍然表現(xiàn)出震蕩為。低增益參數(shù)值有用,但并沒有完全解決問題。實(shí)際上,在沒有摩擦力的情況下,P控制器本質(zhì)上就是彈簧法則,因此它會(huì)沿著固定的目標(biāo)位置不停震蕩。有很多控制器優(yōu)于簡單的比例控制法則。如果較小的擾動(dòng)會(huì)使機(jī)器人和參考信號(hào)之間形成有限的誤差,則這個(gè)控制器就是穩(wěn)定的。如果在遭受這樣的擾動(dòng)后,控制器能夠回到并保持在其參考路徑上,則它是嚴(yán)格穩(wěn)定的。P控制器似乎是穩(wěn)定的,但不是嚴(yán)格穩(wěn)定的,因?yàn)樗鼰o法停留在參考路徑附近。在我們這個(gè)領(lǐng)域中,實(shí)現(xiàn)嚴(yán)格穩(wěn)定的最簡單的控制器是PD控制器。字母“P”還是代表比例,而“D”代表微分。PD控制器由下式描述:(26-4)如上式所述,PD控制器為P控制器附加了一個(gè)微分分量,給u(t)增加了一個(gè)與隨時(shí)間產(chǎn)生的誤差的一階導(dǎo)數(shù)成比例的項(xiàng)。這一的作用是什么?一般而言,微分項(xiàng)會(huì)抑制所控制的系統(tǒng)。要明白這一點(diǎn),考慮一個(gè)誤差隨時(shí)間快速變化的情況,正如在上述的P控制器中出例項(xiàng)就會(huì)主導(dǎo)控制權(quán)。圖22-6c展示了對(duì)機(jī)械臂運(yùn)用這種PD控制器的結(jié)果,其增益參數(shù)KP=0.3,KD=0.8。顯然,最終的路徑平滑多了,且沒有顯示出任何明顯的震蕩。但PD控制器也有不管用的時(shí)候。具體來說,PD控制器可能無法將誤差降到零,即使在沒有外部擾動(dòng)的情況下。這種情況通常是系統(tǒng)受到?jīng)]有建模的外力導(dǎo)致的。例如,一輛自動(dòng)駕駛汽車在傾斜的表面行駛會(huì)發(fā)現(xiàn)它被整體地拽向一邊。機(jī)械臂的磨損和老化也會(huì)導(dǎo)致類似的系統(tǒng)性誤差。這種情況下,就需要通過比例反饋來使誤差接近0。解決這一問題的方法是給控制律增加第三項(xiàng),它基于誤差在時(shí)間上的積分:(26-5)此處的KI是第三個(gè)增益參數(shù)。 項(xiàng)計(jì)算誤差在時(shí)間上積分。這一項(xiàng)的作用是糾正參考信號(hào)和實(shí)際狀態(tài)的長期偏差。因此,分項(xiàng)確??刂破鞑粫?huì)表現(xiàn)出系統(tǒng)性的長期誤差,盡管它有造成震蕩的能。具有所有這3項(xiàng)的控制器叫作PID控制器(即比例積分微分控制器)。PID控制器在工業(yè)上廣泛用于各種控制問題??梢詫?duì)這3項(xiàng)做如下理解:比例,離路徑越遠(yuǎn)就越努力回到路徑;微分,如果誤差在增加就更加努力地嘗試回到路徑;積分,如果你長期沒有取得進(jìn)步就更加努力地嘗試。介于基于逆動(dòng)力學(xué)的開環(huán)控制和閉環(huán)PID控制之間的是計(jì)算扭矩控制(computedtorquecontrol)。我們計(jì)算模型認(rèn)為我們所需的扭矩,但使用比例誤差項(xiàng)對(duì)模型不精確的部分進(jìn)行補(bǔ)償:(26-6)第一項(xiàng)稱為前饋分量(feedforward component),因?yàn)樗A(yù)測(cè)機(jī)人所需處于的位置并計(jì)算可能需要的扭矩。第二項(xiàng)是反饋分量(feedbackcomponent),因?yàn)樗鼘?dòng)態(tài)的現(xiàn)有誤差反饋給控制律。m(q)是構(gòu)形q下的慣性矩陣——不同于一般的PD控制,增益隨系統(tǒng)的構(gòu)形改變而改變。規(guī)劃與策略我們回頭來確保我們理解了本文目前的內(nèi)容與我們?cè)诘?章、第17章、第21章中學(xué)到的內(nèi)容的類比。我們考慮機(jī)器人學(xué)中的運(yùn)動(dòng)實(shí)際上是在考慮隱含MDP模型,其狀態(tài)為動(dòng)態(tài)狀態(tài)(構(gòu)形和速度),動(dòng)作為控制輸入(通常是扭矩的形式)。如果我們?cè)倏匆幌律鲜龅目刂坡?,就?huì)發(fā)現(xiàn)它們是策略而非規(guī)劃——它們告訴機(jī)器人在任意它可能處于的位置上應(yīng)當(dāng)采取什么動(dòng)作。不過它們一般遠(yuǎn)非最優(yōu)策略。由于動(dòng)態(tài)狀態(tài)是連續(xù)的,且是高維度的(像動(dòng)作空間一樣),因此最優(yōu)策略在計(jì)算上很難取得。我們?cè)诖颂幍淖龇ㄊ欠纸鈫栴}。首先在簡化的狀態(tài)和動(dòng)作空間中想出一個(gè)規(guī)劃:我們僅使用運(yùn)動(dòng)學(xué)狀態(tài),并在不考慮隱含的動(dòng)力學(xué)的情況下,假設(shè)這些狀態(tài)是可以從其他狀態(tài)到達(dá)的。這是運(yùn)動(dòng)規(guī)劃,它給我們一個(gè)參考路徑。如果我們完全了解動(dòng)力學(xué),就可以用式(26-3)將其轉(zhuǎn)換為一個(gè)用于原始狀態(tài)和動(dòng)作空間的規(guī)劃。但由于動(dòng)力學(xué)模型通常有誤差,因此我們將其轉(zhuǎn)換為試圖遵循規(guī)劃的策略——當(dāng)偏離路徑時(shí)回到路徑。為此,我們用兩種方式引入了次優(yōu)性:首先通過不考慮動(dòng)力學(xué)情況下的規(guī)劃,其次通過假設(shè)如果我們偏離了規(guī)劃,最優(yōu)動(dòng)作是返回原始規(guī)劃。26.5.4節(jié)將介紹直接在動(dòng)態(tài)狀態(tài)上計(jì)算策略的方法,而非分離它們。最優(yōu)控制除使用規(guī)劃器創(chuàng)建運(yùn)動(dòng)學(xué)路徑并在之后只考慮系統(tǒng)動(dòng)力學(xué)的做法之外,我們還能同時(shí)考慮路徑和動(dòng)力學(xué)。我們將運(yùn)動(dòng)學(xué)路徑當(dāng)作軌跡優(yōu)化問題,并將其轉(zhuǎn)換成動(dòng)態(tài)的軌跡優(yōu)化:我們?cè)诳紤]動(dòng)態(tài)(或轉(zhuǎn)移)的情況下直接優(yōu)化動(dòng)作。這更接近我們?cè)诘?章和第17動(dòng)力學(xué),就可以找到一個(gè)動(dòng)作序列來執(zhí)行,如我們?cè)诘?章所做的那樣。如果我們不確定,那么可能需要一個(gè)策略,就像第17章那樣。在本節(jié)中,我們更直接地考查機(jī)器人運(yùn)作所隱含的MDP悉的離散MDP轉(zhuǎn)換到連續(xù)MDP。我們根據(jù)慣例用x表示系統(tǒng)的動(dòng)態(tài)狀態(tài),它與離散MDP中的s等價(jià)。令xs和xg為起始狀態(tài)與目標(biāo)狀態(tài)。我們要找到一個(gè)動(dòng)作序列,使得機(jī)器人執(zhí)行后會(huì)產(chǎn)生累積代價(jià)較低的狀態(tài)-動(dòng)作對(duì)。動(dòng)作是使用u(t)表示的扭矩,t從0開始,結(jié)束于T。我們要找到一系列最小化累積代價(jià)J的扭矩u,則形式上有(26-7)受限于約束如何將它們與運(yùn)動(dòng)規(guī)劃和軌跡跟蹤控制聯(lián)系在一起?想象我們使用效率的概念,在不考慮障礙物的情況下將其放到代價(jià)函數(shù)J中,就像我們?cè)谶\(yùn)動(dòng)學(xué)狀態(tài)上的軌跡優(yōu)化中做的那樣。動(dòng)態(tài)狀態(tài)是構(gòu)形和速度,扭矩u通過開環(huán)軌跡跟蹤中的動(dòng)力學(xué)f對(duì)其進(jìn)行改變。區(qū)別是我們現(xiàn)在同時(shí)考慮構(gòu)形和扭矩。有時(shí)候,我們可能需要將碰撞躲避也作為硬約束,我們?cè)趦H對(duì)運(yùn)動(dòng)學(xué)狀態(tài)進(jìn)行軌跡優(yōu)化時(shí)也提過這一點(diǎn)。要求解這個(gè)優(yōu)化問題,我們可以取J的梯度,但不再是對(duì)構(gòu)形序列求梯度,而是直接關(guān)于控制u求梯度。有時(shí)候,將狀態(tài)序列x作為決策變量納入考慮,并使用動(dòng)力學(xué)約束來確保x和u一致也是有用的。有很多軌跡優(yōu)化技術(shù)使用這個(gè)方法,其中兩種是多重打靶法(multipleshooting)和直接配置法(directcollocation)。這些方法都不能找到全局最優(yōu)解,但實(shí)際中它們能夠有效地使類人機(jī)器人行走,使自主的汽車行駛。當(dāng)上述問題中的J為二次函數(shù),f是關(guān)于x和u的線性函數(shù)時(shí),奇跡就發(fā)生了。我們要最小化我們可以在無限區(qū)域而非有限區(qū)域內(nèi)進(jìn)行優(yōu)化,進(jìn)而得到從任意狀態(tài)出發(fā)的策略,而不僅是一個(gè)控制序列。為此,Q和R必須是正定矩陣。這就給出了一個(gè)線性二次調(diào)節(jié)器(linearquadraticregulator,LQR)。在LQR中,最優(yōu)價(jià)值函數(shù),稱為行動(dòng)代價(jià)(costtogo),是二次函數(shù),而最優(yōu)策略是線性函數(shù)。策略形似u=?Kx,其中,找到矩陣K需要求解代數(shù)里卡蒂方程(Riccatiequation)——沒有局部最優(yōu)解,不需要值迭代,也不需要策略迭代!由于LQR容易解出最優(yōu)策略,因此它在實(shí)際中經(jīng)常被用到,盡管實(shí)際問題很少具有二次代價(jià),也很少符合線性動(dòng)力學(xué)。一個(gè)相當(dāng)有用的方法稱為迭代LQR(iterativeLQR,ILQR),它的原理是從一個(gè)解出發(fā),迭代地計(jì)算動(dòng)力學(xué)的線性近似及其附近代價(jià)的二次近似,然后求解得出的LQR系統(tǒng)來得到新的解。LQR的變種也常用于軌跡跟蹤。規(guī)劃不確定的運(yùn)動(dòng)隨機(jī)(或未建模)效應(yīng)。同時(shí),也會(huì)有來自使用近似算法(如粒子濾波)了環(huán)境。如今,大部分機(jī)器人使用確定性算法進(jìn)行決策,例如,26.5節(jié)所述的路徑規(guī)劃算法,或第3章介紹的搜索算法。對(duì)這些確定性算法進(jìn)行兩種改造:首先,它們將連續(xù)狀態(tài)空間轉(zhuǎn)換為離散空間來處理(如用能見度圖或單元分解)。其次,它們通過從狀態(tài)估計(jì)算法產(chǎn)生的概率分布中選擇最可能狀態(tài)(mostlikelystate)來處理當(dāng)前狀態(tài)的不確定性。這些方法使計(jì)算更快速,也更適合于確定性搜索算法。本節(jié)討論類似于第4章中較復(fù)雜的搜索算法的不確定性處理方法。首先,不同于確定性規(guī)劃,不確定性需要策略。我們已經(jīng)討論了軌跡跟蹤是如何將規(guī)劃轉(zhuǎn)為策略來補(bǔ)償動(dòng)力學(xué)中的誤差的。而有時(shí)候,如果最可能假設(shè)變化得足夠大,跟蹤為先前假設(shè)設(shè)計(jì)的規(guī)劃就遠(yuǎn)不夠最優(yōu)了。這就需要在線重規(guī)劃(onlinereplanning):我們可以根據(jù)新的信念重新算出一個(gè)規(guī)劃?,F(xiàn)在的大部分機(jī)器人都使用一種稱為模型預(yù)測(cè)控制(modelpredictivecontrol,MPC)的技術(shù),它們對(duì)更短的時(shí)間區(qū)間進(jìn)行規(guī)劃,但每一時(shí)刻都進(jìn)行重規(guī)劃(因此MPC更接近實(shí)時(shí)搜索和博弈算法)。這實(shí)際上就產(chǎn)生了策略:每個(gè)時(shí)刻,我們運(yùn)行規(guī)劃器并采取規(guī)劃中的第一個(gè)動(dòng)作;如果有新信息到來或我們沒能到達(dá)預(yù)期的地方也沒有關(guān)系,因?yàn)槲覀兪冀K要進(jìn)行重規(guī)劃,它會(huì)告訴我們下一步該怎么做。其次,應(yīng)對(duì)不確定性需要信息收集(informationgathering)動(dòng)作。當(dāng)我們僅考慮已有信息并據(jù)此進(jìn)行規(guī)劃時(shí)(這就是從控制中分離估計(jì)),我們實(shí)際上是在每個(gè)時(shí)刻(近似)求解一個(gè)新MDP,它對(duì)應(yīng)我們對(duì)自身位置和世界運(yùn)轉(zhuǎn)方式的當(dāng)前信念。但實(shí)際中,POMDP框架能更好地刻畫不確定性:有一些我們無法直接觀測(cè)的東西,不論是機(jī)器人的位置或構(gòu)形、世界中物體的位置,還是動(dòng)力學(xué)模型本身的參數(shù),例如,二連桿機(jī)械臂的質(zhì)心在哪里。不求解POMDP使我們失去了對(duì)機(jī)器人將獲取的未來信息進(jìn)行推理的能力:在MDP中我們只根據(jù)我們所知的東西進(jìn)行規(guī)劃,而非我們可能會(huì)知道的東西。還記得信息的價(jià)值嗎?如果機(jī)器人只根據(jù)當(dāng)前信念進(jìn)行規(guī)劃而不考慮未來可能獲取到的信息,就未能考慮到信息的價(jià)值。它們永遠(yuǎn)不會(huì)采取那些目前就其所知不夠好但會(huì)產(chǎn)生大量信息并使機(jī)器人做得更好的動(dòng)作。這樣的動(dòng)作對(duì)導(dǎo)航機(jī)器人來說是什么樣子的?機(jī)器人可以接近一個(gè)地標(biāo)來更好地估計(jì)其位置,即使根據(jù)其當(dāng)前知識(shí),地標(biāo)并不在路徑上。這個(gè)動(dòng)作只有當(dāng)機(jī)器人考慮到它將會(huì)取得的新觀測(cè)時(shí)才是最優(yōu)的,而僅考慮它已有的信息,這就不是最優(yōu)的。為了解決這個(gè)問題,機(jī)器人學(xué)技術(shù)有時(shí)會(huì)顯式地定義信息收集動(dòng)作,例如,移動(dòng)手直到它接觸到某個(gè)表面,這稱為保護(hù)移動(dòng)(guardedmovement),并確保機(jī)器人在想出到達(dá)其實(shí)際目標(biāo)的規(guī)劃前進(jìn)行過這人的傳感器數(shù)值并告知何時(shí)停止。有時(shí),可以通過一系列不論是否有不確定性都能順利執(zhí)行的保護(hù)移動(dòng)來達(dá)成目標(biāo)。例如,圖26-23展示了一個(gè)有狹窄垂直孔的二維構(gòu)形空間。它可以是將矩形鉚釘插入孔洞,或?qū)⑵囪€匙插入點(diǎn)火開關(guān)的構(gòu)形空間。運(yùn)動(dòng)指令是速度常量。終止條件是接觸到表面。為建模控制中的不確定性,我們假設(shè)機(jī)器人的實(shí)際移動(dòng)方向位于指令方向周圍的錐形Cv中。圖26-23 一個(gè)二維構(gòu)形空間、速度不確定性圓錐和機(jī)器人的可能運(yùn)動(dòng)包絡(luò)。預(yù)期速度是v,但由于不確定性,實(shí)際速度可能是Cv中使得最終的構(gòu)形處于運(yùn)動(dòng)包絡(luò)內(nèi)的某處。這意味著我們知道它是否觸碰到了孔洞圖26-23展示了如果機(jī)器人試圖從初始構(gòu)形一直向下運(yùn)動(dòng)可能發(fā)生的情況。由于速度的不確定性,機(jī)器人可能移動(dòng)到錐面包絡(luò)中的任意地方,可能進(jìn)到孔里,但更可能觸碰到洞口周圍。由于機(jī)器人不知道它在孔的哪一邊,因此它也不知道要往哪里移動(dòng)。圖26-24和圖26-25展示了一種更明智的策略。圖26-24中,機(jī)器人故意移動(dòng)到孔的一邊。運(yùn)動(dòng)指令如圖26-24所示,終止檢測(cè)是接觸到任意表面。圖26-25中,給出的運(yùn)動(dòng)指令使機(jī)器人沿著表面滑行進(jìn)入小孔。由于運(yùn)動(dòng)包絡(luò)內(nèi)所有可能的速度都向右,因此只要機(jī)器人接觸到水平表面,它就會(huì)滑向右側(cè)。圖26-24 第一條運(yùn)動(dòng)指令及機(jī)器人可能的運(yùn)動(dòng)包絡(luò)。不論機(jī)器人的實(shí)際運(yùn)動(dòng)如何,我們都知最終構(gòu)形在孔的左邊圖26-25 第二個(gè)運(yùn)動(dòng)指令以及機(jī)器人可能的運(yùn)動(dòng)包絡(luò)。即使有誤差,機(jī)器人最終也能進(jìn)入小孔當(dāng)它接觸到小孔右側(cè)的豎直邊緣時(shí),它就會(huì)沿其下滑,因?yàn)樗锌赡艿乃俣榷枷鄬?duì)于垂直表面向下。它會(huì)保持移動(dòng),直到抵達(dá)孔洞底部,因?yàn)檫@是它的終止條件。盡管控制有不確定性,但是機(jī)器人的所有可能的軌跡都終止于與小孔底部接觸,也就是說,除非表面不規(guī)則導(dǎo)致機(jī)器人卡在某處。除保護(hù)移動(dòng)外的其他方法將代價(jià)函數(shù)變成對(duì)我們已知能夠獲取信息的動(dòng)作的激勵(lì),例如,使機(jī)器人靠近已知地標(biāo)的海岸導(dǎo)航(costalnavigation)啟發(fā)式。更一般地,方法可以結(jié)合預(yù)期信息增益(信念熵的降低程度),將其作為代價(jià)函數(shù)中的一項(xiàng),使機(jī)器人在決定要做什么時(shí)顯式地對(duì)每項(xiàng)動(dòng)作可能帶來的信息量進(jìn)行推理。盡管計(jì)算上更困難,但這種方法的優(yōu)勢(shì)在于機(jī)器人能夠發(fā)明它自己的信息收集動(dòng)作而不依靠人類提供的啟發(fā)式函數(shù)和規(guī)劃好的策略,它們往往缺乏靈活性。機(jī)器人學(xué)中的強(qiáng)化學(xué)習(xí)目前為止,我們已經(jīng)考慮了機(jī)器人能夠獲取世界中動(dòng)力學(xué)模型的任務(wù)。但在許多任務(wù)中,寫出這種模型是非常困難的,這使得我們進(jìn)入強(qiáng)化學(xué)習(xí)(reinforcementlearning,RL)的領(lǐng)域。機(jī)器人學(xué)中,RL的一項(xiàng)挑戰(zhàn)是狀態(tài)和動(dòng)作空間的天然連續(xù)性,我們要么用離散化處理它,要么更一般地,用函數(shù)近似處理它。策略或價(jià)值函數(shù)的形式為已知有用的特征的組合,或深度神經(jīng)網(wǎng)絡(luò)。神經(jīng)網(wǎng)絡(luò)可以從原始輸入直接映射到輸出,極大地避免了對(duì)特征工程的需要,但它需要更多的數(shù)據(jù)。在真實(shí)世界運(yùn)行時(shí),我們必須確保其動(dòng)作是安全的(壞的?。?,得比每秒1秒還快。強(qiáng)化學(xué)習(xí)使用中最有趣的部分很大程度上匯聚于如何能降低真實(shí)世界樣本的復(fù)雜性,也就是在機(jī)器人學(xué)會(huì)如何完成任務(wù)前,機(jī)器人與真實(shí)世界交互的次數(shù)。利用模型避免太多真實(shí)世界樣本的一種自然方式是使用盡可能多的世界動(dòng)力學(xué)知識(shí)。例如,我們可能不知道摩擦系數(shù)或物體質(zhì)量的確切值,但我們可能有能夠描述這種動(dòng)力學(xué)的公式來作為這些參數(shù)的函數(shù)。這種情況下,基于模型的強(qiáng)化學(xué)習(xí)(第22章)就很有吸引力,其中機(jī)器人可以交替地?cái)M合動(dòng)力學(xué)參數(shù)并計(jì)算更好的策略。即使公式由于不能對(duì)物理學(xué)的所有細(xì)節(jié)進(jìn)行建模而不正確,研究人員也對(duì)參數(shù)之外的誤差項(xiàng)學(xué)習(xí)進(jìn)行了實(shí)驗(yàn),它能夠補(bǔ)償物理模型的不精確性?;蛘?,我們可以完全拋棄這些公式,轉(zhuǎn)而用局部線性模型近似世界,其中每個(gè)模型近似狀態(tài)空間中一個(gè)區(qū)域內(nèi)的動(dòng)力學(xué)。這種方法已經(jīng)能成功地使機(jī)器人掌握一些復(fù)雜動(dòng)態(tài)任務(wù),如雜耍。世界模型也有助于降低無模型強(qiáng)化學(xué)習(xí)方法的樣本復(fù)雜度,通過從模擬到現(xiàn)實(shí)的遷移:將在模擬中工作良好的策略遷移到真實(shí)世界中。它的思路是將模型用作策略搜索的模擬器(22.5節(jié))。為了學(xué)習(xí)一個(gè)能遷移得很好的模型,我們?cè)谟?xùn)練中對(duì)模型增加噪聲,以使策略更健壯?;蛘?,我們可以通過在模擬中采樣不同的參數(shù)來訓(xùn)練能夠在各種各樣的模型中運(yùn)行的策略,這有時(shí)稱為域隨機(jī)化(domain randomization)。26-26展示了一個(gè)例子,其中巧手操作任務(wù)在不同視覺屬性和物理屬性(如摩擦或阻尼)的模擬中進(jìn)行訓(xùn)練。圖26-26 訓(xùn)練健壯的策略。(a)在一個(gè)操作物體的機(jī)械手上多次運(yùn)行模擬,物理學(xué)參數(shù)和照明情況是隨機(jī)的。圖片由WojciechZaremba提供。(b)真實(shí)世界環(huán)境中,單個(gè)機(jī)械手處于籠子中央,周圍有攝像頭和測(cè)距器。(c)模擬和真實(shí)世界訓(xùn)練產(chǎn)生了多個(gè)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025項(xiàng)目法律服務(wù)合同
- 2023八年級(jí)英語下冊(cè) Unit 4 Why don't you talk to your parents Section A 第1課時(shí)(1a-2d)說課稿 (新版)人教新目標(biāo)版
- 7多元文化 多樣魅力《多彩的世界文化》(說課稿)-統(tǒng)編版道德與法治六年級(jí)下冊(cè)
- 2025合同模板承包合同書(車輛)范本
- 2025中外合資公司勞動(dòng)合同協(xié)議書
- 直飲水施工方案
- 食堂餐廳售賣設(shè)備施工方案
- 2024年春七年級(jí)語文下冊(cè) 第4單元 13 葉圣陶先生二三事說課稿 新人教版
- 《1 信息并不神秘》說課稿-2023-2024學(xué)年華中師大版信息技術(shù)三年級(jí)上冊(cè)
- Unit 2 Expressing yourself Part A Lets spell(說課稿)-2024-2025學(xué)年人教PEP版(2024)英語三年級(jí)下冊(cè)001
- SWITCH塞爾達(dá)傳說曠野之息-1.6金手指127項(xiàng)修改使用說明教程
- 2022-2023學(xué)年廣東省佛山市順德區(qū)高三(下)模擬英語試卷
- 節(jié)后復(fù)工培訓(xùn)內(nèi)容五篇
- GB/T 33322-2016橡膠增塑劑芳香基礦物油
- GA 1051-2013槍支彈藥專用保險(xiǎn)柜
- 某水毀公路維修工程施工方案
- 家庭病房工作制度和人員職責(zé)
- 建設(shè)工程監(jiān)理合同示范文本GF-2018-0202
- 2022質(zhì)檢年終工作總結(jié)5篇
- 江蘇省中等職業(yè)學(xué)校學(xué)業(yè)水平考試商務(wù)營銷類(營銷方向)技能考試測(cè)試題
- 國際商務(wù)談判雙語版課件(完整版)
評(píng)論
0/150
提交評(píng)論