Unity ML-Agents
利用 Unity 强大的渲染和物理引擎,构建复杂、美观的强化学习环境。
游戏级渲染
依托 Unity 引擎,可以创建视觉效果极佳的仿真环境,甚至可以直接训练游戏 AI。
所见即所得
通过 Unity Editor 可视化地搭建场景,拖拽物体,设置属性,极大降低了环境构建门槛。
Python 接口
提供 Python API (mlagents-learn),可与 PyTorch 等框架无缝对接。
安装与使用
你需要先安装 Unity Hub 和 Unity Editor,然后安装 Python 包。
install.sh
# 安装 mlagents Python 包 pip install mlagents # 验证安装 mlagents-learn --help
连接环境 Demo
connect_unity.py
from mlagents_envs.environment import UnityEnvironment from mlagents_envs.side_channel.engine_configuration_channel import EngineConfigurationChannel # 1. 配置通道 (例如设置时间尺度) channel = EngineConfigurationChannel() # 2. 连接到 Unity 环境 (确保 Unity Editor 已点击 Play 或提供了构建的包路径) # file_name=None 表示连接到编辑器 env = UnityEnvironment(file_name=None, side_channels=[channel]) # 3. 重置环境 env.reset() behavior_name = list(env.behavior_specs)[0] print(f"Connected to Unity Environment: {behavior_name}") # 4. 获取观测并采取动作 for episode in range(10): decision_steps, terminal_steps = env.get_steps(behavior_name) # ... 你的智能体逻辑 ... env.step() env.close()