文章目录
标题:Transfer-based Particle Swarm Optimization for Large-scale Dynamic Optimization with Changing Variable Interactions
文献基本信息
基于转移的粒子群算法的大规模变变量交互动态优化(Transfer-based Particle Swarm Optimization for Large-scale Dynamic Optimization with Changing Variable Interactions);2023;IEEE TEVC
摘要
协同协同进化算法是利用分治机制解决大规模动态优化问题的常用算法。它们的表现取决于如何对决策变量进行分组,以及如何跟踪不断变化的最优值。然而,现有的分解方法计算量大,在动态变量交互作用下存在局限性。快速在线分解以及求解新子问题的重构仍然是一个具有挑战性的问题。提出了基于迁移的粒子群优化算法,该算法采用动态微分分组进行在线分解,并采用响应环境变化的求解迁移策略。特别是,一旦环境发生变化,动态差异分组根据变量相互作用的变化严重程度重新调整历史分组。此外,根据连续环境中子问题之间的相似性,通过维映射从历史解构造新的解。创建多个群来探索子问题的子区域。实验结果表明,该算法在1000-D的问题实例上的解的最优性优于目前最先进的算法。动态微分分组使用较少的函数求值来获得精确的分组。
一、研究背景
针对大规模动态优化问题,提出解决这个难题的方法,目前的挑战:
- 分解的方法是解决大规模的一种技术,但是它需要额外的评估,不适合动态环境。
- 多种群增加和预测的方法,适用于稳定的变量交互,但在更改变量交互时可能会失败。
- 因此,为了处理变化变量的交互作用,需要对新的子问题重构历史解。
二、研究方法
- 在线分解: DDG的开发是为了在动态环境中使用较少的功能评估来获得精确的分组。这样可以在动态环境下快速分解问题。
- 解决方案迁移策略:利用历史分组的解,通过新旧分组之间的维映射生成新的分组。新的解有助于加快算法的收敛速度。
三、研究背景
- 定义了一个大规模动态优化问题,这里根据变量的交互需要把大问题分解为多个小组件问题。
- 相关的工作:
- (1)Decomposition: 为了得到这个准确的分组,开发了分解方法,主要包括手动分解和基于学习的分解两个类别。
- (2)Cooprative Coevolutionary algorithms: 分解为多个子问题之后,多个子种群被用来优化这些子问题,开发一些方法来协同进化这些子种群。
- 有效的微分分组(efficient differntial grouping):它是一种静态的Decompostion的方法。
四、研究思路(技术路线)
-
算法整体框架:提出的方法采用了一种动态微分分组策略(Dynamic Differential Grouping),根据变量间的相互作用将变量分解为多个组。然后使用不同种群对每一组进行优化。一旦环境发生变化,变量将被重新分解以获得一个新的分组。通过对过去环境中类似的子问题执行解迁移策略(Solution Transfer Strategy),获得高质量的解。本文算法的流程图如图1所示。
-
动态微分分组:假设变量交互作用在大多数环境变化后都通常保持不变;因此,可以使用历史分组来在新环境中重新分组;具体的步骤,如下所示:
- 步骤1:计算出 t − 1 t-1 t−1环境中的分组;
- 步骤2:计算新环境相比前一个环境的不改变率(公式3);
- 步骤3:如果不改变率符合设置的阈值水平,采用 t − 1 t-1 t−1的分组,否则,重新分组。
- 优势:减少了额外的函数评估
-
协同粒子群算法:每个子问题都一个种群去优化,那么优化过程中,每个子问题都产生一个局部最优,存储这些局部最优,用来追踪移动的峰值;具体步骤如下:
- 步骤1:存储下每个( i i i)子问题在每个( t t t)环境内找到的局部最优值( A i t A_i^t Ait);存储解和这个局部最优值的距离( B i t B^t_i Bit).
- 步骤2:执行PSO的搜索,并结合Rosenbrock方法去局部搜索。
- 步骤3:不太理解公式的原理(公式6)
-
解迁移策略:环境一旦发生改变,历史的解不能直接采用,维度之间的关系可能发生改变;作者假设了历史子问题可能和新环境的问题相似,因此,提出这个解迁移策略来解决这个动态问题;具体步骤如下:
- 步骤1:选择一个老的分组进行迁移;通过公式7基于公共变量来计算出与新环境最相近的分组。
- 步骤2:解进行迁移,在老环境的分组中找到与新环境中分组解中欧几里得距离最接近的解进行替换。
实验
- 测试问题:D. Yazdani, M. N. Omidvar, J. Branke, T. T. Nguyen, and X. Yao, “Scaling up dynamic optimization problems: A divide-and-conquer approach,” IEEE Transactions on Evolutionary Computation, vol. 24, no. 1, pp. 1–15, 2020
- 对比算法:参考原文
总结
- 解决大规模动态单目标优化问题;
- 主要集中于大规模变量的分解和变量的协同;
- 并进一步扩展到动态环境;