Q Sharp-量子计算导论

简介:

Q Sharp-量子计算导论

介绍

关于量子计算有很多关于微软的话题,微软已经正式宣布了昆腾开发套件和量子计算语言Q#。在本文中,我将介绍Quantum Computing的一些基础知识,并在Visual Studio 2017的本地计算机上设置一个环境,以开始使用Quantum编程。

什么是量子理论?

量子理论是物理学的一个分支,它处理原子和它们内部较小(亚原子)的粒子的世界。物理定律在原子水平上是不同的,我们在日常生活中可以观察到的古典物理定律在这里不适用。

经典电脑的限制

古典电脑(我们日常生活中使用的机器,包括笔记本电脑,台式电脑,服务器等)让我们的生活变得非常简单快捷。在上个世纪,随着计算机的出现,我们已经取得了很多的成就,世界已经完全改变了。但是古典电脑也有一些限制。

一台经典的计算机使用晶体管来形成逻辑开关,它们允许电流通过(开启)或限制电流(开关关闭)。随着时间的推移,晶体管的尺寸变得非常小,这使得我们可以将数百万个晶体管安装到一个小芯片上,从而产生计算能力增强的小型便携式计算机(例如 - 智能手机),但是我们正在接近制造物理极限晶体管更小。今天,晶体管已经达到了1纳米的大小。在一个原子范围(小于1纳米),电子行为怪异,不遵循通常适用于较大物体的物理原理。在原子尺度上,电子显示量子隧穿效应,也就是说,它有时像波浪一样,通过闭合的逻辑开关,从而使逻辑开关的存在无效。由于我们不能在这么小的尺寸下拥有完美的晶体管开关,所以我们已经达到了我们可以在一个小区域内安装多少个晶体管的最终限制,保持晶体管的大小足以避免量子隧道效应。这又反过来阻碍了我们提高计算机的计算能力。

在计算方面有很多问题成倍增长,而且由于传统计算机的局限性,解决这些问题还需要几年的时间。所以,我们需要寻找更有效的方法来解决这些问题。答案在于量子计算机。

什么是量子计算机?

量子计算机是建立在量子力学原理基础上的机器,它采用了新的方法来处理信息,从而使它们超强大。量子计算机使用Qubits来处理信息。

什么是Qubit?

经典计算机中处理信息的基本单位是一个可以保存二进制值('0'或'1')的位。与量子计算机中的位相似的是Qubit(“量子比特”的缩写)。量子比特具有特殊的属性,可以帮助他们比传统比特更快地解决复杂的问题。其中一个属性是叠加,它表示不像一个经典比特那样保持一个二进制值(“0”或“1”),而是一个比特可以同时保存“0”和“1”的组合。当多个量子比特连贯地相互作用时,与经典甚至最快的非量子体系相比,他们可以在一小部分时间内探索多种选择和处理信息。

Q Sharp-量子计算导论

图: - 表示一个Qubit(图片来源: - 维基百科)

实际上,量子位必须被原子,离子,甚至更小的东西如电子和光子所储存。

什么是叠加原理?

叠加本质上是一个量子系统同时处于多个状态的能力 - 也就是说,某个东西可以同时在“这里”,“在那里”或“上”和“下”。这种行为只能在原子级别观察到。

一个Qubit可以存在于零和一的叠加中,也就是说它可以存储一个零,一个,两个,零和一个,或者在它们之间存储无限数量的值。他们还可以通过与其他Qubit进行交互来创建0和1的复杂叠加。n个 Qubits 可能的叠加总数是2 n。

什么是纠缠?

纠缠是量子粒子之间非常强烈的相关性,事实上,两个或多个量子粒子之间的联系非常紧密,即使相距很远,它们也能够完美地协调一致。这意味着每个粒子的量子态不能独立描述。这些粒子如此固有地连接起来,即使放置在宇宙的两端,它们也可以被瞬间“完美”地“跳舞”。

纠缠的Q比特状态不能彼此独立描述。这意味着如果我们测量一个Qubit,那么我们也得到一些关于如果我们测量另一个Qubit会发生什么的信息。

叠加和纠缠是量子计算的两个基本原则

什么是拓扑qubits?

Qubits听起来很有趣,但是它们非常不稳定,即使系统中有一点点的干扰也会引起整个操作。所以,微软正在努力创造一个更稳定的Qubit,称为拓扑Qubit。与其他Qubit相比,它可以以更稳定的形式存储信息。拓扑Qubit将允许量子计算机以更高的速度扩展,并允许我们建立一个足够大而稳定的量子计算机来解决我们最具挑战性的问题。

量子计算机比普通计算机更好

我们应该牢记的一个重点是量子计算机不是古典计算机的替代品。与传统计算机相比,量子计算机能够以极快的速度解决问题很少。其中一个问题就是大数分解

如果m = p * q,使得p和q是素数,那么给定m的值,找出p和q的值。

另一类问题是传统的计算机无法提供准确的输出,例如在化合物如单氟化钙(CaF)和双原子钠(Na 2)上发现键长。

如何在本地机器上设置Quantum Computing开发环境

先决条件: - 您需要在64位Windows机器上安装Visual Studio 2017。它不适用于Windows或较低版本的Visual Studio的32位安装。

您也可以从本地机器开始从事Quantum计算。微软已经推出了Quantum Development Kit,你可以从这里下载。

一旦你点击“下载”,一个文件“ QsharpVSIX.vsix ”将被下载。您只需要像安装任何其他程序一样安装它,并将开发工具包集成到Visual Studio 2017中。您需要重新启动Visual Studio才能使更改生效。

现在打开VS 2017并导航到文件>>新建>>项目

它会打开一个对话框。从左侧菜单中选择Visual C#,然后从安装的模板中选择“ Q#Application ”。为您的项目命名,然后单击确定。

Q Sharp-量子计算导论

在解决方案资源管理器中,您可以看到如下的文件结构。

Q Sharp-量子计算导论

在这里, Operation.qs是包含Q#代码的文件,Driver.cs是我们常用的 C#代码文件。这是因为Quantum电脑就像一个代码处理器。我们将从C#文件中的main方法调用Q#文件的代码。我们可以在这个解决方案文件中编写和模拟Quantum程序,我将在下一篇文章中介绍。

模拟量子计算会给系统硬件带来很多负担。所以建议使用具有高内存(8 GB或更高)的系统。您还可以使用云中托管的Azure Quantum Simulator,可以用来模拟大量的Qubits。

量子计算机面临的挑战是什么?

目前,我们有量子计算机有能力操纵少于20个Qubits。谷歌,IBM和微软正在努力创建一个大规模的昆腾计算机。IBM甚至还宣布了50个Qubits Quantum计算机的原型。另一个挑战是随着Qubits数量的增加使系统稳定。

量子计算机领域广泛,包括量子物理,超导体,纳米技术等概念。其中每一个领域本身都是一个复杂的领域,正在得到充分发展,所以建立一个遵循这些领域原则的物理系统是一个真正的挑战。

至少需要10年甚至更长时间,直到我们有一台量子计算机足够大和稳定,足以解决我们大部分具有挑战性的问题。

结论

量子计算机的潜力是巨大的,我们可以实现很多被认为几乎不可能与传统计算机。我们可以合成新药,开发新的催化剂,加速人工智能的发展。在本文中,我介绍了量子计算机的一些基础知识。请在评论部分发表您的宝贵意见。


原文发布时间为:2017-12-18
本文作者:程序狼
本文来源:今日头条,如需转载请联系原作者。

目录
相关文章
|
6天前
|
存储 程序员 量子技术
未来编程:量子计算与量子编程语言的崛起
【4月更文挑战第18天】 在经典计算机科学领域,编程已成为现代文明不可或缺的组成部分。然而,随着量子计算的发展,我们即将迈入一个全新的编程纪元。量子计算机利用量子位(qubits)代替传统的二进制比特(bits),从而能够同时处理大量计算路径,为解决复杂问题提供前所未有的速度。本文将探讨量子计算对编程领域的革新影响,以及量子编程语言如何成为连接经典与量子世界的桥梁。
|
7月前
|
自动驾驶 机器人 流计算
什么是计算机领域的实时系统
什么是计算机领域的实时系统
51 0
|
11月前
|
机器学习/深度学习 算法 量子技术
针对量子多体问题且可证明的高效机器学习,登上Science
针对量子多体问题且可证明的高效机器学习,登上Science
|
11月前
|
算法 TensorFlow 定位技术
量子程序设计基础 | 量子计算简史
量子革命和量子计算发展简史。
125 0
量子程序设计基础 | 量子计算简史
|
12月前
|
存储 算法 量子技术
量子计算入门:量子计算机的理解与术语科普(一)
量子计算入门:量子计算机的理解与术语科普
209 0
|
12月前
|
存储 量子技术
量子计算入门:量子计算机的理解与术语科普(二)
量子计算入门:量子计算机的理解与术语科普
189 0
|
12月前
|
存储 机器学习/深度学习 算法
量子计算进阶:量子计算机的组建和量子计算原理(包含相关论文推荐60篇)上
量子计算进阶:量子计算机的组建和量子计算原理(包含相关论文推荐60篇)
145 0
|
12月前
|
机器学习/深度学习 人工智能 算法
量子计算进阶:量子计算机的组建和量子计算原理(包含相关论文推荐60篇)下
量子计算进阶:量子计算机的组建和量子计算原理(包含相关论文推荐60篇)
70 0
|
搜索推荐 量子技术 数据安全/隐私保护
【量子计算机编程】(一)量子计算机简介+QPU编程初体验
什么是量子计算? 量子计算机的前景在于:在现有的一些标准设备上完成不了的重要计算,有望借助量子世界的特点来完成,也即,它能极大扩展计算机处理的问题种类。
1259 0
|
弹性计算 算法 安全
量子编程迎重大突破!量子计算机领域第一种高级编程语言Silq诞生
迄今为止,对于我们很多大众而言,量子计算机依然神秘依然高大上依然可望而不可即。而对于业内人士而言,量子计算机和量子技术的研究已经不是一天两天了,科学家们的研究不亦乐乎,成果进展也可喜。比如,编程语言领域就迎来了一个重要的突破:第一种高级编程语言 Silq问世。之所以说它是第一种高级编程语言,就是因为这个编程语言是量子计算机领域的,不是目前的在很低的抽象级别工作的编程语言,也不是我们普通认识学习的编程语言。

热门文章

最新文章