Квантовые вычисления
Квантовые схемы
2019 год. Google объявляет о квантовом превосходстве: их процессор Sycamore за 200 секунд решил задачу, которая заняла бы классическому суперкомпьютеру 10 000 лет. Ключ - правильно построенная квантовая схема из 53 кубитов и 1113 гейтов.
- **IBM Quantum:** более 20 квантовых процессоров доступны в облаке. Алгоритмы записываются в виде схем через Qiskit и запускаются на реальном железе
- **VQE (Variational Quantum Eigensolver):** hybrid алгоритм для квантовой химии - моделирует молекулы для разработки лекарств и материалов
- **QAOA (Quantum Approximate Optimization Algorithm):** квантовые схемы для задач оптимизации - маршрутизация, расписания, portfolio optimization
Исторический контекст
В 1994 году Питер Шор опубликовал алгоритм факторизации больших чисел, работающий за полиномиальное время на квантовом компьютере - против экспоненциального на классическом. Это означало теоретический взлом RSA-шифрования. Алгоритм Шора использует квантовое преобразование Фурье (QFT) - квантовую схему, выполняющую DFT за O(n²) гейтов вместо O(2ⁿ) классических операций. Результат вызвал волну инвестиций в квантовые вычисления и до сих пор остаётся главным мотиватором разработки квантовых компьютеров.
Модель схем: гейты как операции над кубитами
**IBM, 2016. Квантовый компьютер IBM Q Experience стал первым публично доступным квантовым процессором в облаке. Первая задача пользователей - как вообще записать программу для машины, где нет if-else и переменных?** Ответ: квантовая схема (quantum circuit) - последовательность гейтов, применяемых к кубитам в определённом порядке.
**Квантовый гейт** - унитарная матрица U (U†U = I), действующая на один или несколько кубитов. Однокубитные: X (NOT), H (Hadamard), Z (фазовый переворот), S, T. Двухкубитные: CNOT, CZ, SWAP. В отличие от классических логических гейтов - все квантовые гейты обратимы.
| Гейт | Матрица | Действие на |0> | Действие на |1> |
|---|---|---|---|
| X (NOT) | [[0,1],[1,0]] | |1> | |0> |
| H (Hadamard) | [[1,1],[1,-1]]/√2 | (|0>+|1>)/√2 | (|0>-|1>)/√2 |
| Z | [[1,0],[0,-1]] | |0> | -|1> |
| CNOT | 4x4 матрица | flip target если control=|1> | - |
Квантовый гейт X применяется к состоянию |0>. Затем H применяется к результату. Какое конечное состояние?
Измерение: коллапс суперпозиции
Измерение - самая необычная операция в квантовой механике. Кубит в состоянии α|0> + β|1> при измерении коллапсирует в |0> с вероятностью |α|² или в |1> с вероятностью |β|². После измерения суперпозиция разрушена - кубит теперь классический бит. Это необратимо. Квантовый алгоритм строится так, чтобы нужный ответ имел вероятность близкую к 1.
**No-Cloning Theorem:** невозможно скопировать произвольное квантовое состояние. Нельзя сделать backup кубита до измерения. Это следствие унитарности: если CNOT можно было бы использовать для копирования, получалось бы квантовое broadcast - противоречие с теорией информации.
Кубит находится в состоянии (3/5)|0> + (4/5)|1>. Какова вероятность измерить |1>?
Классическое и квантовое управление
Реальные квантовые алгоритмы сочетают квантовые вычисления с классическими. Схема: подготовка состояния (квантовая) → вычисление → измерение → классическая постобработка → возможно новый квантовый шаг. Это hybrid quantum-classical вычисления - стандарт для NISQ (Noisy Intermediate-Scale Quantum) устройств 2020-х годов.
**Classically controlled gates:** после измерения одного кубита результат (классический бит) используется для управления операцией над другим кубитом. Это ключевой элемент квантовой телепортации и error correction. В Qiskit: `qc.x(1).c_if(classical_register, 1)` - применить X если измерение дало 1.
В hybrid VQE алгоритме квантовый компьютер запускается тысячи раз. Что делает классический компьютер между запусками?
Глубина схемы и деколеренция
**Глубина схемы (circuit depth)** - критический параметр для реальных квантовых компьютеров. Кубиты теряют квантовые свойства (деколеренция) за время T2 - обычно 100-1000 мкс для сверхпроводниковых кубитов. Каждый гейт занимает 10-100 нс. Значит максимальная глубина схемы - несколько сотен гейтов до того, как ошибки накопятся и испортят результат.
| Архитектура | T2 (когерентность) | Время гейта | Макс. глубина |
|---|---|---|---|
| Сверхпроводники (IBM, Google) | 100-1000 мкс | 10-50 нс | ~1000 |
| Trapped ions (IonQ, Quantinuum) | секунды - минуты | 1-10 мкс | ~10 000 |
| Фотоника | очень долго (фотоны) | пикосекунды | ограничена потерями |
| Нейтральные атомы | секунды | 1-10 мкс | ~10 000 |
Квантовый компьютер параллельно перебирает все варианты и мгновенно находит ответ
Квантовый компьютер создаёт суперпозицию, применяет интерференцию чтобы усилить правильный ответ, измеряет и получает одно случайное значение. Алгоритм запускается тысячи раз.
Измерение коллапсирует суперпозицию в один из вариантов. Квантовое ускорение достигается через конструктивную интерференцию (нужные ответы усиливаются) и деструктивную (ненужные подавляются). Без умного алгоритма квантовый компьютер не лучше монетки.
Схема глубиной 500 гейтов работает на сверхпроводниковом квантовом компьютере с временем когерентности T2=200 мкс и временем гейта=50 нс. Будет ли результат корректным?
Квантовые схемы: главное
- Квантовая схема - последовательность унитарных гейтов (X, H, CNOT и др.) над кубитами, завершающаяся измерением
- Измерение коллапсирует суперпозицию α|0>+β|1> в |0> с вероятностью |α|² или |1> с вероятностью |β|²
- Глубина схемы ограничена временем когерентности T2 - каждый гейт добавляет ~50 нс на сверхпроводниках
- Hybrid алгоритмы (VQE, QAOA) чередуют квантовые вычисления с классической оптимизацией
- No-cloning: квантовое состояние нельзя скопировать - это фундаментальное ограничение, не технический недостаток
Вопросы для размышления
- Алгоритм Гровера ускоряет поиск в неструктурированной базе в sqrt(N) раз. Как думаете - если запустить алгоритм один раз, он гарантированно найдёт правильный элемент? Что нужно изменить в схеме чтобы получить ответ с высокой вероятностью?