#gym #rl #bevy #ai #bevy-rl

app bevy_rl_shooter

👾多智能体🎮 FPS Gym环境,使用🏋️ bevy_rl

1个不稳定版本

0.1.2 2023年1月5日

#721游戏

MIT/Apache

355KB
17K SLoC

👾多智能体🎮 FPS Gym环境,使用🏋️ bevy_rl

Crates.io MIT/Apache 2.0 Rust

https://user-images.githubusercontent.com/97428129/192408835-3a2857bf-ee6a-4213-b469-d0af0a1fc75b.mp4

项目描述

这是一个bevy_rl的基本多智能体gym环境。它是一个无死亡竞赛的全能环境,智能体以红色球体形式出现,击杀后获得+10奖励。该环境使用Rust语言,通过bevy游戏引擎和bevy_rl插件实现。

它实现了多智能体环境的基本功能。它是创建更复杂环境的良好起点。

  • 智能体随机初始化
  • 用于控制智能体(包括状态、奖励和摄像头像素)的REST API
  • 用于重置环境的REST API

您可以使用Python包装器包装该环境,并使用OpenAI Gym接口使用它。(示例在python/bevy_rl_rest_api.ipynb

环境描述

  • 16个智能体在随机位置生成
  • 智能体可以移动和旋转
  • 环境每0.1秒暂停一次,以从REST API获取控制命令
  • 奖励:击杀奖励+10

使用方法

  • 按照bevy的设置指南设置Rust
  • 使用cargo build +nightly --release构建环境;
  • 使用./target/release/bevy_rl_shooter --mode train运行环境
  • python/env.py实现了环境的Python包装器
  • python/bevy_rl_rest_api.ipynb说明了如何使用包装器

依赖关系

~79MB
~1M SLoC