一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

強(qiáng)化學(xué)習(xí)中無(wú)處不在的貝爾曼最優(yōu)性方程,背后的數(shù)學(xué)原理為何?

 taotao_2016 2020-02-22

在星際爭(zhēng)霸和圍棋等游戲中,強(qiáng)化學(xué)習(xí)已取得了舉世矚目的成功。而這些成功背后的核心則是用于求解馬爾可夫決策過(guò)程(MDP)的貝爾曼最優(yōu)性方程(Bellman Optimality Equation)。
可以說(shuō),貝爾曼方程在強(qiáng)化學(xué)習(xí)中無(wú)處不在,了解此方程的數(shù)學(xué)基礎(chǔ)對(duì)于理解 RL 算法的工作原理必不可少。它是由美國(guó)應(yīng)用數(shù)學(xué)家理查德·貝爾曼(Richard Bellman)提出,用于求解求解馬爾可夫決策過(guò)程。 
Towards Data Science 博主 Vaibhav Kumar 在本文中對(duì)此方程背后的數(shù)學(xué)基礎(chǔ)的進(jìn)行了詳盡介紹,通俗易懂而又不失數(shù)學(xué)上的嚴(yán)格性。
好文共賞之,以下譯出原文與大家分享:
在星際爭(zhēng)霸(AlphaStar)和圍棋(AlphaGO)游戲中,強(qiáng)化學(xué)習(xí)已取得了舉世矚目的成功。而這些成功背后的核心則是用于求解馬爾可夫決策過(guò)程(Markov decision processes,MDP)的貝爾曼最優(yōu)性方程。
貝爾曼最優(yōu)性方程
貝爾曼最優(yōu)性方程是一個(gè)遞歸方程,可由動(dòng)態(tài)規(guī)劃(dynamic programming,DP)算法求解,通過(guò)求解該方程可以找到最優(yōu)值函數(shù)和最優(yōu)策略。 

一、本文將涉及到的數(shù)學(xué)符號(hào)

  • S 表示狀態(tài)空間

  • V 表示值函數(shù)

  • V* 表示最優(yōu)值函數(shù)

  • V(s) 表示值函數(shù)在狀態(tài)為 s時(shí)的取值

  • π 表示策略

  • π* 表示最優(yōu)策略

  • π(s) 返回在狀態(tài)為 s 時(shí)策略π所采取的行動(dòng)
  • P 表示轉(zhuǎn)移概率矩陣
  • A 表示所有可能行動(dòng)的集合

二、預(yù)備知識(shí)

盡管我盡力讓文章易懂,但限于篇幅且要同時(shí)確保分析的嚴(yán)格性,我還是假定讀者已經(jīng)了解以下預(yù)備知識(shí):
  • 馬爾可夫決策過(guò)程(MDP)

  • 貝爾曼方程式以及如何使用迭代法求解此方程

  • RL基礎(chǔ),諸如價(jià)值函數(shù),獎(jiǎng)勵(lì),策略,折現(xiàn)因子等概念

  • 線性代數(shù)

  • 向量求導(dǎo)

三、理解貝爾曼方程的幾大要點(diǎn)

如果你對(duì) RL 和 MDP 略有研究,想必你一定會(huì)遇到過(guò)此類說(shuō)法:“對(duì)于每個(gè)MDP,總有至少一個(gè)策略優(yōu)于或等于所有其他策略?!?/span>
在Sutton和Barto的經(jīng)典教科書中以及David Silver的系列講座中讀到或聽到這些說(shuō)法時(shí)似乎非常直觀,不證自明。但是,我們必得更深入地研究并以更具體的(當(dāng)然,你懂得,作者意思是數(shù)學(xué)上的具體,而非常識(shí)上的直觀)方式理解為何這么說(shuō)。因此,在本文中,我將在數(shù)學(xué)上證明以下定理:
對(duì)于任何有限的MDP,都存在一個(gè)最佳策略π*,滿足其他所有可能的策略π都不會(huì)比這個(gè)策略更好。
在尋找最佳策略之前,我們需要先了解一下策略的順序。即什么時(shí)候我們認(rèn)為一項(xiàng)策略(π1)比另一項(xiàng)策略(π2)好?
如果對(duì)于狀態(tài)空間中的每個(gè)狀態(tài),使用π1派生的值函數(shù)在此狀態(tài)的值都大于或等于使用π2派生的值函數(shù)在此狀態(tài)的值,則可以說(shuō)策略π1優(yōu)于策略π2。數(shù)學(xué)上,可以這樣寫:
策略間的比較
既然我們已經(jīng)知道如何比較策略,接下來(lái)我們需要證明始終存在一個(gè)比所有其他策略都更好的策略。我們將使用巴拿赫不動(dòng)點(diǎn)定理證明這一點(diǎn),方法是證明貝爾曼最優(yōu)算子是對(duì)帶有L-無(wú)窮范數(shù)度量的實(shí)數(shù)完備度量空間上的閉映射。為此,我們首先說(shuō)說(shuō)不動(dòng)點(diǎn)問(wèn)題以及關(guān)于柯西序列的完整度量空間。
上一段聽起來(lái)很嚇人,但是一旦我們理解了每個(gè)基本術(shù)語(yǔ)的含義,它將變得非常容易和直觀。所以別怕!我們接下來(lái)將一個(gè)一個(gè)地討論上段標(biāo)粗體的術(shù)語(yǔ)。讓我們克服我們的恐懼,以一種自下而上的方法,學(xué)習(xí)每個(gè)概念:

1. 不動(dòng)點(diǎn)問(wèn)題

我相信我們大多數(shù)人都熟悉方程求根問(wèn)題。我們求使函數(shù)f(x) = 0的點(diǎn)x。在不動(dòng)點(diǎn)問(wèn)題中,我們則求解使得f(x) = x的點(diǎn)x。 
顧名思義,點(diǎn)x是一個(gè)不動(dòng)點(diǎn),就是說(shuō)即使在其上應(yīng)用函數(shù)f(x),它的值也不會(huì)改變。通過(guò)構(gòu)造另一個(gè)函數(shù) g(x) = f(x)-x = 0,不動(dòng)點(diǎn)問(wèn)題可以轉(zhuǎn)化為方程求根的問(wèn)題。
實(shí)際上,方程求根問(wèn)題也可以轉(zhuǎn)換回求不動(dòng)點(diǎn)問(wèn)題。但是(在特定情況下)解決不動(dòng)點(diǎn)問(wèn)題更容易,這使得不動(dòng)點(diǎn)問(wèn)題變得非常有趣和有用(節(jié)省了計(jì)算開銷)。
要解決不動(dòng)點(diǎn)問(wèn)題,隨機(jī)選擇一個(gè)x的作為起始值,并無(wú)限次重復(fù)應(yīng)用f(x)。如果“函數(shù)是收斂的”,那么你將找到不動(dòng)點(diǎn)問(wèn)題的解。
從數(shù)學(xué)上講,這很簡(jiǎn)單,讓我們先介紹一個(gè)符號(hào):

記號(hào)fn(x)表示在x點(diǎn)上連續(xù)應(yīng)用n次函數(shù)
現(xiàn)在,如果函數(shù)是收斂的,那么它必須收斂到某個(gè)值,比方說(shuō), x*。下面論證則是要說(shuō)明這個(gè)值 x*確實(shí)是不動(dòng)點(diǎn)問(wèn)題的解:
讓我們選擇一任意值 x0并在其上無(wú)限次應(yīng)用函數(shù)f(.)以獲得 x*,然后使用它來(lái)解決不動(dòng)點(diǎn)問(wèn)題,如下圖所示:
求解不動(dòng)點(diǎn)問(wèn)題
這背后的直覺很簡(jiǎn)單,如果某個(gè)函數(shù)在某個(gè)點(diǎn)收斂,那么該函數(shù)在那個(gè)收斂點(diǎn)的值就是收斂點(diǎn)本身。因此,這個(gè)收斂點(diǎn)就是不動(dòng)點(diǎn)。
也可以通過(guò)以下代碼從經(jīng)驗(yàn)上觀察到函數(shù)收斂到不動(dòng)點(diǎn),代碼鏈接如下:
  • https://gist.github.com/TimeTraveller-San/8e37399d4740928a258f395413bde2e7/raw/c48fecd50fa29634eea144917f92787c3ccd7bf3/Fixed%20point%20problem.ipynb


2. 度量空間

度量空間只是一個(gè)在其上定義了度量的集合,度量則是定義了集合中任何兩個(gè)元素之間的距離。例如,歐幾里德空間是度量空間,其距離定義為歐幾里德距離。因此,度量空間 M 可表示為(X, d) ,其中X是集合,d 是某種度量。一個(gè)度量d 必須滿足以下四條性質(zhì):
  • 單位性:d(x,x) = 0

  • 非負(fù)性:d(x, y) >0

  • 對(duì)稱性:d(x,y) = d(y,x)

  • 三角不等式:d(x,z) ≤ d(x,y)+d(y,x)

3. 柯西序列

對(duì)于度量空間(X,d),集合X中的元素組成的序列(x1,x2,x3 .... xn)是柯西序列, 如果對(duì)于任意正實(shí)數(shù)ε, 存在一個(gè)整數(shù)N,使得以下等式成立:
柯西序列
這里的數(shù)學(xué)解釋有點(diǎn)小復(fù)雜,還不夠直觀(然而實(shí)際定義就是這樣的)。用簡(jiǎn)單的話說(shuō),度量空間元素組成的序列如果在某個(gè)點(diǎn)收斂(它們無(wú)限接近于某個(gè)點(diǎn)),這個(gè)序列就是柯西序列。

4. 完備度量空間

如果由集合X 中元素組成的每個(gè)可能的柯西序列都收斂到集合X中的元素,則度量空間(X, d) 是完備的。也就是說(shuō),由集合元素組成的每個(gè)柯西序列的極限所對(duì)應(yīng)元素也屬于該集合, 這也是為什么它被稱為“完備”的原因。

5. 壓縮映像

在度量空間 (X, d) 的元素上定義的函數(shù)(算子或映射)是一個(gè)壓縮映像(或壓縮子),如果存在某個(gè)常數(shù)γ∈[0,1),使得對(duì)于度量空間中任意兩個(gè)元素x1 和x2,滿足以下條件:
壓縮映像
這也就意味著在將元素x1 和 x2上應(yīng)用了映射 f(.) 之后,它們彼此之間的距離至少在小于1的一個(gè)乘數(shù)因子γ意義下更接近 。而且,該常數(shù)的最小值被稱為L(zhǎng)ipschitz常數(shù)(這是生成對(duì)抗網(wǎng)絡(luò)的重要常數(shù))。另外,如果γ=1,則映射不再是壓縮映射,而是短映射。直觀上來(lái)說(shuō),在應(yīng)用壓縮映射后,元素之間序列值會(huì)越來(lái)越接近。

6. 巴拿赫不動(dòng)點(diǎn)定理

此定理是我們證明的靈魂。非正式地講,這個(gè)定理是說(shuō),對(duì)于一個(gè)完整的度量空間,將壓縮映射一遍又一遍地應(yīng)用到集合的元素上,我們最終將得到唯一的一個(gè)最優(yōu)值。我們知道:
  • 壓縮映射將集合中元素聚集到一起。

  • 不停地運(yùn)用這個(gè)壓縮映射,我們會(huì)得到一個(gè)柯西序列。

  • 完備度量空間中的柯西序列始終會(huì)收斂到自身中的一個(gè)值。

形式上,該定理可以表述為:
令(X, d)是一個(gè)完備的度量空間,函數(shù)f: X->X是一個(gè)壓縮映射,則f具有唯一一個(gè)不動(dòng)點(diǎn) x*∈ X (即,f(x *)=x *) ,使得序列 f(f(f(…f(x))))收斂至x *。
現(xiàn)在,為了數(shù)學(xué)上證明這一點(diǎn),我們需要證明x *的唯一性和存在性。
唯一性:我們將通過(guò)反證法證明這一點(diǎn)。我們假設(shè)收斂值不是唯一的,并且x1*和x2 *是壓縮映射序列收斂的兩個(gè)值,那么我們會(huì)有:
x1 *和x2 *是最優(yōu)值,壓縮映射已在這兩點(diǎn)收斂,距離不再會(huì)變。此外,注意到f是壓縮映射,因此必須具有以下性質(zhì):
現(xiàn)在,由于γ∈[0,1),無(wú)法同時(shí)滿足等式1和2,導(dǎo)出矛盾(因?yàn)榇颂幖俣▋牲c(diǎn)距離大于零)。因此,我們的假設(shè)是錯(cuò)誤的,x *必是唯一的。
存在性 現(xiàn)在我們已經(jīng)證明x *是唯一的,我們還需要證明x *存在。令(x1, x2, x3, …. xn)為重復(fù)應(yīng)用壓縮映射所形成的序列。
重復(fù)應(yīng)用壓縮映射所形成的序列的通項(xiàng)
如果我們假設(shè)序列(x1, x2, x3, …. xn)是柯西序列,我們知道該序列將收斂到某個(gè)點(diǎn),例如,x *。而且,由于度量空間是完整的,所以該收斂點(diǎn)x *屬于度量空間(X,d)?,F(xiàn)在,我們只需要證明此序列是柯西序列即可。我們?nèi)⌒蛄兄衳n和xm中兩個(gè)元素,使得m >> n,并使得m足夠大,然后通過(guò)重復(fù)應(yīng)用度量d的三角形不等式性質(zhì)來(lái)證明此序列是柯西序列, 我們有:
展開度量d上的三角不等式
現(xiàn)在,由于f是壓縮映射,我們知道:
重復(fù)運(yùn)用壓縮映射不等式
我們可進(jìn)一步將d(xm, xn)化為如下形式 :
現(xiàn)在,通過(guò)選擇一個(gè)足夠大的n,我們可以使上式的右邊小于任何正實(shí)數(shù) ε 。因此,序列序列(x1, x2, x3, …. xn)是柯西序列,并且存在最優(yōu)的x *∈X。這就證明了巴拿赫不動(dòng)點(diǎn)定理。

四、回到貝爾曼最優(yōu)性方程

對(duì)于值函數(shù)V(s),我們定義一個(gè)新的算子,即最優(yōu)貝爾曼算子B,它接受一個(gè)值函數(shù)并返回一個(gè)新的值函數(shù)。具體地,我們將此算子定義如下:
貝爾曼算子
可以很容易地觀察到, B是一個(gè)遞歸算子。因此,對(duì)初始值函數(shù)重復(fù)運(yùn)用此算子將生成一系列值函數(shù)。如果我們可以證明B確實(shí)是某個(gè)度量空間(X,d)上的壓縮映射,那么根據(jù)巴拿赫不動(dòng)點(diǎn)定理,我們可以得出結(jié)論,最優(yōu)貝爾曼算子的重復(fù)應(yīng)用最終將導(dǎo)出唯一的最優(yōu)值函數(shù)函數(shù),通過(guò)值函數(shù)可以得到最優(yōu)策略。因此,我們的工作現(xiàn)在都簡(jiǎn)化為證明B是壓縮映射。首先,讓我們定義度量空間如下:
度量空間(X,d):集合X是值函數(shù)的取值空間,定義如下:
值函數(shù)屬于實(shí)數(shù)集。下面的 X 表示整個(gè)值函數(shù)的集合,上面的 X表示值函數(shù)在單個(gè)狀態(tài)上的值域。(注:下文提到的所有 X 指的是下面的 X)

對(duì)此度量空間,我們使用的L-無(wú)窮范數(shù)定義如下:
L-無(wú)窮范數(shù)
根據(jù)此度量空間范數(shù)的定義,兩個(gè)值函數(shù)之間的距離等于兩個(gè)值函數(shù)向量各方向絕對(duì)值之差的最大值。同樣,對(duì)于有限獎(jiǎng)勵(lì)的有限MDP,值函數(shù)將始終在實(shí)數(shù)空間中。因此,此有限空間是完備的。
定理:貝爾曼算子B是有限空間(X, L-infinity)上的壓縮映射
證明:假設(shè)V1和V2是兩個(gè)值函數(shù)。則:
B是壓縮映射的證明
  • 在上面的第二步中,我們通過(guò)用a代替第二個(gè)值函數(shù)中的a'來(lái)引入不等式。這是因?yàn)橥ㄟ^(guò)將最優(yōu)動(dòng)作a替換為其他動(dòng)作 a',我們降低了其總價(jià)值,從而引入了不等式。

  • 在上面的第四步中,我們通過(guò)在狀態(tài)空間 s'上取最大值來(lái)移除L-無(wú)窮范數(shù)(回想一下在前面我們關(guān)于值函數(shù)的L-無(wú)窮范數(shù)的定義)

  • 在最后一步中,因?yàn)楦怕屎褪冀K為1,我們消去了求和號(hào)。

最后,在貝爾曼最優(yōu)性方程中,由于γ∈[0,1)(現(xiàn)在暫時(shí)忽略γ= 1的可能性),因此貝爾曼算子是壓縮映射。
現(xiàn)在我們知道:
  • 1、(X, L-infinity) 是一個(gè)完備的度量空間

  • 2、貝爾曼算子B是壓縮映射

因此,根據(jù)巴拿赫不動(dòng)點(diǎn)定理,我們得出結(jié)論,對(duì)每個(gè)MDP,存在唯一的最優(yōu)值函數(shù)V *,使用這個(gè)值函數(shù),我們可以得到最優(yōu)策略π *。
因此證明,對(duì)于任何有限的MDP,都存在一個(gè)最優(yōu)策略π *,不差于其他所有可能的策略π。
那么,問(wèn)題來(lái)了,如何找到這種最優(yōu)的策略和值函數(shù)呢?一種方法就是在隨機(jī)初始值函數(shù)上重復(fù)運(yùn)用貝爾曼算子以獲得最佳函數(shù)。但是,這在計(jì)算上非常耗時(shí),此法經(jīng)常是完全不可行的。因此,我們要使用諸如值和策略迭代之類的迭代方法或諸如Q-Learning或SARSA之類的時(shí)間差分方法。有關(guān)更多信息,請(qǐng)參閱:
  • 作者的博客:https:///reinforcement-learning-temporal-difference-sarsa-q-learning-expected-sarsa-on-python-9fecfda7467e

  • Github 地址:https://github.com/TimeTraveller-San/RL_from_scratch

五、總結(jié)

我們了解了一些基本的數(shù)學(xué)工具,例如度量空間,完備度量空間,柯西序列,壓縮映射和巴拿赫不動(dòng)點(diǎn)定理?;谶@些數(shù)學(xué)工具,我們?cè)跀?shù)學(xué)上證明了用于求解 MDP 的貝爾曼最優(yōu)方程的唯一性和最優(yōu)性。
via https:///mathematical-analysis-of-reinforcement-learning-bellman-equation-ac9f0954e19f

  直播預(yù)告

【時(shí)間】2020年2月22日晚20:00

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    国产熟女一区二区不卡| 中文字幕佐山爱一区二区免费| 久久99亚洲小姐精品综合| 日韩黄色大片免费在线| 欧美一区二区口爆吞精| 日本91在线观看视频| 一区二区福利在线视频| 国内午夜精品视频在线观看| 亚洲精品小视频在线观看| 91亚洲人人在字幕国产| 亚洲最新中文字幕一区| 色哟哟在线免费一区二区三区 | 国产乱久久亚洲国产精品| 熟女乱一区二区三区四区| 亚洲最大的中文字幕在线视频| 91久久精品国产成人| 亚洲中文字幕在线乱码av| 黄色av尤物白丝在线播放网址| 日韩精品一区二区毛片| 91在线国内在线中文字幕| 91亚洲国产日韩在线| 国产一区国产二区在线视频| 中文字幕乱码免费人妻av| 成年午夜在线免费视频| 国产成人精品视频一二区| 在线免费不卡亚洲国产| 精品少妇人妻一区二区三区| 在线免费不卡亚洲国产| av中文字幕一区二区三区在线 | 亚洲精品深夜福利视频| 国产成人精品视频一二区| 成人日韩在线播放视频| 日韩精品中文字幕在线视频| 中文字幕日韩欧美理伦片| 成人国产激情福利久久| 亚洲综合激情另类专区老铁性| 成人欧美一区二区三区视频| 中文字幕五月婷婷免费| 欧美中文日韩一区久久| 国产日韩精品激情在线观看| 久热久热精品视频在线观看|