19处理难解问题的策略_第1页
19处理难解问题的策略_第2页
19处理难解问题的策略_第3页
19处理难解问题的策略_第4页
19处理难解问题的策略_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、主要内容10.1对施加限制10.1.1 二元可满足性10.1.2公式可满足性10.210.310.410.510.6固定参数算法改进指数时间算法启发式平均情形的复杂性难解算例生成10.6.1 相变现象与难解性10.6.2 隐藏解的难解算例主要内容10.7 基于统计物理的消息传递算法10.7.1 消息传递与回溯法、局部搜素算法的比较10.7.2 基于统计学的消息传递算法10.8 量子算法简介10.8.1 量子比特10.8.2 正交测量10.8.3 量子门10.8.4 一个量子算法二元可满足性二元合取范式:合取范式的每一个简单析取式最多只有2个文字二元可满足性:限制SAT实例中的合取范式为2元合取

2、范式设2元合取范式F 有n个变元 x1, x2, ¼ , xn和m个简单析取式C1,C2,¼,Cm, 每个Cj至多有2个文字.例子:C1= x1Ú Øx2, C2= x1, C3= Øx1Ú Øx2, C4= Øx2, C5= x3Ú x4, C6= Øx3Ú Øx4, C7= Øx3Ú x4.多项式时间的2SAT算法,2SATÎP2SAT算法只有一个文字的简单析取式Cj,则先进行化简.如果化简过程:首先使Cj为真,得到Cj中变量 xi 的取值将

3、 xi 中的值代入F,按照逻辑规则进行计算,只要有一个文字的简单析取式,则不断进行化简, 直到出现如下情况:(1) 如果出现成假子句,则说明F不可满足(2) 如果删除了所有简单析取式,则说明F可满足,可满 足赋值为当前赋值(3) 如果剩下的简单析取式都有2个文字,则化简过程结束2SAT算法(续)化简后,如果剩下的简单析取式都有2个文字,则个剩下的变元 x, 令t(x)=1和t(x)=0分别进行化简.一 如果两种情况F都不可满足,则F不可满足,否则F 可满足. 递归进行该算法.该算法时间复杂度的分析:每次化简显然可在O(m)完成每一个变元至多经过2次化简, 从而总共至多进行2n次化简故算法的时间

4、复杂度为O(nm).2SAT算法的实例C1= x1Ú Øx2, C2= x1, C3= Øx1Ú Øx2, C4= Øx2,C5= x3Ú x4, C6= Øx3Ú Øx4. C7= Øx3Ú x4.首先进行化简: C2只含一个文字x1, 令t(x1)=1, 删去C1和C2, 把C3改成C3= Øx2. 令t(Øx2)=1, 即t(x2)=0, 删去C3和C4. 剩下C5= x3Ú x4, C6=Øx3ÚØx4, C

5、7= Øx3Úx4.不能化简后,随意取一个变量进行尝试,如: 令t(x3)=0, 重新进行化简, 删去C6和C7, 把C5改成C5= x4. 令t(x4)=1, 删去C5, t(x1)=1, t(x2)=0, t(x3)=0, t(x4)=1, 这是F 的一个满足赋值, 故F是可满足的.公式可满足性(Horn)子句:每个子句中正文字(不带号的变量)至多出现一次公式:由子句的公式SAT输入限制为HornSAT.:公式的SAT,简记为HornSAT具有一个简单的多项式时间算法,且该算法直接给出可满足赋值.求解HornSAT的多项式时间算法输入:一组子句输出:一个可满足赋值或宣布

6、没有可满足赋值过程:1. 把所有变量赋值为假;2. 循环检查所有蕴含子句(即带一个正文字的子句),只要还有不满足的,就把该子句中唯一的正文字的变量赋值为真;3. 检查所有的纯负子句(即不含正文字的子句),若没有不满足的,则输出当前赋值,算法结束;否则宣布没有可满足赋值.,定理10.1定理10.1 上述算法在公式长度的平方时间内正确求解HornSAT.证明:公式长度(即公式中变量出现的总次数)记为s.不同变量的总数为n,则n总是不超过s.首先证明算法在公式长度的平方时间结束算法的第1每个变量赋值,至多花费O(n)步第2步循环检查总次数不超过蕴含子句的个数,每个循环内部不超过线性时间O(s),因此

7、时间不超过公式长度的平方时间O(s2) 第3步检查是否有不满足的纯负子句,O(s)时间.所以算法总时间为O(s2).定理10.1证明(续)算法的正确性: 当算法返回可满足赋值时,显然该赋值是正确的 当算法宣布没有可满足赋值时,也是正确的,因为第二 子句中唯一的正文字的变量赋值为真”是必须的“把该“对图的着色限制”的其他例子,当图的色数不超过2时,就是的.限制图的顶点度数都不超过一个固定的常数d, 那么求是多项式时间可解的.最大团的只需简单穷举即可,因为顶点度数不超过d, 最大团中最多有d+1个顶点,故只需要检查所有d+1个顶点就能找到最大团.nææöö&

8、#231;ç d + 1÷÷设有n个顶点,d+1个顶点有种可能èèøø检查d+1个顶点之间的相邻只需O(d+1)2)=O(1)次运算, 共需nææööO( çç d÷÷)=O(nd+1)+ 1øøèè次运算.10.2固定参数算法通常把优化转化为判定时,都会在输入中引入一个参数,这是固定参数算法中参数的来源之一.例子:图的最小顶点覆盖.输入是一个无G,输出是一个最小的顶点集,使得每条边少有一个端点在这个集合中

9、. 把这个最小化转化为判定时,输入就变成(G,k),其中k是0与n之间的整数,n是G的顶点数,而则变成判断G中是否有一个大小不超过k的顶点覆盖.固定参数算法固定参数算法(Fixed-Parameter Algorithms)或参数化算法(Parameterized Algorithms):输入中带有一个参数k,当输入规模为n时运行时间为O(f(k)nc)的算法,这里的f(k)是与n无关 的函数,c是与n和k都无关的常数.“穷举”vs“固定参数”:顶点覆盖判定穷举所有k元顶点子集,看看有没有顶点覆盖. 复杂度ææ nöök +1O(knç

10、1; k ÷÷) = O(kn)èèøø固定参数算法的运行时间为O(2kkn)算法10.2算法10.2顶点覆盖的固定参数算法输入:一个 n 阶无向简单图G参数:希望找到的顶点覆盖的规模上界 k,其中 0£k<n输出:一个大小不超过k的顶点覆盖或宣布没有这样的顶点覆盖1. 检查G的, 若没有边, 则输出空集为顶点覆盖, 算法结束;2. 若边数超过k(n-1),则宣布没有大小不超过k的顶点覆盖, 算法结束;3. 任选一条边(u,v),递归地检查G-u和G-v是否具有大小不 超过k-1的顶点覆盖;3.1 若它们都没有,则宣布

11、G没有大小不超过k的顶点覆盖,算法结束;3.2 若它们中至少一个有,比如说G-u有大小不超过k-1的 顶点覆盖T,则输出TÈu为G的大小不超过k的顶点覆盖.定理10.2定理10.2 上述算法在O(2kkn)时间内正确地解决大小不超过k.的顶点覆盖证明:首先证明算法的正确性.第1步显然是对的;每个顶点最多关联n-1条边,第2正确.按照顶点覆盖的定义,对于任意一条边(u,v), u和v中至少有一个要属于覆盖集,所以不难证明第 3对.在有限步终止,正确性得证.显然算定理10.2证明(续)复杂度分析设T(n,k)表示算法在n阶图和参数k上的运行时间,则 对于某个常数c,T(n,k)满足下述递

12、推公式:T(n,1) £ cnT(n,k) £ 2T(n-1,k-1)+ckn £ 2T(n,k-1)+ ckn对k³1作归纳,可证明T(n,k) £ c2kkn,即假设T(n,k-1) £ c2k-1(k-1)n则T(n,k) £ 2T(n,k-1)+ ckn£ 2c2k-1(k-1)n+ ckn= c2kkn-c2kn + ckn(递推公式)(归纳假设)£ c2kkn(因为2k > k)10.3改进指数时间算法符号O*:表示忽略了多项式因子. 如O*(2n)=O(nO(1)2n)改进的指数时间算

13、法当一个的平凡穷举算法为O*(2n)时间时,则对于任何满足1<c<2的常数c,把时间复杂性为O*(cn)的指数时间算法称为非平凡的指数时间算法,或改 进的指数时间算法例子:3SAT的改进的指数时间精确算法3SAT的指数时间改进算法输入:一个合取范式 F,每个子句最多包含3个文字输出:一个满足 F 的赋值 t 或宣布 F 是不可满足的.1. 令G=F;2. 若G=Æ, 则输出 t,结束; 若G包含空字句, 则宣布G不可满足;3.子句C=a1Ú¼Úak,其中ai是文字, 1£k£3, 执行下述k步:3.1令t(a1)=1, 删

14、去含a1的子句, 把含Øa1的子句D=Øa1ÚD¢换成D¢,D¢可能是空子句, 即Øa1=Øa1ÚÆ. 化简后公式为G ¢. 对G ¢递归运用算法24;3.2令t(a1)=0, t(a2)=1, 类似上面化简得到公式G ¢. 对G ¢递归运用算法24;3.3令t(a1)=0, t(a2)=0, t(a3)=1, 类似上面化简得到公式为G ¢. 对G ¢递归运用算法24;若上述k步都宣布G ¢是不可满足的,则宣布G不可满足.4.

15、 若宣布F是不可满足的,则计算结束.定理10.3定理10.3 上述算法在O*(1.8393n)时间内正确求解3SAT. 证明:首先证明算法的正确性.当算法在第2步输出一个赋值时,显然这个赋值的确是满足赋值.下面证明当算法宣布没有可满足赋值时,也是正确的. 如果输入公式中含有某个子句C=a1Úa2Úa3,则所有的满足赋值被划分为算法第3步检查的那三类,故算法漏掉满足赋值.由于每次递归至少为一个变量赋值,因此每个递归检查的深度至多为n,即算法不死循环. 这样就证明了算法是正确的.定理10.3证明(续完)下面分析算法的复杂性:设T(n)表示算法在n个变量的公式上的运行时间.设公式

16、中有m个子句,则m=O(n3),因为每个子句至 多含有三个文字,不同子句的个数至多为O(n3).关于T(n)有下列递推公式:T(n) £ T(n-1) + T(n-2) + T(n-3) + O(n+m)递推公式的T(n)=O*(1.8393n)其中1.8393是方程 l3=l2+l+1的最大根.其他一些结论截止到2010年底,目前3SAT的指数时间精确算法 的最好结果是:一个O*(1.321n)时间的随机算法, 和一个O*(1.439n)时间的确定型算法.都有O*(3n)的算法.任意色数的图的顶点着色有比O*(2n/2)更好的算法.背包也有比O*(2n)更好的算法.货郎指数时间假设

17、(Exponential Time Hypothesis,简称ETH):对于每个正整数k>2,都常数ck>0使得求解kSAT的精确算法时间复杂性不低 O* (2ck n ).于10.4启发式(Heuristics):人们发现还有一类方启发式法,目前无法从理论上给出任何性能保证,但在实践中却效果良好,就把这类(Heuristics).统称为启发式常用的启发式主要:回溯法、分支限界法、局部搜索法、遗传算法等.随机化策略(randomization) 重启策略(restart)算法10.4 模拟退火法输入:一个优化输出:一个可行解的实例1. 生成一个初始解,设定初始温度T0;2. 循环执

18、行下列步骤,直到T=0;从当前解的邻域中随机选择一个新解;若新改进解,则代替当前解;否则设新解的退步幅度为D,- D以概率用新解代替当前解;eT更新温度T;3. 输出见到的最好的解.10.5 平均情形的复杂性NP完全性理论是基于最坏情形下的复杂性度量考虑平均情形的复杂性度量时,发现有些NP完全在平均复杂性度量下是的在平均情形的复杂度性度量下,哈密顿回路有多项式时间的算法为了考虑平均情形的复杂性度量,首先要在所有输入上定义一个概率分布.随机图模型G(n,p):图的顶点数为n,然后在任何两个不同顶点之间地以概率p连一条边.算法10.5输入:在G(n,1/2)分布下产生的一个随机图G 输出:G中的一

19、条哈密顿回路1. 反复利用下面规则构造路径P,直到P不能再延长为止;若P外顶点x与P的端点v相邻,则用边(x,v)把x加入P,即 令P=xP;若P=vPyzP”且v与z相邻、y与P外的顶点x相邻,则令P=xyPvzP”;算法10.5(续)2. 反复利用下面规则构造一个圈C.若P=vPxyP”w且v与y相邻、w与x相邻,则令C=wxPvyP”w;若P=vPxyP”ww且v与y相邻、w与x相邻,则令C=wxPvyP”w;算法10.5(续)反复利用下面三条规则把其余顶点加入C,每次加入一个 或两个顶点,直到没有剩余顶点为止; 若C外的顶点x与C 上连续两点y和z都相邻,则令C=CÈ(y,x

20、), (x,z)-(y,z);3.算法10.5(续) 若C外的两点x和y相邻且分别与C 上连续两点u和v相邻,则令C=CÈ(u,x), (x,y), (y,v)-(u,v) 若C=abPyzP”a且C外的顶点x与a和y都相邻、b与z相邻,则令C=axyPbzP”a;4.输出C作为哈密顿回路.定理10.4定理10.4上述算法在在G(n,1/2)上以大概率在O(n3)时间内输 出哈密顿回路.“大概率”(with high probability,简称w.h.p.):随着n趋于无穷,上述算法能有效找出哈密顿回路的G(n,1/2)随机图的概率趋于1.证明思路:利用夫界,容易证明G以大概率满足

21、以下三条性质(设N(v)表示顶点v的邻域):I. 对每个顶点v,|N(v)|介于n/2± n/50之间II. 对每对顶点u和v, |N(u)ÈN(v)|介于3n/4± n/50之间III. 对每三个顶点u、v和w,| N(u)ÈN(v) ÈN(w)|介于7n/8± n/ 50之间定理10.4证明(续)利用这些性质,容易证明:1.2.3.算法在第1步构造的路径P上至少有7n/8- n/50个顶点;在第2步构造的圈C上至少有7n/8- n/50-1个顶点;在第3步上只要还有边的两端都在圈C之外,则可以应用 第3.1步或第3.2步,因此第3

22、步总是可行的.因此以大概率,上述算法找出G的哈密顿回路.复杂性估计:算法的第1-3步每一步都可在O(n3)时间内实现,因此上述算法在O(n3)时间内运行.10.6难解算例生成10.6.1相变现象与难解性相变现象:参数的一个临界值,实例的性质在临界点两侧发生了很大的突变,具有某个性质的概率在一侧随实例规模趋于无穷而渐近为0,在另一侧则随实例规模趋于无 穷而渐近为1.例如:可满足性相变是说,在临界值的一侧,以很大的概 率产生有解的实例,而在临界值的另一侧,以很大的概率 产生无解的实例.人们通过实验发现,最难解的实例都集中在可满足性相变临界值的附近.因此人们就用临界值附近的实例作为难解算 例.约束满

23、足公式可满足性、图着色等NP完约束满足是对于的一种自然推广. 在约束满足全的实例中,给定一些变量和这些变量之间的一些约束,每个约束规定了一些变量之间各种取值的相容组合,以满足所有的约束.是寻找变量的赋值,的随机实例,人们提出过A,B,C,D为了产生约束满足四种模型,设0<p1<1和0<p2<1是两个参数,设有n个变量,设每个变量有d种取值,d>0是正整数.约束满足的随机模型A模型 在可能的n(n-1)/2对变量中,每对变量以概率p1成为约束,也就是在n(n-1)/2对变量中,每对变量以概率p1被选出组成约束. 对于每个给定的约束,在d2对赋值中,每组赋值以概率p2

24、成为不相容赋值.B模型 在可能的n(n-1)/2对变量中,随机选择p1n(n-1)/2对变量成为约束,也就是在n(n-1)/2对变量中,以等概率挑选一个有p1n(n-1)/2对变量的子集组成约束集. 对于每个给定的约束,在d2对赋值中,随机挑选p2d2个成为不相容赋值.约束满足的随机模型C模型 在可能的n(n-1)/2对变量中,每对变量以概率p1成为约束,也就是在n(n-1)/2对变量中,每对变量以概率p1被 选出组成约束。对于每个给定的约束,在d2对赋值中,随机挑选p2d2个成为不相容赋值.D模型 在可能的n(n-1)/2对变量中,随机选择p1n(n-1)/2对变量成为约束,也就是在n(n-

25、1)/2对变量中,以等概率挑选一个有p1n(n-1)/2对变量的子集组成约束集. 对于每个给定的约束,在d2对赋值中,每组赋值以概率p2成为不相容赋值.约束满足四个模型共同的的随机模型(续):渐进无解性.就是说,当参数确定时,在变量个数变成充分大时,这些模型产生的实例基本上是没有解的,即解的个数将趋近于0.RB模型:意思是对B模型的修订,这是首个在理论上严格既有精确相变现象又有难解实例的NP完全地证明了的随机模型.算法10.6 为RB模型产生随机实例输入:参数组 <k, n, a, r, p>,其中每个约束由k个不重复的变元组成,k是大于等于2的整数;n是变元个数;每个变元的值域大

26、小为d = na,a是正常数;至多有m = rnln n个约束,r是正常数,约束的密度;p是正常数,约束的紧度,0<p<1.输出:在RB模型中产生的随机实例算法10.6 为RB模型产生随机实例(续)算法步骤:1.有重复地选择m = rnln n个随机约束,每个约束由k个不重复的变元组成,k是大于等于2的整数.对每个约束,均匀随机无重复地选择q = pdk个不相容赋值,因此相容赋值的个数为(1-p)dk个.2.RB模型的相变结论1 , p £ k - 1- 定理10.5设则都是常数, 令,rk, >=crln(1 - p)kkPrRB模型的随机实例是可满足的= 

27、36;ì1当r < rcr时íí0当r > r 时îî定理10.6设则cr-a1kapcr= 1 - ek, >, p £r都是常数, 令,lnkPrRB模型的随机实例是可满足的ìì1当p <pcr时=íí0当p > p 时îîcr10.6.2 隐藏解的难解算例一个更难的是,不但要产生难解实例,而且要产生已知解的难解实例.对于全算法来说,使用不知道解的算例来测试性能,. 比如当算法没有找到就会遇到,就无从算法的结果的正确性.因此人们需要构造带有植

28、入解(planted solution)的难解算例,就是预先隐藏了一个已知的解的难解算例. 对于优化来说,还要在算例中隐藏一个最优解.在这个方面,RB模型也具有很好的性质,不仅能产生植入解的判定的难解算例.的难解算例,甚至还能产生隐藏着最优解算法10.7 产生隐藏着解或最优解的算例输入:一组输出:隐藏参数最优解的算例1. 选定一个要隐藏的最优解;2. 按照参数规定的方式随机产生算例的各个约束.每产,生一个约束,就要检查这个约束是否与要隐藏的解如果不则保留这个约束,否则就丢弃这个约束,直到产生足够多的约束得到一个算例为止;3. 输出最后得到的算例.算法10.8 用RB模型产生最大团难解算例输入:

29、图的顶点数4000,要隐藏的最大团的大小100输出:一个有4000个顶点的图,其中隐藏了100个顶点 的最大团1. 把4000个顶点分成100组,每组40个顶点;2. 从每组随机挑选一个顶点,共挑出100个顶点,把这100个 顶点相互之间都连上边,得到一个大小为100的团;3. 然后在不同组的顶点之间随机连边,连的总边数 m参照算法10.6和定理10.5 (或定理10.6) 用参数 r 和 p来定,其中n=100,d=40(由此可推算出a),k=2.算法10.8示意图10.7 基于统计物理的消息传递算法10.7.1 消息传递算法与回溯法、局部搜索法的比较在回溯法和局部搜索法中,除了检查赋值是否

30、满足约束外,没有利用或很少利用实例的结构信息. 在消息传递算法中, 变量只向它在其中出现的约束传递消息,约束也只跟它里面包含的变量传递消息,利用了实例本身的结构信息.在消息传递算法中采用软决策,不直接为变量赋值,而是 计算每个变量取某个值的概率分布,通过不断迭代来这个概率分布,直到取某个值的概率明显占优,则确定采用这个赋值;或者到概率分布没有明显改进为止,再采用来决定这个变量的取值,比如局部搜索法等.其他消息传递算法(续)更新概率的规则是基于统计物理模型来制定的,根据消息的含义和更则,消息传递算法由简单到复杂又可分为算法(Warning Propagation,简称WP算法)、算法(Belie

31、f Propagation,简称BP算法)、警告置信算法(Survey Propagation,简称SP算法)等.随机3SAT模型:给定变元个数n和子句个数m,从2n个文字的所有长度为3的子句中均匀随机选择m个子句,这些子一个随机3SAT公式.句的合取就10.7.2 基于统计物理的消息传递算法算法10.9随机3SAT的SP算法算法的关键在于设计消息的含义和如何更新消息的机制.gC®l:子句C 给文字l消息,消息的取值gC®l含义.有输入:随机3SAT公式输出:一个满足赋值算法10.9随机3SAT的SP算法(续)选定某个临界值e>0. 对每个子句 C 和每个文字 l,l

32、 在 C 中出现,则按照下列规则计算值若1.gC®l:开始时,按照0,1上的均匀分布,为每个值;随机赋gC®l2.对每个子句C,按照文字的随机排列顺序,根据下列规则3-5迭代更新gC®l; 令3.Z= Õ glC '®lC ':lÎC 'ZCÕ g=lC '®lC ':lÎC 'Ù C '=C其中约定空的乘积等于1;算法10.9随机3SAT的SP算法(续)4.若C=jÚkÚl,则令Zjææö

33、öææZköö= 1 - çç1 -÷÷çç1 -÷÷gC ®l÷÷çç÷÷CjCjCkCkççZjZZ ZZk+ ZZ Z+-øøèèøøèèjkZk若C=kÚl,则令g C ®l=CZCZ+ Z- Zkkkk5.当所有gC®l 的更新都小于e时,停止迭代更新gC&#

34、174;l;算法10.9随机3SAT的SP算法(续完)- Zx + Zxt( x) =6.最大的变量x,如找出Z+ Zx果这个绝对值小于e,则运行随机游动算法;当t(x)>0时,把x赋值为真,当t(x)<0时,把x赋值为假,化简公式,回到第2步,对剩余的公式继续迭代更新gC®l.7.10.8 量子算法简介量子比特10.8.1几率幅计算基量子寄存器线性叠加态10.8.210.8.3正交测量量子门定理10.710.8.4一个量子算法算法量子比特用|f记号表示量子比特,以区别于经典比特,这种记号(Dirac)记号.称为经典比特有两个取值0和1,要么为0、要么为1.量子比特也有值

35、|0和|1,其物理实现可以是电子的两 个自旋方向、光子的两个偏振方向、原子的两个能级等.但在量子世界中这些状态是可以叠加的,比如电子可以同时处在两个自旋方向上、光子可以同时具有两个偏振方向、以同时处于两个能级等.量子比特量子比特还可以是|0和|1的线性叠加,即形如a| 0+b|1的叠加态,其中a和b是两个复数,称为几 率幅,表示处在|0的概率是|a|2,处在|1的概率是|b|2,这里|a|表示复数a的模,所以a和b要满足|a|2+|b|2=1.用线性代数的话来说,量子比特就是一个2维复系数向量.线性空间中的计算基 如果用|0和|1作为一组基,称为计算基,简称基(Computational ba

36、ses), 相应的坐标表示是ææ 1 ööææ 0 ööææ öö|0=|1=a |0+b |1=,çç ÷÷ ,çç÷÷çç÷÷01èèøøèèøøèèøø于是|f记号就表示了列向量.ææ1/2 öö

37、;1|+=(|0+|1) =çç÷÷çç1/2 ÷÷èèøø2ææ 1/2öö1|-=(|0-|1) = ÷÷çççç - 1/2 ÷÷2èèøø|0和|1作为基,也可以作为一组基. 通常我们除非另加说明.张量积张量积:是两个以上线性空间或两个以上向量之间的一种 运算.两个线性空间的张量积还是一个线性空间,它的维数等于

38、原来两个线性空间维数之积,它的基等于原来两个线性空 间的基的卡氏积,即对于原来两个线性空间的每一对基|i和|j,在张量积空间有一个对应的基,记作|iÄ|j,也简记作|i|j、|i,j或|ij.例子:向量a1|0+b1|1和a2|0+b2|1的张量积就是(a1|0+b1|1)Ä(a2|0+b2|1)= a1a2|00+a1b2|01+b1a2|10+b1b2|11量子寄存器两个或多个量子比特可以组成量子寄存器,量子寄 存器的状态就是各个量子比特状态的张量积.两个经典比特的经典寄存器总共有四个状态00、01、10、11,两个量子比特的量子寄存器也有四个基|00、|01、|10、

39、|11,以及这四个基 的线性叠加态a|00+b|01+g|10+ d|11其中a、b、g、d都是复数,也称为几率幅,满足|a|2+|b|2+|g|2+|d|2=1量子寄存器的量子寄存器有2n个基|000、|001n个量子比特、|111,每个基对应一个长度为n的 0-1串,量子寄存器状态是2n个基态的叠加态.而2n个几率幅也满足模的平方和等于1的条件,描述这样的 一个状态就需要2n个几率幅.在直观上,若用经典寄存器来模拟n个量子比特的量子寄存器的状态,就需要保存2n个几率幅,这个开销是指数增长的.由于叠加态的,使得量子计算机不仅有可能在能力上比经典计算机更强,而且还具备了并行处理能力.内积在量子

40、比特的线性空间上可以定义一个内积.对于两个量子 比特|f和|j,令内积ææ ööf,=(a ,b )*=a g+*b d ,çç÷÷jèèøøa*是a的共轭复数,线性空间称为空间.ææ ööf|=a|0+b|1=f|我们约定对于一般的列向量示|f的共轭转置,即,让表çç÷÷èèøø0|=(1,0),1|=(0,1),f|=a*0|+b*1|=(a*,b*)于

41、是内积f,j可以记作f|j,或简记作f|j|0和|1是一组标准正交基,同样可以一组标准正交基.|+和|-是另正交测量虽然量子比特可以具有叠加态,几率幅a和b作为复数里面包含有无穷多位的信息,但不能通过物理测量来得到几率幅,因此无法直接利用这些信息,对量子比特最简单的测量是下的正交测量.面每个正交测量由一组正交基表示,一次测量的结果就是一个随量,取值就是测量所用的各个正交基,概率就是对应几率幅的模的平方.例如,在|0和|1下测量|f=a|0+b|1,结果就是以概 率|a|2得到|0,以概率|b|2得到|1,这正是前面说量子比特可以同时处在|0和|1上的精确含义.正交测量在基|0和|1下测量|+=

42、 1/(|0+|1),就能以等概率1/2分别得到|0或|1. 这相当于抛掷一枚均匀硬币的结果,所以量子算法天然就能轻松地模拟经典随机算法.对于量子算法而言,几率幅只需取实数就够了在测量之后,原来的量子比特就变成测量结果中出现的那个正交基,而原来的状态就消失了.量子测量的这种性质在一定程度上抵消了量子叠加态带来的好处,给量子算法的性能带来了严重限制.量子门我们采用著名计算机科学家先生提出的量子电路模型来描述量子算法,量子电路的基本运算单元是量子门.在量子计算中,量子比特是位向量.空间中的单在量子比特上的基本操作除了上述的正交测量之外,还有保持向量长度不变的线性变换,就是数学上所说的酉变换(物理学

43、上叫些变换就称为量子门.变换),这量子门量子门可以用酉方阵来表示,即满足UU=UU=I的方阵U,其中U是U的共轭转置,I是阵.一个量子门U作用在量子比特|f上的结果,就得 到量子比特U|f.注意量子门作为酉变换,都是可逆的,而经典与门和或门都不是可逆的,只有经典非门是可逆的.量子门量子门:11ææööçç÷÷÷÷ææ 10 öö221ææ 1001= çç ööææ=ö

44、;öHZ = ççèèI = ççèèX÷÷øø1÷÷1çç 10÷÷çç÷÷0- 10-øøèèøøçç2 ÷÷2èèøøI是恒等X|0=|1,X|1=|0,相当非门,起翻转比特作用; Z对于另一组基|+和|-起非门的作用,即Z|0=|0,Z|1= -|1,Z|+=|-,Z|-=|+,H 称为哈达玛门,在两组不同基之间起坐标变换作用,即H|0=|+,H|1=|-,H|+=|0,H|-=|1量子门æ

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论