holodeck
v0.3.1

Holodeckは、Unreal Engine 4の上に構築された強化学習のための高忠実度シミュレーターです。
pip install holodeck
(必要> = python 3.5)
完全な指示(Dockerを含む)については、インストールを参照してください。
Holodeckのインターフェイスは、Openaiのジムに似ています。
私たちは、最小限のいじりが必要な状態で、Holodeckの使用にすぐにジャンプできるようにするためのバッテリーを含むバッテリーを提供しようとします。
DefaultWorldsパッケージを使用した簡単な例を示します。
import holodeck
# Load the environment. This environment contains a UAV in a city.
env = holodeck . make ( "UrbanCity-MaxDistance" )
# You must call `.reset()` on a newly created environment before ticking/stepping it
env . reset ()
# The UAV takes 3 torques and a thrust as a command.
command = [ 0 , 0 , 0 , 100 ]
for i in range ( 30 ):
state , reward , terminal , info = env . step ( command ) state :センサーの値に対するセンサー名(nparray)のdict。reward :前のアクションから受け取った報酬terminal :現在の状態が端子状態であるかどうかを示します。info :追加の環境固有の情報が含まれています。特定のセンサーのデータにアクセスする場合は、センサーをインポートし、状態辞書から正しい値を取得する場合は次のとおりです。
print ( state [ "LocationSensor" ])Holodeckはマルチエージェント環境をサポートしています。
stepへの呼び出しは、メインエージェントにアクションのみを提供し、シミュレーションをチェックします。
act 、特定のエージェントに永続的なアクションを提供し、シミュレーションにチェックマークを付けません。アクションが提供された後、 tickシミュレーションを前進させます。アクションは、別のactの呼び出しが異なるアクションを提供するまで持続します。
import holodeck
import numpy as np
env = holodeck . make ( "CyberPunkCity-Follow" )
env . reset ()
# Provide an action for each agent
env . act ( 'uav0' , np . array ([ 0 , 0 , 0 , 100 ]))
env . act ( 'nav0' , np . array ([ 0 , 0 , 0 ]))
# Advance the simulation
for i in range ( 300 ):
# The action provided above is repeated
states = env . tick ()次のように、マルチエージェント環境の報酬、端末、場所にアクセスできます。
task = states [ "uav0" ][ "FollowTask" ]
reward = task [ 0 ]
terminal = task [ 1 ]
location = states [ "uav0" ][ "LocationSensor" ] ( uav0シナリオ構成ファイルから来ています)
Holodeckは、GPU加速レンダリングでヘッドレスを実行できます。 Holodeck Headlessの使用を参照してください
@misc{HolodeckPCCL,
Author = {Joshua Greaves and Max Robinson and Nick Walton and Mitchell Mortensen and Robert Pottorff and Connor Christopherson and Derek Hancock and Jayden Milne and David Wingate},
Title = {Holodeck: A High Fidelity Simulator},
Year = {2018},
}
Holodeckは、BYUの認識、認知、制御ラボ(https://pcc.cs.byu.edu/)のプロジェクトです。