用 C++ 和 Lua 編寫的用於創建網格世界的學習環境。
DeepMind Lab2D是一個用於創建機器學習 2D 環境的系統。該系統的主要目標是易用性和性能:環境是“網格世界”,它是透過簡單的基於文字的地圖的世界佈局和其行為的 Lua 程式碼的組合來定義的。機器學習代理透過兩個 API 之一與這些環境互動:Python dm_env
API 或自訂 C API(DeepMind Lab 也使用該 API)。支援多個代理。
如果您在研究中使用DeepMind Lab2D並希望引用它,我們建議您引用隨附的白皮書。
DeepMind Lab2d可在 PyPI 上使用,並且可以使用以下方式安裝:
pip install dmlab2d
dmlab2d
作為 Linux 和 macOS 的預建置輪進行分發。如果沒有適合您的平台的輪子,您將需要從原始程式碼建立它。請參閱install.sh
以取得可適應您的設定的範例安裝腳本。
我們在python/random_agent
中提供了一個範例「隨機」代理,它執行隨機操作。這可以用作創建您自己的代理的基礎,也可以用作預覽環境的簡單工具。
bazel run -c opt dmlab2d/random_agent -- --level_name=clean_up
DeepMind Lab2D依賴一些外部軟體庫,我們以幾種不同的方式提供這些庫:
dm_env
、 eigen
、 luajit
、 lua5.1
、 lua5.2
、 luajit
、 png
和zlib
庫被引用為外部 Bazel 來源,並提供了 Bazel BUILD 檔案。依賴程式碼本身應該具有相當的可移植性,而我們發布的 BUILD 規則特定於 Linux x86 和 MacOS(x86 和 arm64)。要在不同的平台上構建,您很可能必須編輯這些 BUILD 檔案。
//third_party/rl_api
中包含「通用強化學習 API」。
需要幾個額外的庫,但不以任何形式提供;它們必須存在於您的系統上:
Python 3.8
或更高版本,帶有NumPy
、 PyGame
和packaging
。建置規則使用一些特定於 GCC/Clang 的編譯器設定。如果您的編譯器無法識別某些標誌(通常是特定的警告抑制),您可能必須編輯這些標誌。
這不是 Google 官方產品。