保龄球

../../_images/bowling.gif

这个环境是 Atari 环境 的一部分。请先阅读该页面以获取一般信息。

动作空间

离散(6)

观察空间

Box(0, 255, (210, 160, 3), uint8)

导入

gymnasium.make("ALE/Bowling-v5")

更多具有不同观察和动作空间的保龄球变体,请参阅变体部分。

描述

你的目标是尽可能多地得分,在保龄球比赛中。一场比赛由10个格子组成,每个格子你有两次尝试机会。第一次尝试击倒所有球瓶被称为“全中”。第二次尝试击倒所有球瓶被称为“补中”。否则,该格子被称为“开放”。

如需更详细的文档,请参阅 AtariAge页面

动作

保龄球的动作空间为 Discrete(6),下表列出了每个动作的含义。要启用 Atari 2600 上可以执行的所有 18 个可能的动作,请在初始化时指定 full_action_space=True,或者通过向 gymnasium.make 传递 full_action_space=True

意义

意义

意义

0

NOOP

1

FIRE

2

UP

3

DOWN

4

UPFIRE

5

DOWNFIRE

观察

Atari 环境有三种可能的观察类型:"rgb""grayscale""ram"

  • obs_type="rgb" -> observation_space=Box(0, 255, (210, 160, 3), np.uint8)

  • obs_type="ram" -> observation_space=Box(0, 255, (128,), np.uint8)

  • obs_type="grayscale" -> Box(0, 255, (210, 160), np.uint8),这是“rgb”类型的灰度版本

请参阅变体部分,了解每个环境ID默认使用的观察类型。

奖励

你通过击倒球瓶获得分数。确切的分数取决于你是否成功完成“全中”、“补中”或“失误”。此外,你在某一局获得的分数可能取决于后续几局。你在一局游戏中最多可以获得300分(如果你能连续完成12次全中)。如需更详细的文档,请参阅 AtariAge页面

变体

保龄球有以下环境ID变体,它们在观察、帧跳过次数和重复动作概率方面有所不同。

环境-ID

obs_type=

frameskip=

repeat_action_probability=

Bowling-v0

"rgb"

(2, 5)

0.25

Bowling-ram-v0

"ram"

(2, 5)

0.25

Bowling-ramDeterministic-v0

"ram"

4

0.25

Bowling-ramNoFrameskip-v0

"ram"

1

0.25

BowlingDeterministic-v0

"rgb"

4

0.25

BowlingNoFrameskip-v0

"rgb"

1

0.25

Bowling-v4

"rgb"

(2, 5)

0.0

Bowling-ram-v4

"ram"

(2, 5)

0.0

Bowling-ramDeterministic-v4

"ram"

4

0.0

Bowling-ramNoFrameskip-v4

"ram"

1

0.0

BowlingDeterministic-v4

"rgb"

4

0.0

BowlingNoFrameskip-v4

"rgb"

1

0.0

ALE/Bowling-v5

"rgb"

4

0.25

ALE/Bowling-ram-v5

"ram"

4

0.25

难度和模式

可以通过关键字参数 difficultymode 指定环境的多种风格。风格是游戏模式和难度设置的组合。下表列出了可能的难度和模式值以及默认值。

可用模式

默认模式

可用难度

默认难度

[0, 2, 4]

0

[0, 1]

0

版本历史

关于版本和配置之间复杂差异的详细讨论,可以在关于Atari环境的通用文章中找到。

  • v5: 粘性功能被重新加入,随机跳帧功能被移除。环境现在位于“ALE”命名空间中。

  • v4: 动作的粘性已被移除

  • v0: 初始版本发布