AI强度相关的研究:Balancing Constant
我们旨在创建一个具有两个同时要针对的隐性目标的Agent:
学习如何玩游戏,同时学习如何与玩家保持联系以维持游戏的发展。
RL任务的关键部分是我们如何根据学习者在环境中的行为来奖励或惩罚学习者。 为了解决游戏的平衡问题,奖励功能必须预见Agent在游戏环境中的行为(例如,如何移动或如何战斗)以及平衡本身(如何不比玩家差或好得多)。 因此,我们提出了一个基于游戏的奖励功能,该功能包括一个平衡常数,旨在指出Agent如何成为玩家的公平对手。这样,他将对离理想的平衡状态有多远(或接近)以及如果他处于理想平衡状态中有多深的了解,那么他将在这种状态下表现如何。
理论基础
1.Balancing Constant :
平衡状态是指游戏中技能差异保持在一定范围内的时刻(1)。 这背后的直觉是,在这种状态下,Agent不是那么容易面对或很难被玩家击败。 因此,平衡常数是一个值,可以帮助我们的功能实现所需的行为。 换句话说,该常数表示Agent与玩家之间的最大技能差异。
2. BC-Based Reward Function (BCR)
通过在奖励函数中使用BC,有可能在Agent处于非平衡状态时区分另外两种情况,即BCR可以确定Agent处于哪种情况,并据此确定: 提供奖励值以刺激所需的学习(等式2)。 三个奖励情况区域如下:
Subjugated Punishment(服从惩罚), 定义为:
在这种情况下,奖励值与Agent没有办法给玩家施加障碍。也就是说,Agent能力越弱,将受到的惩罚就越多。
Conservation Reward(保守奖励),定义为:
奖励值表示将竞争程度保持在BC期望范围内的补偿,这反过来又鼓励Agent达到平衡的极限。
Rebellious Punishment(反叛惩罚),定义为:
l
这种情况和SP情况相反,在这种情形下Agent的能力过强了。
从图1中可以看出,BCR∆Skill是逐项函数,反映了我们对Agent在训练期间可能处于的三种可能的主要情况的想法。 因此,如果Agent离平衡的范围很远,那么它将受到更大的惩罚。 另一方面,如果它处于平衡状态,给予的reward将控制他处于范围的区间内。
3. BC-Based Balancing Metric (BCM).
BCM(等式3)是一种度量,它可以评估一个Agent处于反映上述三种情况的一种状态的次数的百分比:Unbalanced by Subjugate, Balanced, or Unbalancedby Rebellious
游戏测试场景(Env)
在类似于街霸的环境中评估了我们的游戏平衡方法,并受到(Andrade et al。,2006)的启发。 游戏包括两个实体(Agent和玩家)的对抗,其目的是通过物理攻击击败对手。 当其中一个使另一个变为无生命或经过100秒时,游戏结束。 在这种情况下,获胜者是指在游戏结束时拥有更多生命点的玩家。 与大多数当前视频游戏一样,该游戏是基于3D环境的。
1. 玩家模拟
为了模拟具有独特性的玩家的行为,我们创建了两种类型的具有不同能力的敌人,将要面对我们的学习者,如下所示:
- 防御性模拟:该程序化的敌人模仿了目标为以最小差异获胜的玩家的行为。 因此,他采取防御姿态以避免遭受任何伤害,同时仍然维持自己的血量优势。
- 进攻性模拟:另一种模拟玩家的行为与之前的行为不同,因为这种行为试图以最大可能的差异获胜,即尝试在所有可能的时间进行攻击,以在我们的学习者Agent中产生最大的损害。
自然地,由于是格斗游戏,我们考虑通过计算Agent和玩家的生命值之差来衡量游戏的平衡性(等式4)。 因此,假设Agent处于平衡状态,只要Agent在BC间隔内保持差异即可(公式5)。
这样,我们的目标是控制Agent维持一定血量的差异值,延长比赛时间
2.观测参数
强化学习任务要求我们将环境抽象为状态表示,以便Agent可以对其行为做出决定。 图4说明了我们的学习游戏的学习循环。 因此,当我们处理格斗游戏时,请使用以下信息呈现对游戏当前状态的观察:
- 与物理空间有关的信息:学习者Agent与玩家之间的距离•
- 与平衡常数有关的信息:Agent的健康状况与玩家的健康状况之间的差值以及Agent所获得的奖励类型(受到惩罚或叛逆惩罚)
- 与动作有关的信息:Agent和玩家的最后一个动作,以及一个离散值,该值告诉我们玩家从最后一次观察起是否改变了动作
所有这些值都在-1和1之间进行了归一化,以提高性能。关于动作,两个Agent都可以移动(向前走,向后走),躲避和攻击(踢,拳击)。
3. 实验方法
实验过程是使用BC的三个值(20、30和40)进行的,该值被Agent用作其能力的极限。 正如我们之前所描述的,我们创建了两种不同类型的模拟球员来面对我们的经纪人,并允许他进行训练,旨在获得:
- 两种不同类型的Agent,即侵略性和防御性Agent,在面对相同类型的模拟Agent时会在BC的边界内战斗和表现。
- 第三种Agent(混合Agent)经过两种不同的训练 因此,我们想证明,面对不同类型的玩家的经验,Agent可以在必要时适应他们。
图中可以看出当BC较高时,Agent可以将其对玩家的技能差异保持在平衡间隔内。 即使他受到对手的某些伤害,他也能够保持平衡状态,因为他们之间仍然存在生命差异。
相反,当BC较小时,要保持平衡非常困难,因为Agent的任何错误行动都可能将其带入任何不平衡状态。 例如,我们可以在图8中观察到,当Agent的BC = 20且他需要与一名积极的参与者作战时,前者在目标平衡状态下花费的时间少于50%的时间。
最后,我们的BC度量标准显示了3个有趣的点 。 首先,在所有情况下,Agent均保持至少50%的时间处于平衡状态,除非我们之前所述的BC = 20时。 其次,我们看到一些证据可以证实关于BC小值的假设,这表明在这种情况下,很难保持窄范围内的平衡状态。 第三,结果表明,通过混合Agent提供新的体验,能够获得更好的决策,因为他学会了仅一种风格无法提供的新型行为,在这种情况下,结果超过了BC的50%。指标,即使BC = 20,如图8所示