- class mindspore_rl.environment.MsEnvironment(kwargs=None)[源代码]
封装了内置环境(c++实现的环境)的类。
- 参数:
kwargs (dict) - 和环境相关的特定配置信息。详细信息请参见下表:
环境名称
配置参数
默认值
备注
Tag环境
seed
42
随机种子
environment_num
2
环境数量
predator_num
10
Predator的数量
max_timestep
100
每一局游戏的最大步长
map_length
100
地图的长
map_width
100
地图的宽
wall_hit_penalty
0.1
智能体撞击到墙的惩罚
catch_reward
10
Predator抓捕到目标的奖励
caught_penalty
5
Prey被捕捉到的惩罚
step_cost
0.01
单个Step的基础成本
- 支持平台:
GPU
样例:
>>> config = {'name': 'Tag', 'predator_num': 4} >>> env = MsEnvironment(config) >>> observation = env.reset() >>> action = Tensor(env.action_space.sample()) >>> observation, reward, done = env.step(action) >>> print(observation.shape) (2, 5, 21)
- property action_space
获取环境的动作空间。
- 返回:
Space,环境的动作空间。
- property config
获取环境的配置信息。
- 返回:
dict,一个包含环境信息的字典。
- property done_space
获取环境的终止空间。
- 返回:
Space,环境的终止空间。
- property observation_space
获取环境的状态空间。
- 返回:
Space,环境的状态空间。
- reset()[源代码]
将环境重置为初始状态,并返回环境的初始状态值。
- 输入:
没有输入。
- 返回:
Tensor,表示环境初始状态。
- 支持平台:
GPU
样例:
>>> config = {'name': 'Tag', 'predator_num': 4} >>> env = MsEnvironment(config) >>> observation = env.reset() >>> print(observation.shape) (2, 5, 21)
- property reward_space
获取环境的状态空间。
- 返回:
Space,环境的奖励空间。
- step(action)[源代码]
执行环境Step函数来和环境交互一回合。
- 参数:
action (Tensor) - 由所有智能体提供的动作。
- 返回:
3 个张量的元组,状态、奖励和终止。
observation (Tensor) - 输入动作后的环境返回的所有智能体的新状态。
reward (Tensor) - 输入动作后环境返回的奖励。
done (Tensor) - 输入动作后环境是否终止。
- 支持平台:
GPU
样例:
>>> config = {'name': 'Tag', 'predator_num': 4} >>> env = MsEnvironment(config) >>> observation = env.reset() >>> action = Tensor(env.action_space.sample()) >>> observation, reward, done = env.step(action) >>> print(observation.shape) (2, 5, 21)