做了一个简单的信道分配的Agent。设节点数量为10,信道数量为10。若信道独占Agent获得1的效用,若信道复用则获得0效用。我使用一个DQN模型,依次轮询各个节点,决定各个节点使用的信道。例如,若初始情况下的信道分配为 [0,0,0,0,0,0,0,0,0,0],在轮询时,首先决定 0 节点的信道。若选出 0 信道,存在复用,则获得0效用,若选择1信道,是独占的,获得 1 效用。然后决定1节点的信道,依此类推。
显然易见,决策顺序是[1, 2 ,3, 4, 5, 6, 7, 8, 9,0] 时,可以获得10的最大效用。
在 DQN 模型中,以当前决策轮次序号及当前时刻的信道占用情况作为状态输入,以信道选择决策作为输出。为了泛化模型的使用范围,初始信道分配状态随机,决策轮询顺序在每个Episode会重新调整。目前遇到这样一个问题:DQN模型训练过程中,Reward收敛到稳定状态时效用只有 9,即几乎总是会错一个。Q值估计的Loss也卡在零点五、六的样子。
我尝试调整了全连接网络的参数数量、层数,以及Learning Rate(包括初始Learning Rate以及Learning Rate Decay的速度),均无效果。
不过,若将信道数量增加一个,例如10节点,11个信道,那么Reward还是能够收敛到10的。现在卡在这个问题上,很难受。各位大佬有没有遇到过类似的问题?