量子计算正迅速成为人们关注的领域,每年有数十个新玩家进入这一新兴市场

在接受R&D杂志采访时,苏黎世联邦理工大学计算物理教授 Thomas Häner博士说:“算算去年在这一领域成立的初创企业的数量,简直不可思议。随着投资者对这一领域的兴趣越来越浓,量子计算领域初创企业的数量只会继续增长。”

为了进一步促进这一领域的发展,Thomas Häner教授和苏黎世联邦理工大学的一个团队创建了ProjectQ——一个免费的开源量子计算软件框架,它允许用户使用一种强大而直观的语法在高级编程语言Python中实现他们的量子程序。ProjectQ可以将这些程序翻译成任何类型的后端,无论是在经典计算机上运行的模拟器还是实际的量子芯片。

该框架的设计是为了使程序员更容易利用量子计算。

“在我们ProjectQ项目开始之前,量子计算基本上没有语言,与经典的汇编语言相比,量子计算具有更高的抽象级别。”他说。“它的主要原理是,算法研究员只需要实现一次逻辑门和子程序,把它传送到ProjectQ项目,然后其他人可以重新使用那些子程序。”

ProjectQ包含高级语言编写量子程序模块化可定制编译器、各种硬件和软件后端和工具库(library),通过它们,ProjectQ可以解决量子计算机上的费米问题。

该框架由一个主编译器引擎组成,它通过编译引擎链发送该线路来执行用户定义的编译步骤序列。每个编译器引擎操纵该线路以减少运行量子程序所需的逻辑门或量子比特的数量。下一个栈的引擎会变得更加适应于后端(back-end-specific),并负责将逻辑线路映射到后端的布局。

 

“ProjectQ的编译器框架结构简单,因此,作为一个参与者,你可以在算法上工作,也可以使用编译器插件。”Häner解释说,“如果你有新的想法,无论是关于优化器还是更好地把逻辑电路映射到实际硬件,你都可以把它拉进ProjectQ,看看它是如何执行的。你还可以运行一个已经可用的实例。”

电路通过所有编译器引擎之后就会被发送到后端。作为项目的一部分,有几个后端选项可用,包括一个高性能模拟器,它允许用户在本地模拟他们的量子程序和模拟器,以允许用户检查他们的量子算法的正确性。

用户还可以直接在5量子比特量子计算机上运行他们的量子程序,因为ProjectQ已经连接了IBM开放的IBM量子体验(IBM Quantum Experience)接口。

“IBM也有一个框架,它的抽象级别较低,所以部分人更喜欢使用它,此外还有一部分研究员喜欢通过ProjectQ使用更高级别的抽象,而只是从那里去到IBM量子体验。我们有许多研究小组在发布论文之前使用它来测试算法,部分人对他们的硬件更感兴趣,还有很多人只想在IBM量子体验上运行一些东西,我们有一个接口可以连接上去。”

“在更高的抽象层次上编程量子算法的开发速度会更快,以及会产生低级指令集的自动编译,也就是说允许用户只需改变一行代码就可以将算法编译到任何可用的后端。由于Python语言已经在量子社区中被广泛使用,所以程序员要学习如何使用这个框架并不困难。”Häner解释说,“我们去年和苏黎世联邦理工大学计算机系的硕士生开过一次研讨会,尽管他们对量子物理一无所知,但仅仅经过几个小时的辅导,他们就能够用我们的模拟器复制出最新量子物理研究论文中的结果。”

发表评论

后才能评论