一个大型通用量子计算机仍然是一个工程梦想,但是利用量子效应来解决特定类别问题的机器——比如D-wave的计算机——是活生生的。但一个不太可能出现的竞争对手可能会挑战这些专业机器:由有意制造的噪音部件组成的计算机。

本周在IEEE国际电子器件会议(IEDM 2022),工程师们公布了几项进展,使大规模概率计算机比以往任何时候都更接近现实。

量子计算机是任何依赖量子复杂振幅的算法都无法比拟的。“但对于数字为正的问题,有时被称为随机问题,概率计算可能是相当有竞争力的,”他说普渡大学电气和计算机工程教授Supriyo Datta说也是概率计算的先驱之一。

随机问题包括大量实际相关的问题,比如优化出租车搭载几名乘客的路径,或者找到蛋白质的分子结构以帮助药物发现。这些问题的共同之处在于,它们受益于一定数量的噪声,允许计算机广泛探索复杂的可能性,以找到一个好的选择。

日常计算机可以解决随机问题,但在软件中实现概率噪声很快就会变得非常昂贵。达塔的合作者、加州大学圣巴巴拉分校(University of California san Barbara)电子与计算机工程助理教授凯瑞姆•卡姆萨里(Kerem Camsari)说:“晶体管是决定性的、非常精确的物体。”“为了让他们做概率,你必须使用很多晶体管来模拟不确定性。但相反,你可以从已经非常嘈杂的东西开始,用它来构建概率计算机。”

早在2017年,Datta、Camsari和他们的同事提出想法对于包含噪音的硬件设备。他们将这些设备的组成部分称为p位,即量子比特的概率模拟。每个p位不是确定地编码0或1,而是在两个p位之间随机切换,在每个p位上花费大约一半的时间。

“我们认为有两点可以改进p位计算机。第一个是我们需要一个很好的单p位。接下来,我们需要一种方法来构建一个真正大的阵列,这个大阵列需要像CMOS芯片一样工作。”—Lang Zeng

单个p位是纯噪声,不携带任何信息。概率计算机的强大功能来自于将许多p位耦合在一起。通过这种耦合,在0和1之间切换的复杂相关性可以建立起来,使机器作为一个整体有效地解决优化问题,至少在理论上是这样的。

第一个也是最受欢迎的p位候选者是一个小型磁隧道结(MTJ)。这些简单的存储设备在很小的时候就变得不稳定。不稳定性正是p位所需要的。“一开始,我经常会告诉我那些研究磁存储器的同事们,‘你们能把你们的坏设备给我们吗?’”达塔回忆道。

然而,从mtj中构建大型耦合p位数组被证明具有挑战性。

“我们认为有两点可以改进p位计算机,”他说朗曾他是北京航空航天大学集成电路科学与工程学院的教授。“首先,我们需要一个非常好的单p位。接下来,我们需要一种方法来构建一个真正大的阵列,这个大阵列需要像CMOS芯片一样工作。”

本周会议上报告的进展部分解决了这些困难。

一个p位产生很多

将许多p位耦合在一起是很棘手的。为了回避这个问题,Camsari在UCSB的团队与日本东北大学的研究人员合作,选择了一种混合方法。他们使用单个噪声MTJ作为种子,在现场可编程门阵列(FPGA)上驱动许多软件p位。

手套手握圆形晶圆与芯片阵列工程师们创造了噪声比特阵列,它们可以合作解决一些问题,比量子计算机更好曾朗/北京航空航天大学

卡姆萨里说:“我们当时想的是,如果传统计算机很难获得随机性,为什么我们不获得这些纳米设备,免费从它们那里获得随机性,然后把它交给经典计算机,赋予它真正的随机性。”

通过他们的硬件-软件混合p位,研究人员使用了一种类似量子的算法来寻找长度不超过26位的整数的素数因子。这表明它们可以解决与D-wave计算机类似的问题,而且可能只需要很少的能源成本。

卡姆萨里指出:“详细的成本比较非常困难。“然而,我们的概念证明表明,混合概率计算机可以在20瓦的功率下工作,具有高达数百万个p位。”

更快的p位协同工作

p位之间需要相互交流才能建立起有用的计算机。到目前为止,一个MTJ在0到1之间与另一个MTJ同步的速度一直是一个限制,需要几毫秒。为了避免这个问题,北京航空航天大学的Zeng团队使用了一种新颖的机制,使他们能够将这一时间缩短到几微秒,并朝着纳秒级的方向发展。

该技术利用自旋-轨道转矩效应,实现了MTJ中结层的快速切换。“我们在2017年提出了这个设计,”卡姆萨里回忆道,“但我们放弃了,因为太难了。”Zeng的团队克服了这些困难,制造出了自旋扭矩兼容的p型钻头。

然而,设备与设备之间的差异仍然很大。“我们发现每个设备都有自己的特点,就像人一样,”曾说。为了消除这种个体性,他们提出了一种简化的耦合方案,他们称之为1位量化。在这种方案中,p位“源”仍然在0和1之间翻转,并在每一个位置上花费一定的时间。如果与目标p位耦合的源p位超过一半的时间处于1状态,目标p位将翻转为1,如果源p位超过一半的时间处于0状态,目标p位将翻转为0。换句话说,目标和源之间的耦合强度被量化为0和1。

该团队使用带有1位量化耦合的快速耦合p位,构建了一个概率计算机,并使用它来分解到945的数字。研究人员表示,构建能够解决更复杂优化问题的p位计算机应该很简单。

嘈杂的闪存为赢

佐治亚理工学院、英特尔公司和韩国先进科学技术研究院合作,在闪存中实现了概率计算机,而不是磁隧道结。

这种方法使用finfet在一种闪存中的固有时间噪声作为随机的模拟源。“通常大的噪声对存储设备来说是件坏事,”乔治亚理工学院的研究生研究员安妮·卢(Anni Lu)说,“但对我们来说,我们想利用大的噪声。”

Lu和她的合作者将他们的概率FinFET计算机应用于旅行推销员问题——一个经典的优化问题,试图找到推销员访问给定地图上每个城市的最短路径。他们使用了与Camsari团队类似的量子优化协议。

为了加快计算速度,他们将城市分组,优化销售人员在组间的通勤时间,然后在每个组内独立工作。通过这个技巧,以及他们新颖的硬件实现,他们能够解决150个城市的问题,使用的能源比以前的任何技术都要少500倍。

除了优化问题,工程师们相信概率计算机可能被证明对机器学习有用。Camsari在UCSB的团队还计划探索p位的深度学习算法。例如,强化学习要求“学习者”在探索环境时具有随机性,Lu和她在佐治亚理工学院的合作者正在致力于实现一种概率解决方案。

对话(0)

为什么函数式编程应该是软件开发的未来

这很难学习,但是您的代码将产生更少令人讨厌的意外

11分钟读取
垂直
一盘用代码做成的意大利面
Shira Inbar
DarkBlue1

你期望人生中最长、最昂贵的阶段一个软件产品的周期是系统的初始开发,当所有这些伟大的功能都是第一次想象,然后创建。事实上,最难的部分出现在后面的维护阶段。这时程序员就会为他们在开发过程中走的捷径付出代价。

那么,他们为什么要走捷径呢?也许他们没有意识到自己在偷工减料。只有当他们的代码被大量用户部署和使用时,隐藏的缺陷才会暴露出来。也许开发人员太匆忙了。推向市场的时间压力几乎保证了他们的软件会包含更多的bug。

继续阅读↓ 显示更少
{“imageShortcodeIds”(“31996907”):}
Baidu