恶魔攻击

../../_images/demon_attack.gif

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

动作空间

离散(6)

观察空间

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

导入

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

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

描述

你在冰冻星球Krybor上面对一波波的恶魔。通过消灭恶魔可以积累分数。你开始时有3个备用掩体,可以通过躲避敌人的攻击来增加其数量(最多6个)。每次在没有受到任何攻击的情况下生存下来,你都会获得一个新的掩体。每次被敌人击中,一个掩体就会被摧毁。当最后一个掩体倒下时,下一次敌人的攻击将摧毁你,游戏结束。

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

动作

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

意义

意义

意义

0

NOOP

1

FIRE

2

RIGHT

3

LEFT

4

RIGHTFIRE

5

LEFTFIRE

观察

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默认使用的观察类型。

奖励

每击败一个敌人,你都会获得分数。分数的多少取决于恶魔的类型和你所在的波次。详细的分数表可以在 AtariAge页面 上找到。

变体

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

环境-ID

obs_type=

frameskip=

repeat_action_probability=

DemonAttack-v0

"rgb"

(2, 5)

0.25

DemonAttack-ram-v0

"ram"

(2, 5)

0.25

DemonAttack-ramDeterministic-v0

"ram"

4

0.25

DemonAttack-ramNoFrameskip-v0

"ram"

1

0.25

DemonAttackDeterministic-v0

"rgb"

4

0.25

DemonAttackNoFrameskip-v0

"rgb"

1

0.25

DemonAttack-v4

"rgb"

(2, 5)

0.0

DemonAttack-ram-v4

"ram"

(2, 5)

0.0

DemonAttack-ramDeterministic-v4

"ram"

4

0.0

DemonAttack-ramNoFrameskip-v4

"ram"

1

0.0

DemonAttackDeterministic-v4

"rgb"

4

0.0

DemonAttackNoFrameskip-v4

"rgb"

1

0.0

ALE/DemonAttack-v5

"rgb"

4

0.25

ALE/DemonAttack-ram-v5

"ram"

4

0.25

难度和模式

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

可用模式

默认模式

可用难度

默认难度

[1, 3, 5, 7]

1

[0, 1]

0

版本历史

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

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

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

  • v0: 初始版本发布