CN103902340B - 一种提高软件版本升级决策效率的方法 - Google Patents
一种提高软件版本升级决策效率的方法 Download PDFInfo
- Publication number
- CN103902340B CN103902340B CN201410124386.7A CN201410124386A CN103902340B CN 103902340 B CN103902340 B CN 103902340B CN 201410124386 A CN201410124386 A CN 201410124386A CN 103902340 B CN103902340 B CN 103902340B
- Authority
- CN
- China
- Prior art keywords
- sub
- population
- vectors
- software version
- dominant
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 239000013598 vector Substances 0.000 claims abstract description 113
- 238000005457 optimization Methods 0.000 claims description 22
- 238000012163 sequencing technique Methods 0.000 claims description 11
- 238000005303 weighing Methods 0.000 claims description 4
- 238000010187 selection method Methods 0.000 claims description 3
- 238000000354 decomposition reaction Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000035772 mutation Effects 0.000 description 5
- 238000012804 iterative process Methods 0.000 description 3
- 238000005034 decoration Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 125000002015 acyclic group Chemical group 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000006116 polymerization reaction Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种提高软件版本升级决策效率的方法,包括如下步骤:根据输入信息进行初始化操作;基于初始化结果,生成新的决策向量;根据生成的新向量,更新种群;如果满足预设的终止条件,则输出非支配向量集。本发明提供的提高软件版本升级决策效率的方法,在面对高维目标时能够快速而准确地提供解决问题的方案,从而节约时间和人力等方面的代价,提高软件版本升级运行效率。
Description
技术领域
本发明涉及计算机软件开发技术领域,尤其涉及一种提高软件版本升级决策效率的方法。
背景技术
在软件生产过程中,软件企业经常需要同时开发和维护被不同用户使用的复杂的软件版本决策。这种情况下,软件企业需要考虑的一个重要问题就是在升级下一个版本时应该实现和增加哪些新的功能需求以便更好地提高效率。对于这个决策过程,必须考虑多个方面的要求,例如,不同用户会提出不同软件需求。而这些用户本身对软件企业来说具有不同的优先级别,另外实现不同需求也需要不同的时间和人力等成本,而满足用户需求后给企业带来的收益也会有差异。总的来说,决策者希望能够找到一个合适的方案,能够在有限成本下提高软件版本升级决策的开发效率,达到节约时间和人力等目的。
传统软件版本升级决策模型:
对于上述软件版本升级效率问题,进行数据分析和建模,从而平衡需求和代价之间的关系,从而达到提高软件升级效率的目的。对上述问题建立相应的数学模型如下:
给定一个有向无环需求依赖关系图G=(R,E),每个客户si∈S直接依赖需求集Ri,si的利润(即升级效率代价)是wi∈W,需求(包含性能,功能和适用性等方面)为ri∈R,代价(包含时间和人力等)为ci∈C,既定预算为b。
软件版本升级效率问题的目标是找到一个合理的依赖需求子集,使得软件版本升级决策能够快速确定客户之间的不同需求,并且在节约时间和人力等代价方面提高软件升级效率。
多目标软件版本升级决策模型:
对于软件版本升级决策来说,客户之间的需求是多样的,如何满足不同客户之间的需求关系,而且很好地控制需求产生的时间代价和人力代价,尽量提高升级效率和降低时间人力代价是最关键的。同时,也可以看出,满足需求和代价之间是矛盾的,很好地满足所有客户的需求往往产生很大的时间和人力代价,但是降低这些代价又会使客户的需求无法较好地满足。所以,对软件版本升级决策进行建模,将其看成多目标优化问题,从而将客户需求Ri和代价Ci看成独立的目标进行权衡,获取目标间的权衡信息。
多目标软件版本升级决策模型相关概念:
1)帕累托支配(pareto dominance):如果向量(在本专利中,不同方面的需求组成了决策域上的考虑目标,用数学术语表达为n维向量,下同)帕累托支配向量当且仅当,对于每一个且存在通常记作
2)帕累托最优(pareto optimality):如果向量是帕累托最优,当且仅当,不存在其中F(x)=(f1(x),f2(x))。
3)帕累托最优集(pareto optimal set):帕累托最优集为不存在
4)帕累托最优前沿(pareto optimal front):帕累托最优前沿为帕累托最优集}。
另外,在帕累托最优集中的向量被称作非支配(non-dominated)向量,即在目标域里没有向量帕累托支配非支配向量,并且非支配向量组成了空间上的帕累托前沿。
5)拥挤距离:相邻向量之间的目标域上的绝对值差值组成了向量的拥挤距离。
6)非支配排序法:每一个向量都会位于自身的帕累托前沿,在自身的帕累托前沿中各个向量彼此非支配,而且每一个非支配向量根据其在帕累托前沿位置进行排序,然后根据各个向量之间的距离进行对比,组成了非支配排序。
基于分解的多目标决策方法:
基于分解的多目标决策方法的基本思想是将一个多目标优化问题分解成若干个单目标优化子问题,然后同时并行地优化处理这些子问题。每一个子问题中的目标函数可能是多目标优化问题中所有目标函数的线性或非线性加权聚合。如果两个子问题的权重向量相近,则称它们为邻居。为了加快搜索速度,该方法探索相邻的子问题间的相关关系。
多目标软件版本升级决策的目标:
1)收敛性:非支配向量集的收敛性,也就是说,非支配向量集应尽量靠近帕累托前沿。因而,这样就能保证软件版本升级决策中的时间和人力等效率能够尽可能的高。
2)多样性:非支配向量集的多样性,也就是说,非支配向量集应均匀地分布在帕累托前沿上。因而,这样就能保证升级决策能够权衡并采用不同的解决方案来提高决策效率。
因此,针对现有的软件版本升级决策运行效率有待提高的问题,需要提供一种提高软件版本升级决策效率的方法,在面对高维目标时能够快速而准确地提供解决问题的方案,从而节约时间和人力等方面的代价,提高软件版本升级运行效率。
发明内容
本发明要解决的技术问题是,为了节约时间和人力等方面的代价,提高软件版本升级运行效率,提供了一种提高软件版本升级决策运行效率的方法,在面对高维目标时能够快速而准确地提供解决问题的方案,从而节约时间和人力等方面的代价,提高软件版本升级运行效率。
为了解决以上技术问题,本发明提供了一种提高软件版本升级决策运行效率的方法,包括如下步骤:Step1:根据输入信息进行初始化操作;Step2:基于初始化结果,生成新向量;Step3:根据生成的新向量,更新种群;Step4:如果满足预设的终止条件,则输出非支配向量集A,否则,转到Step2。
进一步地,所述输入信息包括:
软件版本升级决策的相关数据;
终止条件;
子问题的数目N;
种群P和非支配向量集A的大小;
N个均匀分布的权重向量:λ1,...,λN;
每个子问题的邻居的数目T。
进一步地,所述Step1包括:
Step1a:将最初的多目标组合优化问题分解成N个分别和相关的权向量λ1,...,λN;
Step1b:随机生成初始种群P={x1,...,xN};
Step1c:令A=P;
Step1d:计算任意两个权重向量间的欧几里得距离以及获取每个权重向量的最近的T个权重向量,对于每个i=1,...,N,令B(i)={i1,...,iT},其中为与λi最近的T个向量。
进一步地,所述Step2包括:
Step2a:令j=1;
Step2b:使用轮盘赌选择法选择一个子问题i,选择子问题i的概率由特定公式确定;
Step2c:从B(i)中随机选择两个索引k和l;
Step2d:采用单点交叉和按位变异操作xk和xl,从而生成对应于子问题i的新向量yj;
Step2e:令j→j+1,如果j≤N,则转到Step2b。
进一步地,所述Step3包括:
Step3a:令j=1;
Step3b:如果yj由子问题i生成,那么对于每一个索引k∈B(i):如果gws(yj|λk)≤gws(xk|λk),则令xk=yj,即在第k个权重λk的前提下,解yj得出的目标值不大于解xk得出的目标值,其中:k表示N个权重中的第k个,λk表示第k个权重,xk表示第k个向量解,yj表示子问题在第j代生成的解,g()表示目标函数,即专利文档的公式(1.1),ws表示一种方法策略;
Step3c:令j→j+1,如果j≤N,则转到Step3b;
Step3d:将Y与A合并,得到Z=A∪Y;使用快速非支配排序法和拥挤距离法对合并后的种群Z进行排序,其中最优的N个向量组成新的种群A。
进一步地,所述Step4包括:
如果满足终止条件,则终止本算法并且输出种群A,同时根据软件版本升级决策的实际情况进行权衡选择出最优解决方案,否则,转到Step2。
本发明提供了一种提高软件版本升级决策效率的方法,能够将多目标优化问题分解成多个单目标优化子问题,以便在面对高维目标时能够快速而准确地提供解决问题的方案,从而节约时间和人力等方面的代价,提高软件版本升级运行效率。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1示出了根据本发明技术方案的提高软件版本升级决策运行效率的方法的流程示意图;
图2示出了根据本发明技术方案的提高软件版本升级决策运行效率的方法的决策结构图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当可以称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
本发明面向软件版本升级决策提出一种基于分解的自适应多目标决策方法,这种基于分解的自适应的多目标的提高软件版本升级效率的方法将多目标优化问题分解成多个单目标优化子问题,以便在面对高维目标时能够快速而准确地提供解决问题的方案,从而节约时间和人力等方面的代价,提高软件版本升级运行效率。
一、在理想的情况下,均匀分布的权重将产生均匀分布的帕累托最优解集。然而,当处理现实世界的优化问题时,均匀分布的权重向量通常产生离散的非均匀分布的帕累托最优解集。在软件版本发布这样的组合决策问题中,这一现象尤为突出。在一些极端的例子中,一个帕累托最优解集可能是多个子问题的最优解。例如,不同的权重以及其对应的子问题在搜索过程中得到相同的帕累托近似解。
因此,所产生的帕累托最优解集可能不是均匀分布的,这样不利于获取目标间的权衡信息。为此,本专利采用基于分解的多目标决策方法,将一个多目标组合优化问题根据公式(1.1)分解成一些子问题。当多个均匀分布的权重向量被生成时,一个多目标组合优化问题被分解成多个个与之对应的子向量。每一个向量都是每一个子问题的当前最优解,它将被随机生成并将其赋给不同的非支配向量集中。
最大化
其中i=1,...,N为子问题数目,Ω为决策域空间。另外,λj为N个权重向量,用来决策每个子问题的重要性,且k=1,...,m,m为决策域目标维度数。
二、在基于分解的多目标决策中,对于一些子问题的搜索可以产生多个不同的近似最优解,这可被用于增加所求得的非支配集的多样性。与权值及相对应的子问题使得搜索分别趋向多个不同的非支配向量。这些不同的非支配向量极大地提高了所求得的非支配集的多样性。在优化过程的最后阶段,由不同的子问题所产生的不同非支配向量的数目彼此间有较大的差异。许多子问题可能产生多个不同的非支配向量,而其它的子问题可能不产生非支配向量。
所以,一个新的向量是通过对所选的单目标子问题的搜索产生的,并且一个新的向量能否进入下一迭代中是由非支配排序法和拥挤距离所决定的。为了通过子问题的搜索方向和帕累托支配来指导软件升级决策决策工程,所以计算子问题在第G代(G为迭代过程数)搜索中产生的最优解的数目而且,对于特定间隔的迭代过程,,最优解数目相对于间隔迭代过程中向量的总个数所在的比例(概率)将被用来计算每一个子问题在每次迭代中被选择来产生后代的几率,这个特定间隔的迭代过程在本专利中被定义为学习迭代过程(learning generations,LGs)。
上述特定公式如下所示。在每一迭代中,选择第i个(i=1,2,...,N)子问题的概率将由公式(2.1)来计算。
其中,
Di,G表示第i个子问题产生的最优解所占LGs的比例,表示的是第i个子问题产生的非支配向量的数目,表示的是在LGs内所有子问题产生的非支配向量的数目,ε表示很小的正实数。根据每个子问题的概率,使用轮盘赌注选择法来选择子问题进行产生子代向量具体来说,对于第i个子问题,两个父代向量从邻近子问题中选出,单点交叉和按位变异操作被应用于父代从而产生子代向量yj。
三、需要考虑的是:哪一类子问题应该被开发,用来产生更高效的搜索和获得更多均匀分布的向量。本专利基于以上两个步骤提出了一种自适应学习机制来解决效率问题。首先,除了保存每一个子问题的最优解的最初种群(分解种群,而且在这里种群指的是向量集)外,采用一个次要的种群来存储不同的非支配向量(支配种群)。将帕累托最优应用于这个次要种群后,这个种群将包含非常重要的收敛信息,这些信息可有助于指导更高效的搜索。同样的,如果将基于几何多样性的保存方法应用于支配种群,例如拥挤距离法,这个支配种群将会包含重要的多样性信息,这些信息可被用作反馈信息来指导分解种群中的搜索方向,产生更多均匀分布向量。
另外,产生的优秀向量将用来更新最初的种群。对于产生的子代种群Y,每一个子代向量yj,假设它来自子问题i,考虑子问题i的所有邻近向量,邻近向量由权重向量λj的欧几里得距离(Euclidean distance)来确定,如果yj比邻近向量中的某个向量优秀,那么yj取代它。然后,更新后的子代向量和父代向量进行合并。对于合并后的向量集进行快速非支配排序并且根据拥挤距离进行选择,最后最优的向量(此时的向量就是软件版本升级决策所需要的需求子集,这个需求子集尽可能地权衡了时间和人力等方面的代价,最大程度地提高了软件版本决策升级时的效率)被保存下来。
图1示出了根据本发明技术方案的提高软件版本升级决策运行效率的方法的流程示意图。根据本发明的一实施方式,本发明提供了一种提高软件版本升级决策运行效率的方法,包括:
基于Pareto占优和分解的混合多目标软件版本发布决策方法(aMOEA/DD)
输入:
(1)软件版本升级决策的相关数据;
(2)终止条件;
(3)子问题的数目N;种群P和非支配向量集A的大小;
(4)N个均匀分布的权重向量:λ1,...,λN;
(5)每个子问题的邻居的数目T;
输出:非支配向量集A
Step1:初始化
(a)将最初的多目标组合优化问题分解成N个分别和相关的权向量λ1,...,λN。
(b)随机生成初始种群P={x1,...,xN}。
(c)令A=P。
(d)计算任意两个权重向量间的欧几里得距离以及获取每个权重向量的最近的T个权重向量,对于每个i=1,...,N,令B(i)={i1,...,iT},其中为与λi最近的T个向量。
Step2:新向量生成
(a)令j=1。
(b)使用轮盘赌选择法选择一个子问题i,选择子问题i的概率由公式(2.1)确定。
(c)从B(i)中随机选择两个索引k和l。
(d)采用单点交叉和按位变异操作xk和xl,从而生成对应于子问题i的新向量yj。
(e)令j→j+1,如果j≤N,则转到Step2(b)。
Step3:种群更新
(a)令j=1。
(b)如果yj由子问题i生成,那么对于每一个索引k∈B(i):如果gws(yj|λk)≤gws(xk|λk),则令xk=yj。
(c)令j→j+1,如果j≤N,则转到Step3(b)。
/*更新种群A*/
(d)将Y与A合并,得到Z=A∪Y;使用快速非支配排序法和拥挤距离法对合并后的种群Z进行排序,其中最优的N个向量组成新的种群A。
Step4:终止
(a)如果满足终止条件,则终止本算法并且输出种群A,同时根据软件版本升级决策的实际情况进行权衡选择出最优解决方案。否则,转到Step2。
图2示出了根据本发明技术方案的提高软件版本升级决策运行效率的方法的决策结构图。根据本发明的另一实施方式,本发明提供了一种提高软件版本升级决策运行效率的方法,包括:
A.结构
基于分解的自适应多目标软件版本发布决策方法将多目标优化问题分解成N个单目标优化子问题。原则上,任何聚合方法都可被用于这一目的。
对于每一个,集合中包含与向量欧几里得距离最近的权向量的索引。如果,那么子问题被定义为子问题的一个邻居。
本文所提出的方法在每一代中维持着两个种群,其中为迄今为止已经发现的子问题的最优解。这些解是通过提出的非支配排序选择和拥挤距离方法选择出来的。
该算法的伪代码被展示如下:
Step1初始化:初始化种群P和非支配向量集A。
Step2新解生成:生成一个N个新的解构成的集合Q。
Step3种群更新:使用Q来更新P和A。
Step4终止条件:如果满足预设的终止条件,则输出A。否则,转到Step2。
B.初始化
最初,一个多目标组合优化问题被分解成一些子问题。当N个均匀分布的权重向量被生成时,一个多目标组合优化问题被分解成N个与之对应的子向量。种群P中的每一个解都是每一个子问题的被发现的最优解,它将被随机生成并将其赋给种群A(种群A被用于存储不同的非支配解)。
C.新解生成
如果一个新的解在Step3中进入了A中,则称此新解是成功的。值得注意的是,一个新的解是通过对所选的单目标子问题的搜索产生的,并且一个新的解能否进入A中是由帕累托支配选择法和拥挤距离法所决定的。为了通过子问题的搜索方向和帕累托支配指导搜索,我们将看作由子问题i在第g代搜索产生的成功解的数目。在固定数目的能通过的代中全部的成功解被用于计算每一个子问题产生新解的概率。这些能通过的代被定义为学习代(LGs)。
在Step2b中,我们以计算出的概率为基础应用轮盘赌选择法来选择一个子问题。如Step2d中所示,对于所选的子问题i,我们将从它的T个相邻子问题中选择两个双亲。在Step2e中,一个简单的单点交叉算子和一个按位变异算子被作用于所选双亲,以产生后代。重复此过程(即Step2b-2e)N次,后代种群便被生成了。这里需要注意的是,在一代中一个子问题可能被多次选择以及多次产生解。
D.种群更新
在Step3中,新产生的后代种群Y被用来更新种群P和非支配向量集A。对于种群Y中的每个解,我们假设它是由子问题i所产生的。在Step3b中考虑到了子问题i的所有邻居,如果在第k个子问题上的表现优秀,则替换所有的邻居。支配种群的更新描述在Step3d中。后代种群Y与种群A合并形成种群Z,然后使用快速非支配排序法和拥挤距离过程对种群Z排序。其中最优的N个解被保存到种群A中。
根据本发明的再一实施方式,本发明提供了一种提高软件版本升级决策运行效率的方法,包括如下步骤:Step1:根据输入信息进行初始化操作;Step2:基于初始化结果,生成新向量;Step3:根据生成的新向量,更新种群;Step4:如果满足预设的终止条件,则输出非支配向量集A,否则,转到Step2。
进一步地,所述输入信息包括:
软件版本升级决策的相关数据;
终止条件;
子问题的数目N;
种群P和非支配向量集A的大小;
N个均匀分布的权重向量:λ1,...,λN;
每个子问题的邻居的数目T。
进一步地,所述Step1包括:
Step1a:将最初的多目标组合优化问题分解成N个分别和相关的权向量λ1,...,λN。
Step1b:随机生成初始种群P={x1,...,xN}。
Step1c:令A=P。
Step1d:计算任意两个权重向量间的欧几里得距离以及获取每个权重向量的最近的T个权重向量,对于每个i=1,...,N,令B(i)={i1,...,iT},其中为与λi最近的T个向量。
进一步地,所述Step2包括:
Step2a:令j=1。
Step2b:使用轮盘赌选择法选择一个子问题i,选择子问题i的概率由公式(2.1)确定。
Step2c:从B(i)中随机选择两个索引k和l。
Step2d:采用单点交叉和按位变异操作xk和xl,从而生成对应于子问题i的新向量yj。
Step2e:令j→j+1,如果j≤N,则转到Step2b。
进一步地,所述Step3包括:
Step3a:令j=1。
Step3b:如果yj由子问题i生成,那么对于每一个索引k∈B(i):如果gws(yj|λk)≤gws(xk|λk),则令xk=yj,即在第k个权重λk的前提下,解yj得出的目标值不大于解xk得出的目标值,其中:k表示N个权重中的第k个,λk表示第k个权重,xk表示第k个向量解,yj表示子问题在第j代生成的解,g()表示目标函数,即专利文档的公式(1.1),ws表示一种方法策略。
Step3c:令j→j+1,如果j≤N,则转到Step3b;
Step3d:将Y与A合并,得到Z=A∪Y;使用快速非支配排序法和拥挤距离法对合并后的种群Z进行排序,其中最优的N个向量组成新的种群A。
进一步地,所述Step4包括:
如果满足终止条件,则终止本算法并且输出种群A,同时根据软件版本升级决策的实际情况进行权衡选择出最优解决方案,否则,转到Step2。
本发明提供了一种提高软件版本升级决策效率的方法,能够将多目标优化问题分解成多个单目标优化子问题,以便在面对高维目标时能够快速而准确地提供解决问题的方案,从而节约时间和人力等方面的代价,提高软件版本升级运行效率。
本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (4)
1.一种提高软件版本升级决策效率的方法,其特征在于,包括如下步骤:
Step 1:根据输入信息进行初始化操作;进一步包括:
Step 1a:将最初的多目标组合优化问题分解成N个子问题,同时生成与N个子问题相对应的N个权重向量λ1,...,λN;
Step 1b:随机生成初始种群P={x1,...,xN};xi是第i个子问题的解,i=1,...,N;
Step 1c:令A=P;
Step 1d:计算任意两个权重向量间的欧几里得距离以及获取每个权重向量的最近的T个权重向量,对于每个i=1,...,N,令B(i)={i1,...,iT},其中为与λi最近的T个向量;
Step 2:基于初始化结果,生成新向量;进一步包括:
Step 2a:令j=1;
Step 2b:使用轮盘赌选择法选择一个子问题i,选择子问题i的概率由公式(2.1)确定;
其中,
Di,G表示第i个子问题产生的最优解所占LGs的比例,表示的是第i个子问题产生的非支配向量的数目,表示的是在LGs内所有子问题产生的非支配向量的数目,G表示当前的迭代次数,ε表示很小的正实数;
Step 2c:从B(i)中随机选择两个索引k和l;
Step 2d:采用单点交叉和按位变异等操作xk和xl,从而生成对应于子问题i的新向量yj;
Step 2e:令j→j+1,如果j≤N,则转到Step 2b;
Step 3:根据生成的新向量,更新种群;
Step 4:如果满足预设的终止条件,则输出非支配向量集A,否则,转到Step 2。
2.根据权利要求1所述的提高软件版本升级决策效率的方法,其特征在于,所述输入信息进一步包括:
软件版本升级决策的相关数据;
终止条件;
子问题的数目N;
种群P的大小和非支配向量集A的大小;
N个均匀分布的权重向量:λ1,...,λN;
每个子问题的邻居的数目T。
3.根据权利要求1所述的提高软件版本升级决策效率方法,其特征在于,所述Step 3进一步包括:
Step 3a:令j=1;
Step 3b:如果yj由子问题i生成,那么对于每一个索引k∈B(i):如果gws(yj|λk)≤gws(xk|λk),则令xk=yj,即在第k个权重λk的前提下,解yj得出的目标值不大于解xk得出的目标值,其中:k表示N个权重中第k个,λk表示第k个权重,xk表示第k个向量解,yj表示子问题在第j代生成的解,g()表示目标函数,ws表示一种方法策略;
Step 3c:令j→j+1,如果j≤N,则转到Step 3b;
Step 3d:将Y与A合并,得到Z=A∪Y,Y为子种群;使用快速非支配排序法和拥挤距离法对合并后的种群Z进行排序,其中最优的N个向量组成新的种群A。
4.根据权利要求1所述的提高软件版本升级决策效率的方法,其特征在于,所述Step 4进一步包括:
如果满足终止条件,则终止本算法并且输出种群A,同时根据软件版本升级决策的实际情况进行权衡选择出最优解决方案,否则,转到Step 2。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410124386.7A CN103902340B (zh) | 2014-03-28 | 2014-03-28 | 一种提高软件版本升级决策效率的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410124386.7A CN103902340B (zh) | 2014-03-28 | 2014-03-28 | 一种提高软件版本升级决策效率的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103902340A CN103902340A (zh) | 2014-07-02 |
CN103902340B true CN103902340B (zh) | 2017-02-22 |
Family
ID=50993679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410124386.7A Expired - Fee Related CN103902340B (zh) | 2014-03-28 | 2014-03-28 | 一种提高软件版本升级决策效率的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103902340B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101588359A (zh) * | 2009-07-10 | 2009-11-25 | 无锡维谷软件有限公司 | 一种基于网络的软件按需更新的方法及其*** |
CN103345384A (zh) * | 2013-07-18 | 2013-10-09 | 北京航空航天大学 | 一种基于分解的变邻域多目标测试任务调度方法及平台 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7809657B2 (en) * | 2006-07-12 | 2010-10-05 | General Electric Company | System and method for implementing a multi objective evolutionary algorithm on a programmable logic hardware device |
-
2014
- 2014-03-28 CN CN201410124386.7A patent/CN103902340B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101588359A (zh) * | 2009-07-10 | 2009-11-25 | 无锡维谷软件有限公司 | 一种基于网络的软件按需更新的方法及其*** |
CN103345384A (zh) * | 2013-07-18 | 2013-10-09 | 北京航空航天大学 | 一种基于分解的变邻域多目标测试任务调度方法及平台 |
Non-Patent Citations (2)
Title |
---|
MOEA/D: A Multiobjective Evolutionary Algorthm Based or Decomposition;Qingfu Zhang等;《IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION》;20071231;第11卷(第6期);第712-731页 * |
基于需求依赖的多目标软件版本发布问题的进化算法研究;蔡昕烨等;《计算机科学》;20111030;第2011年卷;第135-141页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103902340A (zh) | 2014-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhou et al. | Multiobjective evolutionary algorithms: A survey of the state of the art | |
Afzalirad et al. | A realistic variant of bi-objective unrelated parallel machine scheduling problem: NSGA-II and MOACO approaches | |
Ponnambalam et al. | Genetic algorithms for sequencing problems in mixed model assembly lines | |
Man et al. | Genetic algorithms: concepts and designs | |
Zhang et al. | An efficient multiobjective genetic algorithm for mixed-model assembly line balancing problem considering demand ratio-based cycle time | |
Li et al. | Multiobjective binary biogeography based optimization for feature selection using gene expression data | |
Fallah-Mehdipour et al. | Extraction of decision alternatives in construction management projects: Application and adaptation of NSGA-II and MOPSO | |
Rahimi-Vahed et al. | A multi-objective scatter search for a mixed-model assembly line sequencing problem | |
Ryberg et al. | Metamodel-based multidisciplinary design optimization for automotive applications | |
Hassan et al. | A hybrid of multiobjective Evolutionary Algorithm and HMM-Fuzzy model for time series prediction | |
Cheng et al. | LorSLIM: low rank sparse linear methods for top-n recommendations | |
Köksoy et al. | Robust design using Pareto type optimization: a genetic algorithm with arithmetic crossover | |
Sheng et al. | Adaptive multisubpopulation competition and multiniche crowding-based memetic algorithm for automatic data clustering | |
CN110119558B (zh) | 一种基于差分优化算法的电路参数优化方法 | |
Navgaran et al. | Evolutionary based matrix factorization method for collaborative filtering systems | |
Shu et al. | A modified hybrid rice optimization algorithm for solving 0-1 knapsack problem | |
Wang et al. | A hybrid estimation of distribution algorithm for simulation-based scheduling in a stochastic permutation flowshop | |
CN108038538A (zh) | 基于强化学习的多目标进化算法 | |
Li et al. | A nondominated sorting genetic algorithm III with three crossover strategies for the combined heat and power dynamic economic emission dispatch with or without prohibited operating zones | |
Zhang et al. | Embedding multi-attribute decision making into evolutionary optimization to solve the many-objective combinatorial optimization problems | |
CN114547446A (zh) | 一种订单推送方法及*** | |
CN109978023A (zh) | 面向高维大数据分析的特征选择方法及计算机存储介质 | |
Chen et al. | A tradeoff-based interactive multi-objective optimization method driven by evolutionary algorithms | |
Templier et al. | A geometric encoding for neural network evolution | |
Maghsoudi et al. | Representing the New Model for Improving K-Means Clustering Algorithm based on Genetic Algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170222 |
|
CF01 | Termination of patent right due to non-payment of annual fee |