顺序斯塔克尔伯格安全博弈的协同进化方法
1 适应度计算与选择策略
在顺序斯塔克尔伯格安全博弈中,攻击者策略的适应度计算是一个关键问题。简单地对收益求平均值来确定适应度可能不是一个好方法,因为给定的攻击者策略通常只针对特定的防御者策略才是最优的。对收益求平均会降低这种策略的适应度,从而在选择过程中有被遗漏的风险。
因此,使用最大度量是一个更好的想法。然而,防御者群体中存在一些较弱的策略,对于这些策略,大多数攻击者策略都会带来高收益,这使得难以区分好的和坏的攻击者策略。计算攻击者对所有防御者策略的最大收益也不可行。另一个极端是,仅根据防御者群体中的最佳策略来计算攻击者的适应度,这会导致攻击者群体的退化。
最终采用了一种折中的方法,即攻击者策略的适应度是其针对防御者群体中 Ntop 个最高适应度个体的最大收益(Ntop 是协同进化顺序斯塔克尔伯格安全博弈(CoEvoSG)的参数)。
选择过程决定了当前群体中的哪些个体将进入下一代。首先,将适应度最高的 e 个个体无条件转移到下一代,这些个体被称为精英,用于保留最佳解决方案。然后,反复执行二元锦标赛,直到下一代群体达到 NA 个个体。在每次锦标赛中,从当前群体(包括经过交叉和/或变异的个体)中有放回地抽取两个个体,适应度较高的染色体以概率 ps(选择压力参数)获胜并进入下一代,否则适应度较低的个体进入下一代。
算法的停止条件为:(a)CoEvoSG 达到最大代数 lg;(b)在连续 lc 代中,最佳解决方案(防御者收益)没有改进。验证这些条件时,仅考虑防御者群体的代数。
2 实验设置
2.1 基准游戏
CoEvoSG 在两个流行的顺
超级会员免费看
订阅专栏 解锁全文
21

被折叠的 条评论
为什么被折叠?



