首页 > 文章资讯 > 游戏问答
贪吃蛇2P-多智能体强化学习(合作模式)实现
更新时间:2022-05-01 14:25:13 作者:云寺手游
2开元2022棋牌
开元2022棋牌
益智棋牌 | 47.56MB | v3.3.7
神殿娱乐
神殿娱乐
休闲益智 | 47.56MB | v3.3.7
我才是棋牌
我才是棋牌
休闲益智 | 47.56MB | v3.3.7
所谓棋牌
所谓棋牌
休闲益智 | 47.56MB | v3.3.7

背景:
贪吃蛇通过控制蛇头方向吃豆子,从而使得蛇变得越来越长。
本贪吃蛇为单人游戏,每回合玩家同时做出决策控制自己的蛇(每个玩家控制的蛇的数量为2)。


贪吃蛇界面示意图
Observation和Action的具体描述见:及第 Jidi
测试和提交平台:
及第 Jidi
结局思路:
1.第一次写作业
习题课老师暗示IQL算法可以解决,首先尝试了框架自带的Reward:


Q网络的结构:
input 18维:0-1是当前蛇头的坐标,2-5是当前蛇头四周的状态,6-15是5个豆子的坐标,16-17是另外一条蛇的蛇头
output 4维度,分别代表每条蛇对应的上下左右四个方向
hidden_size 64
num_hidden_layer=0 (尝试增加隐藏层层数,效果不佳)
训练5000次的结果:
i_epoch:5000 Gt:136.86
Fruit_Gt:2.00
Avergae 30 Fruit_Gt:5.47
Avergae 100 Fruit_Gt:5.98
epsilon: 0.10
2.第二次写作业
考虑了几个改进的方向:
a. reward里面过分强调蛇头和豆子的distance,会削弱豆子得分


i_epoch:5000 Gt:180.58
Fruit_Gt:0.00
Avergae 30 Fruit_Gt:6.00
Avergae 100 Fruit_Gt:5.16
epsilon: 0.10


i_epoch:5000 Gt:259.31
Fruit_Gt:3.00
Avergae 30 Fruit_Gt:5.43
Avergae 100 Fruit_Gt:5.41
epsilon: 0.10


i_epoch:5000
Gt:1880.07 Fruit_Gt:13.00
Avergae 30 Fruit_Gt:6.63
Avergae 100 Fruit_Gt:5.67
epsilon: 0.10
b. reward忽视了和另外一条蛇的distance


i_epoch:5000
Gt:122.57 Fruit_Gt:2.00
Avergae 30 Fruit_Gt:6.20
Avergae 100 Fruit_Gt:6.07
epsilon: 0.10
c. Observation里忽视了另外一条蛇的身体坐标
input 22维:0-1是当前蛇头的坐标,2-5是当前蛇头四周的状态,6-15是5个豆子的坐标,16-17是另外一条蛇的蛇头,18-19是另外一条蛇的蛇尾巴,20-21是另外一条蛇的中端
i_epoch:5000
Gt:69.29 Fruit_Gt:8.00
Avergae 30 Fruit_Gt:6.83
Avergae 100 Fruit_Gt:5.98
epsilon: 0.10
d.Observation里看得surrounding再广阔一些
input 22维:0-1是当前蛇头的坐标,2-5是当前蛇头四周的状态,6-9是当前蛇头更远的四周状态,10-19是5个豆子的坐标,19-20是另外一条蛇的蛇头,21-22是另外一条蛇的蛇尾巴,23-25是另外一条蛇的中端
e. 智能体之间缺乏合作沟通
读文献找思路:Tan, M. (1993). Multi-Agent Reinforcement Learning: Independent vs. Cooperative Agents. In Machine Learning Proceedings 1993. https://doi.org/10.1016/b978-1-55860-307-3.50049-6
i.)每次某个agent吃到豆子的时候,可以把experience也给合作的agent发一份存着,互相帮助对方explore
ii.)agent之间做policy的均值,这个思路没问题,就是在IQL中难以实现
读文献找思路:Lowe, R., Wu, Y., Tamar, A., Harb, J., Abbeel, P., & Mordatch, I. (2017). Multi-agent actor-critic for mixed cooperative-competitive environments. Advances in Neural Information Processing Systems, 2017-December, 6380–6391. (multi-agent deep deterministic policy gradient (MADDPG)
Lowe认为IQL的问题在于单个agent的policy在training过程中会变化,导致别的agent交互的环境是不稳定的

,而别的agent又没办法及时感知合作agent的policy变化,导致互相都在摸黑,缺乏合作机制。
Lowe提出了centralized training with decentralized execution(CTDE)
这个CTDE的思路和Tan的思路ii.)有点像,就是在训练的时候会用一个增广critic函数考虑其他agent的policy


对比MADDPG和普通policy gradient algorithm
普通policy gradient algorithm:
policy:


优化policy的目标函数:


优化policy的梯度方向:


MADDPG:
N agents with policies

parameterized by


优化policy的梯度方向:


注意每个agent自己的参数

的更新里会用到

,这就是centralized action-value function,它以所有agent的action作为输入,再分别为每个action估计policy。每个agent的

是独立训练的,所以每个agent可以有不同的reward的设计。
将CTDE推广至确定性的policy(deterministic policy),就可以得到multi-agent deep deterministic policy gradient (MADDPG):
优化policy的梯度方向:
N agents with policies

parameterized by



经验放回池子

包含tuple


优化critic网络的



在贪吃蛇2P
i_epoch:29927
Gt:300.00 Fruit_Gt:10.00
Avergae 30 Fruit_Gt:10.40
Avergae 100 Fruit_Gt:8.72
终于能排进前100名了,收工!


请问强调蛇头和豆子的distance,为什么会削弱豆子得分?

猜你喜欢
最新资讯