重點
- Anthropic STEM Fellows 計畫的 Andi Gu、Anthropic 的 Alek Kemeny,與哈佛的 Susanne Yelin、Mikhail Lukin 在 arXiv 發表論文:用 Claude Mythos 5 在 OpenEvolve 演化搜尋框架裡提出量子電路,由獨立的評估程式檢查正確性並計算資源。
- 八項電路任務中有七項,找到的電路同時用了更少的 Toffoli 閘與更少的量子位元。有既有編譯可比的六項,Toffoli 數乘峰值量子位元數(TQ 成本)降為原本的 1/4.1 到 1/39。
- DQI 最佳化演算法的 Reed–Solomon 解碼器,Toffoli 閘從 510 萬降到 44 萬,TQ 成本約降為 1/12。
- 橢圓曲線點加法裡的模反元素,搜尋找到讓 divsteps 可以可逆執行的新架構。它比空間最省的既有設計多約 12% 量子位元、Toffoli 閘少約 17 倍;跟 Toffoli 最少的既有設計相比,TQ 成本反而較高。
- 點加法那次搜尋跑了 53 小時,人只給了初始說明和偶爾「想廣一點」的提示。研究者也記錄到模型偏保守,需要強制平行發展多條路線。
量子電路為什麼難最佳化
這篇研究處理的是「計算古典函數」的量子電路:輸入 、輸出 。許多量子演算法的主要成本都在這類子程序,例如最佳化用的解碼、模擬用的數值函數、數論用的整數運算。
把古典演算法搬進量子電路有兩個古典程式沒有的限制:
- 不能分支。輸入可能處在疊加態,電路沒辦法看一眼中間值再決定走哪條路。每個分支的閘都得放進固定的閘序列,就算只有少數輸入用得到。
- 必須可逆。中間值不能直接覆寫或丟掉,最後要「反計算」(uncompute)把輔助量子位元還原成 。還原之前,這些值一直占著量子位元。
兩者合起來,就是量子位元與閘數之間的取捨:早點反計算可以省空間,之後要用時得重算;一直保留可以省閘數,但要更多量子位元。
既有的自動化電路最佳化器通常只做「保證等價」的改寫,所以只能在一個固定設計附近微調。量子資源估計過去的大幅下降多半來自整個演算法與資料表示的重新設計。Anthropic 舉的例子是固氮酶活性中心 FeMoco 的基態能量計算:2017 年估計要約 50 兆個 Toffoli 閘,經過多個團隊八年的改良,降到約 3.4 億個。
評估器為什麼做得到
一般量子電路要驗證正確性,可能需要指數級的古典模擬。這篇研究利用了一個性質:允許的閘都把計算基底態映射到另一個計算基底態,最多改變相位,不會產生疊加。
所以評估器只要追蹤一串位元和一個相位,就能模擬候選電路在任一輸入上的行為;依線性,所有基底輸入都對,疊加輸入也就對。資源計算也很直接:
輸入空間太大時,評估器改用抽樣測試。各任務設定了錯誤容忍度,例如 DQI 解碼器允許的失敗機率不超過 ,測 個輸入;數值函數任務測 個輸入。
搜尋怎麼進行
候選電路是一段用通用 Builder 介面建構電路的 Python 程式。函數、迴圈與具名暫存器保留了演算法結構,改一個共用子程序,所有用到它的地方都會跟著變。
流程分成兩段:
- 發想。模型只拿到人寫的任務規格、電路模型與正確性標準,從空白程式開始,提出幾個彼此不同的演算法家族。以 Reed–Solomon 解碼為例,就有擴展歐幾里得、Berlekamp–Massey 與 PGZ 三條路線。
- 演化。每個家族各自平行改良,定期把表現好的程式分享給其他家族。每一輪開一個新的 agent 工作階段,給它任務規格、一個父程式、評估回饋、檔案庫中的幾個替代方案和先前記下的心得。它可以先在測試輸入上跑草稿、向古典預言機查詢正確答案,也可以把子任務交給子代理,最後送出改寫後的程式。
模型看不到完整搜尋歷史,也接觸不到評估器內部,只拿到每次提交後的回饋。無效電路直接被拒絕,有效的依 TQ 成本計分。保留候選時用 MAP-Elites:把 平面切成格子,每格留 TQ 最低的電路,讓省空間但閘數較多的設計也能留下來繼續發展。
三個反覆出現的設計手法
論文從八項任務歸納出三個共同手法:
- 條件路由。分支之間的差別改寫成「哪個值放在哪個位置」,用便宜的受控交換把資料搬到位,再跑一次不受控的昂貴運算。例如兩個受控乘加,改成交換後跑一個乘加,Toffoli 數從 減半。
- 從狀態解碼分支。反計算時需要知道當初走了哪個分支。與其把每次決定存進歷史堆疊,不如從暫存器現有的數值樣式把分支位元推回來。
- 用失敗預算砍掉罕見情況。量子電路要為每條支援的路徑準備閘和輔助位元,所以罕見輸入可能決定整體成本。重新組織計算,把罕見輸入需要的額外資源集中在少數元件,就能拿掉這些元件,讓失敗只發生在低機率輸入上。
八項任務的結果
| 任務 | 基準 | 新電路 | TQ 降幅 |
|---|---|---|---|
| Reed–Solomon DQI 解碼器 | , 1,938 | , 1,837 | 12 倍 |
| Hermitian DQI 解碼器 | , | , 2,395 | 無既有編譯可比 |
| HHL 旋轉角 | , 300 | 1,348, 115 | 32 倍 |
| Coulomb 位能 | 6,355, 252 | 1,140, 142 | 9.9 倍 |
| 定點 Gaussian | , 362 | 1,583, 139 | 39 倍 |
| Fe₂S₂ alias–Select | , 139 | , 126 | 4.1 倍 |
| 非阿貝爾晶格規範模擬 | , 1,927 | , 1,859 | 7.7 倍 |
| 質數體模反元素(點加法) | 見下節 | , 935 | 不報單一倍數 |
Hermitian 解碼器的基準是作者自己做的直接可逆實作,因為文獻中沒有既有的可逆編譯。
案例一:讓 divsteps 可以可逆執行
橢圓曲線點加法是橢圓曲線離散對數量子演算法的核心步驟,大部分成本落在模反元素:給定 與質數 ,求 使 。
古典電腦常用 divsteps 計算模反元素:反覆檢查一對數字,視情況交換、相加、相減或減半。放進量子電路的困難在於每一步選了哪種操作(分支資訊)都得留著,反計算時才能倒著跑,直接實作要存一長串歷史,量子位元用量太大。
搜尋找到的做法是從每一步之後的數對直接推回分支資訊。論文附錄證明每個決定都能由當下暫存器精確算出;Anthropic 說模型先試過幾種簡單規則,在小例子上可行、到 256 位元就失敗,之後轉向推導 divsteps 的代數性質,得出解碼公式,用大規模數值模擬檢查後再用 Lean 形式化。
解碼省空間但花閘數,所以電路設了一個門檻 ,決定哪些分支解碼、哪些直接存。再加上失敗預算:
- 時,只有 12.4% 的模糊決定寫進堆疊。
- 堆疊平均需要 21 個歷史量子位元,最壞 263 個。電路只保留 60 個,溢位機率每次反元素 ,比最壞情況省下 203 個量子位元。
- 最壞情況要 590 步 divsteps,電路排 533 步,從第 499 步才開始測試是否結束,範圍外的輸入允許失敗。
點加法的資源比較(論文表 S3):
| 設計 | 反元素策略 | Toffoli | 量子位元 | TQ |
|---|---|---|---|---|
| Schrottenloher | 二進位 gcd 加 dialog 技巧 | 1,446 | ||
| 新電路(divsteps) | divsteps 加解碼 | 935 | ||
| Luo 等人 | 緊縮歐幾里得 | 838 | ||
| 新電路(特化歐幾里得) | 針對 特化排程 | 843 |
divsteps 電路落在兩個既有設計之間,擴大了量子位元與閘數的可選組合。另一個電路從作者重建的 Luo 等人設計出發,針對特定質數重排步驟,Toffoli 從 6,950 萬降到 2,050 萬(3.4 倍),多用 5 個量子位元。整個點加法的失敗機率上限約 。
案例二:DQI 的 Reed–Solomon 解碼器
解碼量子干涉(DQI)把某些最佳化問題轉成古典糾錯碼的解碼問題。代表應用是有限體上的多項式擬合 OPI,DQI 在這個問題上比已知古典演算法有超多項式加速。解碼要在疊加輸入上可逆執行,是 DQI 的主要成本。依 Google Quantum AI 的估計,某個 OPI 實例在超級電腦 Frontier 上要約三個月,未來的量子電腦跑 DQI 約一小時,其中大部分時間花在解碼。
研究沿用 Google 團隊 Khattar 等人的主要實例:70 個症狀值(syndrome),最多 35 個錯誤。既有電路用擴展歐幾里得演算法,步數與順序隨輸入而變,量子電路只好排足最壞情況的輪數、每輪都跑完所有操作。
搜尋改用 Berlekamp–Massey(BM):每輪做同一種步驟、輪數固定,更適合固定閘序列。
- 求錯誤定位多項式這一步,歐幾里得版約 190 萬個 Toffoli,BM 約 14 萬,但直接可逆實作要存整串多項式歷史。
- 定位多項式只需要到差一個非零倍數為止,根不變。電路把「替換」分支改成重新縮放的形式,兩個分支共用同一條運算路徑,被覆寫的模板多項式就不必存。
- 被覆寫的舊差值可以從更新後多項式的常數項算回來。只剩「保留」分支每次要存一個 19 位元的差值,最壞 35 筆、665 個量子位元。在 DQI 的輸入分布下,需要第二筆的機率是 ,所以電路只留一筆空間,19 個量子位元。Anthropic 說模型為此寫了模擬器,跑了 4.03 億次抽樣解碼來量這個頻率。
整體 Toffoli 從 降到 ,量子位元從 1,938 降到 1,837。
跟既有做法比新在哪
- 過去的自動化方法把候選表示成閘序列或預先定義的電路區塊,或只做保證等價的改寫。這裡的候選是程式,一個概念上的改變可以重組整個電路,正確性交給評估器把關。
- 改進發生在演算法層級:把擴展歐幾里得換成 BM,或讓過去被認為不適合可逆計算的 divsteps 變得可用,並推導出支撐它的數學性質。
- 速度上,Anthropic 拿 FeMoco 估計的八年改良對照點加法的單次 53 小時執行。
限制
- 成本指標是簡化的。TQ 把空間與時間等權相乘。論文指出量子位元稀缺時,成本形式可能更接近 ,因數分解的資源估計用過 介於 1 到 3;魔術態工廠足夠多時,限制執行時間的會變成 Toffoli 深度。
- 正確性多半靠抽樣。大輸入空間的任務是在失敗預算內抽樣測試,給的是統計上的保證。divsteps 的分支解碼另有證明。
- 基準的選擇。有自由參數的基準,作者會調到 TQ 最低再比較;Luo 等人的設計是作者重建的版本;Hermitian 解碼器比的是作者的直接實作。Fe₂S₂ 任務研究的是直接列出 Pauli 項的稀疏編譯,最先進的化學資源估計用的雙重分解張量超收縮(DFTHC)超出評估器能驗證的範圍,沒有納入。
- 只算邏輯層級的電路。容錯量子電腦還需要糾錯碼、即時解碼器與硬體控制,這些都不在比較範圍內。Anthropic 認為這些元件也有「寫成程式、可驗證、可計分」的特性,未來可能一起最佳化,但目前還沒做。
- 模型偏保守。早期實驗中模型會反覆懷疑已經成立的改進,傾向沿用知名做法。研究者用兩種方式介入:要求同時發展幾條性質不同的路線,以及偶爾提示擴大搜尋。任務規格也都是人寫的。