量子计算云平台的架构与发展
2023-08-04张萌王敬赵文玉张海懿
张萌 王敬 赵文玉 张海懿
(中国信息通信研究院技术与标准研究所,北京 100191)
0 引言
量子计算利用量子态的纠缠、叠加等特性提供一种新的计算范式,有望在特定计算困难问题求解过程中提供指数级加速,是后摩尔时代先进计算有力候选方案之一。目前,量子计算硬件研发存在多条技术路线,其中超导技术路线备受关注,国内外科技企业纷纷布局,离子阱、光量子、硅量子点、中性原子等其他技术路线近年来科研成果也是亮点纷呈[1-13]。总体而言,量子计算硬件研发还处于前沿探索和开放竞争的状态,尚未达到实用化阶段。同时,基于含噪声的中型量子(Noisy Intermediate Scale Quantum,NISQ)硬件的应用探索也如火如荼地进行,但仍面临“不可能三角”的困局[14],即同时具有量子优越性、实用价值以及NISQ硬件可行性三个条件的“杀手级”应用尚未找到。未来,量子计算产业落地需要同时推动硬件研发和应用探索。
考虑到量子计算硬件尚不成熟,并且需要高额的研发、运维成本,为了让更多的研究人员和行业用户参与量子计算硬件、软件、算法和应用的研究,近年来量子计算云平台逐渐成为量子计算算力输出的主要形式。用户依托经典的信息网络基础设施,访问云端的量子计算处理器。用户编写的量子线路或程序通过网络提交给云端的经典服务器进行编译和下发,在真实的量子处理器硬件或量子线路模拟器上运行,运行结果最终反馈给用户,实现运算的闭环运行。目前,国内外许多研究机构和企业陆续发布自己的量子计算云平台,以此推动量子计算产业落地和生态建设已成为业界共识。
1 发展现状与分类
1.1 国内外发展现状
目前,量子计算云平台提供商主要分布在美国、加拿大、欧洲与中国。其中,美国布局量子计算云平台比较早,以IBM、亚马逊、谷歌、微软为代表的科技公司和以Rigetti、Strangeworks等为代表的初创企业先后推出各自的量子计算云平台,对外提供量子计算硬件或量子线路模拟器的云接入,以及相应的编程语言、应用软件,并积极构建开源社区和生态体系。随后,加拿大和欧洲各国及地区也相继推出量子计算云平台。欧洲和美国量子计算云平台商业化趋势比较明确,IBM、亚马逊率先推出计费服务模式,付费用户可以获得更高的接入权限和更好的服务体验。
我国在量子计算云平台方面起步晚于欧洲和美国,但是近年来多家科技公司、初创企业和研究院所陆续推出自己的量子计算云平台,并且在编程语言、编译框架、应用服务、接入体验等方面进行积极的尝试,有效支撑我国量子计算科学研究、科普推广和应用探索。从数量上看,我国已进入全球第一梯队。我国云平台提供商包括华为、百度等传统科技公司,也包括本源量子计算科技(合肥)股份有限公司(简称“本源量子”)、深圳量旋科技有限公司(简称“量旋科技”)、北京中科弧光量子软件技术有限公司(简称“弧光量子”)等专注于量子计算的初创企业,还包括北京量子信息科学研究院、中国科学院等研究机构。由于基于云的开发运维能力有所差异,国内云平台服务水平也参差不齐,目前主要面向科研用户提供免费的接入服务。
1.2 服务模式分类
量子计算云平台将量子计算机硬件或量子计算模拟器与经典云计算软件工具、通信设备及IT基础设施相结合,为用户提供直观化及实例化的量子计算接入访问与算力服务。量子计算云平台具有如下特点:网络连接,量子计算硬件资源不是部署在本地,用户通过网络接入云端并使用服务;资源共享,量子计算硬件与经典信息与通信技术(Information and Communications Technology,ICT)资源不为某个特定用户专有;弹性、按需的服务,用户按照需求占用和释放资源;服务可测量,服务提供者可按照用户对资源的使用量进行计费。不同的量子计算云平台提供的服务也不尽相同,因此可按照服务模式对其进行分类。
按照云平台服务提供的资源所在层次,可以分为量子基础设施即服务(Quantum Infrastructure as a Service,Q-IaaS)、量子平台即服务(Quantum Platform as a Service,Q-PaaS)和量子软件即服务(Quantum Software as a Service,Q-SaaS)。Q-IaaS将量子计算机的硬件及配套设施作为服务在量子计算云平台上提供给用户。用户可以调用云平台上的硬件(包括量子计算机、量子计算模拟器、经典服务器、存储器等)而无需对其进行维护,实现低成本的底层开发和科学研究等活动。Q-PaaS将量子计算相关基础设施和中间件组成的开发平台作为服务在量子计算云平台上提供给用户。用户可以基于量子计算软件开发平台开发量子编程框架和量子算法库,并通过云端服务器连接到不同公司量子计算硬件进行计算。支持单一平台开发或跨平台兼容开发;支持经典-量子混合计算,并自动分配经典计算资源和量子计算资源。Q-SaaS根据特定行业应用场景和应用需求将打包好的应用服务方案作为服务在量子计算云平台上提供给用户。用户可以依靠量子算力解决特定的实际问题,并且无需全面掌握量子知识和编程能力。
按照云平台供应商侧提供服务的模式主要分为两大类:第一类供应商自身参与量子计算硬件的研发,将自研的量子计算机或基于经典算力的量子线路模拟器放在云端,向用户提供云接入服务,典型企业包括IonQ、Xanadu、Rigetti、本源量子等;第二类供应商则凭借其云计算技术与资源,使其云平台可接入其他公司的量子计算硬件或软件系统,为用户提供量子计算服务,典型企业包括Microsoft、Amazon、Strangeworks等。此外,还有一些云平台既能接入自研的量子计算硬件,也支持其他厂家硬件资源的接入与调用,比如IBM除了自研的多款超导量子计算芯片,还可以调用AQT、IonQ的量子计算硬件资源。国内的百度量易伏量子计算云平台也允许接入和调用自研的超导量子计算处理器、中国科学院物理研究所的超导量子计算处理器以及中国科学院精密测量科学与技术创新研究院的离子阱量子计算处理器。
按照云平台计费模式可以分为付费型和免费型,付费型又包含即用即付型和按操作付费型,免费型指量子计算云平台提供免费的接入和使用权限。一些云平台也提供部分免费服务,即提供一定的免费次数或免费时长,或云平台中部分资源免费。即用即付型,也称为计时付费,用户按照接入云平台或量子硬件的时长进行计费。按操作付费型是根据基于某一确定后端的操作次数计费的收费模式。
2 功能架构研究
在对国内外量子计算云平台的分析与梳理的基础上,本文提出了量子计算云平台的功能架构,如图1所示,其中主要功能可划分为服务层、平台层、基础设施层,以及配套的运营管理与安全服务功能等。
图1 量子计算云平台功能框架图
2.1 服务层功能
服务层主要包括门户管理、服务管理以及应用开发等主要功能。服务层提供用户(或开发者访问)的用户接口(User Interface,UI)。用户可以通过UI界面(如浏览器或应用程序)访问量子云服务,输入必要的参数和数据,并获取量子云计算返回的结果。目前,用户使用量子计算云平台的方式可分为两类:一类是本地编译、通过应用程序编程接口(Application Programming Interface,API)访问云平台。用户可在本地开发量子程序,并将待执行的量子程序通过API远程提交至量子计算云服务器上,云服务器将任务进行调度并分配至量子计算处理器或量子线路模拟器后端执行程序,程序运行结束后通过API返回结果。另一类是直接在云平台上进行开发实践。用户可直接在云平台上进行量子程序开发,一般可选择使用量子编程框架编程或图形化的量子线路编程,直接在云平台上获得执行结果。此外,服务层还提供应用开发的功能。Q-SaaS平台可提供拥有图形用户接口(Graphical User Interface,GUI)的量子应用,用户只需在线导入数据或填写必要的参数,即可运行程序并获得结果,而无需掌握量子计算编程能力。同时,也可提供算法API以及软件开发工具包(Software Development Kit,SDK)允许用户根据自身需求或特殊应用场景自行开发量子应用。服务层通过内部应用接口与平台层连接。
2.2 平台层功能
平台层主要完成程序开发和编译功能。量子计算程序主要通过量子编程语言进行开发。量子计算程序经过编译后转化成量子计算硬件可以识别的机器语言(比如特定波形的测控信号)输入到基础设施层。
量子编程语言可分为独立式和嵌入式两种。独立式编程语言是为量子计算定制开发的编程语言。量子计算和经典计算从计算原理上看有巨大差异,比如量子比特可以处于|0〉和|1〉的叠加态,量子门操作通过幺正变换实现。因此,有必要结合量子计算的特点开发适用于量子比特基本操作的编程语言,比如OpenQASM、Q#、Quilt、isQ等。这类语言与经典计算中的汇编语言(或指令集)作用相似。嵌入式编程语言是指依赖于其他编程框架的编程语言,比如Qiskit、Cirq、ProjectQ、QPanda等都是基于Python(或C/C++语言)开发的库,可基于原始编程语言(Python或C/C++)的基本语法规则进行程序开发,用户无需学习新的语法规则,并且易于实现复杂逻辑和量子-经典混合编程。
编译功能主要实现高级编程语言到机器语言的转换。量子程序的编译主要包括量子线路的分解、优化和映射等功能。分解功能是将量子程序中的复杂算子分解成量子计算硬件支持的单比特逻辑门和多比特逻辑门。优化是将分解后的量子线路进行优化组合,利用尽可能少的量子逻辑门实现算法功能。NISQ时代量子比特寿命较短,同时噪声的影响也不可避免。因此,每增加一个逻辑门就需要消耗一部分量子比特寿命,并且引入一定噪声。优化的过程通过对量子比特门进行优化组合或者引入辅助比特来减小量子线路的深度,保证较高质量的运算结果输出。优化后的量子线路最终映射到量子芯片中的量子比特上。对全连通的量子芯片,可以实现任意多比特逻辑门的映射,即任意两个或多个量子比特之间都能实现相互作用。但并不是所有的量子计算硬件结构都能支持全连通,比如目前比较成熟的超导量子芯片大多采用一维线型或二维阵列排列,每个量子比特只能与邻近的数个量子比特连接。因此,分解、优化后的量子线路需要尽可能映射到有连接的量子比特上。如果一个双比特逻辑门作用在无连接的两个量子比特上,需要加入一系列交换(SWAP)门将量子态最终交换到存在连接的量子比特上,但每加入一个SWAP门都需要消耗量子比特的寿命。分解、优化、映射不是完全独立的三个步骤,可能相互交织,比如优化后的量子线路在映射的过程中发生了变化,有可能需要二次优化。最终的量子线路将转化为量子计算硬件可执行的测控信号(比如特定波形的微波信号)输入到量子计算硬件上。
2.3 基础设施层功能
基础设施层可以进一步划分为外围设施层、资源层和资源管理层。资源层进一步由物理资源层和虚拟资源层组成。
2.3.1 外围设施层
外围设施层为量子计算硬件提供电力、环境保障,主要由供电系统、制冷系统、隔振系统、磁屏蔽系统、布线等外围保障系统组成。由于量子计算机对环境噪声十分敏感并且硬件研发尚不成熟,因此其环境保障系统要求比经典 ICT设备更为严苛,比如超低温(接近绝对零度)、真空、电磁屏蔽等。不同硬件路线对环境保障系统的要求也有较大的差异。
2.3.2 物理资源层
物理资源层主要包括量子计算机硬件、量子模拟器,以及必要的经典服务器、经典存储设备、经典网络等硬件。量子计算硬件主要包括超导量子线路、离子阱、中性原子、光量子等多条技术路线,目前超导量子线路仍是主流。超导量子处理器基于超导约瑟夫森结形成扩展人造的二能级系统,其加工工艺与现有微纳加工技术兼容,在可操作性和扩展性方面具有优势。国内外十余家量子计算云平台提供超导量子计算机的接入服务。2022年底,IBM Quantum Experience平台宣布433 bit的Osprey超导量子处理器正式上线,是目前可通过云平台接入的最大算力门型通用量子计算处理器。除了超导量子处理器,国内外也上线了少量离子阱、光量子、中性原子、核磁共振等路线的量子处理器。以上都是基于逻辑门的通用量子计算处理器,除此以外基于专用量子计算处理器的量子计算云平台也是值得关注的方向之一。专用量子计算处理器不具备量子逻辑门操控和实现量子纠错编码等能力,但可以应用于求解组合优化和采样等专用问题,如果与适当应用场景和数学模型结合,同样有希望带来量子计算的算力加速优势。专用量子计算机主要包括量子退火机、玻色采样机和依辛机等类型。加拿大初创公司D-WAVE是最早进行商用量子退火机研发的企业,并于2018年推出了基于量子退火机的量子计算云平台Leap。近年来,D-WAVE积极与科研机构、高校、企业合作开展科研项目,基于云平台在工业制造、运输物流、生命科学、投资金融等领域开展应用探索。2023年,D-WAVE基于量子退火机在自旋玻璃问题上证明了量子优越性,未来基于各自适用的数学问题,进一步广泛探索在量子化学模拟、图论组合优化、非线性问题求解等方面的实用化案例,有望和NISQ时代的通用量子计算机共同开展“杀手级”量子计算应用案例探索的竞争。北京波色量子科技有限公司致力于光学相干依辛机(Coherent Ising Machine)的研发,2023年5月发布自研的100 量子比特相干光量子计算机,并与中国移动签约共同构建“五岳”量子云平台,但是国内对基于专用量子计算机云平台的关注度仍较低。总体来看,当前量子计算硬件研发的主要难点是如何实现量子比特数中等规模以上、量子比特之间连通性良好、退相干时间长,并满足一定测控精度要求的量子芯片。
由于量子硬件资源稀缺,量子比特数目、质量尚不能满足大规模实用要求,量子模拟器一定程度上可以辅助开展量子算法开发和应用探索。随着量子比特数的增加,量子线路的计算规模呈指数增加,经典计算机很难提高模拟量子比特数的规模。
同时,为了构建量子计算云平台需要经典硬件资源和相关支撑技术(主要包括容器管理、微服务引擎、数据库服务、分布式缓存服务、WAF防火墙等技术),在这些云原生服务基础上构建高可靠、高并发、有韧性、安全可靠的量子计算云服务。
2.3.3 虚拟资源层
虚拟资源层主要由量子计算机虚拟机、经典虚拟机、经典虚拟存储、经典虚拟网络等功能模块组成。经典ICT资源的虚拟化可以直接借鉴经典云计算方法,利用虚拟资源管理技术,用网络将经典ICT资源(包括计算、存储资源以及应用运行平台、软件等)集中起来形成共享的资源池,并以动态按需和可度量的方式向用户提供服务。
量子计算机硬件由于尚不成熟,目前尚未开展虚拟化相关的研究。理论上量子计算资源可以通过分布式计算和虚拟化等技术形成资源池,提升硬件资源的利用率和调度的灵活性。同时,分布式计算架构或将解决单机算力不足的问题。目前,量子计算云平台能够基于云接入的形式调用量子计算芯片硬件。受限于当前的技术水平,量子计算芯片支持的物理量子比特数目较少,并且很难在保持良好保真度的同时扩大规模。因为在系统规模增大后,量子比特之间以及量子比特与环境之间的耦合噪声也随之增大。但是目前有很多中小规模的量子计算硬件分布在不同的实验室中,如果能构建一张分布式量子计算(Distributed Quantum Computing,DQC)网络[15]将现有的量子计算硬件资源连接起来并形成虚拟化资源池,可以大幅提升当前的量子计算算力。包含N个量子比特的量子计算芯片能够表示2N×2N维的希尔伯特空间。因此,将多台量子计算机连接起来获得的算力不是单台量子计算机算力的加和,而是乘积关系。在DQC系统,将一个完整的量子线路拆分成多个小的子线路,这些子线路调度分配到虚拟化资源池中的不同量子硬件上,通过收集分布式节点的测量结果,可以在经典计算机上计算获得整个系统可观测值的期望值。DQC系统可以通过经典网络进行连接,也可以通过基于量子纠缠的量子信息网络(Quantum Information Network,QIN)进行连接。受限于QIN本身仍处于开放探索的阶段,尚不能确定基于QIN的DQC系统具有何种架构和功能。
2.3.4 资源管理层
资源管理层主要由物理机管理、虚拟机管理、存储管理、网络管理以及资源和任务调度等功能模块组成。在NISQ时代,量子计算任务需要与传统计算资源等配合使用,完成量子-经典混合计算任务。这就要求将用户提交的计算任务分解为量子计算和经典计算两部分,由任务调度模块将量子部分分配到量子计算机上执行,经典部分在传统计算资源上运行,并最终返回两者合并后的结果。异构算力混合计算将是未来量子计算云平台的应用模式之一。异构算力混合计算不仅包括门型通用量子计算机与量子计算专用机之间的混合,也包括量子计算与各类经典计算架构的混合,包括单指令流单数据流机器(Single Instruction Single Data,SISD)、单指令流多数据流机器(Single Instruction Multiple Data,SIMD)、多指令流单数据流机器(Multiple Instruction Single Data,MISD)、多指令流多数据流机器 (Multiple Instruction Multiple Data,MIMD)等多种计算架构。量子-经典混合计算还可以进一步分为量子-经典协同计算和量子-经典融合计算。量子-经典协同计算中,量子部分和经典部分界定清晰,二者互为简单的输入/输出关系;而量子-经典融合计算中,二者在计算过程中不仅相互访问彼此数据,还形成相互控制的关系。不同的计算架构如何互相调用、互相协作是未来重点研究的方向之一。
2.4 运营管理与安全功能
运营管理主要由用户管理、计费管理、报表管理、监测管理等功能模块组成,实现用户服务和运行维护两个层面的管理功能。用户服务管理层面主要实现用户的注册、注销、鉴权、分级权限管理以及服务计费相关的功能;运行维护管理层面主要实现日志管理、报表统计、监控告警等功能。
安全主要实现接入安全、软件安全、虚拟化安全、硬件安全和数据安全等功能。其中,用户认证、授权管理、安全审计、经典服务器防护与加固、网络安全等功能可以直接借鉴经典云计算平台对应功能。同时,利用量子信息技术还可以实现经典云平台无法实现的安全防护功能,比如基于量子信息技术的隐私保护功能。隐私信息的安全防护在量子计算中同等重要。与经典云计算服务类似,量子计算云平台用户将任务提交给云端的量子计算硬件代理执行,云平台再将运行后的结果返回用户。通常情况下,云平台需要获取完整的计算任务描述和计算数据才能完成代理计算,但在这一过程中用户的隐私和信息的安全存在巨大的隐患。无论是经典云计算服务还是量子计算云服务,信息安全都是未来发展关注的重点。在基于测量的量子计算(Measurement-Based Quantum Computation,MBQC)模型[16-20]的基础上,Broadbent等提出了盲量子计算(Blind Quantum Computation,BQC)协议[21]有望解决用户隐私保护的问题。MBQC模型不同于常见的量子线路计算模型,没有经典计算模型与之对应,其核心设计思想是对一个量子纠缠态的部分比特进行测量,未被测量的量子系统将会实现相应的演化,并且通过对测量方式的控制,实现任意需要的演化。MBQC主要基于砖块图(Brickwork Graph)进行运算。BQC是在MBQC的基础上发展出一套基于云接入的量子计算交互协议(见图2)。协议交互的双方分别是用户和云平台,主要分为两个步骤。步骤一,用户将需要执行的量子线路转化成对应的砖块图测量模式,并获取砖块图的宽度n和深度m。用户使用旋转角度加密的方式为砖块图的每个节点制备量子态后,分别通过经典信道和量子信道将砖块图尺寸和量子态发送到云端。云端在接收信息之后,根据砖块图的尺寸和结构将接收到的量子态进行纠缠,制备砖块图态。步骤二,用户和云端将往复完成多轮协议交互,完成加密、测量和解密,直至完成对所有量子比特的测量。通过对量子效应的巧妙应用,BQC能够有效保护用户隐私,有望解决量子云计算中的信息安全问题。随着量子信息网络技术的逐渐成熟,BQC有望成为量子信息处理的主要模式之一,在未来量子信息网络中具有巨大的应用价值。
潜变量是不可直接观测的变量,本次潜变量的选定从理论出发,通过对云闪付产品可接受度的研究、回顾与综述,并根据云闪付产品自身的特点,选出影响云闪付用户粘性的6个因素(潜变量):实用性,便捷性,安全性,期望确认度,产品形象,粘性。其中前三者是前提变量,后三者是结果变量,前提变量综合决定并影响着结果变量。
图2 盲量子计算协议流程图
3 面临的挑战及发展建议
当前,国内外量子计算云平台发展还处于探索阶段,无论是量子计算硬件水平还是服务模式均不成熟。
近年来,量子计算硬件研究加速发展,多条技术路线呈现多元化发展态势。如何从规模、质量、速度三个维度提升物理量子比特的性能仍然是当前量子计算领域亟待突破的核心任务。目前,能够实现云接入的最先进的量子门型通用量子计算芯片也只包含数百个量子比特,并且噪声影响较大,连通性受限,可纠错的逻辑比特尚未实现,距离实用化、商用化仍较远。未来,需加强科研攻关,加快提升量子计算硬件的工程化水平。量子计算硬件是量子计算云平台的“心脏”,其性能关乎云平台能够解决问题的能力。量子比特数量决定量子算法解决问题的规模大小;量子比特寿命和连通性决定量子线路的复杂程度;逻辑门的保真度决定量子计算硬件执行任务的可靠性和可信度。目前,应加强量子计算硬件核心技术,尽快提升量子比特的数量、寿命、连通性以及量子逻辑门的保真度,并且实现大规模的逻辑量子比特,为实用化算法探索奠定硬件基础。
国内外近年来发布了数十个量子计算云平台,但是其中不少云平台只能实现一些科普级的功能。不可否认,这类云平台在向公众普及量子力学基本知识、量子计算编程语言、量子算法基本原理等方面具有重要的价值,但是与解决实际问题、赋能千行百业的终极目标仍有较大距离,需要学术界和产业界共同持续探索。量子计算云平台应用探索需要科研工作者、云平台提供商、行业用户深入交流合作,碰撞灵感火花,共同研讨行业痛点和解决方案。建议通过组织案例征集、编程大赛等活动,充分利用现有量子计算原型机和云平台服务等良好基础,激发科研人员学习热情和创新动力,促进量子计算编程框架应用推广、云平台用户生态建设、上下游参与,形成应用创新合力,加快算法研究与应用场景探索,助力我国量子计算产业落地。
4 结束语
量子计算云平台已成为量子计算科普教育、算法开发和应用探索的主要阵地。依托国内外平台已发表大量学术论文,内容涵盖算法设计、程序编译、测评基准、行业应用等诸多方向。未来,随着量子计算软硬件的成熟与云平台功能的健全,量子计算云平台会催生出更多的应用与服务模式,与经典云计算平台相辅相成,带动量子算力与各行业深度融合,赋能千行百业,助力国家数字经济高质量发展。