CN112270353B - 多目标群体进化软件模块聚类方法 - Google Patents

多目标群体进化软件模块聚类方法 Download PDF

Info

Publication number
CN112270353B
CN112270353B CN202011159155.1A CN202011159155A CN112270353B CN 112270353 B CN112270353 B CN 112270353B CN 202011159155 A CN202011159155 A CN 202011159155A CN 112270353 B CN112270353 B CN 112270353B
Authority
CN
China
Prior art keywords
clustering
cluster
individual
software
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011159155.1A
Other languages
English (en)
Other versions
CN112270353A (zh
Inventor
孙家泽
张凡
唐彦梅
候东海
王小银
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian University of Posts and Telecommunications
Original Assignee
Xian University of Posts and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xian University of Posts and Telecommunications filed Critical Xian University of Posts and Telecommunications
Priority to CN202011159155.1A priority Critical patent/CN112270353B/zh
Publication of CN112270353A publication Critical patent/CN112270353A/zh
Application granted granted Critical
Publication of CN112270353B publication Critical patent/CN112270353B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明针对软件系统重构中的软件模块聚类问题,公开了多目标群体进化软件模块聚类方法。本方法首先对从软件系统的源程序中提取出方法依赖图,软件系统模块聚类方案用二维矩阵编码,使用模块质量和逆向边数作为软件模块聚类目标,进行群体进化操作迭代,更新帕累托非支配解集,最后输出聚类结果。本方法提供了一种有效的软件模块聚类方法,用于软件系统重构,提高软件系统的可理解性。

Description

多目标群体进化软件模块聚类方法
技术领域
本发明属于软件系统重构技术领域,主要涉及软件系统重构中的软件模块聚类问题,本发明提供了多目标群体进化软件模块聚类方法,主要用于解决软件系统代码重构时优化系统代码的结构,消除系统代码冗余,提高系统代码的可理解性,减少软件系统维护成本。
背景技术
软件作为信息产业的核心,软件服务于各行各业,时刻影响着国家的科技和国民经济的发展,随着软件所属行业业务的变化,为之服务的软件功能与系统结构也会发生相应的变化。因此,需要软件维护人员根据业务的变化对软件系统的功能和结构进行相应的调整。随着对软件结构的不断更改,软件系统结构愈加复杂,同时软件的规模会逐渐扩大,会导致软件系统结构的逐渐恶化,最终软件系统难以维护甚至废弃。当软件系统的结构发生退化时,软件的可维护性会受到严重影响。如何使软件系统变得易于理解、维护和管理是一个亟待解决的问题。
软件模块聚类是软件系统重构、恢复软件系统结构的有效手段,对软件模块进行聚类,能够很大程度提高软件系统的可理解性,降低软件的维护成本。目前常用的软件模块聚类方法主要是基于搜索的方法,传统方法没有考虑软件系统本身的特性或者只考虑某一单一规则,在解空间中盲目搜索,聚类效果一般,结果的多样性不足,不利于复杂软件系统进行软件模块聚类。
本发明将软件模块聚类描述为多目标搜索问题,基于多目标进化优化方法进行聚类,结合软件模块聚类问题的特殊性,以软件模块质量和逆向边数为依据,采用双目标概率更新聚类方案,从根本上保证了产生的聚类结果具有合理性和聚类结果的有效性。
发明内容
本方法解决的问题:软件模块聚类问题是一个经典的组合优化问题,直接使用传统基于搜索的优化方法无法有效的针对软件模块聚类问题自身的特点进行设计,容易使得搜索的结果不全面,缺少多样性,无法为软件维护人员提供多种决策选择。本发明基于群体搜索的思路,使用双目标概率更新聚类方案,克服现有的大多数方法仅仅考虑软件模块质量这个单一目标而导致的聚类结果缺少多样性,提出多目标群体进化软件模块聚类方法,为大规模软件模块聚类问题提供了一种较为简单且有效的方法,得到模块聚类帕累托非支配解集,可根据实际情况由决策者选取符合特定情况的最优解。
本发明的技术方案如图1所示包括以下的步骤:
步骤1:面向对象语言编写的软件系统中,构造方法依赖图表示软件系统中方法之间的调用关系:顶点代表代码中的方法,边代表方法之间的调用关系;使用矩阵表示方法依赖图:若系统有n个方法,用集合F={f1,f2,…,fj,…,fn}表示,fj代表软件系统中的第j个方法,则软件系统方法依赖图用一个n×n的矩阵B来表示,若方法fi调用fj,则矩阵B的第i行第j列的元素值为1,即bij=1,若方法fi未调用方法fj,则B的第i行第j列的元素值为0,即bij=0,矩阵B表示为:
Figure BDA0002743083920000021
其中i和j都为1到n之间的任意整数值;
步骤2:编码;模块聚类是软件系统方法集合的一个划分,假设模块聚类数量为m,聚类结果可以用集合C={c1,c2,...ck,...cm}表示,k为1到m之间的任意一个整数值,ck表示软件系统经过模块聚类后的第k个聚类,在多目标群体进化软件模块聚类方法中,假设初始群体规模为N,群体中的第w个个体用Pw表示,则群体可以用集合P={P1,P2,...,Pw,...,PN}表示,w为1到N之间的任意一个整数值,该软件系统模块聚类方案可以用一个m×n的二维矩阵A编码,矩阵A的每一列代表一个方法,每一行代表一个模块聚类,则第w个个体在迭代到第t步时软件系统的模块聚类结果由
Figure BDA0002743083920000022
中每一个元素
Figure BDA0002743083920000023
的值决定,若方法fj属于ck聚类,则
Figure BDA0002743083920000024
中的第k行第j列的元素值为1,即
Figure BDA0002743083920000025
而第j列的其它元素值为0,则第w个个体在迭代到第t步时的模块聚类编码表示为:
Figure BDA0002743083920000026
t为迭代步数,其中t为正整数;
步骤3:构造软件模块聚类目标:软件模块质量MQ和逆向边数fit_derection,软件模块质量MQ:软件模块聚类后,第x个聚类和第y个聚类之间的耦合性用εx,y表示:
Figure BDA0002743083920000027
第x个聚类的内聚性用μx表示:
Figure BDA0002743083920000031
x,y分别表示第x个聚类和第y个聚类,其中x,y为1到m之间的任意一个整数值,Fx和Fy分别表示第x个聚类和第y个聚类中的方法个数,Ex,y表示聚类x到聚类y的方法的引用次数,Mx表示聚类x内部方法之间的引用次数,将内聚性和耦合性结合起来用软件模块质量,第w个个体的软件模块质量MQw为:
Figure BDA0002743083920000032
Figure BDA0002743083920000033
模块聚类的逆向边数fit_derection:
Figure BDA0002743083920000034
Figure BDA0002743083920000035
其中Vq代表第q个模块聚类集合,Vq补集
Figure BDA0002743083920000036
表示集合Vq和其补集合
Figure BDA0002743083920000037
之间逆向边数,
Figure BDA0002743083920000038
表示集合Vq和其补集合
Figure BDA0002743083920000039
之间逆向边数的最小值;bij是方法依赖图矩阵B第i行和第j列的值;
步骤4:群体初始化,设定最大迭代次数r,初始化帕累托非支配解集为空,对群体每个个体代表的聚类方案确定模块聚类中心:根据软件系统的方法依赖图,计算每个顶点的度dc,顶点Vc作为聚类中心的概率值probc
Figure BDA00027430839200000310
每个顶点以probc概率被选做聚类中心,每个个体代表的聚类选取m个不重复的中心,其他方法随机选择一个聚类加入,由此初始化个体,其中c为1到n之间的任意整数值,顶点Vc代表第c个顶点,d是第c个顶点的度,n是软件系统的方法个数;
步骤5:群体进化操作;对于个体w,首先计算其模块质量MQ和逆向边数fit_derection这两个聚类目标值,然后计算个体w中方法fj属于聚类g的概率Pwjg
Figure BDA0002743083920000041
其中1≤g≤m,MQjg方法fj属于聚类g时聚类g的聚类质量,fit_derectionjg表示方法fj属于聚类g时的聚类逆向边数;比较计算出的概率Pwjg,选取最大概率Pwmax=max(Pwj1,Pwj2,...,Pwjg)对应的聚类作为方法fj最终的聚类结果,对个体w中每个方法按此方式计算概率,取其最大概率对应的聚类作为其聚类,对群体中的每个个体都采用步骤5的进化操作更新每个个体的模块聚类;
步骤6:更新帕累托非支配解集;根据每个个体的聚类目标值:软件模块质量MQ和逆向边数fit_derection,由个体间非支配关系更新帕累托非支配解集:如果当前个体被帕累托非支配解集中某个解支配,则当前个体不用加入帕累托非支配解集;如果当前个体支配了帕累托非支配解集中某个解,则删除帕累托非支配解集所有被支配的解,并把当前个体加入帕累托非支配解集;如果当前个体和帕累托非支配解集中所有解都不存在支配关系,则并把当前个体加入帕累托非支配解集;
步骤7:重复迭代进行步骤5和步骤6,若达到最大迭代次数r,则结束整个步骤,帕累托非支配解集中的个体对应的聚类方案就是本软件模块聚类结果,输出聚类结果,否则重复执行步骤5到步骤6的操作,直到达到最大迭代次数。
有益效果:
当前,处理软件模块聚类问题的方法有很多,常见的应用于解决软件模块聚类问题的方法有基于图理论的方法、基于数据挖掘的聚类方法和基于搜索的群体智能方法,但在解决大规模复杂软件系统时,传统的基于搜索的方法大多考虑一个目标,提供的可选择方案少,聚类效果有待提升。
软件模块聚类问题是一个组合优化问题,本发明提出了双目标概率群体进化方法,进化操作简单有效,为大规模复杂软件模块聚类问题提供了一种较为简单有效的多目标聚类方法,使得软件模块聚类的结果在达到高内聚,低耦合的软件开发准则的同时也能很好的符合逆向边数最小的原则,提高软件模块聚类的结果有效性性,改善了软件系统的可理解性和可维护性。
对真实的软件系统ispell进行软件模块聚类,该ispell软件系统有24个方法,聚类个数设置为4,群体规模分别取10、20、50、80、100、150,迭代次数为100次,其中横坐标表示软件模块质量MQ,纵坐标表示逆向边数,每个点表示一个帕累托非支配解,如图2所示,随着群体规模的增大,解集逐渐向坐标系右下方迁移,帕累托非支配解集在逐渐整体变优,说明了本方法的有效性。
附图说明
附图1本发明的流程图
附图2群体规模对ispell软件系统模块聚类的影响
附图3某软件系统的方法依赖图
附图4某软件系统的模块聚类结果图
具体实施方式
以某个软件系统为例,如图3所示是此软件系统的方法依赖图,具体说明本发明公开的软件模块聚类方法的实施方式。
步骤1:对如图2所示的方法调用关系用二维矩阵进行编码,此软件系统含有8个模块,这些方法表示为集合F={f1,f2,f3,f4,f5,f6,f7,f8},用8×8的二维矩阵表示如下:
Figure BDA0002743083920000051
步骤2:对群体进行初始化,初始化帕累托非支配解集为空,设定多目标群体进化软件模块聚类方法的参数:群体规模,即群体中的个体数量N=2,软件模块聚类的聚类数量m=3,最大迭代次数为100。
计算方法依赖图各个顶点的度和每个顶点作为聚类中心的概率值:
Figure BDA0002743083920000052
Figure BDA0002743083920000061
Figure BDA0002743083920000062
Figure BDA0002743083920000063
Figure BDA0002743083920000064
Figure BDA0002743083920000065
Figure BDA0002743083920000066
Figure BDA0002743083920000067
每个顶点以probc概率被选做方案的聚类中心,假设选取f3,f5,f8三个方法作为模块聚类的中心,经过聚类后的软件系统可以用集合表示为C={c1,c2,c3},分别表示以f3,f5,f8方法作为聚类中心的三个聚类,对此软件系统的模块聚类结果编码表示为一个3×8的二维矩阵A,第v个个体的初始化聚类编码表示为
Figure BDA0002743083920000068
迭代到第t步时软件系统的模块聚类编码表示为
Figure BDA0002743083920000069
其他方法随机选择一个聚类加入,由此初始化个体。假设P1个体的初始化编码矩阵为:
Figure BDA00027430839200000610
同理对个体P2进行初始化编码:
Figure BDA00027430839200000611
步骤3:计算每个个体的两个聚类目标值:软件模块质量MQ和逆向边数fit_derection,以个体P1为例,首先计算P1三个聚类中的方法个数,F1=2,F2=1,F3=5;聚类c1中包含方法f3和方法f5,而聚类c2中包含方法f6,聚类c3中包含方法f1、f2、f4、f7和f8
计算聚类ci中方法的调用聚类cj中方法的次数:
Figure BDA0002743083920000071
Figure BDA0002743083920000072
Figure BDA0002743083920000073
Figure BDA0002743083920000074
Figure BDA0002743083920000075
Figure BDA0002743083920000076
计算聚类ci内部方法之间的调用次数:
Figure BDA0002743083920000077
Figure BDA0002743083920000078
Figure BDA0002743083920000079
软件系统模块聚类后,计算第i个聚类ci和第j个聚类cj之间的耦合性εi,j
ε1,1=0
Figure BDA00027430839200000710
Figure BDA00027430839200000711
ε2,2=0
Figure BDA0002743083920000081
Figure BDA0002743083920000082
ε3,3=0
Figure BDA0002743083920000083
Figure BDA0002743083920000084
计算第i个聚类的内聚性μi
Figure BDA0002743083920000085
Figure BDA0002743083920000086
Figure BDA0002743083920000087
Figure BDA0002743083920000088
Figure BDA0002743083920000089
Figure BDA00027430839200000810
Figure BDA00027430839200000811
同理计算个体P2的软件模块质量
Figure BDA00027430839200000812
计算逆向边数:
Figure BDA0002743083920000091
Figure BDA0002743083920000092
将最优解(0.623,0.333)作为非支配个体加入到帕累托非支配解集合中,对帕累托非支配解集进行更新。
步骤4根据个体P1和P2的两个聚类目标值:软件模块质量MQ和逆向边数fit_derection更新聚类方案,个体P1的方法fw属计算于聚类g的概率P1wg
Figure BDA0002743083920000093
比较计算出方法w分别属于3个聚类的概率P1wg,选取最大概率P1wmax,作为方法fw最终的聚类结果:
P1wmax=max(P1w1,P1w2,P1w3)
对个体P1和个体P2中每个方法求概率,更新两个个体所有方法的聚类结果,
步骤5:更新帕累托非支配解集;根据每个个体的聚类目标值:软件模块质量和逆向边数,由个体间非支配关系更新帕累托非支配解集:如果当前个体被帕累托非支配解集中某个解支配,则当前个体不用加入帕累托非支配解集;如果当前个体支配了帕累托非支配解集中某个解,则删除帕累托非支配解集所有被支配的解,并把当前个体加入帕累托非支配解集;如果当前个体和帕累托非支配解集中所有解都不存在支配关系,则并把当前个体加入帕累托非支配解集。
步骤6:重复迭代进行步骤4和步骤5,若达到最大迭代次数100,则结束整个步骤,帕累托非支配解集中的个体对应的聚类方案就是本软件模块聚类结果,输出聚类结果,否则重复执行步骤4到步骤5的操作。比较种群中所有个体的目标函数适应度值,把本次迭代的帕累托非支配个体加入到外部集中不断迭代,更新外部集,判断迭代次数是否达到最大迭代次数100,若达到最大迭代次数,则结束整个步骤,得到软件模块聚类结果,否则重复执行步骤4到步骤6的操作,聚类结果如图4所示。

Claims (1)

1.多目标群体进化软件模块聚类方法,其特征主要包括以下步骤:
步骤1:面向对象语言编写的软件系统中,构造方法依赖图表示软件系统中方法之间的调用关系:顶点代表代码中的方法,边代表方法之间的调用关系;使用矩阵表示方法依赖图:若系统有n个方法,用集合F={f1,f2,...,fj,...,fn}表示,fj代表软件系统中的第j个方法,则软件系统方法依赖图用一个n×n的矩阵B来表示,若方法fi调用fj,则矩阵B的第i行第j列的元素值为1,即bij=1,若方法fi未调用方法fj,则B的第i行第j列的元素值为0,即bij=0,矩阵B表示为:
Figure FDA0003831279750000011
其中i和j都为1到n之间的任意整数值;
步骤2:编码;模块聚类是软件系统方法集合的一个划分,假设模块聚类数量为m,聚类结果可以用集合C={c1,c2,...ck,...cm}表示,k为1到m之间的任意一个整数值,ck表示软件系统经过模块聚类后的第k个聚类,假设初始群体规模为N,群体中的第w个个体用Pw表示,则群体可以用集合P={P1,P2,...,Pw,...,PN}表示,w为1到N之间的任意一个整数值,该软件系统模块聚类方案可以用一个m×n的二维矩阵A编码,矩阵A的每一列代表一个方法,每一行代表一个模块聚类,则第w个个体在迭代到第t步时软件系统的模块聚类结果由
Figure FDA0003831279750000012
中每一个元素
Figure FDA0003831279750000013
的值决定,若方法fj属于ck聚类,则
Figure FDA0003831279750000014
中的第k行第j列的元素值为1,即
Figure FDA0003831279750000015
而第j列的其它元素值为0,则第w个个体在迭代到第t步时的模块聚类编码表示为:
Figure FDA0003831279750000016
t为迭代步数,其中t为正整数;
步骤3:构造软件模块聚类目标:软件模块质量MQ和逆向边数fit_derection,软件模块质量MQ:软件模块聚类后,第x个聚类和第y个聚类之间的耦合性用εx,y表示:
Figure FDA0003831279750000017
第x个聚类的内聚性用μx表示:
Figure FDA0003831279750000021
x,y分别表示第x个聚类和第y个聚类,其中x,y为1到m之间的任意一个整数值,Fx和Fy分别表示第x个聚类和第y个聚类中的方法个数,Ex,y表示聚类x到聚类y的方法的引用次数,Mx表示聚类x内部方法之间的引用次数,将内聚性和耦合性结合起来计算软件模块质量,第w个个体的软件模块质量MQw为:
Figure FDA0003831279750000022
Figure FDA0003831279750000023
模块聚类的逆向边数fit_derection:
Figure FDA0003831279750000024
Figure FDA0003831279750000025
其中Vq代表第q个模块聚类集合,Vq补集
Figure FDA0003831279750000026
表示集合Vq和其补集合
Figure FDA0003831279750000027
之间逆向边数,
Figure FDA0003831279750000028
表示集合Vq和其补集合
Figure FDA0003831279750000029
之间逆向边数的最小值;bij是方法依赖图矩阵B第i行和第j列的值;
步骤4:群体初始化,设定最大迭代次数r,初始化帕累托非支配解集为空,对群体每个个体代表的聚类方案确定模块聚类中心:根据软件系统的方法依赖图,计算每个顶点的度dc,顶点Vc作为聚类中心的概率值probc
Figure FDA00038312797500000210
每个顶点以probc概率被选做聚类中心,每个个体代表的聚类选取m个不重复的中心,其他方法随机选择一个聚类加入,由此初始化个体,其中c为1到n之间的任意整数值,顶点Vc代表第c个顶点,dc是第c个顶点的度,n是软件系统的方法个数;
步骤5:群体进化操作;对于个体w,首先计算其模块质量MQ和逆向边数fit_derection这两个聚类目标值,然后计算个体w中方法fj属于聚类g的概率Pwjg
Figure FDA0003831279750000031
其中1≤g≤m,MQjg表示方法fj属于聚类g时聚类g的聚类质量,fit_derectionjg表示方法fj属于聚类g时的聚类逆向边数;比较计算出的概率Pwjg,选取最大概率Pwmax=max(Pwj1,Pwj2,...,Pwjg)对应的聚类作为方法fj最终的聚类结果,对个体w中每个方法按此方式计算概率,取其最大概率对应的聚类作为其聚类,对群体中的每个个体都采用步骤5的进化操作更新每个个体的模块聚类;
步骤6:更新帕累托非支配解集;根据每个个体的聚类目标值:软件模块质量MQ和逆向边数fit_derection,由个体间非支配关系更新帕累托非支配解集:如果当前个体被帕累托非支配解集中某个解支配,则当前个体不用加入帕累托非支配解集;如果当前个体支配了帕累托非支配解集中某个解,则删除帕累托非支配解集所有被支配的解,并把当前个体加入帕累托非支配解集;如果当前个体和帕累托非支配解集中所有解都不存在支配关系,则并把当前个体加入帕累托非支配解集;
步骤7:重复迭代进行步骤5和步骤6,若达到最大迭代次数r,则结束整个步骤,帕累托非支配解集中的个体对应的聚类方案就是本软件模块聚类结果,输出聚类结果,否则重复执行步骤5到步骤6的操作,直到达到最大迭代次数。
CN202011159155.1A 2020-10-26 2020-10-26 多目标群体进化软件模块聚类方法 Active CN112270353B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011159155.1A CN112270353B (zh) 2020-10-26 2020-10-26 多目标群体进化软件模块聚类方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011159155.1A CN112270353B (zh) 2020-10-26 2020-10-26 多目标群体进化软件模块聚类方法

Publications (2)

Publication Number Publication Date
CN112270353A CN112270353A (zh) 2021-01-26
CN112270353B true CN112270353B (zh) 2022-11-01

Family

ID=74342562

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011159155.1A Active CN112270353B (zh) 2020-10-26 2020-10-26 多目标群体进化软件模块聚类方法

Country Status (1)

Country Link
CN (1) CN112270353B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1818862A1 (en) * 2006-01-24 2007-08-15 Honda Research Institute Europe GmbH Combining model-based and genetics-based offspring generation for multi-objective optimization using a convergence criterion
US7933748B1 (en) * 2007-12-18 2011-04-26 Cadence Design Systems, Inc. System and method for facilitating specification allocation of hierarchical systems
CN106775705A (zh) * 2016-12-12 2017-05-31 西安邮电大学 一种软件模块划分方法
CN107766076A (zh) * 2017-11-07 2018-03-06 西安邮电大学 一种概率选择的软件模块聚类方法
CN110059015A (zh) * 2019-04-28 2019-07-26 西安邮电大学 种群进化多目标测试用例优先级排序方法
CN110428666A (zh) * 2019-08-01 2019-11-08 中国民航大学 一种基于人机协同进化智能的民航飞机空中冲突解决决策方法
CN110909787A (zh) * 2019-11-18 2020-03-24 安徽大学 基于聚类的进化算法进行多目标批调度优化的方法和系统
CN111126467A (zh) * 2019-12-16 2020-05-08 武汉大学 一种基于多目标正余弦算法的遥感影像空谱聚类方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7542932B2 (en) * 2004-02-20 2009-06-02 General Electric Company Systems and methods for multi-objective portfolio optimization
US20060033989A1 (en) * 2004-08-13 2006-02-16 Kevin Chugh Methods for hyperspace diagonal counting for multiobjective pareto frontier visualization and systems thereof
WO2010148238A2 (en) * 2009-06-17 2010-12-23 Board Of Regents, The University Of Texas System System and method for solving multiobjective optimization problems

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1818862A1 (en) * 2006-01-24 2007-08-15 Honda Research Institute Europe GmbH Combining model-based and genetics-based offspring generation for multi-objective optimization using a convergence criterion
US7933748B1 (en) * 2007-12-18 2011-04-26 Cadence Design Systems, Inc. System and method for facilitating specification allocation of hierarchical systems
CN106775705A (zh) * 2016-12-12 2017-05-31 西安邮电大学 一种软件模块划分方法
CN107766076A (zh) * 2017-11-07 2018-03-06 西安邮电大学 一种概率选择的软件模块聚类方法
CN110059015A (zh) * 2019-04-28 2019-07-26 西安邮电大学 种群进化多目标测试用例优先级排序方法
CN110428666A (zh) * 2019-08-01 2019-11-08 中国民航大学 一种基于人机协同进化智能的民航飞机空中冲突解决决策方法
CN110909787A (zh) * 2019-11-18 2020-03-24 安徽大学 基于聚类的进化算法进行多目标批调度优化的方法和系统
CN111126467A (zh) * 2019-12-16 2020-05-08 武汉大学 一种基于多目标正余弦算法的遥感影像空谱聚类方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Indicator & crowding distance-based evolutionary algorithm for combined heat and power economic emission dispatch;Jiaze Sun 等;《Applied Soft Computing》;20200531;第90卷;第1-15页 *
Software Module Clustering Algorithm Using Probability Selection;Sun Jiaze 等;《Wuhan University Journal of Natural Sciences》;20181231;第23卷(第2期);第93-102页 *
一种改进的基于NSGA-II和DE的多目标混合进化算法;潘晓英 等;《计算机应用研究》;20161231;第33卷(第12期);第3638-3642页 *
基于方法调用关系的软件测试序列生成算法;王曙燕 等;《计算机工程与设计》;20181031;第39卷(第10期);第3143-3149页 *
静态软件缺陷预测研究进展;吴方君;《计算机科学与探索》;20191231;第13卷(第10期);第1621-1637页 *

Also Published As

Publication number Publication date
CN112270353A (zh) 2021-01-26

Similar Documents

Publication Publication Date Title
CN111832101A (zh) 一种水泥强度预测模型的构建方法及水泥强度预测方法
EP3611799A1 (en) Array element arrangement method for l-type array antenna based on inheritance of acquired characteristics
CN107609648B (zh) 一种结合堆叠降噪稀疏自动编码器的遗传算法
Salcedo-Sanz et al. New coral reefs-based approaches for the model type selection problem: a novel method to predict a nation's future energy demand
CN109902808B (zh) 一种基于浮点数位变异遗传算法优化卷积神经网络的方法
CN113591905A (zh) 基于双层注意力机制和对抗学习的深度学习时序聚类方法
CN113962362A (zh) 强化学习模型训练方法、决策方法、装置、设备及介质
CN111985719A (zh) 一种基于改进的长短期记忆网络的电力负荷预测方法
CN111832817A (zh) 基于mcp罚函数的小世界回声状态网络时间序列预测方法
CN106775705A (zh) 一种软件模块划分方法
CN116340726A (zh) 一种能源经济大数据清洗方法、系统、设备及存储介质
CN116170328A (zh) 图形编码的使用带宽预测方法及装置
CN111488981A (zh) 基于高斯分布估计选取深度网络参数稀疏阈值的方法
CN114707655A (zh) 一种量子线路转换方法、系统、存储介质和电子设备
CN107766076B (zh) 一种概率选择的软件模块聚类方法
CN112270353B (zh) 多目标群体进化软件模块聚类方法
CN113609763A (zh) 基于不确定性的卫星组件布局温度场预测方法
CN110321799B (zh) 一种基于sbr和平均类间距离的场景数选择方法
CN112528554A (zh) 一种适于多发多源火箭试验数据的数据融合方法及系统
CN116303386A (zh) 一种基于关系图谱的缺失数据智能插补方法和系统
CN117877587A (zh) 一种全基因组预测模型的深度学习算法
CN114819714B (zh) 面向个性化定制的全域价值链生态资源配置优化方法
CN114969148A (zh) 一种基于深度学习的系统访问量预测方法、介质和设备
CN108363728A (zh) 一种挖掘特高压变电设备状态数据关联规则的方法及系统
Jin et al. Evolutionary algorithms

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant