前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇量子计算的特点范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。
膜优化算法最早于2004年由日本教授Nishida提出,利用了细胞膜的层次结构,在膜的各个区域分别使用遗传算法和禁忌搜索算法来求解(TSP)问题,取得了比模拟退火算法还要好的效果。该算法与传统进化算法相比的一个重要特点就是在计算过程中具有分布式和动态进化的结构,是一种高层次的进化算法。目前已有多种不同的膜算法,包括粒子群膜算法(PSOPS)、基于差分进化的膜算法(DE—MC)、量子进化膜算法(QEPS)等,这些膜算法已被成功的应用在连续函数优化、辐射源信号分析、可满足性问题(SAT)求解等方面。
量子进化膜算法结合了量子进化算法(QIEA)和膜计算的优点,其原理是采用膜系统(P系统)的单层膜结构,在各基本膜内采用量子进化算法进行寻优,实现种群的进化,然后采用P系统的转运规则和通信规则,实现各膜之间的信息交流。本文将量子进化膜算法应用于求解背包问题(knapsack problem,KP),并对QEPS中基本膜个数的取值进行讨论。
1 背包问题
背包问题是运筹学中一个经典的组合优化问题,有着广泛的现实应用背景,如预算控制、投资决策、材料切割和资源分配等均可建模为背包问题。0—1背包问题是最典型的背包问题,0—1背包问题是指:有一个容量为v的背包,有n个物品,每个物品的重量及其价值分别为wi和ci(wi>0,ci>0,i=1,2,…,n),如何选择物品装入背包可使得在背包的容量约束限制之内所装物品的总价值最大?
背包问题的数学模型[7]可表述为:
max■cixi(xi∈{0,1},i=1,2,…,n)(1)
s.t.■wixi≤v(2)
其中,式(1)为所求目标,即装入背包的物品总价值最大;式(2)是约束条件,表示所装物品的总重量不能超过背包的容积限制;式中xi的表示一个二进制变量,当xi=1时意味着第i个物品装入背包,当xi=0时则表示第i个物品不装入背包。
2 求解背包问题的量子进化膜算法
量子进化膜算法采用P系统的单层膜结构,结合QIEA的优点,在各基本膜内采用QIEA寻优,如采用量子比特编码、量子旋转门更新量子染色体等;同时将各基本膜中的最优个体送到表层膜(输出膜)中进行信息交流。下面将对QIEA进行简单介绍,并详细描述QEPS的实现过程。
2.1 量子进化算法
量子进化算法(QIEA)是由Han等提出,以量子计算[9]理论为基础的概率搜索算法,其核心思想在于充分利用量子态的叠加性和相干性。QIEA因具有全局寻优能力强、收敛速度快、种群规模小的特点而被广泛应用。与其它传统的进化算法相比,QIEA不是采用二进制、十进制或浮点等编码方式,而是采用量子比特编码方式,具体形式可以描述为:
q=α1β1α2β2 αkβk(3)
其中[αi βi]T(i=1,…,k)表示一个量子比特,并且满足αi■+βi■=1。q是一个量子染色体,QIEA正是用量子染色体对问题进行描述的。在QIEA中第t代染色体种群则表示为:Q(t)={q1t,q2t,…,qnt},n为种群大小。
量子进化算法的一般步骤如下[8]:
(1)初始化种群Q(t),t=0;
(2)对种群Q(t)进行量子观测,得到二进制种群P(t);
(3)评价P(t)的适应值,并保存最优解;
(4)判断是否满足停机条件,如果满足,输出最优解,算法结束,否则算法继续;
(5)采用量子旋转门更新Q(t),t=t+1,返回(2)循环执行。
初始化种群时,一般所有量子染色体的量子比特位都被初始化为±1/■,这意味着所有可能的叠加态以相同的概率出现。在步骤(2)中对Q(t)中的每个个体的每个量子比特位进行量子观察,其具体操作如下:随机产生一个[0,1]之间的随机数,若它大于αi■,则对应的二进制解取值1,否则取值0。在步骤(5)中,采用量子旋转门G(θ)对Q(t)进行更新,用数学表达式可表示为:
αi′βi′=G(θ)αiβi=cos(θ) —sin(θ)sin(θ) cos(θ)αiβi(5)
其中θ是量子旋转门的旋转角度,它的具体数值通过查表方式获得[8]。
2.2 量子进化膜算法
量子进化膜算法结合了量子进化算法和膜计算[10]的优点,其采用的P系统单层膜结构(one level membrane structure,OLMS)如图1所示。这个单层膜结构包含表层膜0和m个基本膜,每个膜都包含一个区域,在QEPS中将表层膜0定义为输出区域,即最终的优化结果会从各基本膜中传输至表层膜内。QEPS算法的具体实现流程如下:
步骤1初始化膜结构,即初始化如图1所示的单层膜结构,基本膜个数为m;
步骤2初始化种群Q(t),种群Q(t)大小为n,将这n个体随机分配到m个基本膜中,并保证每个基本膜中至少有一个个体,且表层膜中不包含任何个体。具体分配操作为:
G1=λ,
G2=q1q2…qn1,n1
G3=q■q■…q■,n2
…
Gm—1=q■q■…q■,n(m—1)
Gm=q■q■…q■,nm=n,
1 量子信息学和量子信息处理技术
1946年第一台数字电子计算机问世,1971年第一块计算机硅芯片诞生。此后芯片集成度遵循摩尔定律成指数增长,到今天,芯片的能耗问题已凸显,而其尺寸不久将达到原子分子量级,根据量子物理理论,这一微观领域内,电子将呈现出波粒二象性,量子干涉效应会导致芯片功能不再稳定[1]。这是研究量子计算机的直接动力。
研究量子计算机离不开对量子算法的研究,量子算法的研究成果反过来又激励人们对量子计算机的热情。量子计算机和量子算法是量子信息处理技术的一个重要组成部分。
量子力学原理促成量子密码、量子隐形传态和量子通信、量子签名等理论和技术的发展,后者是量子信息处理技术的又一重要组成部分。
今天的量子信息处理技术还囊括了量子纠错编码、量子密集编码、量子图像处理等领域,形成了量子信息学。
量子信息处理技术的直接目标是设计和实现量子计算机和量子通信网络。
量子计算机的优势之一是计算能力强[2],利用芯片内的量子态的线性叠加性完成指数级的并行计算,可结束摩尔定律的历史。NP(非确定性多项式)计算难题是传统计算机无法应对的,量子计算机可将众多此类问题转化为P(多项式)问题解决,征服了数学难题,也动摇了传统密码系统安全性的理论基础;在对非结构化数据库的进行搜索时,如果运行全新的量子搜索算法,转眼可从海量的数据库中找出精确的信息。其第二个优势是可以建立量子模拟与仿真系统,用于武器、飞机仿真测试和模拟核试验。1982年,R.P.Feymann提出一个猜想,认为量子计算机具有模拟任何局域量子系统的能力,1996年希斯·罗埃德证明了这一猜想[3][4]。第三个优势是可用于实现计算机视觉。
量子通信网络因高安全性及多端计算的特点成为下一代通信网络的重要发展方向。
未来量子信息学可对网络、检索、建模、预报、调度,尤其是密码破译等信息安全领域造成强烈影响。
2 量子计算和量子算法
2.1 传统加密算法
基于计算安全性的现代密码学是各国金融和国防等领域的基石,也是保障网络信息安全的核心。密码算法是保证信息机密性的最有效途径。保密通信、密级存储、身份鉴别及数据完整性等信息安全技术均依赖于现代密码学理论。
传统加密算法分为对称加密算法和公钥加密算法。对称加密算法运算快,典型代表有的DES、AES和IDEA等。算法较复杂的RSA(基于大整数分解困难性问题)、NTRU(基于高维格中寻找最短向量困难性问题)、ElGamal(基于离散对数问题)、椭圆曲线(基于椭圆曲线离散对数问题)和MH背包密码系统是公钥密码体系的代表。
1977年发明的公开密钥加密算法RSA,是第一个也是对信息安全贡献最大的公钥密码算法[5]。
RSA密钥对生成过程:
①选取两个保密的不同的大素数p、q,计算乘积
n=p×q
和欧拉乘积
φ(n)= (p-1)×(q-1)
②随机选取一个与欧拉乘积φ(n)互质的较大的数e,(e,n)就是加密公钥,通过e和φ(n)得到
de-1modφ(n)
(d,n)即为解密私钥。
加密过程:
①发送者将明文M分段,使其每个分段mi的长度小于log2n。
②对每个明文的分段mi做加密运算,并合并得到密文
C=c1c2…ct
其中
cimie mod n (1?燮I?燮t)
密文C发送给接收者。
解密过程:
接收者收到密文C,将其分段得
C=c1c2…ct
利用仅接收者拥有的私钥来计算明文
M=m1m2…mt
其中
micid mod n (1?燮I?燮t)
大数因子分解相对传统电子计算机而言是难解的,这一计算复杂性理论是现代密码学的基础[6]136。RSA算法的运算复杂度为O(n3)。有人计算过,如果对一个60位的正整数进行因子分解,最快的超级电子计算机也要耗时若干亿年[2]。
1996年J.Hoffstein,J.Pipher,J.H.Silverman提出基于多项式环的“NTRU”公钥加密体制,运算复杂度为O(n2),比RSA高效且防攻击性好,有人预测,只有拥有强大并行计算能力的量子计算机可能攻破它[6]113-116。
2.2 量子算法攻击技术
相对于量子计算机的计算能力,某些曾经的难题不再难。量子计算机具有强大攻击潜能。量子攻击分为两类[7]:量子物理攻击和量子算法攻击。其中物理攻击技术尚不成熟;算法攻击方面成果颇丰,最著名的有Shor算法攻击和Grover算法攻击。
2.2.1 Shor算法攻击
主要针对公钥密码体制。
1994年,美国学者Peter Shor提出了一种量子算法,以“量子计算可破解离散对数、大整数因子分解难题” 为理论基础,是一个超越传统的高效算法[8,9]。该算法将大数因子分解问题变换为求一个指数函数周期的问题,经过快速的量子傅里叶变换计算,求周期仅需多项式步骤即可得解。
Shor算法(秀尔算法,大整数质因子分解的量子多项式算法):
已知:N是两个大素数n1和n2的乘积。求:n1和n2。
①随机选取一个比N小的正整数a,计算a和N的最大公因子gcd(a,N)。判断:若
gcd(a,N)>1
则已成功找到一个因子gcd(a,N),输出
n1=gcd(a,N)
进入第4步;否则进入第2步。
②定义f(x)=ax mod N,f(x)是一个周期函数。设周期为r,即
ax mod N=ax+r mod N
故有
ar=1 mod N
利用量子算法求r。判断和循环:若r是奇数,重新取a,重新求r,直到r为偶数为止。
③因为
(ar/2)2 -1=0 mod N
所以
(ar/2+1) (ar/2-1)=0 mod N
求出ar/2和N的最大公因子gcd(ar/2,N),输出
n1=gcd(ar/2,N)
④输出
n2=N/n1
以上步骤中第二步必须靠量子计算机来完成,其他步骤可在传统计算机上进行[10]。对一个60位的数字进行因子分解,采用Shor算法只需一瞬间[2]。这就是量子计算对今天各国采用的主要密码体制和信息安全理论构成巨大威胁的直接原因。应当注意,此算法是个随机算法,即不保证每次都成功。
2.2.2 Grover算法攻击
主要针对对称加密算法和大容量数据库。
1995年,美国人Grover证明出:搜索一个未经整理、容量为N的数据库的时间复杂度,用量子图灵机为O(N1/2),比用传统算法的时间复杂度O(N)要好,据此,Grover设计出了一个基于量子态并行计算特性的量子快速搜索算法[8,11,12,13]。Grover算法极大降低了计算的复杂度,使传统计算机要用百年时间才能完成的破译DES密码的任务在几分钟内即完成,还可用来探索、搜索最值和均值,这些理论已通过光学系统、核磁共振(NMR)等实验方案验证[14]。与Shor算法一样,Grover算法也是一种随机算法。
受到以上算法的启迪,许多经优化而提高了成功率的量子攻击算法被先后设计出来。
2.3 抗量子算法攻击的密码体制
寻找防范量子算法攻击的抗量子密码体制成了信息安全领域紧迫的课题。可以遵循以下几条思路:
一是采用与数学难题无关的密码体制。量子算法攻击一些数学难题的计算能力强大,然而量子密码、DNA密码等新型密码不以数学难题为基础,量子算法攻击对此将无能为力[15]。
二是采用能防范量子计算攻击的数学难题有关的密码体制[10]。量子计算不是万能的,目前尚未证明量子计算机可以破解所有已知的数学难题,因此不排除用“与离散对数问题、大数分解问题无关的算法”来构造防范量子攻击密码体制的可行性,这方面的成果有:基于纠错编码问题由Robert McEliece发明的McEliece密码体制(M公钥)和由Niederreiter创造的代数码公钥密码体制(N公钥)[16,17]。
3 量子密码、量子隐形传态与量子通信、量子签名
量子密码、量子隐形传态与量子通信、量子签名是量子信息学的又一重要领域。
科学家推测将量子态作为信息加解密的密钥具有的无法窃听和破译的独特性,利用这种密码实现保密通信网络,必会提高通信技术的安全程度,可以规避当今众多信息拦截者的攻击[7]。
未来的量子通信网络可基于卫星或基于光纤组网,具有无条件安全性、多端计算的优点,利用“点到点”量子密钥分发装置可组建一个跨全球的量子保密通信网络。
量子保密通信网络的未来趋向[18]:一是出现技术井喷并实现各种技术融合,量子交换机、量子路由器、不同结构的量子密钥分配(QKD)网络逐渐出现;二是向层次化、标准化方向发展,实现互联互通;三是采用中继技术突破传输距离的局限,扩展延伸量子保密通信网络,形成广域网络;四是密钥长度数量逐渐增长,传输速率亦逐渐提高。
1984年,第一个可实现安全秘密通信的量子密钥协议BB84协议被提出来,解决了密钥分配这一带根本性的问题,5年以后IBM根据这个协议成功进行了第一次传输量子密钥的演示性实验。目前还有BBM92、B92和EPR等量子密钥分发协议[19][20],其安全性都基于Werner Heisenberg线性叠加(测不准)原理和单量子无法克隆的理论。
量子密码还可用在量子数字签名、投票、认证等方面,国内外一些关于量子签名的仲裁协议方案已经相继被提出来[7]。
量子密码学的另一实现手段是利用量子隐形传态原理进行远距离的中继转发。
4 量子信息学的挑战和进展
4.1 挑战
首先,需要解决量子脱散现象(消相干)的问题[21],生成稳定的量子位是设计量子计算机的关键问题。从简单量子逻辑门到形成量子逻辑门网络仍有很长一段路要走[22]。其次,原子难以保持稳定,观察很困难。观察原子的同时破坏了观察前的不确定状态,致使实验价值大打折扣。量子纠错方案仍有待分析和改进。再次,编制算法进行一定数目的量子运算、量子传输技术、单光子源技术同样困难。此外,研发量子计算相关的各种器件,统一各类接口的标准,制定量子保密通信网络的各类协议规范,更需要长久的研究实践来解决。
以上挑战表明,量子信息学短期内还不会对现有信息安全体系造成实质性改变。
4.2 进展
4.2.1 理论方面的进展
Shor提出的量子纠错思想等量子纠错理论在解决脱散问题方面取得了根本性的突破。受到Shor算法启发,科学家们发明了更多量子并行快速算法,量子复杂性理论随之产生[21]。NMR等技术可以扩展量子位(昆比特qubit)信息,获得间接测量的效果,并可在相位一致中分析错误并修正,使量子计算系统稳定可靠。通过量子点操纵、冷阱束缚离子(ion trap)、NMR、腔量子电动力学(QED)和高温超导约瑟夫森结等[23]技术方案,可成功推进量子计算实验计划。2002年,美国政府制定的量子信息科技发展规划提出了光量子计算等八个技术方向[24]。
4.2.2 实践方面的进展
2000年,IBM宣布7量子位量子计算机研制成功,用一步计算完成了传统计算机需多次循环才能解决的数学题。2010年英、日、荷、以色列等合作制成了一款芯片,可进行量子计算。2011年加拿大了一款能处理经过优化的特定任务的量子计算机。2012年维也纳造出隐秘量子计算机。
中国1995年通过实验展演了BB84协议,2004年建成世界首个实用光纤量子密码网络[25],2007年造出量子路由器[26]、实现量子搜索算法和Shor量子分解算法[10],2009年建成世界首个光量子电话网,2010年实现16千米距离自由空间量子隐形传态[27],2011年提高至约100千米,向全球量子保密通信网络的建立迈出重要一步[28]。
5 结束语
量子信息学是一柄双刃剑,给信息安全相关领域带来了前所未有的影响。
量子信息处理技术可解决许多数学难题,同时也使得传统信息安全理论危机重重。量子计算机、量子通信网络等量子信息处理技术如果使用得当,则传统互联网、电话网、国防通信网等设施都将迎来一次飞跃,人类将向未来信息社会前进一大步;而一旦被用于恶意攻击和破解安全密码,则银行、网络、军事、商业等信息安全有关的领域都将面临巨大威胁,信息安全领域的争斗或许会从目前的电子对抗进入到“量子对抗”的新阶段。 .
关键词:量子遗传算法;多目标分配;最优化
中图分类号:TP18 文献标识码:A 文章编号:1674-7712 (2012) 12-0176-01
一、引言
遗传算法不同于传统寻优算法的特点在于:遗传算法在寻优过程中,仅需要得到适应度函数的值作为寻优的依据;同时使用概率性的变换规则,而不是确定性的变换规则;遗传算法适应度函数的计算相对于寻优过程是独立的;算法面对的是参数的编码集合,而并非参数集合本身,通用性强。它尤其适用于处理传统优化算法难于解决的复杂和非线性问题。[1]
目前,GA已经在很多领域得到成功应用,但随着问题规模的不断扩大和搜索空间的更加复杂,GA在求解很多具体问题时往往并不能表现出其优越性。于是,近年来便出现了遗传算法与其它理论相结合的实践,其中遗传算法与量子理论的结合是一个崭新的、极富前景和创意的尝试。
量子遗传算法QGA是量子计算特性与遗传算法相结合的产物。基于量子比特的叠加性和相干性,在遗传算法中借鉴量子比特的概念,引入了量子比特染色体。由于量子比特染色体能够表征叠加态,比传统GA具有更好的种群多样性,同时QGA也会具有更好的收敛性,因此在求解优化问题时,QGA在收敛速度、寻优能力方面比GA都将有较大的提高。QGA的出现结合了量子计算和遗传算法各自的优势,具有很高的理论价值和发展潜力。
本论文提出用量子遗传算法处理和解决多目标分配问题,为多目标问题的解决提供一种新的思路。
二、量子遗传算法
在传统计算机中,信息存储是以二进制来表示,不是“0”就是“1”态,但是在量子计算机中,充当信息存储单元的物质是一个双态量子系统,称为量子比特(qubit),量子比特与比特不同之就在于它可以同时处在两个量子态的叠加态,量子进化算法建立在量子的态矢量表述基础上,将量子比几率幅表示应用于染色体的编码,使得一条染色体可以表示个态的叠加,并利用量子旋转门更新染色体,从而使个体进达到优化目标的目的。
一个 位的量子位染色体就是一个量子位串,其表示如下:
其中 。在多目标优化中,一个量子染色体代表一个决策向量,在量子态中一个 位的量子染色体可以表达 个态,采用这种编码方式使得一个染色体可以同时表达多个态的叠加,使得量子进化算法比传统遗传算法拥有更好的多样性特征。
为了实现个体的进化,经典进化算法中通过染色体的交叉、变异操作推进种群的演化,而对量子进化算法而言,量子染色体的调整主要是通过量子旋转门实现的,算法流程如下:
(1)进化代数初始化: ;
(2)初始化种群 ,生成并评价 ;
(3)保存 中的最优解 ;
(4) ;
(5)由 生成 ;
(6)个体交叉、变异等操作,生成新的 (此步可省评价);
(7)评价 ,得到当前代的最优解 ;
(8)比较 与 得到量子概率门 ,保存最优解于 ;
(9)停机条件 当满足停机条件时,输出当前最优个体,算法结束,否则继续;
(10)以 更新 ,转到4)。
三、基于量子遗传算法的多目标分配应用
如今为了满足市场的需要,很多工厂的生产种类多、生产量大,从而设置了不同的生产车间,根据产品的性质分配生产车间合理与否直接影响工厂的经济收益,这同样可采用遗传算法的目标分配方法进行分配。
模型构建:设工厂有i个生产车间。 为在第i个车间生产第j种产品的收益, 为第j种产品的需求量;如果第j种产品被选中,则 为在第i个车间生产该产品的总收益。由题意知为求解 最大问题。
仿真实例:设有10个生产车间,要生产15种产品,用Matlab程序编程,设定40个粒子,迭代200次,代沟0.9。运行结果如下:
此图表明经200次迭代后的目标分配方案为:第1种产品由第3个车间生产,以此类推,车间5生产第2种产品,车间8生产第3种产品,……。次方案对应的车间总收益值为2.7030e+003,成功进行了多目标分配问题的解决。
四、结论
基于量子遗传算法的多目标分配,为多目标分配突破传统寻优模式找到了一个可行的解决方法。根据这种方法实验,仿真结果可以看出,基本符合要求,并且能够在一定的时间内得到最优的分配方案,因此,本文在探索多目标分配问题上找到了一种新的解决思路。
参考文献:
[1]吉根林.遗传算法研究综述[J].计算机应用与软件,2004,21(2):69-73
[2]肖晓伟,肖迪.多目标优化问题的研究概述[J].计算机应用研究,2011,3,28(3):805-808
[3]原银忠,韩传久.用遗传算法实现防空导弹体系的目标分配[J].火力与指挥控制,2008,3,33(3):80-83
【关键词】药品;量子;信息系统;数据挖掘;设计
1 药品信息量子化
量子的概念源自物理学,普朗克是“量子物理学”的开创者和奠基人。1900年普朗克抛弃“能量是连续的”这一传统经典物理学观念,证明了物质辐射的能量是不连续的,只能是某一最小能量的整数倍,普朗克把这一最小能量单位称为“能量子”,简称“量子” [1]。
药品信息“量子化”是指将纷繁复杂的、模糊有噪声的药品信息合理解析成具有独立内涵的、不可再分的最小信息单位,即“量子”。将药品原始数据“量子化”的方法,使药品复杂数据简洁化、精确化、规范化,提高了计算机的数据处理速度,为数据库知识发现奠定基础。
2 医院药品量子信息数据库系统的分析
2.1系统的功能分析
2.1.1智能化检索功能 为方便医护人员等查找需要的药品信息,系统检索功能必不可少,本系统不仅可以通过输入关键词进行普通检索和高级检索,还可通过下拉列表选择相关“量子”进行智能化检索。
2.1.2 辅助实现数据挖掘功能 药品数据最大的特点是“数据海量,信息缺乏”。如何从海量的、有噪声的、模糊的医药学数据中,提取出隐含其中的、人们事先未知又潜在有用、能辅助临床用药决策的信息,是数据挖掘(DM)最终解决的问题。而数据挖掘过程中一个关键步骤就是数据的预处理,即数据的清洗、集成、转化和消减等。本文提出的药品信息“量子化”即是数据的预处理过程,它为医药学数据挖掘的实现迈出关键性的一步。
2.1.3 数据维护功能 包括数据更新、备份和恢复功能。数据更新包括药品数据的修改、删除、添加等,以便保证当前药品信息的实时性和准确性。对于一个完整的系统而言,备份和恢复功能也是必不可少的组成部分,当应用系统发生灾难性错误时,备份和恢复功能可使系统避免数据丢失带来的巨大损失。而即便系统没有数据丢失或破坏,备份和恢复功能仍具有重大意义,它为我们进行历史数据的查询、统计和分析,以及重要信息归档保存提供了可能[2]。
2.2 系统的优势分析
2.2.1更快捷的计算机处理速度 国内大多数医院药品信息数据库仅是药品说明书等的简单堆砌,并未对药品信息进行有效的预处理,这显然会影响计算机的处理速度。本系统将这些复杂模糊、不规范的药品信息经专业人员处理成简洁、精确、规范的“量子”,并归类编码建立量子数据库后,计算机便可对这些“量子”进行快速处理。药品量子信息数据库系统较普通数据库系统有更快捷的处理速度。
2.2.2更智能的客户端检索模式 普通客户端检索模式不能满足信息多元化检索需求,本系统除一般数据库系统所具有的普通检索和高级检索外,还特别设计了量子检索模块。这种量子检索模块不仅能帮助用户迅速检索出同时满足多种条件的精确信息,且由于各种药品信息均已进行精确的量子归类,便于计算机处理。
2.2.3更前瞻性的为数据挖掘服务 数据挖掘技术的应用对临床用药决策及医药学研究等具有重要的意义。如,根据病人反馈使用某些药品后产生的不良反应数据,通过数据挖掘技术发现,联合用药可能导致某些不良反应,或联合用药可能减少某些不良反应,或者同一种药品由不同性别、年龄、体质的患者使用可能产生不同的反应等,这些将为医师指导患者临床用药提供重要帮助。药品信息“量子化”为医药学数据挖掘的实现奠定基础。
3 医院药品说明书数据库系统的设计
3.1系统的总体架构设计本系统采用分布式多层体系结构。实现分布式应用的成熟技术主要有COM/DCOM和CORBA ,由于本系统在Windows平台上运行,所以选用COM/DCOM为实现系统的标准。采用多层结构后,为了避免在WEB应用程序中进行直接数据库操作和事务管理,将数据库操作和事务管理转移到中间件中处理。即第一层是客户层,客户可以通过使用GUI与应用程序进行交互;第二层是中间层,通常由一个和多个应用服务器组成。应用服务器处理客户的请求,然后将结果返回客户层;第三层是数据层,用于驻留业务数据的地方,在处理业务数据时,由中间层访问数据层[3]。
3.2系统的功能模块设计
本系统的主要构成模块,如图1所示。
参考文献
[1]赵凯华,罗蔚茵.量子物理[M].北京:高等教育出版社,2006:1-10.
Abstract: In this paper,a novel algorithm,called the Quantum Continuous Particle Swarm Optimization algorithm - QCPSO,is proposed, based on the combination of the quantum theory with the evolutionary theory. By adopting the qubit particle as the representation,QCPSO can represent a linear superposition of solutions and bring diverse individuals by imitating the quantum collapse to random observation the new populations. The evolution of quantum particles can also pilot the evolution with better diversity than the classical particle swarm optimization method by adopting adaptive mutation.The performance test indicates that the QCPSO possesses better global search capacity than the basic PSO and QPSO when confronting high dimension problems.
关键词: 粒子群;量子理论;比特;自适应变异
Key words: PSO;quantum theory;bit;adaptive mutation
中图分类号:TP39 文献标识码:A文章编号:1006-4311(2011)01-0181-02
0引言
粒子群优化算法是由Kennedy和Eberhart等于1995年提出的一种基于种群搜索的自适应进化计算技术[1-2]。算法最初受到飞鸟和鱼类集群活动的规律性启发,利用群体智能建立了一个简化模型,用组织社会行为代替了进化算法的自然选择机制,通过种群间个体协作来实现对问题最优解的搜索。
量子计算特点主要体现在量子态的叠加(Superposition)、纠缠(Entanglement )以及干涉(Interference)等性质上,许多计算上的优势如量子并行(Quantum Parallelism)等皆由此而产生。近年来很多学者基于此提出了一些基于量子理论的进化算法。它以量子计算的一些概念和理论为基础,用量子位编码来表示染色体,用量子门作用和量子门更新来完成进化搜索,具有种群规模小而不影响算法性能、同时兼有“勘探”和“开采”的能力、收敛速度快和全局寻优能力强的特点。文献[3-4]分别提出了量子遗传算法、遗传量子算法和并行量子遗传算法,并用来求解组合优化问题,结果表明,遗传量子算法的性能大大优于传统遗传算法,但该算法不适于用来求解连续函数的优化问题,特别是多峰连续函数优化问题。受此启发,本文将量子编码和量子坍塌等性质与粒子群进化思想融合,提出一种基于量子理论的连续粒子群算法(QCPSO),并对该算法进行参数影响分析和性能测试。
1量子粒子群算法(QCPSO)
和经典的PSO算法不同,QCPSO是将经典PSO算法与量子理论相结合,基于量子计算的概念和理论,使用量子比特编码粒子,由粒子的概率幅表示,一个量子粒子包含了多个基本粒子状态的信息。通过模拟量子粒子坍塌的随机观察可以带来更加丰富的种群,极大的丰富了种群的多样性。通过量子的叠加特性和量子变迁的理论,运用量子旋转门来产生新的种群。粒子的更新是根据粒子的相位变化以及和全局最优粒子、粒子历史最优的相位差来进行的。具体算法描述如下:
1.1 粒子编码粒子位采用量子比特表示,称为量子位,量子位具有两个基本态,分别是?Z0>态和?Z1>态,在任意时刻,量子位的状态可以是基本态的线性组合,被称为叠加态,如式所示:
φ>=α0>+β?Z1>(1)
其中α和β是复数,并被称为概率幅,也就是说,我们得到量子位状态?Z0>的概率是α,得到量子位状态?Z1>的概率是β。α和β的关系如式:φ>=cosθ0>+sinθ?Z1>(2)
其中θ为量子位的相位,并且和概率幅之间的关系满足下式:
θ=arctan(3)
因此,粒子的量子表示方式可以通过使用概率幅或相位加已表示,如(4)式和(5)式。
α α α… αβ β β… β(4)
θ?佐θ?佐θ?佐…?佐θ(5)
在初始化的时候,首先将粒子在[0,1]的区间内初始化,然后再映射到定义域空间内。映射关系表达为:
Swarm=Swarm12*(ub-lb)+lb(6)
其中Swarm1为初始化后带有两种状态信息的种群,ub,lb为变量上下限。
借鉴基本的粒子群算法的速度更新方式,QCPSO算法中粒子的更新方式是粒子本身根据种群中最优粒子GBest和该粒子历史最优PBest的相位差值来更新自己的相位的,如下所示:
(7)
其中,θ为t+1代迭代中第j个粒子的第d维的相移量;θ为第t代第j个粒子的第d维的相移量;θ为当前相位;θ为全局最优粒子的相位;θ为该粒子历史最优相位;ω为惯性权重系数;C,C为加速系数;R,R为[0,1]内的随机数。
根据相位的更新计算出量子旋转门,更新粒子,如下式:
αβ=cosθ-sinθsinθ cosθαβ(8)
其中:θ为在第t+1次迭代中第j个粒子d维的相移量,α、β为在第t次迭代中第j个粒子d维的概率幅,α、β是第t+1次迭代中第j个粒子d维的概率幅。
1.2 粒子评估当粒子坍塌成某一个基本态时,将该基本态发生的概率表达出来,并且用来参加粒子适应度评估,即用一个粒子选择概率来选择粒子的基本态,选择好该粒子后,将该粒子按式(6)映射到寻优空间中,参加适应度评估;评估好了粒子来参加种群的更新。
1.3 自适应变异种群一旦陷入局部最优陷阱中后,粒子更新的相位很快就会趋于0,种群几乎不再更新,为了解决这个问题,本节设计了自适应概率,自适应的变异概率定义为:
P=μ+Re*σ(9)
其中μ和σ是变异率的调节参数,Re是最优值连续不更新或者更新不明显的代数。若种群连续更新,则不对种群进行任何调节;如不顺利(Re将累计增大),对种群进行调节的概率则加大。
1.4 算法流程本文提出的算法QCPSO的具体流程如下所示:
Step1:初始化种群;设定参数;
Step2:在[0,1]范围内初始化第一代种群(包括
Step3:按照式(4)对量子态进行表达,并进行第一次适应度评估;粒子历史最优值就为粒子本身;种群全局最优值为适应度最好的值;如满足跳出条件,则转Step9;否则转Step4;如式(5)随机初始化第一代粒子的相位变化量为(0,1)中的随机数;
Step4:计算粒子历史最优的相位;全局最优粒子相位;按照式(4)对量子态进行表达,并进行适应度评估;迭代次数加1;如满足跳出条件则转Step9;否则,转Step5;
Step5:根据式(7)更新粒子相位变化量,并运用量子旋转门来更新粒子式(8);
Step6:判断是否对粒子的相位进行跳变;是,则执行式(9),Step7;否,直接转Step7;
Step7:根据预设的粒子状态观测概率选择粒子的状态,将粒子坍塌;并根据式(6)将粒子映射到预设空间中来。
Step8:对坍塌好的粒子进行适应度评价;是否满足退出条件:是,转Step9;否,更新全局最优和历史最优,转Step4;
Step9:跳出算法,输出最优值,结束。
1.5 算法性能测试为了验证算法的性能,将算法QCPSO与经典的粒子群算法、量子粒子群算法的代表AQPSO[5-6]进行实验比较。QCPSO参数选择为:惯性权重为0.7,加速常数分别为C1=1.4、C2=1.4,选择概率P=0.95,跳变概率σ=0.005,种群规模为40。经典PSO算法参数选择为惯性权重为0.7,加速常数分别为C1=2.0、C2=2.0,种群规模为40。具体测试结果如表1所示。
对于2维的测试函数:Camel函数上三种测试方法都能找到全局最优,AQPSO和QCPSO的达优率(100%)明显好于PSO算法。但是耗时上AQPSO较PSO差,QCPSO较AQPSO算法差。对于Levy F3函数,三种算法也都能找到全局最优值,在达优率上AQPSO算法稍微差于PSO算法,而QCPSO算法明显好于AQPSO算法。对于Levy F5函数,三种算法也都能找到全局最优值,但是AQPSO算法在达优均值上差于PSO算法; QCPSO在达优均值和达优率上都好于其他两种算法。
对于10维的测试函数Rastrigin和Schwefel、Sphere函数:对于Rastrigin函数,PSO不能找到全局最优,均达优值上也明显差于其他两个算法。QPSO明显好于其他两种算法。对于Schwefel测试函数上,虽然三种算法都没有找到全局最优值,但是QCPSO算法寻找到全局最优值能达到在1.3725e-004。达优均值上,QCPSO较其他两种算法都有明显进步。对于Sphere函数,AQPSO算法在全局最优值和达优均值上都差于PSO算法,QCPSO以较高的达优率得到高精度解。
对于高维的测试函数Ackley,AQPSO算法在全局最优值和达优均值上稍微好于PSO算法,而QCPSO算法则在两项指标上优于AQPSO和PSO算法。但是三种算法都没有找到全局最优值。而对于Griewangk的测试中,AQPSO和QCPSO算法都能找到全局最优值,但是在均达优值上,AQPSO效果差于PSO算法,QCPSO好于其他两种算法。
2结束语
本文对经典PSO算法以及在此基础之上的改进算法进行详细分析后,提出基于量子理论的连续粒子群算法,经过实验验证,QCPSO表现出了良好的性能,在高维问题的优化中SCPSO则表现出了良好的性能。
参考文献:
[1]Kennedy, R.C.Eberhart. Swarm Intelligence. Morgan Kaufmann Publishers, Inc. San Francisco, CA, 2001.
[2]R.C.Eberhart, J. Kennedy. A new optimizer using particle swarm theory. Proc of the 6th international symposium on Micro Machine and Human Science, Nagoya, Japan, IEEE Service Center, Piscataway, NJ, 1995:39-43.
[3]Narayanan A,Moore M, Quantum-inspired genetic algorithm. Proc of IEEE International Conference on Evolutionary Computation.Piscataway: IEEE Press, 1996: 61-66.
[4]Han K H, Kim J H. Genetic quantum algorithm and its application to combinatorial optimization problems. Proc of IEEE Conference on Evolutionary computation. Piscataway: IEEE Press, 2000. 1354-l360.