DeepMind 把自己的“殺手锏”開(kāi)源了!
本文轉(zhuǎn)自雷鋒網(wǎng),如需轉(zhuǎn)載請(qǐng)至雷鋒網(wǎng)官網(wǎng)申請(qǐng)授權(quán)。
眾所周知,強(qiáng)化學(xué)習(xí)(Reinforcement Learning)是一種人工智能訓(xùn)練技術(shù),無(wú)論是在棋牌游戲方面打敗人類選手的機(jī)器人,還是在訓(xùn)練自動(dòng)駕駛系統(tǒng)方面,強(qiáng)化學(xué)習(xí)都起著至關(guān)重要的作用。
近日,Alphabet 旗下的 DeepMind 發(fā)表了一篇由 27 位研究人員共同完成的論文,詳細(xì)介紹了一個(gè)名為 OpenSpiel 的針對(duì)游戲的強(qiáng)化學(xué)習(xí)框架——這正是 DeepMind 的長(zhǎng)處所在。
OpenSpiel 厲害在哪兒?
這個(gè)名叫 OpenSpiel 的框架可以看作是一個(gè)強(qiáng)化學(xué)習(xí)環(huán)境和算法的集合(其中大部分環(huán)境和算法已經(jīng)進(jìn)行了全面測(cè)試),可以用于通用強(qiáng)化學(xué)習(xí)的研究和游戲的搜索/規(guī)劃研究;它還為分析學(xué)習(xí)動(dòng)態(tài)和其他常見(jiàn)評(píng)估指標(biāo)提供了工具。
論文中發(fā)現(xiàn),OpenSpiel 旨在許多不同的游戲中促進(jìn)多智能體強(qiáng)化學(xué)習(xí),重點(diǎn)是學(xué)習(xí),而不是競(jìng)爭(zhēng);而且,該框架的建設(shè)基于兩個(gè)重要標(biāo)準(zhǔn),即簡(jiǎn)單和輕量——簡(jiǎn)單主要體現(xiàn)在編程語(yǔ)言方面,即便是來(lái)自不同領(lǐng)域的研究人員也能輕易理解;輕量則體現(xiàn)在 OpenSpiel 將依賴關(guān)系保持在最低限度,降低了出現(xiàn)兼容性問(wèn)題的可能性。
就目前而言,OpenSpiel 框架中包含了 28 款游戲和 24 種算法。正如“Spiel(棋牌游戲)”一詞所含之意那樣,該框架支持的也都是相關(guān)的游戲;而且,這些游戲也包括多種博弈方式,比如,常和博弈、零和博弈、協(xié)調(diào)博弈和一般博弈。在編程語(yǔ)言方面,OpenSpiel 的游戲通過(guò) C++ 來(lái)實(shí)現(xiàn)、算法則通過(guò) C++ 和 Python 來(lái)實(shí)現(xiàn),代碼的一個(gè)子集也被移植到 Swift。
不過(guò),DeepMind 的研究人員指出,OpenSpiel 只在 Linux 系統(tǒng)上進(jìn)行了測(cè)試(Debian 10 和 Ubuntu 19.04),但由于 MacOS 和 Windows 上可自由使用代碼,Openspiel 在這些平臺(tái)上編譯和運(yùn)行時(shí)應(yīng)該也不會(huì)出現(xiàn)問(wèn)題。
怎么安裝 OpenSpiel?
-
在論文中,DeepMind 也給出了 OpenSpiel 的安裝方式,他們已經(jīng)在 Debian 和 Ubuntu 兩個(gè) Linux 系統(tǒng)上測(cè)試了框架。安裝方式如下:
值得一提的是,DeepMind 目前還沒(méi)有在 Linux 以外的平臺(tái)上測(cè)試 OpenSpiel,所以,一些腳本和指令目前是假定基于 Debian 的發(fā)行版(Debian 和 Ubuntu)。如果使用的是其他 Linux 發(fā)行版本,install.sh 里安裝依賴項(xiàng)的命令依然可用,不過(guò),安裝命令需要自行修改。
-
為了能夠從任何位置導(dǎo)入 Python 代碼,需要將根目錄和 open_spiel 目錄添加到 PYTHONPATH 之中。
-
在遵循上述步驟構(gòu)建好 OpenSpiel 之后,從 build 目錄中運(yùn)行示例。
-
接下來(lái)就可以看到框架里的游戲列表,并且運(yùn)行游戲了。
論文鏈接: https://arxiv.org/pdf/1908.09453.pdf
項(xiàng)目地址: https://github.com/deepmind/open_spiel