計算機專業的學生該怎樣自學量子力學?

我是計算機專業的學生。我想以後量子計算會有非常多的應用,但學校只有普通物理這一門課涉及量子物理。所以想自學量子物理。請問我該如何學習?學習路線是怎樣的?有什麼推薦的書或者教程嗎?


正在上量子力學的CS狗來答一發.

不過如果題主的 motivation 是量子計算的話, 那麼量子力學的意義可能沒有題主想像中那麼大. 下面我給出一些關於學習了解量子計算的個人看法, 涉及到了量子力學, 但絕不是最重要的部分.

1. 物理系本科的量子力學大概對於量子計算並沒有什麼直接用處, 提供一些感性認識而已, 沒人真會讓你解合流超幾何方程(當然你要想算起碼數理方法要學的過得去)...況且我的感覺是量子力學課上不少例子其實都是化學裡面的(來來來咱們算個氫原子, 哦? 估計基態能級還不夠, 好, 來算個第一激發態的!) 當然第一學期的課去聽下有些感性認識也不錯, 如果悟性非凡的話可以自己試試看對應到高量那堆東西上去. 在量子計算/量子信息用的比較多的, 應該是大多數學校給一年級研究生開的高等量子力學(對應的教材應該是 Sakurai), 有精力的話可以去聽聽.

2. 量子計算是個很大的領域, 即使是 CS 相關的那些下屬方向也有很大的差別. 我試著給一些書:

  • 講的比較啰嗦的入門書大概有Mermin的 Quantum Computer Science;
  • 從量子計算複雜性入手的書有Scott Aaronson 的 Quantum Computing since Democritus, 不同的時候看體驗可能不一樣(此書最早是其在 Waterloo 做 postphd 時給學過基本的量子計算和量子演算法的學生開的課的講義, 嗯看著真像 Richard Feynman 的講義...);
  • 當然也有簡明扼要但是比較數學的(尤其是量子資訊理論的那本), 比如 John Watrous 的講義;

  • 國外靠譜學校課呈講義其實也可以一看, 比如 Umesh Vazirani 老爺子在 edX 上的那門課;
  • 大家一般都會推薦的 Michael Nielson 的大辭典 Quantum Computation and Quantum Information, 有些結果已經不是新的了.
  • 講的比較艱深的大概有 Alexei Kitaev et al 的 Classical and Quantum Computation, 不少地方的處理都直接體現了作者和合作者的智商, 包括但不限於直接把計算複雜性的東西串起來講(當你看到一個看似冗餘的定義的時候, 一般情況下這是另一個地方的重要概念); 直接用 Hidden Subgroup Problem 框架來講 Simon 演算法和 Shor 演算法, 處理非常數學化.

BTW, 我目前見到的最全面的材料推薦應該是伍驍迪老師 homepage 上的CIS 410/510 Introduction to Quantum Information Theory: Reference.

3. 如果題主啃掉了入門書的主要內容的話, 那麼應該掌握了主要的量子演算法的細節(如 Shor 演算法和 Grover 演算法). 但是這些遠遠不夠, 量子演算法/量子計算複雜性背後的數學背景其實很深:

  • Hidden Subgroup Problem 基於 Quantum Fourier Transform 的做法有群表示論背景(所以只有 Abel 群能很好的解決);
  • 對於量子計算複雜性類, 這幾年內最著名的工作是2010年證出來的QIP=PSPACE, 大量的涉及了量子糾纏. 互動式證明系統相關的還有 Quantum Game, 涉及多個 Merlin 的互動式證明系統.
  • 對於量子門具體實現的優化, 不少都用了代數數論的結果來估計 bound.

所以如果想更進一步的話, 量子資訊理論和必要的數學工具(如群表示論)是必不可少的. 另外如果題主想了解一下布線方面的工作的話, 學點函數式編程也是必要的.

4. 如果想關注前沿的話, Youtube 上有不少高質量的資源. 比如 Oxford 和 Waterloo 都放出了不少 Workshop 的視頻, 不同層次的都有. 另外 Youtube 上還有今年 QIP(應該算量子信息的頂會之一了吧) 的 Talk 的視頻. 此外, Berkeley Simon Institute 的講座(Simons Institute for the Theory of Computing)也都是前沿內容, 絕大多數 Talk 都是第一線學者. 現在找到資源並不算困難.


想學量子力學,最重要的要求是精通線性代數。


量子力學是一門很重的課。

學分很重,load更重。

量子物理則是比量子力學更繁複細緻的領域。

我明白題主想學量子力學是因為量子計算在計算機科學的應用,但這個應用目前的確尚需時日,不學也沒關係。

如果你一定向學量子計算的話,那麼一般來說你需要接觸的物理課是1)量子力學 2)量子計算(和量子信息)

然後,《高等量子力學》不用碰,那就是個時間黑洞。

1)量子力學

推薦Stanford Online,最近很喜歡Stanford的課,課程質量幾乎從未讓我失望。

Quantum Mechanics for Scientists and Engineers

工學院開的量子力學課。

雖然理論上來講,Sakurai的《Modern Quantum Mechanics》是UCBerkeley研究生教材。但是實際上,在幾個top的物理系,Sakurai的教材是本科生必備的。

大多數量子力學教材和全部國內量子力學教材都是從薛定諤方程出發的。經典思維和量子概念夾雜在一起出現。這些教材還是從粒子和波的模型開始,量子力學的體系就還是建立在經典模型上的。

只有Sakurai是從量子態開始,完全的量子力學體系。

Everything is a state vector.

有興趣的話也可以看Sakurai的書。但是對非物理系學生負擔大概有些重。

2)量子計算

有了量子力學的基礎,再學量子計算。

@Climber.pi推薦的書單不錯。

如果有課的話,最好選學校的課或者名校在線課程。

暫且如此。


題主可以自己去Google學術上找一篇論文,大致是講一個搞計算機或者數學的人如果想研究量子演算法,那他對量子力學應該至少需要了解什麼。這個文章是我剛到潘建偉老師組裡的時候大師兄讓我看的。

From Cbits to Qbits: Teaching computer scientists quantum mechanics

N. David Mermin


《量子力學概論》Griffiths 邊看邊做題,結合視頻 http://www.icourses.cn/jpk/viewCharacterDetail.action?courseId=2465characId=10778


不打擊題主。

主要是我也沒有打擊的本錢——我也不懂量子力學。

如果只是為了懂量子計算而學的話。

如果你只是想了解量子計算,甚至是想了解量子演算法、量子通信、量子糾錯碼等等,而不是想要了解具體怎麼用各種材料比如超導材料去實現量子計算機的話。

推薦一篇綜述性的論文:

An Introduction to Quantum Computing for Non-Physicists

http://arxiv.org/abs/quant-ph/9809016

作者是NASA的一個科學家

QuAIL Bio for Eleanor G. Rieffel

這篇paper用qubit抽象了量子計算的底層之後,餘下的東西對一個計算機專業的人來說都很好懂的。

反正我(為了做課程project調研)把這篇論文通讀一遍後,自以為了解量子計算是在幹嗎、量子演算法是在幹嘛、量子糾錯、量子通信是在幹嘛了。

看完後的想法:量子計算機就是一個用n核的cpu能同時並行(不是並發)跑2^n個線程,但是最後能且只能按照一定分布隨機地讀取一個線程的結果的計算機……

所以不妨先把這篇paper讀一篇。然後再去學細節上的物理知識。

去NASA的網頁上看了下,剛剛提到的那位女科學家,還寫了一本書:Quantum Computing: A Gentle Introduction

Quantum Computing

書的介紹上是這樣說的:

The combination of two of the twentieth century』s most influential and revolutionary scientific theories, information theory and quantum mechanics, gave rise to a radically new view of computing and information. Quantum information processing explores the implications of using quantum mechanics instead of classical mechanics to model information and its processing. Quantum computing is not about changing the physical substrate on which computation is done from classical to quantum but about changing the notion of computation itself, at the most basic level. The fundamental unit of computation is no longer the bit but the quantum bit or qubit. This comprehensive introduction to the field offers a thorough exposition of quantum computing and the underlying concepts of quantum physics, explaining all the relevant mathematics and offering numerous examples. With its careful development of concepts and thorough explanations, the book makes quantum computing accessible to students and professionals in mathematics, computer science, and engineering. A reader with no prior knowledge of quantum physics (but with sufficient knowledge of linear algebra) will be able to gain a fluent understanding by working through the book.

至少作者自認為看懂這本書不需要量子物理學知識(但是要懂線性代數)。這本書我沒看過,但是作者的那篇overview的paper的文筆之好,讓我相信她不是在吹牛。


挺有志向的


分析力學掌握了基本概念,

數學物理方程會一些基本的,

學量子力學。 推薦顧樵的量子力學I


「不自量力」——不要自學量子力學。


這個和什麼學科沒有什麼關係吧,學量子力學不要太功利,不要試圖去理解,把它當作玄幻小說來看就好了。


學phys dual cs就好了


我本科學校對計算機專業本科生開設了兩門量子計算,上完第一門才能上第二門,而上第一門的要求是你上過線性代數。

上第一門科的時候,教授是加拿大IQC的Co-founder,學生基本以計算機系與物理係為主,並不會因為對量子力學方面背景了解的多少而產生太大區別。

推薦先了解或學習下 Introduction to Quantum Computation 之後根據需要去補齊量子力學或線性代數方向的相關內容。

這是關於IQC的鏈接:https://uwaterloo.ca/institute-for-quantum-computing/


線性代數!線性代數!線性代數!

本科量子力學靠老師高抬貴手混到了及格,比起我本科里其他的物理課程這是最差的成績。

就我的失敗案例給出一點建議,線性代數先要準備好。當我開始上量子力學課程的時候,線性代數課已經過去了4個學期,忘光了。在面對大量的矩陣運算時,事實而非的線性代數知識給我帶來巨大的困擾,有時候我能跟上看懂公式推導,有時候完全不能,即使結論對了,我自己都不知道過程究竟是不是對的。

另外,在量子力學之前,我已經上過了分析力學、熱力學、電動力學、數學物理方法這些課程,對高數知識在物理方面的應用的關卡算是過了,對我而言量子力學給我的噩夢統統集中在線性代數那裡。所以如果你在高數方面遇到瓶頸,可以在分析力學、數理方法這些方面找找突破。

我只能把入門時的一點教訓說出來,至於再深入的層次,我沒有走到,就不亂講了。


錢伯初的量子力學,櫻井的高量,以及量子計算。尼爾森的量子計算對自學者不友好的,推導步驟很多省略,當然你如果只想大概了解下的話還是可以看下的。量子力學開始學的話會很難理解,不過你多看幾遍接受了這種表述方式也就好了


量子理論:Feynman lectures on physics vol.3。不需要什麼基礎,內容也相當豐富。

看完之後,如果想用最小的代價了解量子計算機的現狀,請看Spin Dynamics: Basics of Nuclear Magnetic Resonance 以及NMR Quantum Computing相關的paper,然後就能意識到量子計算機的實現遙遙無期了。


線性代數,數學物理方法,然後其實不怎麼需要其他物理知識(當然要懂正則量子化需要看哈密頓力學)我不曉得你們具體要學什麼部分的內容,但基本原理總是要懂的,也不是特別困難。


學過基礎量子力學,一點量信,一點高量。。。感覺最好還是像前面一位答主所說,精通線性代數(這當然不難,無非比課內學的線代多學一些內容做數學基礎就差不多了),當然並不是不精通就不會,而你的線代學的比較好的話你可以很輕鬆的用狄拉克符號/矩陣力學來學,就繞開波函數那一大堆冗長的表達式和蛋疼無比的推導過程了。(雖然用波函數學對於習慣了經典物理思維的人是不錯的選擇。)再加上實際量子信息和量子計算感覺也是矩陣用的多,沒怎麼見過用波函數的


來自古人的建議-------

古人曰: 不自量力,不要自學量力學啊!


不要學,作為純工科學生,都不想說了!如果以後不準備從事這方面的工作,學習這門科學就完全沒有必要了,而且也很耗費精氣神,就算是簡單了解一下,也需要很好的物理的基礎知識!聽著是很高大上,但裝逼是要付出代價的!好嘛!我TM寫了十幾張作業,都不知道自己寫了些什麼玩意兒。抄作業更痛苦啊,簡直都不知道世界能有多黑暗了!綜合來看,性價比極其低!還不如多看幾個愛情動作片,學習幾個新姿勢,以備不時之需!有需要的同學,@我,或者評論給我,可以補圖。


不自量力的意思就是讓你不要自以為是的學量子力學。


推薦閱讀:

你做實驗的時候會用到哪些「神器」,可以視頻展示實驗過程嗎?
學編譯原理有什麼好書?
如何理解C++中「引用作為函數的返回值」概念?
計算機系的高數,離散,線代都是用在哪些方面的?
「計算」會改變信息量么?

TAG:物理學 | 量子 | 量子物理 | 計算機科學 | 量子計算理論 |