簡評:自動駕駛是一個我們看來高大上的名稱,看起來離我們很遠。 但你知道么,其實通過 GTA 就能讓我們訓練計算機來實現自動駕駛。
OpenAI 開源項目 DeepDrive,通過玩游戲 GTA 5(Grand Theft Auto V:俠盜獵車手) 來機器學習自動駕駛。
這是通過 OpenAI 的 AI 訓練架構 Universe( 極光日報:Universe - AI 訓練平臺 ) 來實現的。而這個 GTA 訓練項目也是完全開源的,如果你想使用這個,只需要安一個 GTA 5,然后 Universe Agent 就會開始在這個虛擬的游戲世界自動駕駛一輛汽車。( 極光日報:深度學習 - 進化 )
GTA 5 的 AI 和這個虛擬世界給予了訓練自動駕駛的可行性。這是 演示視頻 (BiliBili),此 GTA 已經修改了暴力指數,成為了個和平的世界。
入門
- 打開一個 GTA 5 服務器實例來 開始 這個項目。
- 需要安裝 Universe Python 庫(如果您以前安裝了它,則不需要升級)。
- 可以通過運行以下代碼來附加代理,以便于檢測像素的改變。代理也可以模擬汽車的控制系統,比如方向盤,油門剎車等:
import gym import universe # register Universe environments into Gym from universe.spaces import joystick_event env = gym.make('gtav.SaneDriving-v0') env.configure(remotes='vnc://$host:$port') # point to the GTA V Universe server observation_n = env.reset() while True: steer = joystick_event.JoystickAxisXEvent(-1) # turn right throttle = joystick_event.JoystickAxisZEvent(-1) # go in reverse # Alternatively, use WASD to steer: ('KeyEvent', 'w', True) action_n = [[steer, throttle] for _ in observation_n] observation_n, reward_n, done_n, info = env.step(action_n) env.render()
(上圖:路面監測反饋給 Agent)
DeepDrive
DeepDrive 是自駕車 AI 所創建的平臺。DeepDrive 使用改裝框架和內存檢查技術來重新使用GTA 5 作為自駕車汽車模擬器,它還提供預訓練的自我驅動 Agent 和用于訓練他們的數據集。現有的 DeepDrive 環境和代理現在構建在 Universe 之上。
新的 DeepDrive 可以在大約二十分鐘內設置完成,支持 Linux 或 OS X 上的 Agent,并且與預先存在的 Universe Agent 兼容。
Release
以上集成了不同角度的跟隨式攝像機,強化過的訓練功能,包括躲避碰撞,訓練目的地和路上停留。
環境
在 Universe 開啟之前,DeepDrive 使用 DirectX hook 來捕獲屏幕,并且需要使用 C 在Windows 中寫入 Agent 程序。現在,GTA 5 運行在云上的 Windows 虛擬主機上,通過 VNC 和 Websocket 與 Universe 通信。Agent 當然也可以在 Linux 或 Mac上運行,并在任何 MachineLearning 框架中編寫。
(上圖:Game Camera 通過 VNC 把路面像素信息以傳遞到主機上,主機通過 Websocket 發出指令,模擬真實環境操控游戲中的車輛,這一切都是都是 Agent 來進行只能的訓練和操控)
GTA 5 給研究人員提供了一個豐富多樣的世界,用于測試和開發 AI。它的島嶼設置幾乎是洛杉磯規模的五分之一,可以訪問各種場景來測試系統。
除此之外,257 輛不同的車輛,7 種類型的自行車和 14 種天氣類型,它盡可用單個模擬器探索大量的排列組合。
(上圖:GTA 5 給予 AI 豐潤的土壤來成長,這里儼然就是個小世界)
預訓練 Agent
這個版本的 Release 提供了一個預訓練 Agent,它已經經過了 21 小時(處理了 60 萬張圖像)的游戲內模擬行駛。它可以駕馭不同的場景,天氣,路況。
(園長:內置的游戲 AI 是一個很好的初始推動力,它的性能優于人類,因為它可以訪問內部游戲狀態,雖然它仍然犯錯誤,如在高速公路上的 U 型轉彎,還有一些相對比較非典型的場景。)
視頻: 『GTA5』車輛自動駕駛程序
其他研究人員已經表明,你可以在GTA 5 中訓練視覺系統,并使用它們在真實世界中對圖像進行分類。
GTA 5 與 Universe 的集成自動繼承了 Universe 提供的所有工具和語義,實現可比性和共享性,可以輕松地對 GTA 5 上 Agent 的性能進行基準測試。它可以單獨使用,或作為另一個環境 Universe 代理訪問。
原文: GTA V Universe
相關閱讀
歡迎關注
- 知乎專欄「極光日報」,每天為 Maker 導讀三篇英文文章。
- 微信公眾號「極光開發者」(jiguangdev),每周兩篇技術向文章。
「啊咧咧,啊咧咧,老司機帶帶我,點完贊我就上車」
Tags: 游戲開發
文章來源:https://zhuanlan.zhihu.com/p/24844986