- class mindspore_rl.environment.StarCraft2Environment(params, env_id=0)[源代码]
StarCraft2Environment是一个SMAC的包装器。SMAC是WhiRL的一个基于暴雪星际争霸2这个战略游戏开发的用于多智能体强化学习(MARL)在合作场景的环境。SMAC通过使用暴雪星际争霸2的机器学习API和DeepMind的PySC2提供了易用的界面方便智能体与星际争霸2的交互来获得环境的状态和合法的动作。不像PySC2,SMAC专注于去中心的细微操控场景,这种场景下游戏中的每个单位都会被一个独立的RL智能体操控。更多的信息请查阅官方的SMAC官方的GitHub: <https://github.com/oxwhirl/smac>。
- 参数:
params (dict) - 字典包含StarCraft2Environment类中所需要的所有参数。
配置参数
备注
sc2_args
一个用于创建SMAC实例的字典包含一些SMAC需要的key值 如map_name. 详细配置信息请查看官方GitHub。
env_id (int) - 环境id,用于设置环境内种子。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> env_params = {'sc2_args': {'map_name': '2s3z'}} >>> environment = StarCraft2Environment(env_params, 0) >>> print(environment)
- property action_space
获取环境的动作空间。
- 返回:
Space,返回环境的动作空间。
- property config
获取环境的配置信息。
- 返回:
dict,返回一个包含环境信息的字典。
- property done_space
获取环境的终止空间。
- 返回:
Space,返回环境的终止空间。
- get_step_info()[源代码]
在与环境交互后,获得环境的信息。
- 返回:
battle_won (Tensor) - 是否这局游戏取得胜利。
dead_allies (Tensor) - 己方单位阵亡数量。
dead_enemies (Tensor) - 敌方单位阵亡数量。
- property observation_space
获取环境的状态空间。
- 返回:
返回环境的状态空间。
- reset()[源代码]
将环境重置为初始状态。reset方法一般在每一局游戏开始时使用,并返回环境的初始状态值,全局状态以及新的合法动作。
- 返回:
tuple,包含了环境的初始状态值,全局状态以及新的合法动作这几个Tensor。
- property reward_space
获取环境的奖励空间。
- 返回:
Space,返回环境的奖励空间。