Page 31 - 《软件学报》2021年第12期
P. 31

阳名钢  等:求解二维装箱问题的强化学习启发式算法                                                        3695


         行,RLHA 能较快地朝更好的解方向发展,这也说明输入序列对启发式算法的影响.中间部分 RLHA 同 HHA 一
         样,都处在一个较为缓慢的搜索状态.在运行后期,RLHA 获得的装箱高度不断地下降,虽然 HHA 也取得了一些
         不错的进步,但是 RLHA 的效果优于 HHA.因此也可以看出:RLHA 能较有效地改善启发式冷启动的问题,并能
         提高算法的搜索性能.










                                                                         HHA
                                                                         RLHA

                                       Fig.5    Comparison of running time
                                            图 5   同时间运行对比

         3.4   不同初始化方法的影响
             RLHA 是使用强化学习获得初始序列,而 HHA 是使用 6 种排序方法                  [39] (见表 5 中的方法 1~方法 6),并选择
         最好的序列,表 2 和表 4 的计算结果表明,RLHA 的性能超过了 HHA.为进一步研究初始化方法的影响,我们再增
         加了一种随机初始序列方法.为测试不同初始化方法的影响效果,我们采用典型的 BWMV 数据(该数据包含 500
         个实例).表 5 给出了 8 种产生初始序列方法的计算结果,从中可以看出:随机初始序列方法效果最差,使用强化学
         习获得初始序列,效果明显超过其他 7 种方法.
                         Table 5    Computational results on different initialize methods for BWMV
                                    表 5   不同初始化方法计算 BWMV 的结果
                              获得初始解的方法                         Average_gap_rate (%)
                                                                     1.63
                    1.面积大的优先,如果面积相等,则宽度大的优先
                    2.面积大的优先,如果面积相等,则高度大的优先                          1.62
                    3.周长大的优先,如果周长相等,则宽度大的优先                          1.61
                    4.周长大的优先,如果周长相等,则高度大的优先                          1.63
                    5.宽度大的优先,如果宽度相等,则高度大的优先                          1.61
                    6.高度大的优先,如果高度相等,则宽度大的优先                          1.75
                             7.随机初始序列方法                              1.85
                                 8.RLHA                              1.42

         4    结   论

             强化学习启发式算法框架中,我们创新性地使用强化学习的方法来改善启发式算法冷启动问题.强化学习
         模型仅使用了启发式算法计算的装箱值作为奖励信号,来训练网络,最后输出给定分布中最优的序列.使用简化
         版的指针网络来输出装箱序列,该网络简化编码器部分的网络,节省了一大部分的计算能力,提高了效率.采用
         Actor-Critic 算法来训练网络,由于 Actor-Critic 可以单步更新,比起单纯的策略梯度的回合更新效率更高.实验部
         分,本文通过数据生成算法生成了训练模型的数据集.在 714 个标准问题实例和 400 个生成的问题实例上测试
         RLHA,实验结果显示,RLHA 获得了比当前著名启发式算法更好的解.这也表明了训练的强化学习模型能为
         HHA 提供更好的初始的装箱序列,有效地改善冷启动的问题.将来的工作就是在改进框架的基础上对启发式算
         法进行进一步的改进.同时,将强化学习应用于别的 NP 难问题的求解,总结出一般性的求解框架,并进行更多的
         应用.
   26   27   28   29   30   31   32   33   34   35   36