MOEA/D-DQN

算法背景

对于多目标进化算法,针对问题的特性选择合适的进化算子(如GA,DE,PSO)产生后代对算法性能的影响至关重要。自适应算子选择(如FREEMAB)在复杂优化问题的优越性是显而易见的。然而,它面临着探索与利用的困境,具有较好历史表现的算子将被赋予更高的优先级,但同时具有较差历史表现的算子也需要被探索。MOEA/D-DQN基于强化学习,将自动算子选择嵌入到MOEA/D-DRA算法中,来缓解自动算子选择探索与利用的困境。

算法思想

The Proposed Reinforcement Learning Based Operator Selection Method

简介:进化算法通过种群的进化来优化问题,对于种群中的每一个个体,深度强化学习的智能体(神经网络)根据个体的状态,为个体选择合适的进化算子来产生后代,根据后代的改进程度给予智能体奖励,智能体根据奖励来调整策略(神经网络的权重)。

状态

(p,w),为解向量和权重向量的组合。

动作

动作表示选择的算子。

选择动作的步骤为,当有动作不存在经验回放池中,则直接选择该动作。若全部动作都存在经验回放池中,则将状态输入神经网络,估计每个动作的Q值,用轮盘赌的方法选择动作。

伪代码如下:

奖励

计算方式如下:

在MOEA/D-DRA选择的子问题中,对于每一个父代,智能体会根据父代的状态选择进化算子op,产生子代x

子代x与其父代邻居子问题的解y进行比较,若子代优于父代,计算适应度的改进程度:
这里的w指的是y对应的子问题的权重向量。

将子代x在其父代邻居子问题中的改进进行累加,记为(op,NFI_X),将其放入一个队列R

在这个队列中找到op的最大值,作为奖励。

伪代码如下:

注意:算子的奖励设置为队列中NFI的最大值,这是由于大的改进比小而频繁的改进更加重要。

训练算法

应用了DQN强化学习算法,智能体每次采取动作,获取奖励后会将(\{\mathbf{p},\mathbf{w}\},op,reward_{op},\{\mathbf{x},\mathbf{w}\})存储在经验回放池\tau中。经验回放池中的数据用于训练神经网络。

Procedure of the Proposed MOEA/D-DQN

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值