Page 154 - 《软件学报》2021年第9期
P. 154

2778                                 Journal of Software  软件学报 Vol.32, No.9,  September 2021

         过滤时间较长的实例上相对串行传播模式能够取得较为明显的加速;若 T<<S p ,那么 O(er max d max (S p +T)/p)≈
         O(er max d max S p /p),即并行传播模式在平均过滤时间较短的实例上会慢于串行传播模式.
         4    实验结果

             我们在 22 组 CSP 实例集上使用 MAC 算法分别测试了串行传播模式和并行传播模式.在串行传播模式下,
         串行过滤算法分别使用 CT 和 STRbit;在并行传播模式下,并行过滤算法分别使用 PCT 和 PSTRbit,线程池的并
         行度 p 依次被置为 2,4 和 6.MAC 算法采用 dom/ddeg 变量启发式和 min 值启发式,dom/ddeg 是稳定的变量启发
         式,能让两种传播模式在求解同一实例时拥有相同的变量选取顺序,进而实现公平的效率对比.每个实例的搜索
         时间上限为 900 秒.实验环境为 Intel Core i7 3.40GHz(4 cores) 8GB RAM Windows10 64bit OS,程序编写语言是
         Java11.0.3 和 Scala2.12.8.所有的实例集均来自 http://www.cril.univ-artois.fr/~lecoutre/benchmarks.html,我们的测
         试代码可在 https://github.com/amtfjlsj/lotus 上获取.
             表 1 和表 2 给出了不同实例集的平均实验结果,实例集中,未超时的实例个数用#表示.time 表示求解实例所
         需的平均传播时间(单位 s),每个实例集对应的最短平均传播时间被加粗;filt 表示在求解实例的过程中过滤算
         法被调用的平均次数(单位 10 万);avg 表示执行一次串行过滤算法的平均时间(单位μs),即实例集的平均过滤时
         间,我们使用串行传播模式下 time 与 filt 的比值作为 avg 的近似值;speed 是并行传播模式相对于串行传播模式
         的平均传播时间加速比,即串行平均传播时间与并行平均传播时间的比值.
             首先,我们比较一下串行传播模式和并行传播模式的实验结果.在 17 组实例集上,并行传播模式要快于串
         行传播模式,而且在多数实例集上取得了从 1.4~3.4 不等的加速比;在另外 5 组实例集上,并行传播模式的表现不
         如串行传播模式.从各实例集在串行传播模式下的平均过滤时间 avg 可以看出:取得较好加速比的实例集,其
         avg 普遍较大,如 rand-10-60,ogd,uk 和 MDD0.9 等;并行传播效果不好的实例集,其 avg 普遍较小,如 aim-50,
         aim-100 和 dubois等.这与第 3.3 节性质 6 的分析相一致.因此,我们提出的并行传播模式适用于平均过滤时间 avg
         较大的实例.
                       Table 1    Average results to solve instances from different series (CT and PCT)
                                  表 1   不同实例集的平均实验结果(CT 和 PCT)
                                                                Parallel (PCT)
                            Serial (CT)
             Series   #                         p=2                p=4                p=6
                         Time  Filt  Avg.  Time  Filt  Speed  Time  Filt  Speed  Time  Filt  Speed
           rand-3-20-fcd  50 14.06 121.86  1.15   10.39   171.78  1.35  9.65   176.26  1.46  12.03  176.77  1.17
            rand-3-20   50 29.58 244.96  1.21   21.50   344.79  1.38  19.51  353.97  1.52  24.09  355.33  1.23
            rand-5-12  50  0.85  2.41  3.52  0.43  3.33  1.98  0.27  3.38  3.15  0.25  3.41  3.40
            rand-8-20  20  4.67  30.34  1.54  4.11  42.37  1.14  4.50   43.38  1.04  6.03  43.04  0.77
            rand-10-60  32  9.10  4.89  18.60  5.40  7.10  1.69  3.70   7.59  2.46  3.84  8.03  2.37
              half   19 95.64 605.16  1.58   65.93   833.86  1.45  54.85  845.03  1.74  67.60  849.79  1.41
            MDD0.7    8  31.22  139.41  2.24  20.27  194.18  1.54  15.55  197.26  2.01  17.75  198.91  1.76
            MDD0.9    9  1.47  7.91  1.86  1.01  11.08  1.46  0.80   11.26  1.84  0.94  11.34  1.56
            bddSmall  35  2.66  10.29  2.58  1.55  15.20  1.72  0.95  15.26  2.80  0.90  15.31  2.96
              uk     42  10.35  8.56  12.09  5.53  11.35  1.87  4.01   11.56  2.58  4.07  11.77  2.54
              ogd    43  5.80  2.25  25.83  3.28  3.07  1.77  2.18   3.13  2.66  2.17  3.20  2.67
              lex    62  1.56  4.03  3.87  1.03  5.63  1.51  1.01  5.81  1.54  1.32   5.96  1.18
             words   65  4.44  10.36  4.29  2.93  14.48  1.52  2.88  14.91  1.54  3.56  15.38  1.25
             tsp-20  15  2.49  35.92  0.69  2.17  46.19  1.15  2.07   46.53  1.20  2.63  46.45  0.95
             tsp-25   15 44.08 649.17  0.68   37.34   819.74  1.18  33.58  824.59  1.31  41.29  823.70  1.07
             jnhSat  16  0.53  8.70  0.61  0.35  10.92  1.51  0.28   10.88  1.89  0.31  10.92  1.71
            jnhUnsat  34  0.21  3.39  0.62  0.14  4.27  1.50  0.11   4.24  1.91  0.12  4.26  1.75
             modR    25  6.48   75.80  0.85  8.18  102.57  0.79  12.14  104.88  0.53  15.95  104.03  0.41
             aim-50  24  0.03   0.73  0.41  0.08  0.95  0.38  0.14  0.95  0.21  0.17  0.94  0.18
             aim-100  16  0.15   4.44  0.34  0.34  5.83  0.44  0.61  5.81  0.25  0.83  5.81  0.18
             aim-200  8  15.51  355.72  0.44  16.22  465.04  0.96  19.58  465.14  0.79  27.32  465.69  0.57
             dubois   3  22.49  591.96  0.38   112.77  1 007.99  0.20  275.14  1 008.04  0.08  310.58  1 010.59   0.07
   149   150   151   152   153   154   155   156   157   158   159