應用與模擬
量子近似最佳化演算法(QAOA)
想像你面對一道難解的「最佳排布」謎題,例如把一群人分成兩隊,使得被切斷的朋友關係盡量少。QAOA 是一套配方,讓一台小型量子電腦與一台普通電腦攜手合作,去尋找好的排布方案。量子的部分先把量子位元準備成某個狀態,然後在兩個步驟之間來回推動它:一個步驟獎勵那些在你的謎題上得分高的排布,另一個步驟輕輕攪動量子位元,讓不同的可能性相互混合、相互干涉。你把這一對步驟重複若干次(p 輪),每一輪由幾個可調的角度控制。接著你測量這些量子位元,得到一個候選答案,再用普通電腦檢查它的得分。
下面是誠實的部分。QAOA 並不會「一次性嘗試所有排布」。那些角度真正控制的,是振幅如何相互干涉,從而讓你在測量時,平均而言更常得到好的排布、更少得到差的排布。所以你要執行很多次,並保留你見過的最好結果。一個古典最佳化器會在兩次執行之間調整這些角度,把那個平均水準往上推。它之所以叫「近似」,是因為它追求的是足夠好的答案,而不是保證最佳的答案;而且在輪數很少時,品質是有限的。在當今這些有雜訊的小型機器上,QAOA 是研究得最多的演算法之一,確實很有意思,但到目前為止,還沒有人證明它在某個真實、有用的問題上能勝過強大的古典最佳化求解器。
QAOA 是混合演算法,可以在近期(NISQ)硬體上執行,但目前尚未證明它相對優秀的古典求解器有清晰、實際的加速;對任何「量子最佳化優勢」的說法都應保持健康的懷疑態度。
又稱
另見