2020年12月,美国航空公司的机组调度系统出现故障,使得某个航班的飞行员没有另一名飞行员作为替补,在此情况下不得不取消航班。而这一变化的影响将扩散波及多达 15,000 个航线。最终将导致在圣诞假期间,数千个航班计划被迫中断。尽管后来航空公司设法解决了故障,并为航班配齐了人员。 但这一事件表明现阶段人类的大量社会工作安排已经非常依赖计算机系统。 所有大型航空公司都使用复杂的调度优化算法来为飞机分配机组人员。虽然美国航空公司的这次事件不是由某种算法的错误直接造成,但最终还是导致了严重的结果。这种错误可能会使航空公司在排除故障时,数十万人滞留于机场陷入困境,从而给旅客方、机场方和航空公司方都带来严重不便。 目前阶段,经典计算机凭借着摩尔定律以及相关算法的优势,部分解决了许多复杂的优化问题,包括运输、物流和调度方面的问题。仅举几个例子:每年运送货物的50,000艘货船、生产250,000亿度的电力、每年传输超过4753EB(1 EB=1024 PB=1048576 TB)的互联网流量,都以复杂算法进行优化安排,如果没有这些算法,全球大部分地区的经济建设就会瘫痪。但由于时间紧迫,计算资源有限,企业经常使用近似的非最优解决方案。更重要的是,我们用于解决大部分优化问题的方法还有很大的改进空间。 鉴于大家都意识到优化的重要性,经典电子计算机处理器性能也较为稳定,研究人员已开始探索专为优化问题设计的量子计算设备,试图显著提高我们解决复杂问题的能力。 什么是复杂优化问题?
旅行商问题(TSP):包含大量地点,例如在多个地点之间寻找最短路线的问题变得越来越困难,将它们建模为伊辛优化问题可能有助于我们更快地解决它们。 回想一下经典的旅行商问题(TSP),这一问题说的是推销员从一个城市移动到另一个城市去销售他的商品,每个城市只走一遍,并且在旅行结束时最终回到起点,这就需要优化安排他的旅行路线,避免浪费时间并节省汽油钱。这一优化问题的目标是找到推销员要走的最短路线。 如果需要访问的城市只有4个,那么可能的路线还不太多,似乎很容易安排,可以通过排列所有相关路径来解决问题。但事实证明,这个称为枚举的过程仅适用于非常小的问题。若城市数目为n时,那么可能的路径数则为(n-1)的阶乘。显然随着城市数目的不断增大,组合路线数将呈指数级数规律的急剧增长,以致达到无法计算的地步,这就是所谓的组合爆炸问题。如果这位勤奋的推销员计划访问50个城市,那么排列所有可能路径的蛮力方法将会令人崩溃。实际上所有可能的路径数将是6.08*(10^62),如果使用每秒能进行10亿次的超级计算机进行计算,要算出50个城市的最短路径所需的时间要比宇宙的寿命还长。 找到各种捷径并利用近似合理的算法可以为该问题提供有用的解决方案。但即使是这些算法中最好的,也可能使功能强大的计算机瘫痪。在最近的一个例子中,加拿大滑铁卢大学(University of Waterloo)为了寻找美国历史古迹名录中近50,000个地点之间的最短路径,并证明其答案是正确的,使用了310台功能强大的处理器总计耗时九个月。 TSP问题是最有代表性的优化组合问题之一,它的应用已逐步渗透到各个技术领域和人们的日常生活中。就实际应用而言,一个典型的例子就是机器在电路板上或是钢板钻孔的调度问题,这一问题在我们的电脑、手机、汽车的制造上不可或缺。在该问题中,钻孔的时间是固定的,只有钻头机器移动时间的总量是可变的。在这里,电路板或钢板等工件上要钻的孔就相当于旅行商问题中的“城市”,钻头从一个孔移到另一个孔所耗的时间和能量,就相当于 TSP 问题中的“旅行时间和费用”。 由此可见,在大规模生产过程中,寻找最短路径能有效地降低成本。这类问题的解决还可以延伸到其他行业中去,如运输业、后勤服务业等。制造工厂需要安排机器设施的维护工作、大学需要在教室里安排课程、邮政服务需要规划送货路线、在高峰时段,北京和东京等大城市希望能够有效地为数百万辆在街道上行驶的汽车安排路线......这些问题可能涉及需要调度的成百上千个事件,由于 TSP 会产生组合爆炸的问题,实际的解决方案仍然难以捉摸,因为它们需要大量计算机并会耗费巨量时间。因此,寻找切实可行的简化求解方法就成为问题的关键。 此外,优化问题所包含的内容远不止旅行商问题,调度是另一个困难的优化挑战。例如,美国国家橄榄球联盟(NFL)每年必须安排数百场比赛,这些比赛要同时遵守数千条规则。例如限制球队不得参加连续三场以上的客场比赛的规则。2017年,为了解决这一问题,NFL依靠了将近400台超级计算机组成的集群。 用伊辛模型进行优化
伊辛模型示意图 研究人员一直在尝试制造专用机器来解决困扰多年的优化问题。1980年,当时在AT&T贝尔实验室的David Tank,与后来在AT&T贝尔实验室和加州理工学院担任双重职务的John Hopfield提出使用代表神经网络的模拟电子电路来解决诸如旅行商问题之类的优化问题。他们的论文激起了科学家们对该方向的十年研究热潮。 随后在1994年,南加州大学的Leonard Adleman发现,理论上,DNA可以用于解决同类问题。他的洞察力引发了一系列的类似研究。然而,这些开发全新有效方法来解决优化问题的努力,没有一种方法能够替代传统的计算机技术。 斯坦福大学和其他研究院所制造专用光量子机器以解决优化问题的工作,针对的是一个特定的问题,称为“伊辛优化”。它以物理学家恩斯特·伊辛(Ernst Ising)的名字命名,他因其在磁矩模型上的工作以及解释不同磁态之间的跃迁而闻名。事实证明,许多常见的优化问题,包括调度和寻找路线最优问题,都可以轻松转换为伊辛优化问题。在伊辛模型中,当系统的电子自旋指向与相邻电子的自旋方向相反时,系统的能量较低。我们可以在伊辛模型中找到最低能量状态的系统,进而帮助更快地解决较难的优化问题。 要了解伊辛模型与优化之间的关系,就必须从物理学家利用它来理解磁力开始。一个普通的条形磁铁,使用伊辛模型,就可以将条形磁铁视为三维的原子网格,其中每个原子本身都充当一个微小的条形磁铁。每个原子的电子都有一种称为“自旋”的特性。按照惯性,价电子(即最外面的电子)的自旋指向上或向下。这些自旋的方向决定了材料是否被磁化。如果所有自旋指向上,则材料被磁化。如果它们都指向下,则材料也会被磁化,但是极性相反。如果自旋是上下混合,则材料不会被磁化。 这些自旋也会相互影响。两个相邻电子的自旋一旦对齐,即它们都指向上或向下,则它们具有相同的较低总“组合能量”,相反,如果它们的自旋指向方向相反,则它们的总能量更高。这已经从数学上严格证明了,N个原子组合成的网格系统的最低“总组合能量”,就对应于N个节点的优化问题的最优解。 相干伊辛机基于上述物理原理和数学原理,一种称为“测量-反馈式相干伊辛机”的系统可以解决以伊辛模型形式存在的优化问题。系统使用的是脉冲激光“简并光学参量振荡(DOPO)”机制,其中激光脉冲的相位可以模拟为电子自旋,其相互影响可被系统中的FPGA编程赋值。
在伊辛模型中,可以将原子集中每对电子自旋之间的相互作用所产生的能量相加。因为能量的大小取决于自旋是否对齐,所以集合的总能量取决于系统中每个自旋指向的方向。因此,一般的伊辛优化问题是确定自旋应处于哪种状态,以使系统的总能量最小。 在最简单的模型中,假设只有相邻的自旋相互作用。但在一般的伊辛优化问题中,任何自旋都可以与其他旋转相互作用,不管彼此之间的距离多远,这种相互作用的标记和强度对每对自旋来说可能是唯一的。当问题规模较大时,解决起来就非常困难(就像找出推销员拜访数十万潜在买家的路线问题一样困难)。如果我们能找到一种快速解决伊辛优化问题的方法,并找到一种方法来解决旅行商等类似问题,那么我们也许能更快地解决这些问题。 例如,伊辛问题中系统的最低能量状态将代表城市之间的最快路线。那么,如何将旅行推销员的路线转换为自旋?主要任务是映射:我们需要将优化问题转换成可以由用于解决伊辛优化问题的机器来解决的形式。所以我们必须做的第一件事是将原始优化问题(例如,为推销员找到一条最短路线)映射到一组具有代表性的自旋上,并定义自旋之间如何相互影响。由于在过去几十年中,通过计算机科学家和运筹学研究人员们的不懈研究,多种不同的优化问题到伊辛形式的映射已广为人知。 然而,单个原子及其电子自旋很难处理,因此我们的工作重点是构建一台利用激光脉冲代替电子自旋来实现伊辛模型的机器。伊辛问题被映射到脉冲及其之间的相互作用上。然后根据问题的总能量进行评估,以最低的能量状态作为最佳解决方案,再将此解决方案转化为原始问题的答案——例如对于我们辛勤工作的销售人员而言,什么是最短的路线。 原型系统将自旋映射到光脉冲上的关键是光学参量振荡器(OPO),一种类似于激光器的设备。与传统激光器不同,OPO产生的光相对于某些参考光会完全同相或完全异相。这正是我们需要表示向上和向下的二进制自旋状态的条件。我们可以将“自旋向上”表示为来自OPO的光与参考光同相的条件,反之,如果它异相,则称为“自旋向下”。 使用OPO构造伊辛机的方法不止一种。NTT、加州理工学院、康奈尔大学和哥伦比亚大学的小组正在探索不同的技术路线。由Alireza Marandi(现在在加州理工学院)在斯坦福大学进行的一次实验中首次展示的伊辛原型机使用了新技术:具有光耦合的时分复用OPO。 从脉冲激光源开始,光源同时向两个方向发送皮秒级的光脉冲。第一个将成为参考脉冲,本身分裂成两个独立的分支,这对我们以后的解释很重要。 第二个用作OPO的能源,它刺激OPO中的非线性光学晶体发射光子脉冲。每个OPO脉冲都注入到一个通常至少有数百米长的光纤环中,光纤的具体长度取决于我们想要处理的脉冲数量。通过延长光纤环,我们可以将数百甚至数千个OPO脉冲加载到该光纤环中,使它们彼此追逐,一次又一次地穿过晶体。
本文作者Peter McMahon[左]和实验室同事Alireza Marandi查看光学伊辛计算机的原型。 图片来源:Linda A. Cicero /斯坦福新闻社 这些OPO脉冲的相位最终将充当伊辛模型中的自旋。当首次创建它们时,在它们围绕环路进行多次循环转换之前,它们的强度很低,以至于没有明确定义它们的相位。这是我们迫使脉冲进行相互作用的方式,促使它们在最后的阶段解决伊辛问题。 还记得上文提到的参考光吗?在环路中的某一点,光纤分路器吸收掉每个脉冲的一小部分,然后在所谓的零差检测器中与参考脉冲进行比较。该检测器输出一个电压,其中包含有关脉冲相位和幅度的信息,该信号被数字化并馈入现场可编程门阵列(FPGA),伊辛问题本身就可以在这里直观表现。 回想一下,解决伊辛问题意味着找到一组自旋的最低能量状态,其中自旋彼此之间具有不同的相互作用,而这些相互作用为系统的总能量贡献了不同的能量。在OPO中,每个脉冲代表一次自旋。因此,对于每个脉冲(我们在实验设置中使用了100个),FPGA进行一次计算,其中记录了所有其他脉冲的测量结果,根据伊辛问题,这些脉冲会影响所讨论的自旋。然后,处理器将该计算应用于位于参考脉冲的一个分支的路径中的强度调制器和相位调制器的设置。然后将新修改的参考脉冲反馈回光纤环,并遇到原来就在环内奔跑的OPO脉冲。 其中,时序至关重要,我们要确保修改后的参考脉冲将与正确的OPO脉冲结合。将两个脉冲成功混合,根据两个脉冲是否同相,馈入脉冲使得OPO脉冲表现出明确的相位,代表伊辛模型中自旋向上或自旋向下的电子。 我们对环路中的每个OPO脉冲重复整个过程,所有脉冲可能需要花费数十至数百次行程才能出现最终相位状态。完成此操作后,另一台计算机将测量读取光纤环中的OPO相位,并将其解释为伊辛问题中的自旋向上或向下的电子,然后将其转换为我们要解决的原始优化问题的实际解决方案。 在我们的实验中,我们首先构建了4个自旋的“原始验证系统”,然后是16自旋时分多路复用OPO系统。这些基本上是通过改变光纤环的特定长度来决定光纤中的OPO自旋数量。在这些实验中,我们成功地找到了最低能量状态,得到了优化问题的最优解,并促使我们进一步探索该方法。2016年,我们建造了一台基于FPGA的测量-反馈式相干伊辛机,可以构建100次自旋解决伊辛问题。经过与其他专业系统(包括经典电子计算机上的模拟退火算法、NASA所使用的D-Wave量子退火机等)的进一步基准测试比较,让我们相信相干伊辛机可以成为有效的量子优化求解设备。 结果令人振奋,但在这种相干伊辛机在解决实际的优化问题上击败传统处理器之前,我们还有很多东西需要研究,包括其中所使用到的量子原理等。随着相干伊辛机的深入研发,我们期望在未来几年中探索理论与实验之间令人兴奋的相互作用。 关于作者
彼得·麦克马洪(Peter McMahon) 彼得·麦克马洪(Peter McMahon)是斯坦福大学的博士后研究员,并于2019年7月成为康奈尔大学应用与工程物理学的助理教授。麦克马洪实验室位于康奈尔大学应用与工程物理学院,主要研究计算物理学,以及如何设计物理系统以新方式执行计算,从而提供优于当前基于CMOS的冯·诺依曼处理器的优势。除了量子计算方向,该研究团队还探索其他经典计算技术,包括光子计算和神经形态计算等。
|