殷鋒社
(陜西工業(yè)職業(yè)技術(shù)學院 陜西 咸陽 712000)
學習是Agent適應(yīng)復雜動態(tài)不確定環(huán)境的一項重要技能,在現(xiàn)有的各種學習算法中,強化學習是一種能與環(huán)境進行交互的、無需模型的在線學習算法,具有處理動態(tài)不確定性環(huán)境的優(yōu)勢,因而使其成為機器學習研究中的一個重要分支。
傳統(tǒng)的強化學習算法研究沒有考慮Agent的先驗知識,盡管在形式上提供了一個統(tǒng)一的算法框架,但在實際應(yīng)用中,這些沒有啟發(fā)知識的強化學習算法收斂速度都相當慢。另外,標準強化學習算法的收斂性是建立在可以任意遍歷狀態(tài)空間狀態(tài)的前提下,但對于真實的物理環(huán)境(如機器人),這種方式是不現(xiàn)實的。而且在實際應(yīng)用中,Agent總可以獲取各種形式的啟發(fā)知識,因此將知識融入強化學習系統(tǒng)中,不僅可以改善強化學習算法的收斂性,而且還充分利用系統(tǒng)的資源(如專家知識等)。
強化學習是學習如何把狀態(tài)映射到動作使獎賞值達到最大的學習算法,Agent通過在環(huán)境中不斷地感知和動作,來學習選擇最優(yōu)的動作以實現(xiàn)目標任務(wù),強化學習堅實的理論基礎(chǔ)和誘人的應(yīng)用前景正逐漸受到各研究領(lǐng)域?qū)W者的廣泛重視,不僅是研究智能學習的理論工具,同時又是實際應(yīng)用的有效手段。下面對強化學習的基本原理及常用的基本算法進行介紹。
強化學習系統(tǒng)的基本框圖如圖1所示,強化學習的基本原理是:如果Agent的某個動作導致環(huán)境正的獎賞 (強化信號),那么Agent以后產(chǎn)生這個動作的趨勢便會加強;反之A-gent產(chǎn)生這個動作的趨勢減弱。
圖1 強化學習基本框圖Fig.1 Basic block diagram of the reinforcement learning
一般地,強化學習問題可以看成是一個Markov決策過程(Markov Deeision Proeesses,MDP),其定義如下:
其中S是有限的離散狀態(tài)空間,A是有限的離散動作空間;R是回報函數(shù);p是狀態(tài)轉(zhuǎn)移函數(shù),因此在已知狀態(tài)轉(zhuǎn)移概率函數(shù)P和回報函數(shù)R的環(huán)境模型知識下,可以采用動態(tài)規(guī)劃技術(shù)求解最優(yōu)策略。而強化學習著重研究在P函數(shù)和R函數(shù)未知的情況下,Agent如何獲得最優(yōu)策略[2]。
目前,強化學習主要有兩大類算法:一類是值函數(shù)估計法,這是強化學習領(lǐng)域研究最為廣泛的方法;另一類是策略空間直接搜索法,如遺傳算法、遺傳編程、模擬退火方法以及一些其他改進方法?;谥岛瘮?shù)估計的常用算法主要有[3]:TD算法、Q-學習算法、Saras算法等。
1.2.1 TD算法
國內(nèi)企業(yè)的現(xiàn)代企業(yè)管理尚存在諸多不足。一方面來自于國內(nèi)市場經(jīng)濟發(fā)展尚不成熟,企業(yè)在管理方面受限于現(xiàn)實條件,在現(xiàn)代企業(yè)管理優(yōu)化上存在一定的滯后性。另一方面來自于企業(yè)本身對現(xiàn)代信息經(jīng)濟的把握能力不足,無論是現(xiàn)代企業(yè)管理理念、企業(yè)文化的塑造、企業(yè)制度的完善還是企業(yè)技術(shù)流程的優(yōu)化等,都尚未與數(shù)字化模式進行最優(yōu)的結(jié)合,使得企業(yè)的發(fā)展仍然受限。
TD(temporal difference)學習是強化學習技術(shù)中最主要的學習技術(shù)之一,TD學習是蒙特卡羅思想和動態(tài)規(guī)劃思想的結(jié)合,即一方面TD算法在不需要系統(tǒng)模型情況下可以直接從Agent經(jīng)驗中學習;另一方面TD算法和動態(tài)規(guī)劃一樣,利用估計的值函數(shù)進行迭代[4]。
最簡單的TD算法為一步TD算法,即TD(0)算法,這是一種自適應(yīng)的策略迭代算法。但TD(0)算法存在收斂慢的問題,其原因在于,TD(0)中Agent獲得的瞬時獎賞值只修改相鄰狀態(tài)的值函數(shù)估計值。更有效的方法是Agent獲得的瞬時獎賞值可以向后回退任意步,稱為TD(幻算法。TD(幻算法的收斂速度有很大程度的提高,算法迭代公式可用下式表示:
其中,e(s)定義為狀態(tài)的資格跡(eligibilitytraees)。實際應(yīng)用中e(s)可以通過以下方法計算:
上式說明,如果一個狀態(tài):被多次訪問,表明其對當前獎賞值的貢獻最大,然后其值函數(shù)通過式(3)迭代修改。
1.2.2 Q學習算法
Q-學習算法由watkins提出的一種模型無關(guān)的強化學習算法,也被稱為離策略TD學習(off policy TD)[5],被譽為強化學習算法發(fā)展中的一個重要里程碑。Q-學習是對狀態(tài)-動作對的值函數(shù)進行估計的學習策略,最簡單的Q學習算法是單步Q學習,其Q值的修正公式如下:
上式中參數(shù)a稱為學習率(或?qū)W習步長),r為折扣率。
1.2.3 Sarsa算法[6]
Sarsa算法是Rummery和Niranjan于1994年提出的一種基于模型算法,最初被稱為改進的Q-學習算法。它仍然采用的是Q值迭代,但sarsa是一種在策略Tn學習(on-policy Tn)。
在前面介紹常用的3個強化學習算法中,其中Q-學習算法與其他兩種算法存在一個很大的不同之處,就是TD算法和Saras算法是在策略(on policy)學習方法,而Q-學習算法是離策略 (off policy)學習方法。在策略學習方法中,要學習的最優(yōu)值函數(shù)依賴于學習過程中當前所采取的策略,學習過程中選擇的策略質(zhì)量的好壞直接影響Agent要學習的最優(yōu)策略。在離策略學習方法中,要學習的最優(yōu)策略與在學習過程中采取的策略無關(guān),這就使Agnet對學習策略的選擇具有更大的控制力。故本節(jié)將要提出的基于知識的Q-學習(Knowledge-Based-Learning,KBQL)模型選用Q-學習算法來研究。
下面首先對Q-學習算法的收斂性進行分析,在此基礎(chǔ)提出的KBQL算法并對Agent內(nèi)部的學習機制進行詳細介紹。
Watkins給出了在Markova決策環(huán)境下,Q-學習算法的收斂性的完整證明,下面介紹收斂定理。
Q-學習的值函數(shù)的修改迭代公式,則有以下定理:
當?shù)綌?shù)n趨于無窮大時,假定所有的狀態(tài)-動作對被無限地經(jīng)常訪問,那么,對所有的狀態(tài)-動作對(s,a)由Q-學習算法產(chǎn)生的 Q-值序列{Qn(s,a)}以概率-收斂于最優(yōu)值 Q(s,a)。
定理1 收斂定理:假設(shè)迭代公式中學習率參數(shù)a滿足條件。
根據(jù)收斂定理可知,在Q-學習中有一個附加要求:所有潛在有用的動作都應(yīng)被測試,即要對所有允許的狀態(tài)-動作對都應(yīng)該經(jīng)常探測(explore)足夠的次數(shù)以滿足收斂定理。因此,在給定動作集的情況下,狀態(tài)集的大小是影響Q-學習收斂速度的最重要因素。
標準Q-學習算法的收斂速度依賴于要學習的狀態(tài)空間大小,另外還與學習過程的動作選擇機制有關(guān)。因此引入Agent的知識庫來縮小要學習的狀態(tài)空間,并將動作選擇機制從強化學習模塊中分離出來,提供一個更靈活的決策機制,利用Agent的知識來指導探測狀態(tài)空間。它主要包括3個模塊[8],即RL模塊、決策控制模塊和知識庫KB。
1)RL模塊 RL模塊里采用離策略的Q-學習算法,但它與標準的Q-學習算法模塊有所不同,在標準Q-學習算法中,其動作選擇機制包含在算法模塊中,而RL模塊只實現(xiàn)狀態(tài)-動作對的值函數(shù)Q(s,a)的計算,即在每一個離散時刻t,由決策控制模塊確定一個動作at,得到經(jīng)驗知識和訓練樣例{st,at,st+1,rt+1},RL模塊根據(jù)此經(jīng)驗知識更新Q值。
2)決策控制模塊 決策控制模塊主要實現(xiàn)Q-學習算法的動作選擇機制。利用Agent的知識來指導Agent的探測行為。當遇到Agent的知識無法指導的情況下,就啟用標準Q-學習算法中常用的Soft-Max動作選擇策略。
3)知識庫 KB Agent的知識庫既包括 Agent的先驗知識,也包括學習中Agent獲得的知識,這些知識可以根據(jù)Agent當前環(huán)境的當前狀態(tài),為決策控制模塊可以提供一個建議動作或一組動作集合。但這個動作是否具有可行性,知識庫中沒有相關(guān)的知識,還需要Agent在學習過程驗證,因此A-gent內(nèi)部必須要有一個學習機制,來不斷修正知識庫的知識。
KBQL的學習機制的基本思想就是[9]:在學習中不斷修正由Agent的先驗知識得到的錯誤決策。根據(jù)Agent的知識得到一個sw或w的動作,但執(zhí)行這個動作致使Agent撞墻。把由Agent的知識直接得到一個錯誤決策(如撞墻)的狀態(tài)直接稱為直接異常狀態(tài),用異常標志以)s=true表示。還有一些潛在的異常狀態(tài)不能馬上識別,是通過學習機制來識別的。
強化學習是解決Markov決策問題的主要方法,但當Markov決策過程具有大規(guī)?;蜻B續(xù)的狀態(tài)或行為空間時,強化學習面臨兩個主要的難題[10],一個是存儲與計算問題,第二個問題是泛化問題(generazition problem)。為了克服“維數(shù)災難”帶來的這兩個問題,在強化學習中引入了值函數(shù)逼近(Valuefnctoin Approximation)器,它是解決強化學習在大規(guī)模和連續(xù)狀態(tài)空間中的泛化問題的有效方法。但在基于值函數(shù)逼近的強化學習方法中,由于函數(shù)逼近器帶來的誤差或者函數(shù)逼近器本身的發(fā)散,會使強化學習算法的收斂性變差。因此,如能利用Agent的領(lǐng)域知識,引導Agent在有意義的狀態(tài)空間進行搜索,將會改善學習算法的收斂性和學習效率。
筆者首先介紹了強化學習的基本原理及常用的3種強化學習算法,其中Q-學習是一種離策略學習算法,要學習的最優(yōu)策略與在學習過程中采取的策略無關(guān),這就給了學習過程中的動作選擇機制更大的靈活性。本章提出的基于知識的Q-學習算法(KBQL)就是利用Q-學習算法的這個特點,利用Agent的先驗知識來縮小Agent學習的狀態(tài)空間,以加速強化學習的收斂性,同時采用Agent[11]的學習機制克服其知識的不精確性,從而提高學習算法的魯棒性和適應(yīng)性。還對基于值函數(shù)逼近的強化學習算法進行研究,詳細分析了強化學習過程以及函數(shù)逼近器對強化學習的影響。基于Agent知識的學習算法不改變原有問題的最優(yōu)策略,但可以利用這些知識來縮小要學習的狀態(tài)空間或引導Agent向期望的狀態(tài)空間進行搜索,從而改善強化學習算法的性能。
[1]伍少成.Agent的強化學習與通信技術(shù)研究及應(yīng)用[D].廣州:華南理工大學,2006.
[2]胡山立,石純一.Agent的意圖模型[J].軟件學報,2000,11(7):96-97.HU Shan-li,SHI Chun-yi.Agent's intention model[J].Journal of Software, 2000,11(7):96-97.
[3]康小強,石純一.一種理性Agent的BDI模[J].軟件學報,1999,10(12):268-274.KANG Xiao-qiang,SHI Chun-yi.A rational Agnet the BDI model[J].Software, 1999,10(12):268-274.
[4]馬光偉,徐晉暉,石純一.Agent思維狀態(tài)模型[J].軟件學報,1999,10(4):42-48.MA Guang-wei, XU Jin-hui, SHI Chun-yi.Agent mental state model[J].Software,1999,10(4):42-48.
[5]Oldridge M.This15MYWORLD:TheLogieofanAgent·oriented-DAI testbed,ECAI-94,SPringer.
[6]劉勇,蒲樹禎,程代杰,等.BDI模型信念特性研究[J].計算機研究與發(fā)展,2005,42(l):54-59.LIU Yang, PU Shu-zhen, CHENG Dai-jie, et al.BDI model characteristics of faith[J].Computer Research and Development, 2005,42(1):54-59.
[7]胡山立,石純一.一個改進的理性Agnet-BDI模型[J].計算機研究與發(fā)展,2000,37(9):125-129.HU Shan-li,SHI Chun-yi.An improved rational Agnet a BDI model[J].Computer Research and Development,2000,37(9):125-129.
[8]程顯毅,夏德深.Agent思維狀態(tài)屬性的研究[J].南京理工大學學報,2004,28(6):34-38.CHENG Xian-yi,XIA De-shen.Agent mental state of the property[J].Nanjing University, 2004,28(6):34-38.
[9]于江濤.多智能體模型、學習和協(xié)作研究與應(yīng)用[D].浙江:浙江大學,2003.
[10]Russell S,Novig P.人工智能:一種現(xiàn)代方法[M].姜哲,金奕江,張敏,等譯.北京:人民郵電出版社,2010.
[11]常承陽.基于多Agent的在線培訓系統(tǒng)設(shè)計[J].現(xiàn)代電子技術(shù),2009(18):110-112.CHANG Cheng-yang.Design of online training system based on multi-Agent[J].Modern Electronics Technique,2009(18):110-112.