本发明专利技术公开了一种用于量子遗传算法的量子门旋转角步长调整方法。设种群中染色体数量为N(N>1),则该方法规定同一代种群采用N个不同的量子门旋转角步长,且第i(1≤i≤N)个量子门旋转角步长只用于第i个染色体的进化。第i个量子门旋转角步长通过角步长常量、算法最大迭代次数及当前迭代次数及第i个染色体的随机数等参数确定。本发明专利技术能有效地增加量子遗传算法的收敛速率。
【技术实现步骤摘要】
本专利技术涉及, 属于进化计算
量子遗传算法是一种量子计算理论与进化算法相结合的概率搜索优 化方法。它用量子位编码表示染色体,用量子门作用和量子门更新来完 成进化搜索。它具有种群规模小而不影响算法性能、迭代次数少、收敛 速度快、搜索效率高和全局搜索能力强等特点,同时该算法还具有较好 的数据搜索能力。量子遗传算法以其独特的计算性能引起广泛关注,在 各个学科和领域展现出独特的优越性,尤其是在组合优化问题求解、自 适应控制、规划设计和机器学习等领域具有潜在的广泛应用的价值。在量子遗传算法中,种群进化操作由基于量子旋转门的更新操作完 成。量子旋转门一般表示为'其中0-AS为称为旋转角,A和S分别为0的旋转方向和角步长。量子门中旋转角步长调整方法是量子门构造的基础。目前,量子门中旋转角步长调整方法包括固定旋转角步长调整方法(Fixed Rotation Angle Step Adjustment)和动态旋转角步长调整方法(Dynamic Rotation Angle St印Adjustment)。在量子遗传算法中,固定旋转角步长调整方 法规定所有染色体在任何一代进化操作中均采用同一个固定不变的旋转 角步长(Rotation Angle Step)进行更新;动态旋转角步长调制方法允 许不同代染色体的进化操作采用不同的旋转角步长进行更新,然而同一 代中的所有染色体仍然采用同一个旋转角步长进行更新。对于同一代种 群的进化而言,固定旋转角步长调整和动态旋转角步长调整两种方式为 '种群中所有染色体提供的旋转角步长均只有一个,故可以统称这两种角 步长调整方法为基于单粒度进化的量子门旋转角步长调整方法。量子遗 传算法采用基于单粒度进化的旋转角步长调整方法时,如果待求问题规
技术介绍
模较大(亦即染色体位数较多),优良染色体可能由于算法旋转角步长过 小而迟迟不能产生最优解,或是因为算法旋转角步长过大而错过最优解。 因此每一代进化操作的所有染色体共享同一旋转角的方式会导致QGA算 法收敛速度将过分依赖于每代旋转角步长的选取,不利于算法的快速收敛。
技术实现思路
本专利技术的目的在于针对待求问题规模较大的情况,提供一种基于多 粒度进化的量子门旋转角步长调整机制,能够使基于该量子门旋转角步 长机制的量子遗传算法获得更快的算法收敛速率。为实现上述的专利技术目的,本专利技术采用下述的技术方案一种基于多粒度进化的量子门旋转角步长调整方法,其特征在于 包括以下步骤步骤1,设定角步长常量;步骤2,为染色体编号;步骤3,获取量子遗传算法进化操作最大迭代次数;步骤4,运行量子遗传算法至获取染色体更新所需的量子门旋转角步 长时,获取量子遗传算法当前迭代次数;步骤5,按编号顺序为每个染色体生成并分配一个随机数;步骤6,按编号顺序,根据角步长常量、量子遗传算法进化操作最大 迭代次数及当前迭代次数、染色体所对应的随机数计算出每个染色体在 本轮量子门更新操作中所需的角步长;步骤7,将所得的角步长返回量子遗传算法中用于量子门更新操作;步骤8,判断当前迭代次数是否为最大迭代次数;如果量子遗传算法 的当前迭代次数小于最大迭代次数,则返回步骤4;如果量子遗传算法的 当前迭代次数等于最大迭代次数,则执行步骤9。步骤9,基于多粒度进化的量子门旋转角步长调整方法终止;其中,所述步骤1中,角步长常量为一常量,用Q表示。Q的取值在量子遗传算法初始化阶段确定,其取值范围为0.05兀到0.5兀之间。所述步骤2中,假设染色体个数为7V个,其中W为自然数,则所 有染色体被由1到N依次编号。该操作在量子遗传算法初始化阶段完 成。所述步骤3中,进化操作最大迭代次数为一常量,用A^4XG五iV表示, 由量子遗传算法本身确定,当量子遗传算法运行完第^MXG五7V次迭代后, 该算法将不再进行迭代操作。Tl^4ZG五iV的获取在量子遗传算法初始化阶 段完成。所述步骤4中,当前迭代次数为一变量,用Z表示,记录量子遗传算 法当前迭代次数信息。所述步骤5中,第z'个染色体所对应的随机数用凡表示,凡的取值 范围为0到1之间,属均匀分布,这里1S^V。所述步骤6中,第i个染色体在本轮量子门更新操作中所需角步长《 的计算公式为《=Q 《《M4^G^V十1 -0/(M4XG£7V +1),其取值范围在0到 Q. (M4JTG£7V +1 — z)/(tW>1YG£AA +1)之间,Q (M4ZG五W +1 - /)+ 1) 会随着t的增加而不断减小。量子遗传算法每次迭代时,每个染色体都获 得一个专门为自己的进化而服务的量子门旋转角步长。本专利技术所提供的基于多粒度进化的量子门旋转角步长调整方法为处 于同一代的W个染色体确定W个旋转角步长。 一方面,旋转角步长大的 个体负责搜索优良解空间,旋转角步长小的个体负责最优解的精确搜索,增加了算法的搜索效率;另一方面,从种群进化角度看,基于多粒度进化的量子门旋转角步长调整方法在量子遗传算法运行初期用平均较大的旋转角步长加速优良解空间搜索,在量子遗传算法运行末期用平均较小的旋转角步长精确搜索最优解。附图说明下面结合附图和具体实施方式对本专利技术作进一步的说明。图1为基于多粒度进化与基于单粒度进化的量子门旋转角步长调整 方法比较图。图2为采用基于多粒度进化的量子门旋转角步长调整方法的量子遗传算法流程图。 具体实施例方式如图1所示,量子遗传算法当前迭代次数为&,第/个染色体的角步长为&,其中KSW,基于单粒度进化的量子门旋转角步长调整方法指出在 ^代,所有染色体用于自身进化的角步长为同一个角步长,值为而基 于多粒度进化的量子门旋转角步长调整方法为每个染色体产生一个角步 长,值为乂.,专门用于第Z个染色体的进化。参照图2所示,量子遗传算法需要用染色体来表示待解决问题的解。 因此,算法第一步是将待优化问题映射为量子位染色体。在确定如何 编码后,算法需要完成初始化,主要包括算法运行所必须的参数的设定, 例如,种群规模和最大迭代次数等。基于多粒度进化的量子门旋转角步 长调整方法中步骤1 步骤3 (即步骤l,设定角步长常量;步骤2,为染 色体编号;步骤3,获取量子遗传算法进化操作最大迭代次数;)是在算 法初始化阶段完成的。初始化完成后,量子遗传算法对当前种群中所有 染色体进行一次观测,并利用观测的结果求出相应适应度值。量子遗传 算法将保留当前最优解及其适应度值,并将其作为种群最优解及最佳适 应度值。随后,判断算法当前迭代次数是否已经达到最大迭代次数,如 果是,则输出最优解并结束算法;否则,算法进入迭代进化阶段。算法 流程进入迭代阶段后,对当前种群进行一次观测,利用观测的结果求出 相应适应度值,并找出当前最优解及其适应度值。随后,算法将比较当 前最优解和种群最优解的适应度值。如果当前最优解适应度值大于种群 最优解适应度值,当前最优解及其适应度值将取代原有种群最优解及最 佳适应度值。在进行基于量子门的染色体进化操作之前,基于多粒度进 化的量子门旋转角步长调整方法向所有染色体提供用于量子门操作的旋 转角步长,即本专利技术中步骤4 步骤9的内容。染色体在获得旋转角步长 后,用量子门完成自身进化,量子遗传算法得到新一代种群。上面对本专利技术所述的基于多粒度进化的量子门旋转角步长本文档来自技高网...
【技术保护点】
一种用于量子遗传算法的多粒度进化量子门旋转角步长调整方法,其特征在于: 所述基于多粒度进化的量子门旋转角步长调整方法; 其中,所述同一代种群中,N个染色体拥有N个量子门旋转角步长; 所述同一代种群中,每个染色体都获得一个专 门为自己的进化而服务的量子门旋转角步长;。
【技术特征摘要】
1. 一种用于量子遗传算法的多粒度进化量子门旋转角步长调整方法,其特征在于所述基于多粒度进化的量子门旋转角步长调整方法;其中,所述同一代种群中,N个染色体拥有N个量子门旋转角步长;所述同一代种群中,每个染色体都获得一个专门为自己的进化而服务的量...
【专利技术属性】
技术研发人员:柏琳,邢焕来,
申请(专利权)人:北京邮电大学,
类型:发明
国别省市:11[中国|北京]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。