前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >上(市场篇)| 推荐几款较流行的量子算法

上(市场篇)| 推荐几款较流行的量子算法

作者头像
量子发烧友
发布2023-02-24 15:25:32
5970
发布2023-02-24 15:25:32
举报
文章被收录于专栏:量子发烧友

对比传统计算机,量子计算机有着巨大的效率优势,可以解决困扰当今计算机的某些类型的计算问题,能够更有效地处理大量复杂的数据集。其中就用到了量子算法。

量子算法融入了量子力学很多的特征,比如:量子的相干性,量子叠加性,量子并行性,纠缠性,波函数塌缩等。这些纯物理性质进而大大提升了计算的效率,自成一体构建出一种新型的计算模式——量子算法。本文将对现今较流行的量子算法进行介绍。

1. 什么是量子算法

1.1 算法

在数学和计算机科学之中,为了使计算机能够理解人的意图,人类需要将解决的问题的思路、方法和手段通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步一步去工作,完成某种特定的任务。这种人和计算体系之间交流的过程就是编程。编程之前首先需要明确计算机解决该问题的具体步骤,这个处理步骤就是编写该程序所需要的“算法”。

算法为一个计算的具体步骤,常用于计算、数据处理和自动推理。精确而言,算法是一个表示为有限长列表的有效方法。算法应包含清晰定义的指令用于计算函数。算法分类可以根据算法设计原理、算法的具体应用和其他一些特性进行分类。

算法是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。无论是狭义还是广义,算法都是用来处理相应问题,因此计算机算法,就是用计算机来解决问题的方法和步骤,在现实中,解决不同的问题,需要不同的算法。

同一个问题,往往会有不同的算法

1.2 量子算法

从概念描述来看,量子计算机(quantum computer)是一类遵循量子力学规律进行高速数学和逻辑运算、存储及处理量子信息的物理装置。当这个装置处理和计算的是量子信息,运行的是量子算法时,就是量子计算机。在量子计算中,一切都是变化的,不管是从我们经常理解信息比特的物理层还是操作他们的设备都完全不同。

从数学层面看,即使是最强大的超级电脑也没有办法突破序列任务设定的障碍,但量子计算机可以,因为它是基于量子的量子叠加、纠缠和干涉特征。因此量子计算最本质的特征就是量子叠加性和量子相干性。量子叠加是指一个量子系统可以处于多个基态的线性组合形式,例如一个量子比特可以处于叠加态。由此,一次操作U可以并行作用于两个态和上得到,即所谓的“一次操作同时完成多次计算”。然而,这里在并行性前面加了定语“潜在的”,即这种并行性并非直接就解决了问题,还需要后续算法设计。

简单讲,量子计算机是通过运行量子算法来实现量子信息处理,量子算法通过利用量子叠加性和量子相干特性来实现计算,是量子计算机的必要软件支撑,同时量子算法的研究也是推动量子计算发展的强大动力,其运行环节原理如下:

量子算法运行原理

要保证算法的每一步骤符合量子力学的要求,并最终保证其求解速度比经典算法更快。能发挥量子计算并行性快速解决的问题在数学上通常是关于函数的某种全局属性,所谓全局属性即依赖于函数在某个区间中多个点处的函数值,例如函数的周期。科学家研究至今发现,应用量子算法的领域包括密码学、搜索和优化、量子系统的模拟以及解决大型线性方程系统,而潜在的应用,跨越了从基因组学到金融的各个行业。

1.3 量子算法的基本框架

设计量子算法的关键在于:要保证算法每一步骤符合量子力学的要求,并最终保证其求解速度比经典算法更快。能发挥量子计算并行性快速解决的问题在数学上通常是关于函数的某种全局属性,所谓全局属性即依赖于函数在某个区间中多个点处的函数值,例如函数的周期、再如下图中的P(f)。

图文引用:“量子科学ABC”公众号,量子算法简介一文。https://mp.weixin.qq.com/s/2y44S3cqbA89j3wktH1yOQ

量子算法大致可以分为三个阶段:

(1)制备一个叠加态,它表示函数自变量值的线性组合;

(2)作用U_f (函数f所对应的线性算子(矩阵)),根据线性性,它会分别作用在每一个基态上,把函数对每一个自变量的值计算出来,即体现潜在的并行性;

(3)提取想要的信息。通过巧妙的设计,利用干涉现象使得系统最后状态能以很大的概率落到目标点|P(f)>。算法设计的巧妙性就体现在这一步。

2. 量子算法发展阶段

2.1 量子算法的发展阶段

从量子算法发展的角度来看,可以分成四个阶段:

(1) 量子算法的发展第一阶段:探索阶段。(1980-1994)

最早在1981年,著名科学家理查德·费曼(Richard Feynman)在麻省理工大学举办的计算物理第一届会议上,发表了论文《用计算机模拟物理学》,论文首次提出了“量子计算机的概念”,指出使用经典计算机难以有效模拟量子系统的演化,而使用量子计算机能够对量子系统的演化进行有效模拟。

而最早的量子算法可以追溯到1985年的Deutsch算法。1985年,英国牛津大学教授大卫·德伊奇David Deutsch首次提出了量子图灵机模型,并且设计了第一个量子算法Deutsch算法。1992年,德伊奇又和英国剑桥大学教授理查德·乔萨Richard Jozsa对早期Deutsch算法进行了拓展,给出了它在n个量子比特下的算法。这是人类历史上首个利用量子特性设计出来,专门针对量子计算机的算法,开创了量子算法的先河,为后面的Shor算法、Grover算法等量子算法的设计提供了思路。同时,Deutsch-Jozsa算法还说明了比起经典计算机,量子计算机能够更快速、更有效地解决一些特定的问题,显示出了量子计算机巨大的潜力。

(2) 量子算法的发展第二阶段:质变阶段。(1994-2009)

从20世纪90年代开始,量子计算的算法得到很大发展。以Shor算法为代表的三大通用量子计算的算法陆续涌现,由于这些算法所解决的问题具有广泛的应用价值,使得这些算法备受关注,从而也大大推动了整个量子计算领域的发展。后续不少研究就是聚焦于如何把以上两个算法映射到更多具有实际价值的问题。

1994年,美国贝尔实验室的彼得·肖尔(Peter Shor) 提出了Shor算法,在算法界引起了轰动。Shor算法展示了大数分解问题可以被量子计算机在多项式时间内解决,而该问题在经典计算机下的难解性是RSA公钥密码系统安全性的理论基础。

1996年Grover发现了无序数据库搜索的平方加速量子算法,该算法被公认为继Shor算法后的第二大算法,它解决的是无序数据库搜索问题,也是第一个被完整地实验实现的量子算法。时至今日,Grover算法仍是不同量子计算平台的基准实验之一。

(3) 量子算法的发展第三阶段:繁荣发展阶段。(2009-2018)

2009年,MIT三位科学家阿朗·哈罗(Aram Harrow)、阿维那坦·哈西迪姆(Avinatan Hassidim)和赛斯·劳埃德(Seth Lloyd)联合开发了HHL算法。用于求解线性方程组,比起经典算法有指数加速的效果。线性方程组是很多科学和工程领域的核心,所以HHL算法可在机器学习、数据拟合等多种场景中展现出量子计算的优势。

从2009年开始,以谷歌、IBM为代表的一些企业,开始把规模化量子计算机的工程化作为主要的发展方向。在此过程中,很多专用的量子算法出现了。这其中包括一些优化的算法:如变分量子特征值求解算法(Variational Quantum Eigensolver,VQE)、量子近似优化算法(Quantum Approximation Optimization Algorithm, QAOA)等;还有一些采样的算法,包括玻色采样(Boson Sampling)、量子随机游走(Quantum Walk)等算法,此外还有美国斯坦福大学提出的CIM相干伊辛机(Coherent Ising Machine)、以D-Wave公司为代表的量子退火算法(Quantum annealing)等。

(4) 量子算法的发展第四阶段:AI探索阶段。(2018至今)

基于量子的叠加和纠缠等原理,使得量子算法非常适于解决人工智能和机器学习中核心的优化(Optimization)过程类问题,所以从2018年开始,以谷歌为代表的企业纷纷开始投入量子人工智能,特别是与深度学习相结合的领域。具有代表性的成果包括Google公司在2020年提出的Tensorflow Quantum(TFQ)框架。TFQ是一种量子-经典混合机器学习的开放源代码库,允许研发人员在设计、训练和测试混合量子经典模型时,可以模拟量子处理器的算法,在最终联机时,还可以在真实量子处理器上运行这些模型的量子部分。TFQ可用于量子分类、量子控制和量子近似优化等功能。

此外量子人工智能的研究范畴还包括量子卷积网络QCNN、量子自然语言处理QNLP、量子生成模型QGM等。包括斯坦福大学等在内的单位还在进行量子神经元(CIM Quantum Neuron)方向的研究。预计在未来3到5年中,将会有更多的企业、资源投入到量子人工智能方向的算法研究,成果不断涌现,将量子AI推向一个新的高潮。

2.2 量子算法在计算机的应用过程

量子计算机是指具有量子计算能力的物理设备。这种设备的原因有两个:

(1) 外部原因:摩尔定律失效。根据摩尔定律,集成电路上可容纳的晶体管数目每隔24个月增加一倍,性能也相应增加一倍。然而,一方面随着芯片元件集成度的提高会导致单位体积内散热增加,由于材料散热速度有限,就会出现计算速度上限,产生“热耗效应”。另一方面元件尺寸的不断缩小,在纳米甚至埃尺度下经典世界的物理规律不再适用,出现“尺寸效应”。

(2) 内部原因:量子计算机的强并行性。这是量子计算机相比传统计算机的显著优势,量子计算机和量子算法相互结合,可以将计算效率进行二倍加速甚至指数加速,例如传统计算机计算需要1年的任务,使用量子计算机可能需要不足1秒的时间。

量子计算机的基本原理如图所示。它主要的过程如下:

(1) 选择合适的量子算法,将待解决问题编程为适应量子计算的问题。

(2) 将输入的经典数据制备为量子叠加态。

(3) 在量子计算机中,通过量子算法的操作步骤,将输入的量子态进行多次幺正操作,最终得到量子末态。

(4) 对量子末态进行特殊的测量,得到经典的输出结果。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-08-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 量子发烧友 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档