没有合适的资源?快使用搜索试试~ 我知道了~
沙特国王大学学报大规模多目标软件体系结构恢复阿马尔吉特·普拉贾帕蒂计算机科学工程信息技术,Jaypee信息技术学院,Noida,印度阿提奇莱因福奥文章历史记录:收到2021年2021年8月15日修订2021年8月27日接受2021年9月4日网上发售保留字:软件架构PSO元启发大规模优化多目标优化A B S T R A C T具有良好文档化架构的软件系统易于理解和发展。然而,在大多数情况下,要么是文档化的体系结构不可用,要么是被严重侵蚀。在这些情况下,为了理解和发展软件系统,开发人员通常需要从系统实现代码中恢复架构组件。近年来,针对软件体系结构恢复(SAR)提出了多种基于进化论的多目标优化算法(MoOA)现有的SAR方法大多然而,这种方法的性能急剧下降与大规模多目标合成孔径雷达(LSMaO-SAR)。为了解决LSMaO-SAR带来的MoOAs问题,通过自定义PSO算法框架,引入了一种大规模多目标粒子群优化算法(LSM-PSO)。为此,我们采用了各种策略,如平衡适应度评价(BFE),质量指标(QI)的适应度评价,模糊帕累托优势(FPD),和两个档案外部存储,并纳入粒子群算法模型。为了测试LSM-PSO的有效性,它被应用于五个软件项目,并与现有的SAR方法进行比较。实验结果表明,所提出的LSM-PSO算法优于现有的基于优化的SAR方法。©2021作者由爱思唯尔公司出版代表沙特国王大学这是一个开放的访问CC BY-NC-ND许可证下的文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。1. 介绍设计和开发优化方法以解决不同的大型复杂优化问题的研究兴趣正在迅速增加(Falcón-Cardona和Coello(2020))。最近,已经报道了解决大型和复杂优化问题的不同方面的各种优化方法(例如,Amarjeet 和 Chhabra , 2017; Amarjeet 和 Chhabra , 2018 a;Prajapati 和 Kumar , 2020; Aydilek , 2018 ) 。 优 化 方 法 类 中 的MoOAs似乎在解决现实世界的优化问题时更加现实。 有许多功能(目标和决策变量)的优化问题,高度影响性能的MoOAs。随着优化问题中目标和决策变量数量的增加,MoOA的性能开始急剧下降。Zhang等人(2020),Gu和Wang电子邮件地址:amarjeet. jiit.ac.in沙特国王大学负责同行审查制作和主办:Elsevier(2020年)。特别是多目标优化算法的目标数多,收敛速度慢,决策变量多,搜索空间大而复杂,不利于优化过程的开发和探索。由不同数量的目标和决策变量组成的优化问题在设计优化算法时提出了不同的挑战。特别是,随着优化问题中目标和决策变量的数量增 加 , 特 定 类 型 的 优 化 算 法 的 可 扩 展 性 开 始 下 降 ( Farina 和Amato,2002)。因此,具有不同数量的目标和决策变量的优化问题迫使设计不同类型的优化算法。基于由优化问题的不同数量的目标和决策变量引起的挑战和困难,它们通常被分为以下六类(Farina和Amato,2002; Cheng等人,2017 a; Cheng等人,2017 b; Zhang等人,2018; Prajapati,2021a;Prajapati,2021a):大规模多目标优化问题(LS-MaOP)、小规模多目标优化问题(SS-MaOP)、大规模多目标优化问题(LS-MoOP)、小规模多目标优化问题(SS-MoOP)、大规模单目标优化问题(LS-SoOP)和小规模单目标优化问题(SS-SoOP)。https://doi.org/10.1016/j.jksuci.2021.08.0271319-1578/©2021作者。由爱思唯尔公司出版代表沙特国王大学这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。可在ScienceDirect上获得目录列表沙特国王大学学报杂志首页:www.sciencedirect.comA. Prajapati沙特国王大学学报8502大多数现有的优化方法只关注五个类别,即,优化问题的SS-SoOP、LS-SoOP、SS-MoOP、然而,据我们所知,在设计用于LS-MaOP的优化算法的方向上仅报道了少数研究(例如,Cheng等人,2017 a; Cheng 等人,2017 b; Zhang 等人, 2020; Gu 和Wang ,2020)。 现在许多现实世界的科学和工程优化问题的出现,如LS-MaOP,为设计特殊的大规模多目标优化算法创造了机会。现实世界的LS-MaOP的几个例子如下:工程模型设计(Fleming et al.,2005),软件模块的聚类(Praditwong等人,2011)、混合动力汽车控制器优化(Narukawa和Rodemann,2012)、汽车发动机校准优 化( Lygoe 等人 , 2013 ) ,工 业任 务调度 ( Yuan 和 Xu ,2015)和各种软件工程问题(Harman和Jones,2011; Ramírez等人, 2019年)。即使一些大规模的多目标优化算法(LS-MaOAs)已经被开发来解决LS-MaOP,仍然有许多问题没有触及。大多数现有的LS-MaOA都是在合成LS-MaOP上设计和测试的。根据实际优化问题的特点对优化算法的不同算子进行自定义是一个具有挑战性的课题。除了该编码之外,问题和剪裁元启发式算子是额外的挑战。通常观察到,如果优化算法在某些类别的合成优化问题上工作良好,则可能在现实世界的优化问题上工作不好,直到它们被适当地定制(Li等人,2015; Maltese等人,2018; Meneghini 等 人 , 2020 年 ) 。 最 近 , 为 了 解 决 复 杂 的 LS-MaOP,一些研究人员已经定制了各种现有的优化算法(例如,NSGA-III ( Zhang 等 人 , 2020 ) 和 MOEA/D ( Gu 和 Wang ,2020)),并提出了一种新的LS- MaOAs。在软件工程中,软件架构恢复(SAR)是重要的现实世界LS-MaOP(Link et al.,2019; Prajapati,2021 a; Prajapati,2021 b)。为了解决SAR问题,基于搜索的软件工程(SBSE)(Harman和Jones,2011)已经提出(Prajapati,2021 a; Prajapati,2021 b)。大多数的SBSE方法设计的SAR问题是基于搜索为基础的软件聚类的概念。在这些方法中,SAR问题被转换为优化问题,并使用定制的优化算法来解决。 对于大规模多目标合成孔径雷达(LSMaO-SAR)问题,设计一种能够产生良好结构解的优化算法是一项非常具有挑战性的任务。最近,一些作者(例如,Prajapati,2021 a; Prajapati,2021 b)尝试使用定制的粒子群优化(PSO)算法解决LSMaO-SAR问题。即使现有的方法设计的LSMaO-SAR问题的工作很好,仍然有许多的改进空间。为了解决LSMaO-SAR问题,我们引入了一种基于PSO的优化方法,称为大规模多目标粒子群优化(LSM-PSO)。为了使LSM-PSO更有效,我们为不同的组件(即,速度和位置的更新,个人和全局最佳的选择,以及外部档案管理)的PSO框架。在个体最优、全局最优选择和外部档案管理方面,采用了平衡适应度评价(BFE)、基于质量指标(QI)的适应度评价和模糊帕累托支配(FPD)等策略。对于粒子的速度和位置更新,根据LSMaO-SAR问题。主要贡献概要如下:针对LSMaO-SAR问题,提出了一种基于粒子群算法的大规模多目标粒子群优化算法LSM-PSO的新颖之处在于采用了适当的策略,可以帮助产生良好的多样性和收敛的帕累托前沿。为了实现这一目标,各种选择策略的基础上平衡适应度评价(BFE),模糊帕累托优势(FPD),基于指标的排名,并在LSM-PSO的不同阶段所需的外部两个存档存储已被使用。为了验证所提出的LSM-PSO的性能,它被应用于五个LSMaO-SAR问题,100,195,398,638和991个决策变量和3、4、5、6和7个目标函数。其余部分的工作组织如下:第2节提供了现有方法所做的相关贡献。第3节讨论了SAR作为LSMaOP的基本概念。第4节介绍了LSM-PSO的细节。第5节描述了测试问题和实验。第6节提供了不同的SAR问题上的拟议工作的仿真结果。第7节概述了目前的工作和今后的方向。2. 相关作品将优化算法应用于软件工程问题的各个方面已经成为一个重要的研究领域。 自从过去二十年以来,大量的SBSE(Harman等人,2012年)已经提出(Prajapati,2021 a; Prajapati,2021 b)。即使在开发有效的优化方法取得了巨大成就之后,LSMaO-SAR问题的进展仍然很小。本节介绍了SAR中进行的优化算法的当前实践和大规模多目标方法的最新发展。2.1. 搜索基SAR基于搜索的软件聚类(SBSC)是从源代码中恢复软件体系结构的最广泛接受的技术。大多数现有的SBSC方法是单目标或多目标的(例如,Mancorn等人,1998; Mahdavi等人,2003; Harman等人,2005;Barros,2012;Praditwong等人,2011; Kumari和Srinivas,2016;Amarjeet和Chhabra,2018 b)。Mahdavi等人(2003)利用单目标SBSC的概念解决了软件聚类问题(SCP)。他们使用爬山优化器来优化设计的单目标SCP。Kumari和Srinivas(2016)将同一SCP作为多目标SBSE问题进行了处理。他们设计了一个超启发式多目标元启发式优化器,并将其应用于多目标SCP的不同模型。类似地,软件工程领域的许多其他研究人员和学者已经设计了不同的单目标和多目标SBSE方法来解决复杂的SCP(例如,Harman等人,2005; Barros,2012;Prajapati和Chhabra,2014;Prajapati和Chhabra,2017 a)。尽管设计用于解决不同形式的软件工程问题的单目标和多目标SBSE方法是有效的和高效的,但是它们仍然面临由四个或更多个目标函数组成的软件工程问题的许多性能挑战(Ramírez等人,2016;Mkaouer等人,2015年)。为了克服由多目标SBSE问题引起的性能困难,最近提出了各种Mkaouer等人,2015; Hierons例如,2016; Xiang等人,2018; Prajapati和Chhabra,2019;●●●A. Prajapati沙特国王大学学报8503ð Þ ð Þ ð ÞHierons等人,2020; Prajapati,2021 a; Prajapati,2021 b)。Mkaouer等人(2015)采用了NSGA-III的框架,并纳入了许多变化。Prajapati和Chhabra(2019)设计了一种多目标离散和声搜索( MaDHS ) 算 法 , 以 解 决 软 件 包 重 构 的 SCP 问 题 。 最 近 ,Prajapati(2021 a)、Prajapati(2021 b)在PSO模型的框架中采用了双档案模糊Pareto优势概念作为全局最优选择策略来解决多目标SAR问题。为解决复杂软件工程问题的不同方面而设计的不同类型的单目标、多目标和多目标最近,一些研究(例如,Prajapati,2021 a;Cheng等人, 2021)提出,传统的单、多和多目标优化方法的性能在少量决策变量(即,=100),但是如果决策变量的数量增加(即,>100)。在多目标SBSE 的上下文中,许多软件工程问题通常由>100的决策变量组成SAR问题是多目标SBSE问题之一,其中决策变量的数量通常>100。遇到大量决策变量(即,>100)和大量的目标函数(即,>3)在SAR问题中的应用促使我们设计和开发LS-MaOAs。2.2. 大规模多目标优化在过去的十年中,各种基于搜索的优化方法用于不同类别的优化问 题 ( 即 , SS-SoOP 、 LS-SoOP 、 SS-MoOP 、 LS-MoOP 和 SS-MaOP)已 提 出 在 文 献 中 已 经 提 供 了 用 于 LS-SoOP 的 方 法 的 全 面 调 查(Mahdavi等人,2015; LaTorre等人, 2015年)。根据文献,各种优化方法被用于解决LS-SoOP。例如,作者Yang et al. (2018)使用分而治之的策略,作者Akopov等人。(2019)使用多智能体遗传算法来解决LS-SoOP。与Mahdavi报告的全面调查类似,例如,2015; LaTorre等人,2015),最近,作者的Hong et al. (2021)和Tian et al.(2021)对涵盖LS-MoOP的优化方法进行了全面调查。他们证明了不同的现有优化方法使用各种策略来应对LS-MooPs带来的挑战。例如,Tianet al. (2019)使用竞争群优化器的概念,并提出了一种有效的优化算法来解决LS-MoOP。即使现实世界中的许多优化问题都是LS-MaOP,在开发用于解决这些问题的优化方法方面也几乎没有进展最近,为了评估不同现有MaOA相对于LS-MaOP的性能,(即,LSMaO-SCP)作者Prajapati(2021 a),Prajapati(2021 b)提出了一项比较研究。由于基准LS-MaOP的不可用,研究人员在评估优化方法时面临许多挑战。 为了解决这些问题,Cheng等人(2017 a),Cheng等人(2017 b)提出了几种方法来设计LS-MoOP和LS-MaOP的基准测试问题。为了解决LS-MaOP,Zhang等人(2018)采用了决策变量聚类技术,并引入了大规模的可能目标进化算法(LMEA)。为使NSGA-III算法适用于LS-MaOP,Gu及Wang(2020)将信息反馈模型(IFM)纳入其框架。与此方法类似,Zhang et al.(2020)将IFM嵌入MOEA/D框架,并为LS-MaOP开发了一种新方法3. 问题公式化软件系统的体系结构是一个重要的人工制品,因此从源代码实现中恢复它可以促进维护人员在遗留系统的情况下,体系结构要么变得过时,要么不可用,因此可用的源代码只是软件理解的信息对于一个软件系统,可能有许多涉众,他们从不同的角度看待软件系统从软件体系结构的源代码理解角度来看,模块视图软件体系结构相对于其他软件体系结构视图更有助于开发人员的理解。软件的模块视图体系结构,在这种体系结构中,系统被视为更高级别的组件和关系以及它们的属性和约束的集合。在保持模块视图体系结构的重要性的基础上,本文从软件系统的源代码出发,重点研究了模块视图SAR的问题一般来说,SAR的模块视图架构是通过重组的低级别的软件实体到更高级别的模块的基础上的各种质量标准。在SAR问题作为优化问题的公式化中,要被重组为模块的软件实体的数量和要被重组实体的标准的数量起着重要的作用。根据不同的质量标准将一组软件实体放入一组合适的模块中需要做出许多决策。如果软件实体的数量增加,决策的数量也会以相同的比例增加。在这样的优化问题中,如果决策变量的数量增加一百,则称为大规模优化问题。在软件模块视图架构恢复问题中,要组织成不同模块的软件实体的数量通常可以超过数百个,因此,软件模块视图架构恢复问题属于大规模优化问题。例如,考虑软件系统由源代码元素集合E= {e1,e2,. . ,en},其中n是元素的总数。为了确定软件系统的模块视图架构,必须将元素的集合映射到模块的集合M= {m 1,m 2,. ,mm},其中m是模块的总数。模块的最小和最大数量可以分别为1和n,元素的数量在SAR过程中,软件元素的高级封装由许多冲突的体系结构设计指导标准g1v;g2v;::;gtv,哪里不表示的数量的搜索.图1展示了根据决策变量的模块视图软件架构的表示。将模块视图结构转换为整数向量来表示候选解。整数向量编码的思想源自文献(Praditwong等人, 2011; Prajapati等人,2020年)。在整数向量编码中,索引表示软件元素,并且它们的值表示组件/模块。因此,在模块视图架构的整数向量表示中,索引对应于决策变量,并且它们的值对应于组件/模块。在大型复杂的软件系统中,软件实体的数量往往超过一百个,因此,模块视图体系结构的求解将是一个决策变量超过一百个的优化问题。因此,模块化视角SAR问题归结为大规模优化问题。除了以决策变量的形式对问题进行编码外,还需要根据目标和约束条件进行定义。作为优化问题的LSMaO-SAR的数学模型可以编码如下:A. Prajapati沙特国王大学学报8504KKK我ð Þ12不我我KK包含0到1之间的随机变量8>minGv½gv;g v;:; gv]T;t>3Fig. 1. 软件模块视图体系结构表示。x新的1/4x新的ð3Þ>rjv≥0j<$1;:P;>我我ð1Þ项x、pbesti、gbest是对应于每个粒子的惯性、个人最佳和全局最佳符号c1和c2:v下限≤vi≤v上限1/1;:;n表示学习因子,符号r1和r2表示函数g1v;g2v;:;gtv是t个矛盾的目标函数。变量表示候选解决方案的变量。优化中涉及的不等式约束和等式约束分别用函数r j<$v<$和x k<$v <$表示。的值与第i个决策变量相关联的v Lower和v Upper表示4.1.2. 适应度评估在LSMaO-SAR问题的PSO框架的定制中,有许多组件需要对非支配这些组件是1)选择个人最佳解决方案,2)选择,我我上界和下界在我们的软件体系结构中,我们基于文献中提出的软件质量 模 型 ( Abstract et al. , 2009; Praditwong 等 人 , 2011年 ,Prajapati,2021 a; Prajapati,2021 b)。这些质量目标是:1)每个软件组件的元素(最小化),2)系统中的总组件(最小化),3)具有单元素的组件(最小化),4)组件间依赖性(最小化),5)组件内依赖性(最大化),6)模块化质量(MQ)(最大化),7)组件循环依赖性(最小化)。4. 该方法本节首先简要介绍了支持策略,然后阐述了完整的LSM-PSO框架的工作。4.1. 支助战略建议的LSM-PSO的设计,利用不同的以下各小节简要介绍了这些支持战略。全局最佳解的选择,3)高或不太拥挤的解的选择,以及4)从一组相邻解中选择最佳解在大规模多目标优化算法中,用于对非支配解进行排序的适应度评价策略为了达到很好的近似Pareto前沿,我们使用了多种拟合评价策略。适应度评估策略的简要描述如下:平衡适应度估计(BFE)方法:在该方法中,多样性距离和收敛距离的计算被组合在一起以确定特定解集的非支配解的适应度(Lin等 人 , 2018 年 ) 。 例 如 , 考 虑 存 在 一 组 非 支 配 解 ,P^fp1;p2;:;pNg,大小为N。对于每个非支配解pi,其BFE值,即,适合度BFEpi;P定义如下:适应度BFEpi;Pa×Fdpi;Pb×Fcpi;P 4其中Fd∈pi;P∈表示正规化多样性,Fc∈pi;P∈表示非支配解pi的收敛距离.符号a和b是用于平衡的两个权重因子多样性和收敛距离的影响。在计算BFE值之前,适应度BFEpi;P,非支配解pi的每个目标首先被归一化如下:4.1.1. 粒子群优化所提出的LSM-PSO使用粒子群优化(PSO)的框架(Kennedy和Eberhart,1995)。的范数k联系我们fkpi-fminpifmaxpi-fminpið5Þ粒子群算法是一种有效的优化模型,它可以很容易地定制和定制,以设计一个增强版本的优化模型,为不同的优化问题。规范PSO模型模拟鱼群和鸟类群集的群体智能最优化问题的候选解是其中,fmaxpi表示集合P中第k个目标的最大值,fminpi表示集合P中第k个目标的最小值。在计算每个目标函数的归一化值之后,归一化Fdpi;P计算如下:被视为粒子的位置(即,鱼或鸟在太空中)。的Fdβ;Pdβð6Þ粒子的位置基于粒子的速度而改变,并且每个粒子的速度基于个体和群体的经验而速度和位置的变化可以定义如下。vnew¼xvic1r1pbesti-xic2r2gbest-xi2i最大-最小其中,Rmax表示最大的基于移位的密度估计(Shift-based DensityEstimation,Rmax)(Li等人, 2014)距离,并且Rmin表示非支配集合的最小Rmin距离。使用移位的欧几里德分布来计算非支配解的duppi与最近邻的距离如下:xv0k 1;:Q;kFA. Prajapati沙特国王大学学报8505ðÞð ÞðÞsed fknopiKKKK我千分之一我p1/1我我1/1ffiffiffiffiai¼ 1iii¼ 1 i布吕普minPJiqXmsed。你知道吗?ffiffipffiffiffiffiΣffiffiΣffiffi2ffiffi74.1.3. 外部两档ði Þ ¼哪里j2P;k¼1kj存储在每次迭代中找到的最佳候选解决方案多/多目标算法,一般使用外部存档 除了存储候选解决方案之外,. 规范norm. Σ Σ(f norm.pj<$-f范数<$pi <$;当 且 仅当范数。pj范数>f范数pi范数档案也可以用于指导优化过程。到保持良好的候选解决方案,即,多样性很强的候选人0否则ð8Þ更接近真实帕累托前沿的解决方案,我们利用两个档案的概念融合档案和多样化档案)在根据移位计算多样性距离在密度估计的基础上,用欧氏距离计算收敛距离。会聚距离计算非支配解pi,相对于理想点的收敛能力。 Fcpi;P的定义如下:在研究中发现(Praditwong和Yao,2006; Wang等人,2015年)。在 研 究 中 也 证 明 了 应 用 双 档 案 策 略 的 有 效 性 ( Prajapati 和Chhabra,2018 a; Prajapati和Chhabra,2019; Prajapati,2021a;Prajapati,2021 b)。F;P 1-EDð9Þ4.2. LSM-PSO算法框架C国际和平与发展组织其中ED pi表示pi到理想点的欧几里得距离,m是目标函数的总数。其计算如下:E DXm fNOR Mp210在本节中,我们提供了我们提出的LSM-PSO的详细描述。LSM-PSO的基本框架如图所示。 二、LSM-PSO框架的组件分为两个子组件:1)源代码低层信息提取和问题编码,2)优化活动参与产生SAR的近似集的Fdpi;P的较大值表明非支配解pi处于低拥挤区.另一方面,Fcpi;P的值越大,表明非支配解pi越接近理想点.为了惩罚或促进等式(1)中的多样性和收敛距离,使用权重因子a和b在优化过程中,为促进优解的产生,应合理分配权因子a和b的值为了分配权重因子a和b的值,研究(Lin等人, 2018)提出了各种指导方针。基于质量指标(QI)的适应性评价方法:超容量(HV)质量指标(Deb,2008)和Ie+(Zitzler和Künzli,2004)是MaOA中广泛使用的适应性评价质量指标。使用该质量指标的任何个体的适应度可以计算如下:这些子组件的细节将在下面的小节中讨论。4.2.1. 预处理在这一部分中,从软件项目中提取所需的低层源代码信息,并将其转换为合适的表示,以便可以应用所提出的LSM-PSO4.2.1.1. 提取低级源代码信息。在这个阶段中,我们提取低级源代码信息,即,实体及其依赖关系。低级软件元素/实体的选择取决于SAR的目标。例如,为了执行过程源代码的低级重构,函数被认为是软件元素。 就SAR而言,健身Qiqiqu-e-Iepj;pi=0:0511在面向对象系统中,类是软件元素/实体。ipj2PffpigIe≤p1;p2≤mine≤fi≤p1≤-e≤fi≤p2≤;1≤i≤m≤12≤其中p 2非支配解的Psetofnon-dominatedsolution;适合度Qi=Psetofnon总的来说,源代码实体的含义可以根据上下文和目的而不同在识别源代码实体之后,下一步是确定所选源代码实体的属性。在这项工作中,我们考虑的关系-PI关系(例如,方法调用、继承等)作为i,并且m表示目标函数的数量基于模糊帕累托优势(FPD)的适应度评估方法:FPD被广泛用于计算非支配集的集合的个体候选的适应度(Koppen和Vicente-Garcia,2004)。FPD中的候选解的排序基于支配度(即,候选解的主动支配La和被动支配Lp)。候选解p和q的主动控制la和被动控制lp定义如下:源代码实体。为了提取不同的类关系,我们使用结构1011和PF-CDA2工具。4.2.1.2. 粒子的位置和速度编码。在基于PSO的Meta启发式优化器中,位置和速度是两个必要的分量。粒子的位置和速度编码代表粒子对于SAR问题,我们使用整数向量和二进制向量lp;q¼. Ym minp;q=Ym plp;q¼. Ym minp;q=Ym Qð13Þð14Þ代表,分别。PSO中的位置向量被视为SAR问题的软件架构解决方案/候选解决方案。SAR候选解决方案的详细描述问题在第3节中说明位置向量的指数单个候选解的适应度定义为被动支配条款 因为被动控制lp比主动控制la更有效。总体而言,FPD适应度计算定义如下:FITNESSFPD最大值lp最大值;j=8i=2NS最大值15NNS项表示非支配解的集合。在这种适应度评价方法中,具有最低适应度值的候选解被认为是最佳解。tor表示软件实体,它们的值表示相应实体所属的组件。对应于每个位置向量,存在相同大小的速度向量。速度向量确定位置向量在搜索空间中改变其位置的速度。在这项工作中,速度向量的每个索引的值被选择为0或1。的第1https://structure101.com/2http://www.dependency-analyzer.org/¼我A. Prajapati沙特国王大学学报8506图二. 提出了LSM-PSO的框架。所有索引值为0的速度矢量表示最小速度,所有索引值为1的速度矢量表示最大速度。4.2.2. LSM-PSO的优化过程算法1提供了建议的LSM-PSO优化器的优化过程的一般框架。LSM-PSO算法的主要步骤如下:1)初始化群体的位置和速度;2)管理外部CA和DA档案; 3)更新群体的个人和全局最佳位置; 4)更新下一代群体的位置和速度该方法首先确定粒子然后,计算每个粒子的目标,并根据档案管理规则将非支配解移动到CA和DA然后,确定粒子最后,根据粒子的个体最优和全局最优,更新粒子群的位置和速度,实现粒子群的重复这些步骤,直到满足停止条件。粒子位置和速度的确定有效的初始化方法有助于优化过程有效地利用和探索搜索空间。在基于群的优化中,搜索从一组粒子开始,这组粒子通常被称为群。群中的每个粒子从某个初始位置开始以某个初始速度在搜索空间中移动。确定粒子群的初始位置和速度是一个具有挑战性的任务.已经普遍观察到,在搜索空间中具有良好分布位置的粒子可以以更好的方式探索搜索空间的其余部分该方法采用随机初始化方法初始化粒子群中每个粒子的位置和速度。位置和速度均匀分布的随机初始化方法是一种常用的技术,已被大多数工作所使用。在我们的基于整数向量的位置编码和基于二进制向量的速度编码中,为了初始化位置向量,索引值是从它们的范围值,即,1到n之间(软件实体的算法1:LSM-PSO输入:群大小N,itr,CA,DA输出:外部存档CA和DA。1.设置CA=£,DA=£//在开始时2.随机地把蜂群包围起来。3.将每个粒子的当前位置设置为个人最佳位置4.收集所有非劣解并更新CA和DA5.基于CA候选的6.return 0;7.当itr最大值itr8.对于i = 1到N,9.更新粒子位置和速度10.端11.使用算法312.使用算法413.收集非劣解,更新CA和DA14.ITR = ITR +115. End while并且为了初始化速度矢量,随机选择索引值0或1。更新外部档案CA和DA:在LSMaO-SAR问题中,优化的目标是找到一组分布良好且更接近Pareto前沿的非支配解。研究发现,如果优化问题中存在大量的目标,那么非支配解的数目可能非常大。在存在大量非支配解的情况下,决策者很难选出一个最优的非支配解。为了克服这个困难,LS-MaOA需要产生良好分布的子集,并且收敛非支配解,其可以代表整个搜索空间的所有非支配解。寻找代表搜索空间中所有非支配解的非支配子集是一项艰巨而有挑战性的任务。为了实现这一目标,我们使用了双存档的概念,具有固定大小的存储容量。这两个档案是收敛档案(CA)和发散档案(DA)。大小每个存档的大小是可变的;但是,两个存档的总大小是恒定的。两个外部档案的概念来源于文献(Praditwong和Yao,2006; Wang等人, 2015年)。到A. Prajapati沙特国王大学学报8507我我我我我.- 是的- 是的 Σ在外部档案库中管理候选解涉及两个主要活动;第一个任务是从群体中获得非支配解并将其存储到档案库中,第二个任务是从任务正在删除存档成员,vnew¼Xx×vic1r1×pbestipic2r2×gbestpic3r3×gbestpi cp新的¼piHv新的ð17Þ档案中的非劣解得到的增长比i i阈值能力。外部档案的存储过程开始于从群种群中收集所有非支配解每个非支配的解决方案收集的群体进行比较,所有候选解决方案的CA和DA档案。如果它被两个档案中的一个个体支配,则被拒绝;否则,它被有条件地存储在CA或DA中。在这种情况下,如果群的非支配解决方案支配档案的候选者,则来自两个档案的支配个体被删除,并且在这种情况下,如果群这个过程一直持续到群体的最后一个非支配解如果档案的容量增加到阈值容量,则删除操作员删除唯一的candi,其中x是惯性权重,用于确定贡献。在新速度的计算中使用前一速度。惯性权重值大有利于勘探,惯性权重值小有利于开采。常数c1、c2和c3是学习因子。参数r1、r2和r3是在0和1之间随机分布的随机值。最好的我是第i个粒子的个人最佳位置,gbest是群体的全局最佳位置。该算子以两个位置矢量作为输入,并产生一个速度矢量作为输出。该算子模拟了异或算子的行为运算符和×是加法和乘法运算符。函数X(.)应用于一个向量包含实值,它产生值0,如果向量值小于1,否则它产生值1。输入对于H算子位置矢量和速度矢量,是位置矢量。H算子定义如下:从DA存档中确定解决方案的为了实现这一点,欧几里得DA档案中每个候选解到所有候选解的距离计算CA档案的解决方案候选解(p新的¼p旧的我我如果V ¼0p新的1/4argmaxjDQ。p old;jjj 2 L i ifvi ¼1删除所有DA候选解决方案中距离最短的DA存档,直到总大小达到容量。CA和DA的目标是保持Pareto前沿的收敛与发散之间的平衡。CA和DA管理的细节在算法2中给出。算法2:更新CA和DA参数:S-Swarm,N-CA和DA的总大小1. Set S nd S的非支配集2. 对于i=1too|SND|3. 如果Snd [i]不能被CA或DA4. 如果Snd [i]支配CA或DA中的任何解,5.删除CA和DA的优势解6.并将Snd [i]溶液加入CA中7. 其他8.向DA中加入Snd9. end if10. 其他11.弃去Snd [i]溶液12. end if13. 端14. 如果|CA + DA|>N15.从DA中删除与CA16. end if粒子速度和位置更新规则:在遵守LSM-PSO的LSMaO-SAR问题,我们重新定义了各种操作和函数用于更新粒子标准PSO中的速度向量通常基于三个搜索方向来更新,即,具有适当惯性的当前速度矢量、指向个人最佳位置的当前位置矢量、指向全局最佳位置的当前位置。除了这些搜索方向,我们还使用另一个搜索方向。也就是说,个人最佳位置到全球最佳位置。新搜索方向的加入使得搜索空间的探索和利用受到更多的干扰。在所提出的SAR方法中,LSM-PSO算法的粒子位置和速度矢量定义如下:其中,Li^fl1;l2;:;lkg表示与第i个元素直接相关的那些软件元素的集合。为了计算函数DQ,使用以下等式:DQ p old;jjj2L i ¼fit p oldjp old←j -fit pold1919年函数DQ计算从候选解到其相邻候选解的适应度差为了计算邻近解的适应度,我们使用等式中提出的基于质量指标的适应度。(十一)、更新个人和全局最佳位置:基于个人最佳位置和全局最佳位置迭代地修改规范PSO中的粒子速度。个人最佳位置是迄今为止提供最佳适应值的粒子进化历史的位置。全局最佳位置是整个群中具有最大适应值的粒子位置。个人最佳位置和全局最佳位置引导parti- cle朝向搜索空间中的期望点。在MaOP中,个人最佳位置和全局最佳位置的选择是一个关键的任务。由于个人最优和全局最优的位置对算法最终结果的收敛性和多样性有着重要的影响。因此,个人最佳和全局最佳位置的选择需要特别小心。算法3和算法4分别提供了个人和全局最佳位置的更新过程。个人最佳位置更新过程使用了优势关系和模糊Pareto优势适应度评价方法。将粒子的当前位置与其存储的个人最佳位置进行比较如果当前位置支配所存储的个人最佳位置,则用当前位置替换所存储的个人最佳位置。如果当前位置由所存储的个人最佳位置主导,则所存储的个人最佳位置保持原样。如果当前位置与存储的个人最佳位置是非支配的,则使用模糊帕累托优势适应度评估方法进行选择。该方法将粒子当前位置和个体最优解的模糊Pareto优势适应度与群体当前所有位置和个体最优解的模糊Pareto优势适应度一起计算。在这种情况下,如果当前位置实现比存储的个人最佳位置更好的适应性,则存储的个人最佳位置被当前位置替换ð18ÞA. Prajapati沙特国王大学学报8508.输出:pji2f1;2;:;Ng我我我我我1←2N我否则存储的个人最佳位置被保持为个人最佳位置。为了评估所提出的方法的性能,一组实验已经进行了各种LSMaO-SAR探头,具有多达数千个决策变量和八个目标的Lems算法3:更新每个粒子输入:p¼fp1;p2;:;pNg;pbest¼。pbest;pbest;:;pbest功能协调发展的我最多1.设置Q=£2.对于i = 1到N,3.将pi插入Q4.将p最佳插入Q1 2N5. 实验概述本节报告了为所提出的LSM-PSO方法设计的实验概述特别是详细介绍了测试问题、结果收集、性能评价方法等。5.端6. 用模糊Pareto优势适应度评价S中每个个体的适应度7.对于i = 1到N,8.如果pip最好<9.用pi更新p best10.如果pi>pbest11.继续12.其他13.if Fit(pi)> Fit(pbest)14.用pi更新p best15.end if16.end if17.端5.1. 问题实例为了测试LSM-PSO的性能,我们用Java编程语言开发的五个软件项目进行了实验。这些软件项目是:1)具有100个决策变量的JUnit-v3.81,2)具有195个决策变量的DOM 4J-v1.5.2,3)JHotDraw-v6.0。b.1,398个决策变量; 4)JDI-Ford-v5.8,638个决策变量; 5)Xerces-J-v2.7.0,991个决策变量。选择这些软件系统的基本原因是它们是开放源代码的,web.这些软件系统具有不同的特点,从中型到大型不等,也具有不同的复杂性。这些软件项目也被许多企业使用我们的工作是测试软件的类似方法工程领域。全局最优解通过引导整个群的运动来有助于搜索空间的探索在多目标粒子群算法中,前人采用了多种技术例如,在一个实施例中,基于分解的方法(Mackayed等人,2014)、基于拥挤距离的选择方法( Raquel 和 Naval , 2005 ) 、 sigma 选 择 方 法 ( Mostaghim 和Teich,2003)和随机选择方法(Sierra和Coello,2005
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功