Page 395 - 《软件学报》2025年第8期
P. 395

3818                                                       软件学报  2025  年第  36  卷第  8  期


                 其中约束条件如下:

                                                                                                      (4)
                                                      batch now ⩽ batch max

                                                                 +1                                   (5)
                                                      T batch < T batch now

                                                                                                      (6)
                                                       T batch ⩾ T batch now
                    约束条件    (4) 描述了实时聚合规模在零知识电路中存在一个上限, 即实时聚合规模不得超过该上限. 约束条
                 件     (5) 和约束条件  (6) 共同限定了实时聚合规模     batch now  与当前批次打包时刻   T batch  之间的关系.
                 3.3   聚合规模调整算法

                 3.3.1    聚合规模均衡算法整体流程
                    在本研究中, 提出了一种聚合规模均衡调整算法, 旨在解决聚合时延问题以优化系统性能.
                    根据第   3.1.1  节的分析, 可以得知, 聚合时延问题主要在交易流量较低的情况下产生. 而当交易流量较大时, 即
                       λ 在一定的阈值之上时, 聚合时延问题不显著的情况下, 可以考虑将多目标问题近似使用单目标问题的最
                 到达率
                 优解, 从而降低算法复杂度. 在这种情况下, 用户需要对一定时延以下的交易存在时延的不敏感的特性, 即不再追

                 求时延的最小化, 而是将系统的时延目标暂时退化成小于可容忍时延上限                        t tol , 但同时仍然要保障链上平均计算的
                                                              g tol .
                 开销成本应当不高于一个用户可容忍的平均计算成本上限
                    但是单目标问题并不是总能在容忍范围内获取到一个相对次优解, 因此在交易流量相对稀疏的情况下需要采
                 用完整的多目标算法. 本文选择的是           NSGA-II 算法  (nondominated sorting genetic algorithm II), 是一种多目标进化
                 优化算法, 它的设计基于遗传算法           (GA) 原理. 这种算法在优化问题中同时考虑多个目标, 并在解空间中寻找帕累
                 托最优解. NSGA-II 算法的主要特点是采用了快速非支配排序、拥挤度算子和精英策略.
                    本文选择    NSGA-II 算法而非其他算法来调整跨          Rollup  交易的聚合规模, 是因为它在处理具有多个冲突目标
                 的优化问题时能够有效地平衡各目标, 并且保持解的多样性. NSGA-II 的非支配排序、拥挤度算子和精英策略特
                 性适用于本文的场景, 即在最小化链上资源消耗与最小化处理时延之间寻找最优平衡. 同时, 相较于其他多目标算
                 法, NSGA-II 在处理复杂多目标优化问题时显示出更低的计算复杂度和更好的收敛性. 此外, 考虑到                           NSGA-II 在
                 多目标优化领域内的广泛应用和验证, 其稳定性和鲁棒性是本文选择它的另一原因.
                    本文的算法可以在满足系统性能优化要求的同时, 有效降低计算成本. 此外, 该算法充分考虑了系统偏好参数
                 的变化, 从而在不同情况下为实际应用提供了灵活的解决方案. 算法的完整流程如图                          9  所示. 具体的整体流程如下
                 所示.
                    (1) 监测交易到达率和系统偏好参数变化: 首先, 本文需要实时监测诸如交易到达率和系统偏好等系统参数的
                 变化. 交易到达率指的是单位时间内待处理的跨                Rollup  交易  TX receiver  数量, 而系统参数则是在算法调整规模过程
                 中系统初始化设置的一些参数, 例如           g tol 、 α 等.
                    (2) 若交易到达率变化幅度小于预设阈值             (如  5%) 且系统偏好参数未发生变化, 则可以直接选择上一次解的
                 结果, 无需重新计算. 这有助于节省计算资源和时间. 如果交易到达率变化幅度大于阈值或系统参数发生变化, 则
                 需要进行下一步调整. 若仅目标函数的偏好参数               α 发生变化, 且上一次选择使用         NSGA-II 算法得到帕累托最优解
                 集, 可直接根据偏好参数在解集中更新目标解.
                    (3) 单目标问题解: 如需重新计算解, 可先将多目标问题解简化为单目标问题解, 并快速求解该单目标问题的
                 最优解. 若存在最优解, 可直接选择该解作为最终解; 若不存在最优解, 则通过                     NSGA-II 算法求解多目标问题的帕
                 累托解集.
                    (4) NSGA-II 解: 通过  NSGA-II 算法, 经快速非支配排序、拥挤度算子、精英策略、遗传选择交叉变异等步
                 骤, 迭代获得帕累托最优解集.
                                           α 求解帕累托最优解集. 在实际应用中, 可根据具体情况适当调整目标函数的偏
                    (5) 根据目标函数的偏好参数
                 好参数  α, 以避免目标过于偏激.
   390   391   392   393   394   395   396   397   398   399   400