官术网_书友最值得收藏!

1.2 智能控制中的強(qiáng)化學(xué)習(xí)

強(qiáng)化學(xué)習(xí)為整個(gè)社會(huì)實(shí)現(xiàn)真正智能化提供了有力的技術(shù)支撐,是智能系統(tǒng)開發(fā)者備受關(guān)注的研究熱點(diǎn)。迄今為止,強(qiáng)化學(xué)習(xí)已被成功應(yīng)用到諸多智能控制系統(tǒng)中,如智能機(jī)器人[12][13]、電腦游戲[14]、調(diào)度系統(tǒng)[15]、智能對(duì)話系統(tǒng)[16]、存儲(chǔ)系統(tǒng)[17]、智能電網(wǎng)[18]、智能交通系統(tǒng)[19]、多智能體系統(tǒng)[20][21]、無人駕駛[22][23]、航空航天系統(tǒng)[24]及數(shù)字藝術(shù)智能系統(tǒng)[25]等。最近,谷歌公司的 DeepMind 團(tuán)隊(duì)在《Nature》雜志上公布了能夠擊敗人類專業(yè)玩家的游戲智能體[26],使得強(qiáng)化學(xué)習(xí)成為當(dāng)今研究焦點(diǎn)。

在智能控制領(lǐng)域,從簡(jiǎn)單的家庭清潔機(jī)器人到人形機(jī)器人,我們?nèi)粘I钪惺褂玫臋C(jī)器人數(shù)量急劇增長(zhǎng)。機(jī)器人的種類很多,如服務(wù)機(jī)器人、移動(dòng)機(jī)器人、協(xié)作機(jī)器人和軍事機(jī)器人[27]。機(jī)器人能為人類提供很多幫助,現(xiàn)在商業(yè)和工業(yè)機(jī)器人廣泛地使用在比人工更可靠且更便宜或者更精確的工作中,也有機(jī)器人被雇傭在骯臟、危險(xiǎn)、枯燥等不利于人類安全的工作中。

為了完成指定工作,機(jī)器人需要被控制,以便在交互的環(huán)境中采取適當(dāng)?shù)男袆?dòng)。例如,機(jī)器人可能需要弄清楚如何在不碰到障礙物、跌倒等情況下完成任務(wù)。到目前為止,我們?nèi)粘I钪惺褂玫倪@些機(jī)器人的控制器通常是由人類工程師手動(dòng)設(shè)計(jì)的。設(shè)計(jì)機(jī)器人需要豐富的經(jīng)驗(yàn)和高度的專業(yè)知識(shí)。此外,設(shè)計(jì)的機(jī)器人是基于機(jī)器人行為和環(huán)境被正確建模的假設(shè)[28]。當(dāng)機(jī)器人必須適應(yīng)新環(huán)境或環(huán)境建模不夠精確時(shí),設(shè)計(jì)的機(jī)器人在執(zhí)行任務(wù)中可能受到限制。因此,開發(fā)自主機(jī)器人是非常必要的。在本書中,我們?cè)噲D為包括機(jī)器人在內(nèi)的任務(wù)級(jí)自主智能控制系統(tǒng)開發(fā)算法,這意味著人類設(shè)計(jì)師只指定任務(wù),智能系統(tǒng)通過學(xué)習(xí)自己來完成任務(wù)[29]

強(qiáng)化學(xué)習(xí)為智能控制系統(tǒng)提供了一個(gè)框架,它使智能系統(tǒng)(如機(jī)器人等)能夠通過與環(huán)境的交互自主地發(fā)現(xiàn)最佳動(dòng)作。正如我們?cè)?.1節(jié)中提到的,強(qiáng)化學(xué)習(xí)和最優(yōu)控制都試圖解決尋找最優(yōu)策略來優(yōu)化目標(biāo)函數(shù)(如累積獎(jiǎng)勵(lì))的問題。然而,最優(yōu)控制以模型的形式假定了對(duì)環(huán)境有完全的了解。因此,在智能控制系統(tǒng)的發(fā)展中最優(yōu)控制是有限的。利用強(qiáng)化學(xué)習(xí)的強(qiáng)大性和靈活性,智能控制領(lǐng)域可以進(jìn)一步自動(dòng)化。

我們以人形機(jī)器人 CB-i 為例來說明強(qiáng)化學(xué)習(xí)在機(jī)器人技術(shù)中是如何工作的[30]。思考一下,我們?cè)囍?xùn)練 CB-i用右手拿到目標(biāo)物體。在這種情況下,機(jī)器人必須在一定程度上感知環(huán)境的狀態(tài),這是由目標(biāo)物體的位置和機(jī)器人關(guān)節(jié)位置和速度的內(nèi)部動(dòng)力學(xué)所規(guī)定的。對(duì)機(jī)器人的動(dòng)作是發(fā)送給電機(jī)的轉(zhuǎn)矩或所需的加速度。函數(shù)生成的基于當(dāng)前關(guān)節(jié)位置和速度的動(dòng)作稱為策略。那么強(qiáng)化學(xué)習(xí)問題就是找到一個(gè)使長(zhǎng)期獎(jiǎng)勵(lì)的總和最大化的策略。這種情況下的獎(jiǎng)勵(lì)可以基于右手與物體的距離進(jìn)行設(shè)計(jì),手離物體越近,機(jī)器人獲得的獎(jiǎng)勵(lì)越高。

強(qiáng)化學(xué)習(xí)通常面臨的是極具挑戰(zhàn)的問題,它的許多挑戰(zhàn)在智能控制系統(tǒng)中尤其明顯。以下是在智能控制中應(yīng)用強(qiáng)化學(xué)習(xí)的兩個(gè)挑戰(zhàn)[28]

(1)高維連續(xù)狀態(tài)和動(dòng)作空間:由于機(jī)器人等智能系統(tǒng)中具有大量的自由度,系統(tǒng)必須處理高維的狀態(tài)和動(dòng)作。隨著維度數(shù)量的增長(zhǎng),需要的數(shù)據(jù)和計(jì)算量呈指數(shù)級(jí)增長(zhǎng),這就是所謂的維度災(zāi)難。此外,大多數(shù)智能系統(tǒng)的狀態(tài)和動(dòng)作具有內(nèi)在連續(xù)性。

(2)智能系統(tǒng)與環(huán)境交互的高成本:由于智能系統(tǒng)要處理復(fù)雜的物理系統(tǒng),采集樣本的成本通常非常昂貴且耗時(shí)。例如,一個(gè)機(jī)器人在網(wǎng)球訓(xùn)練中學(xué)習(xí)如何擊球,我們需要讓機(jī)器人擊球數(shù)百次來學(xué)習(xí)一個(gè)可靠的策略。擊球數(shù)百次可能要花費(fèi)數(shù)周的時(shí)間。而且,真正的機(jī)器人學(xué)習(xí)任務(wù)需要某種形式的人類監(jiān)督,必須有一個(gè)機(jī)器人工程師花費(fèi)大量的時(shí)間和精力通過維護(hù)和修理來保持機(jī)器人運(yùn)作。機(jī)器人維護(hù)是一個(gè)不容忽視的因素,因?yàn)樗c成本、體力勞動(dòng)和漫長(zhǎng)的等待時(shí)間有關(guān)。基于這些原因,真正的機(jī)器人在時(shí)間、勞動(dòng)力和潛在的金錢方面都是昂貴的。因此,對(duì)于機(jī)器人來說高效樣本利用算法是必不可少的。

考慮到上述挑戰(zhàn),并不是每一種強(qiáng)化學(xué)習(xí)方法都適用于智能控制領(lǐng)域。迄今為止發(fā)展起來的強(qiáng)化學(xué)習(xí)方法可以分為兩類:基于值函數(shù)的策略學(xué)習(xí)算法和策略搜索算法。

基于值函數(shù)的策略學(xué)習(xí)算法是早在20世紀(jì)80年代末就被提出且得到廣泛使用的傳統(tǒng)強(qiáng)化學(xué)習(xí)方法,其中最具代表性的算法包括 Watkins 提出的 Q-learning[31]、Sutton 提出的 TD 算法[32],以及 Rummery 等提出的 SARSA 算法[33]。南京大學(xué)的高陽教授等[34]及 MIT 的 Kaelbling 等[6]對(duì)策略迭代算法進(jìn)行了系統(tǒng)地分析與總結(jié),此類算法首先要計(jì)算每個(gè)狀態(tài)-動(dòng)作對(duì)的值函數(shù),然后根據(jù)計(jì)算的值函數(shù)貪婪地選擇值函數(shù)最大的動(dòng)作。策略迭代算法能夠有效地解決離散狀態(tài)動(dòng)作空間問題。面對(duì)連續(xù)狀態(tài)空間問題,啟發(fā)式的方法是網(wǎng)格離散化狀態(tài)空間,北京理工大學(xué)的蔣國(guó)飛等[35]理論性地研究了 Q-learning 在網(wǎng)格離散化中的收斂性問題,指出隨著網(wǎng)格密度的增加空間離散化后 Q-learning 算法求得的最優(yōu)解以概率1收斂。然而,當(dāng)狀態(tài)空間過大時(shí),網(wǎng)格化無法遍歷整個(gè)狀態(tài)空間,即遭遇了“維度災(zāi)難”問題。蔣國(guó)飛等[36]將 Q-learning 與神經(jīng)網(wǎng)絡(luò)結(jié)合,在未離散化連續(xù)狀態(tài)空間的情況下成功地完成了倒立擺的平衡控制。隨后,Lagoudakis 等[37]提出了通過值函數(shù)估計(jì)來解決連續(xù)狀態(tài)問題,極大地提高了策略迭代算法在處理連續(xù)狀態(tài)空間問題中的性能。南京大學(xué)的陳興國(guó)[38]通過引入核函數(shù)的形式提高值函數(shù)的泛化能力,為表達(dá)復(fù)雜值函數(shù)提供技術(shù)支撐。因此,在基于值函數(shù)的策略學(xué)習(xí)算法中,精確地逼近值函數(shù)是一個(gè)挑戰(zhàn)。到目前為止,各種機(jī)器學(xué)習(xí)技術(shù)已經(jīng)被用于更好地實(shí)現(xiàn)值函數(shù)近似,如最小二乘近似方法[37]、流形學(xué)習(xí)[39]、高效樣本重用[40]、主動(dòng)學(xué)習(xí)[41]及魯棒學(xué)習(xí)[42]。近期,DeepMind 團(tuán)隊(duì)在《Nature》上提出了深度 Q 網(wǎng)絡(luò)(DQN),其將 Q-learning 與基于深度神經(jīng)網(wǎng)絡(luò)的值函數(shù)估計(jì)相結(jié)合,是深度強(qiáng)化學(xué)習(xí)的首創(chuàng)也是該領(lǐng)域最成功的案例之一。它是能夠擊敗人類專業(yè)玩家的游戲智能體以及能夠擊敗人類頂尖高手的圍棋博弈智能體[26],極大地震撼了社會(huì)各界,使得強(qiáng)化學(xué)習(xí)成為人工智能領(lǐng)域的研究熱點(diǎn)。

然而,由于策略是通過策略迭代中的值函數(shù)間接學(xué)習(xí),提高值函數(shù)近似的質(zhì)量并不一定會(huì)產(chǎn)生更好的策略。此外,由于值函數(shù)的一個(gè)小的變化會(huì)導(dǎo)致策略函數(shù)的一個(gè)大的變化,所以對(duì)機(jī)器人使用基于值函數(shù)的策略學(xué)習(xí)算法是不安全的。基于值函數(shù)的策略學(xué)習(xí)算法的另一個(gè)缺點(diǎn)是很難處理連續(xù)的動(dòng)作,因?yàn)樾枰业脚c動(dòng)作相關(guān)的最大值函數(shù)來改進(jìn)策略。因此,策略迭代算法在機(jī)器人等智能控制系統(tǒng)環(huán)境中并不直接適用。

另一方面,策略搜索算法專注于為給定的策略參數(shù)化尋找最優(yōu)策略參數(shù)。它能夠處理高維連續(xù)的狀態(tài)和動(dòng)作空間,這非常適用于智能系統(tǒng)。此外,策略搜索算法允許直接為分配的任務(wù)集成預(yù)結(jié)構(gòu)策略[43]。另外,模仿學(xué)習(xí)可以從專家示范中獲得一個(gè)好的初始策略參數(shù),這可以使學(xué)習(xí)過程更加有效[13]。所有這些特性簡(jiǎn)化了智能控制系統(tǒng)的學(xué)習(xí)問題,并允許成功地應(yīng)用于機(jī)器人控制等技術(shù)[44-46]。因此,策略搜索算法通常是智能系統(tǒng)實(shí)現(xiàn)智能控制的選擇,因?yàn)樗玫貞?yīng)對(duì)如機(jī)器人等智能系統(tǒng)學(xué)習(xí)的固有挑戰(zhàn)。事實(shí)上,迄今為止已經(jīng)被證明,智能控制系統(tǒng)經(jīng)常使用策略搜索算法而不是基于值函數(shù)的策略學(xué)習(xí)算法[13][44][47]

目前為止,最具代表性的策略搜索算法包括 PEGASUS[47]、策略梯度算法[48][49]、自然策略梯度[50]、EM[51]及 NAC[52]等。其中,策略梯度算法是最實(shí)用、最易于實(shí)現(xiàn)、且被廣泛應(yīng)用的一種策略搜索算法,由于此類算法中策略的更新是逐漸變化的,能夠確保系統(tǒng)的穩(wěn)定性,尤其適用于復(fù)雜智能系統(tǒng)的決策控制問題,如機(jī)器人[13]。然而,Williams 等[49]提出的傳統(tǒng)策略梯度算法——REINFORCE 算法,梯度估計(jì)方差過大,使得算法不穩(wěn)定且收斂慢。為了解決梯度估計(jì)方差過大的實(shí)質(zhì)性問題,Sehnke 等[48]提出了基于參數(shù)探索的策略梯度算法(Policy Gradients with Parameter-based Exploration,PGPE),該算法通過探索策略參數(shù)分布函數(shù)的方式大大減少了決策過程中的隨機(jī)擾動(dòng),從而根本性地解決了傳統(tǒng)策略梯度算法中梯度估計(jì)方差大的問題。PGPE 算法為連續(xù)動(dòng)作空間問題得到可靠穩(wěn)定的策略提供了保證,然而面對(duì)不同場(chǎng)景的實(shí)際問題,其仍具有挑戰(zhàn)。本書將以 PGPE 算法為基本框架,面對(duì)不同應(yīng)用場(chǎng)景,提出具體解決方案。

主站蜘蛛池模板: 桐城市| 故城县| 阿尔山市| 宁强县| 枣阳市| 县级市| 商水县| 东乡族自治县| 贵州省| 新民市| 茶陵县| 伊宁县| 本溪市| 丽水市| 合山市| 太谷县| 白城市| 阳春市| 洛南县| 文水县| 漳浦县| 武安市| 谢通门县| 彩票| 聂荣县| 盐池县| 仁布县| 莱阳市| 上饶市| 昌图县| 忻州市| 龙门县| 九江市| 盘山县| 丰都县| 怀柔区| 甘洛县| 阜宁县| 泽州县| 富顺县| 哈巴河县|