我正在尝试在MATLAB中实现DDQN代理(稍后在Simulink中使用)。
我创建的网络按预期工作,除了最后一个问题:动作值函数Q(s,a)的聚合= V(s)+ A(s,a)
网络如下所示: Dueling-Q-Network
根据需要产生两个输出。不幸的是,如果我使用以下方法计算测试输出,它们只会被串联在一起:
Mar
我得到一个22x1的数组,而不是可以在第二步中聚合的具有两个元素(1x1和21x1)的结构。
一个最初的想法是添加一个具有线性激活并且所有权重固定为1的第七层,从理论上讲,这应该产生所需的聚合输出。但是我遇到了如何固定权重的基本问题...
希望您的专家能给我最终的提示,以解决这个问题。