学习日志-2021.10.18
学习日志-2021.10.18
硕士论文复现--选择学习对象
论文内容是在 200×200 的边界循环网络下,实际情况下会占用大量的计算资源,导致计算时间较长,在复现时为减少时间消耗,改为 100×100 的边界循环网络。
复现目标
使用Q-Learning算法,探究学习对象的选择对网络演化的影响
目前实现的效果
蓝色的点代表合作者分布,白色的点代表背叛者分布
-
初始条件
-
经过100轮演化
-
经过200轮演化
结论
- 使用Q-Learning算法选取学习对象,会让合作者集群保持下来,背叛者难入侵到合作者之中(合作者即使遭到了背叛者的剥削,仍然可以紧密的联系在一起),然后慢慢地扩大合作者集群。而使用随机选择对象学习的方法,合作者会迅速分散,最后以一定的比例共存。
遇到的问题
- 这里Q表更新时,公式里面的 \(\max Q(s_{t+1},a)\) 采取的应当是取邻居收益的最大值来更新,而不是取Q表中最大的 \(a\) 单元来更新,前一段时间以为是拿Q表来更新,导致合作者集群的扩展速度非常快。
- 由于在写代码时的疏忽,没有正确地将动作传递下去,导致合作者集群会有意识地往下扩展,与理论相违背。
体会
- 深刻体会到多智能体的计算量:开始时尝试 200×200 的网络,程序界面出不来,以为死机了,过了十几秒才出来,每一个时间步的运算都需要很久的时间