Рассчитать триллион состояний. Как работают квантовые компьютеры?
Научный сотрудник Российского квантового центра о чудесах квантовых компьютеров
Квантовые компьютеры порой представляют как волшебные машины из научной фантастики XX века. Однако, во-первых, никакой магии тут нет, только наука. А во-вторых, научная фантастика внезапно стала частью нашей жизни. К выходу книги Митио Каку «Квантовое превосходство: Революция в вычислениях, которая изменит всё» попросили Николая Капридова, научного сотрудника Российского квантового центра рассказать, как работают квантовые компьютеры и, что важнее, каким образом они способны изменить наше представление об устройстве Вселенной.
Чем квантовые компьютеры отличаются от обычных?
Для понимания большого количества процессов, происходящих во Вселенной (движения космических объектов, термоядерных процессов в звездах, воздействия плазмы на космические летательные аппараты и многих других), людям необходимо решать огромное количество громоздких уравнений, описывающих эти процессы, с большим количеством переменных. Оказывается, что часто для решения некоторых задач даже мощным суперкомпьютерам нужны недели непрерывной работы, что ограничивает наши возможности понимания мира.
Квантовый компьютер, благодаря отличающемуся от классического компьютера принципу работы, потенциально сможет решить эту проблему, сократив время вычислений в тысячи раз.
Обычные компьютеры оперируют классическими битами, принимающими значения ноль или единица. Квантовые компьютеры оперируют кубитами — квантовыми битами, которые могут находиться в состоянии суперпозиции (одновременно в состоянии ноль и единица) и в состоянии запутанности, заключающемся в связанности свойств различных независимых объектов. Состояния суперпозиции и запутанности позволяют малым количеством кубитов кодировать большое количество состояний одновременно.
Например, двумя кубитами можно за раз закодировать четыре (два в квадрате) состояния, тремя кубитами — восемь (два в кубе) состояний, а сорока — целый триллион (два в степени сорок) состояний. При этом, выполняя вычислительные операции над этими сорока кубитами, мы сразу меняем все триллион состояний одновременно — совершаем параллельно триллион операций, что позволяет добиться невероятного ускорения вычислений для определенных задач.
В сравнении с квантовыми компьютерами классические компьютеры оперируют битами информации, которые могут находиться в состоянии ноль или единица, но не в суперпозиции этих состояний, поэтому для кодирования триллиона состояний классическому компьютеру необходимо использовать несколько триллионов бит информации — больше ста гигабайт памяти, причем все вычислительные операции над этими состояниями выполняются последовательно, а не параллельно, как в квантовом компьютере, поэтому время вычисления займет много дней. За такую вычислительную мощь квантовый компьютер расплачивается тем, что создание для него алгоритмов нетривиально, а получаемую им информацию гораздо сложнее интерпретировать, поэтому до сих пор для квантовых компьютеров придумано не так много алгоритмов, позволяющих решать полезные задачи.
Какие тайны Вселенной может разгадать квантовый компьютер?
В качестве кубитов в квантовом компьютере выступают квантовые объекты: фотоны (кванты света), атомы, ионы. Именно на таких микроскопических масштабах начинают проявляться упомянутые выше квантовые свойства. Чтобы произвести операцию над такими кубитами, выполнить вычисление, ученые используют направленные лучи лазеров и воздействие различными полями (электрическими и магнитными), тем самым меняя состояния кубитов.
Благодаря новой парадигме вычислений, доступной квантовым компьютерам, у людей возникают возможности для точного моделирования электронных структур молекул, что помогает понять их физико-химические свойства и существенно упростить создание лекарств с заданными свойствами.
Также для получения ответов на многие вопросы о Вселенной — например, расчет траекторий космических аппаратов, при которых будет тратиться наименьшее количество топлива, — ученым необходимо уметь находить глобальные минимумы различных функций. Если функция сложная и имеет большое количество локальных минимумов, то такая задача становится крайне сложно выполнимой на классических компьютерах, поскольку классические алгоритмы «застревают» в этих локальных минимумах. Для квантовых компьютеров был разработан специальный алгоритм, называемый квантовым отжигом, который существенно быстрее классических алгоритмов. Дело в том, что здесь используется еще одно свойство квантовых объектов — способность «туннелировать» сквозь препятствия, — которое позволяет им преодолеть застревание в локальных минимумах и достичь глобального минимума функции.
Благодаря одному из самых известных квантовых алгоритмов — алгоритму Гровера — удается выполнять быстрый поиск по неотсортированным базам данных: например, находить заданные генетические последовательности в больших базах данных ДНК или проводить быстрый поиск конкретных объектов или признаков в больших наборах изображений со спутников. Это только несколько примеров из того большого набора задач, с которым квантовые компьютеры смогут помочь людям.