19 августа в хранилище препринтов научных работ Arxiv.org была отправлена работа "Demonstration of quantum volume 64 on a superconducting quantum computing system". В этой работе демонстрируется достижение "квантового объема" (далее я буду употреблять quantum volume или просто QV, т.к. я не уверен до конца, что этот термин переводим на русский) на сверхпроводниковом квантовом компьютере ibmq montreal, разработанном компанией IBM. Что интересно — улучшение достигнуто не за счет прямого увеличения числа кубитов, а за счет улучшения компилятора Qiskit, улучшения двух-кубитных гейтов и реализции новых схем чтения. В этой статье я постарался кратко обозначить основные разделы оригинальной работы, выложенной в ArXiv. И дальнейшее изложение следует разделам этой работы.
Что такое Quantum volume?
Это метрика, оценивающая общую производительность квантовых компьютеров в противовес простому числу кубитов. Quantum volume включает в себя, помимо числа кубитов, также производительность гейтов, компилятора, а также долю ошибок. Можно привести аналогию с классическими процессорами, где тактовая частота в чистом виде уже давно не играет ключевой роли, а важны также размеры кешей, поддерживаемые инструкции и т.д. Предыдущим опубликованным (в виде препринта или научной работы) рекордом было QV32, а также было заявление компании Honeywell о том, что они достигли QV64, но без публикации и деталей.
Улучшения компилятора
В работе авторы пишут о следующих улучшениях компилятора Qiskit:
- Новый алгоритм размещения и связи кубитов, основанный на формулировании задачи как задачи двоичного целочисленного программирования, который превосходит предыдущие state-of-the-art алгоритмы
- Pulse-efficient SU(4) decomposition — новая реализация, позволяющая уменьшить необходимое число и длительность пульсов
«Динамическое расцепление» (dynamic decoupling)
Dynamic decoupling — это обсуждавшаяся ранее (1, 2, 3) техника, которая позволяет более эффективно использовать кубиты параллельно, значительно повышая эффективность.
Прямая реализация CX-гейта
CX-гейт (что это за гейт можно посмотреть в Википедии) очень важен в квантовых алгоритмах, и улучшение его реализации позволит значительно повысить производительность (в том числе в сравнении с временем релаксации). В работе описывается новая схема управляющих сигналов, позволяющая улучшить работу этого гейта и снизить долю ошибок.
Инициализация состояний и чтение
Дополнительного улучшения удалось достигнуть за счет улучшения процедуры чтения состояний за счет реализации Excited State Promotion (ESP).
Заключение
От себя могу добавить следующее. Важность этой работы скорее в том, чтобы показать, что помимо простого наращивания числа кубитов или улучшения физической реализации, важно также улучшать программную составляющую — компиляторы и алгоритмы для квантовых компьютеров.
RepinTech
Я вот не очень понимаю. Квантовый компьютер ведь не компьютер? Он не вычисляет. Часть кубитов в одном состоянии, часть в другом. Или я что-то путаю?
Shkaff
Наверное, что-то путаете. Квантовый компьютер вполне себе вычисляет. Например, на входе — число, на выходе — его простые множители. В целом его по идее можно запрограммировать и в варкрафт играть, только будет очень неэффективно.
RepinTech
Я, возможно, опять чего-то не понимаю, но приведенный пример разложения числа 15 на множители 3 и 5 не пример, а обычное «научное пыль-в-глаза» — вот если у нас будет компьютер с тысячами кубитов (который стоит 100500 ярдов денег, дайте их уже нам поскорее, желательно мелкими купюрами) то мы всё взломаем. :)
Там прямо написано — «Алгоритм Шора имеет вероятностный характер. Первый источник случайности встроен в классическое вероятностное сведе?ние разложения на множители к нахождению периода некоторой функции. Второй источник появляется из необходимости наблюдения квантовой памяти, которое также даёт случайные результаты».
То если либо встретишь динозавра, либо нет. Также указано, что нужен обычный компьютер для получения результата.
Пока это не очень убедительно.
Shkaff
Квантовый компьютер выдает случайные результаты, потому что так работает квантовая механика. Но вероятность правильного достаточно велика, и всегда можно повторять вычисление для уточнения. Квантовый компьютер работает гораздо быстрее классического даже с учетом вероятности. Это было продемонстрировано гуглом уже на реальном квантовом компьютере (хоть и на модельной задаче). Никто не говорит о том, что квантовые компьютеры уже готовы для повседневного использования. Они только в самом начале находятся. Но они уже работают, и показывают квантовое преимущество.
Sychuan
Думаю, что путаете. Квантовый компьютер — это обычный компьютер и вычисляет почти, как обычный. Если с точки зрения математической теории, то обычно он описывается такой моделью.
RepinTech
Нет, не согласен. Квантовый компьютер не вычисляет как обычный. По крайней мере я нигде об этом не читал. Самого квантового компьютера у меня, к сожалению, нет. Но приведенный вам пример из Вики не утверждает, что квантовый компьютер вычисляет. Пример описывает кубит. И туманно намекает на возможность его «как-то» использовать. Пока, к сожалению, квантовый компьютер устройство, скорее гипотетическое, чем реальное.
Sychuan
Честно говоря трудно вам что-то ответить. Основы теории квантовых компьютеров довольно разработаны, есть книги. Вы можете даже сами поэксперементировать с IBM-овским квантовым компьютером.
Квантовый компьютер устройство реальное. Другое дело, что до практических применений очень далеко.
RepinTech
«Другое дело, что до практических применений очень далеко.» именно это я и имею ввиду.
Sychuan
Это никто не отрицал. Вы написали что кк не вычисляет. Это не так, он вычисляет и реальные квантовые компьютеры существуют.
leok
В самом простом(в теории, не на практике) варианте помимо кубитов есть еще возможность включать и выключать взаимодействия(gates) между любыми двумя кубитами. И эволюция кубитов приводит к другому их состоянию — результату вычисления.