Closed zanezhenli closed 1 year ago
作者你好,我想再一下,关于代码中reuse_network = True,是代表每个agent都共用一个agnet network对吧?那这样的话,会不会最后造成每个智能体都产生相同的动作呢? 因为我在自建的环境中使用qmix算法,整体reward训练后越来越差。而且如果将epsilon定为0之后,好像智能体都趋向于选择相同的动作,而这种相同的动作恰恰会在环境中带来很大的惩罚值。实在不明白是什么原因。
reuse_network = True
是代表每个agent都共用一个agnet network,但是会给网络输入当前agent的编号,从而让他们得到的动作不一样
这样用是因为SMAC中的agent之间存在共性,用一个网络来加速训练, 如果你的环境中agent没有共性,那么就不适合这种方法
你好请问现在支持reuse_network = False吗
不支持,改了会出错的
作者你好,我想再一下,关于代码中
reuse_network = True
,是代表每个agent都共用一个agnet network对吧?那这样的话,会不会最后造成每个智能体都产生相同的动作呢? 因为我在自建的环境中使用qmix算法,整体reward训练后越来越差。而且如果将epsilon定为0之后,好像智能体都趋向于选择相同的动作,而这种相同的动作恰恰会在环境中带来很大的惩罚值。实在不明白是什么原因。