一种基于种群分解的自适应混合多目标进化方法

文档序号:6368370阅读:763来源:国知局
专利名称:一种基于种群分解的自适应混合多目标进化方法
技术领域
本发明涉及智能计算与多目标优化两个领域,具体涉及一种基于种群分解的自适应混合多目标进化方法。
背景技术
最优化在国民经济,国防,教育,科技等社会领域有着广泛的应用。多目标最优化对学者和工程师来说是一个非常重要的研究课题。这不仅仅是由于现实中的很多问题都具有多目标最优化的特征,而且多目标最优化本身也存在很多有研究价值的问题。解决多目标最优化(Multiobjective optimization problem, MOP)问题通常很困难,因为多目标优化问题的各目标往往相互冲突,这使得找到一个解同时优化所有的目标函数变得不可能。因而求解多目标最优化问题倾向于找一组折中的解。传统的优化方法一次只能找到一个最优解,这使得用传统的方法解决多目标最优化问题变得很不方便。在过去的几十年间,涌现出许多多目标函数优化问题的求解方法,大多数方法沿袭一条固定模式的解决路线,即使用对策权衡原理对每个目标的重要性赋权重,构成一个单目标最优化问题。处理单目标最优化的方法相对较成熟,所以多目标最优化转化成了单目标最优化。但是多目标最优化不存在所谓的“最优解”,所以这种转化导致优化结果的不唯一。这种方法的结果与“决策者”直接相关,导致算法没有通用的价值,对目标进行科学优化也没有现实意义。进化算法(evolutionary algorithms)在组合优化问题中取得的巨大成功,启发了人们把进化算法的应用延伸的多目标最优化的领域,实现了一次实验就能找到一系列的折中解。进化算法是以达尔文的进化论思想为基础,一种模拟生物进化过程与机制的自组织、自适应的人工智能技术。生物进化是通过繁殖、变异、竞争和选择实现的;而进化算法则主要通过杂交,变异和选择这三种操作实现优化问题的求解。进化算法是一种解决多目标最优化问题的理想方法。20世纪80年代中期,作为智能计算的核心的遗传算法理论开始在多目标最优化领域大规模应用,从而形成了一系列的多目标进化算法。多目标进化算法在整个种群中搜索Perato最优解。这种整体的性质在解决多目标最优化问题上有着很明显的优势。很多学者对此很感兴趣,也提出了一系列的算法。它们可以大致的分为两类一类是基于支配的适应值分配方法,如非支配的基因搜索算法 II (nondominated sorting genetic algorithm II,NSGA-II),强 Perato 进化算法II (strength Pareto evolutionary algorithm II,SPEA_II);另一类是基于目标的适应 值分配方法,如加权法,极大极小法,M0EA/D。目前,大多数多目标进化算法,包括代表当代水平的算法,都把种群当做一个整体,不能在一个框架中混合不同的多目标进化算法。由“没有免费的午餐定理”可以知道,不存在一种算法适合所有的优化问题。即使是对同一个优化问题,由于多目标优化问题的有效解是一组解,散布在目标空间中,因此对于同一个优化问题的不同子区域都可能需要不同的多目标进化算法。但是,对于某一个优化问题,事先不知道哪种多目标进化算法最合适。如果能够根据问题的特性,自适应地选择一种最合适的算法,这是十分有意义的。另外,目标优化问题的有效解是一组解,散布在目标空间中,显然,当且仅当两个相邻的个体具有相似的小生境,它们之间才存在竞争,相距较远的两个个体可以和平共存。由于目前大多数算法都把种群当成一个整体,每一个都必须与当代种群中的所有个体进行竞争,不利于保持种群的多样性。特别是当种群中出现少数几个特别优良的个体时,很容易产生“支配者效应”。

发明内容
为了克服现有技术的不足,本发明提出一种基于种群分解的自适应混合多目标进化方法。原则上任何多目标进化算法都可以用来优化每一个子种群,因此在算法框架内可 以混合使用不同的多目标进化算法,不同的搜索区域可能要求不同的搜索方法。通过种群在目标函数空间的分布把种群分成若干子种群,每个子群体负责目标空间的一个子区域。通过相邻子种群之间的协作学习,每个子种群自适应地选择一个最合适的多目标进化算法。每一个个体只需要与同一个子种群中的其它个体进行比较,减少了最优个体的影响,保持了种群多样性,同时减少了算法复杂度。另外,每一个子种群对应一个外部集,这样可以用很低的运算复杂度来实现保持种群多样性。本发明的具体技术方案为一种基于种群分解的自适应混合多目标进化方法,包括如下步骤I)初始化参数、种群规模,分解种群,选择适应值分配策略;随机均匀地产生5N个个体作为种群,采用动态种群分解策略用这5N个个体初始化各个子种群SPp其中j=l,2,. . .,= 为子种群的数量;初始化各个子种群SP^的随机因子λ j ;对各个子种群
SPj随机分配一种多目标进化算法,并从5Ν个个体中随机选择5 j个个体作为子种群SPj
的外部集EPj, j=l,2,. . .,S ;其中[X]为代表不大于X的最大整数;2)从子种群SP^中随机选择一个个体Xi,并在Xi相对应的外部集EP^中随机选择一个个体,让X1与进行杂交变异产生一个新个体X1',i = 1,…N,共产生N个新个体;3)把新产生的N个新个体用动态种群分解策略分到各个子种群体中;对第i个新个体Xi',令 J = argnrin . d( JVj)
邮f(x )d(A, B)是A和B之间的欧几里得距离,则第i个个体Xi'就被划分到第j个子种群;λ]为子种群SPj的随机因子,f(Xi')第i个个体对应的目标函数值向量,IIf(Xi)II第i个个体目标函数值向量的模,Wj表示第j个子种群的中心;4)更新各子种群和外部集;通过步骤I)获得适应值分配策略和分配多目标进化算法时分配的选择算子,在各个子种群SP^和分配给各个子种群SP^的新产生的个体中更新子种群,即选择不超过个不同的适应值大的个体作为下一代中的子种群SP' P其中j=l, 2,3,... S ;如果SP^中的个体和分配给SP^的新产生的个体总数仍小于np则将这些个体作为下一代的子种群SP' P其中j=l,2,3,... S ;更新各个子种群SP^所对应的外部集,如果在更新子种群SP^时没有剩余个体,则不需要更新外部集;否则,将更新子种群SP^时剩下的个体随机替代外部集中相同数目的个体;用更新子种群SP^时的剩余个体随机替换外部集中的相同数目的个体;5)如果mod (t,K) =0,式中t指的是当前进化的代数,K是预先给定的一个参数,作为控制随机因子\重置的频数,即每隔k代重置随机因子λ P重置子种群的随机因子λ」,并计算每一个子种群所分配的算法的效用值Aj
权利要求
1.一种基于种群分解的自适应混合多目标进化方法,其特征在于包括如下步骤 1)初始化参数、种群规模,分解种群,选择适应值分配策略;随机均匀地产生5N个个体作为种群,采用动态种群分解策略用这5N个个体初始化各个子种群SPp其中j=l,2,SJ = 为子种群的数量;初始化各个子种群SP^的随机因子λ j ;对各个子种群SP^随机分配一种多目标进化算法,并从5Ν个个体中随机选择个个体作为子种群SP^的外部集
2.根据权利要求I所述基于种群分解的自适应混合多目标进化方法,其特征在于所述的随机因子λ j的取值范围为[O. 8,I],j=l,…,S。
3.根据权利要求I所述基于种群分解的自适应混合多目标进化方法,其特征在于所述步骤I)的分解种群,用动态种群分解策略把随机产生的5N个个体分到各个子种群SPj,j=l, 2,3,... S,当分配给子种群SPj的个体数目小于或等于子种群SPj规模的上界Iij时,子种群SP^就包括所有分配的个体;否则,通过分配的多目标进化算法从所分配到子种群SPj的个体中选取个不同的个体作为子群体的下一代。
4.根据权利要求3所述基于种群分解的自适应混合多目标进化方法,其特征在于所述通过分配的多目标进化算法从所分配到子种群SP^的个体中选取1^_个不同的个体作为子群体的下一代。
5.根据权利要求I所述基于种群分解的自适应混合多目标进化方法,其特征在于所述步骤I)的动态种群分解策略是将每一个子种群看成一个独立的微群体,在每一个子种群中独立地使用各种多目标进化算法。
全文摘要
本发明提出了一种基于种群分解的自适应混合多目标进化方法,是针对目前多目标进化算法的不足。根据目标空间的分布把种群分解成一系列子种群,每一个子种群负责搜索目标空间的一片子区域。为了避免在搜索过程中丢失子区域之间的边界区域,算法动态地调整搜索范围。不同的子区域可能需要不同的搜索方法,如果一种算法在一个子种群变现越优秀,它被选择来进化这个子种群的相邻种群的可能性就越大。算法为每一个子种群分配一个外部集,在子种群与相应的外部集个体之间进行交叉,变异,外部集以一种很低的运算开销保持种群多样性,扩大了搜索区域。分析和实验证明该方法相比传统多目标进化算法更能有效的解决连续的多目标问题。
文档编号G06N3/12GK102708407SQ20121015155
公开日2012年10月3日 申请日期2012年5月15日 优先权日2012年5月15日
发明者刘海林, 辜方清, 陈磊 申请人:广东工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1