速成|量子遗传算法及其MATLAB实现

在这里插入图片描述
在这里插入图片描述

本文是作者遗传算法系列之篇五,前面已经系统地讲解了遗传算法基本原理、简单应用以及一种改进方法

系列1-标准遗传算法SGA原理及程序实现
系列2-遗传算法应用于TSP问题
系列3-遗传算法应用于车辆路径规划
系列4-多种群遗传算法原理及程序实现

在此基础上,本文将再次引入一种遗传算法的改进算法——量子遗传算法,下面将从理论原理、算法流程以及程序实现上进行详细展开。

01 理论基础

量子遗传算法(quantum GA,QGA)是量子计算与遗传算法相结合的产物,是一种新发展起来的概率进化算法。

量子计算中采用量子态作为基本的信息单元,利用量子态的叠加、纠缠和干涉等特性,通过量子并行计算可以解决经典计算中的NP问题。1994年Shor提出第一个量子算法,求解了大数质因子分解的经典计算难题,该算法可用于公开密钥系统RSA;1996年Grover提出随机数据库搜索的量子算法,在量子计算机上可实现对未加整理的数据库√N量级的加速搜索。量子计算正以其独特的计算性能迅速成为研究的热点。

量子遗传算法就是基于量子计算原理的一种遗传算法。将量子的态矢量表达引入遗传编码,利用量子逻辑门实现染色体的演化,达到了比常规遗传算法更好的效果。
量子遗传算法建立在量子的态矢量表示的基础之上,将量子比特的几率幅表示应用于染色体的编码,使得一条染色体可以表达多个态的叠加,并利用量子逻辑门实现染色体的更新操作,从而实现了目标的优化求解。

关于量子遗传算法的理论来源如下:
Narayanan A , Moore M . Quantum-inspired genetic algorithms[J]. Proc.ieee Int.conf.on Evolutionary Camputation, 1996:61-66.

02 算法流程

算法流程与标准遗传算法相比,主要区别在于量子比特的编码以及量子旋转门的调整,具体流程如下:在这里插入图片描述

下面对该流程作详细说明:
在这里插入图片描述
在这里插入图片描述

其中,m是量子比特数,也是染色体长度。初始化即所有的染色体中的概率幅 αi 和 βi 都等于 1/sqrt(2),i=1,2,…,m。这意味着染色体是所有可能的状态的线性叠加,且以相同的概率坍缩为某一确定状态。

在这里插入图片描述
在这里插入图片描述

03 问题导入

这里仍然采用与系列一中的函数最值问题,便于比较。

3.1 问题描述

采用复杂的二元函数求最值问题,函数如下

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

可以看出,该函数在取值范围内有大量局部极值,通常的寻优算法很容易陷入局部极值中或在极值间振荡,因此对于检验QGA的性能是比较合适的。

3.2 实验设计

为显示QGA较之SGA的优越性,本文针对该函数,分别对QGA\SGA两种算法做仿真对比,并分别独立运行4次观察其进化过程。对于SGA部分,采用英国谢菲尔德大学推出的遗传算法工具箱,该工具箱在作者往期文章中可获取下载链接。对于MPGA部分,其主体部分和SGA大致相似,因此本文将重点介绍量子比特编码和量子旋转门的实现。

04 MATLAB程序实现

4.1 量子比特编码

量子比特编码矩阵在这里插入图片描述

一次测量获得二进制编码
在这里插入图片描述

4.2 量子旋转门

在这里插入图片描述

4.3 多种群遗传算法主程序

在这里插入图片描述
在这里插入图片描述

4.4 结果分析

标准遗传算法运行4次的进化过程如下图,
在这里插入图片描述

多种群遗传算法运行4次的进化过程如图x所示。
在这里插入图片描述

由图得知,QGA运行4次的结果完全一致,且迭代次数小,50次左右就达到最优 ,基本没有陷入局部最优,说明QGA算法稳定性好,且收敛速度快,对于该多极值的函数问题较为适用,而从SGA的结结果,尽管迭代次数在300次时,SGA运行4次得到的优化结果仍不完全相同,迭代次数相当大,且也没有完全收敛,说明算法会陷入局部最优解未成熟收敛现象,因此SGA算法稳定性较差,且有早熟收敛现情况,难以适用该问题。

05 展望

量子遗传算法丰富了种群多样性,算法的搜索能力得到提升,较之SGA算法性能上有较大提示,但传统量子遗传算法易出现局部极值,陷入局部最优解,且采用固定旋转角度策略,旋转方向需要查表确定,过程中涉及多个判断条件,影响了算法的效率,因此仍然有提示改进的空间,比如可以动态调整量子门旋转角大小、加入量子交叉等方法。

参考文献

[1] 张秋艳, 王默玉, 申晓留,等. 基于灾变因子的量子遗传算法研究[J]. 计算机与数字
工程, 2019, 47(7):1591-1595.
[2] 王宇平, 李英华. 求解 TSP 的量子遗传算法[J]. 计算机学报, 2007, 30(5):748-755
[3] 李英华 , 王宇平 . 有效的混合量子遗传算法 [J]. 系统工程理论与实践 ,
2006(11):116-124.

关于源码,可在评论区留言邮箱或者私信我,我看到了会发你~

猜你喜欢

转载自blog.csdn.net/sfejojno/article/details/131019983