Как устроен и зачем нужен квантовый компьютер
medium

Как устроен и зачем нужен квантовый компьютер

Это прорыв в технологиях или очередной биткоин?

Сейчас много говорят о новых технологиях вычисления — в частности, то и дело звучат слова «квантовые вычисления», «квантовый интернет» и даже «квантовая криптография». Посмотрим, что это такое и нужно ли оно нам. Начнём с квантового компьютера. 

Биты и кубиты

В обычном компьютере все вычисления основаны на понятии «бит». Это такой элемент, который может принимать значения 0 или 1. Физически это реализовано так:

  1. В компьютере есть деталь под названием транзистор. Представьте, что это кран на трубе: если его включить, вода польётся, если выключить — остановится.
  2. В транзисторе вода — это электричество, и включение-выключение крана тоже зависит от электричества. Представьте, что краны соединены между собой так, что вода из одного крана включает или выключает другой кран, — и так каскадом по цепочке.
  3. Транзисторы соединены таким хитрым образом, что когда они включаются и выключаются, на них можно производить математические вычисления.
  4. Из-за того, что транзисторов очень много (миллиарды), а работают они очень быстро (близко к скорости света), транзисторные компьютеры могут очень быстро совершать математические вычисления.
  5. Всё, что вы видите в компьютере, — это производные от вычислений. Вы видите окно, буквы, картинки, а где-то в самой-самой глубине это просто сложение и вычитание, а ещё глубже — включение-выключение кранов с электричеством на скорости света. 

Транзистор в компьютере может принимать значение 1 или 0, то есть «включён» или «выключен». С точки зрения компьютерной логики, этот транзистор называется битом. Это минимальная единица информации в компьютере. Физически бит может быть в процессоре, на чипе памяти, на магнитном диске, но суть одна: это какое-то физическое пространство, которое определённо либо включено, либо выключено.

Ключевое слово здесь — «определённо». Программист и инженер может точно узнать, в каком состоянии находится тот или иной бит. Заряд в нём либо есть, либо нет, никаких промежуточных состояний там не существует.

В квантовом компьютере вместо битов — кубиты. Кубиты — это квантовые частицы, у которых есть интересная особенность: кроме стандартных 0 и 1 кубит может находиться между нулём и единицей — это называют суперпозицией. Нагляднее это видно на рисунке:

Кубит может принимать все значения, которые видны на цветной сфере

Все решения уже известны

Ещё одна особенность кубитов — зависимость значения от измерения. Это значит, что программист не узнает значение кубита до тех пор, пока его не измерит, а сам факт измерения тоже влияет на значение кубита. Звучит странно, но это особенность квантовых частиц.

Именно благодаря тому, что кубит находится во всех состояниях одновременно до тех пор, пока его не измерили, компьютер мгновенно перебирает все возможные варианты решения, потому что кубиты связаны между собой. Получается, что решение становится известно сразу, как только введены все данные. Суперпозиция и даёт ту параллельность в вычислениях, которая ускоряет работу алгоритмов в разы.

Вся сложность в том, что результат работы квантового компьютера — это правильный ответ с какой-то долей вероятности. И нужно строить алгоритмы таким образом, чтобы максимально приблизить вероятность правильного ответа к единице.

Рабочая температура внутри таких компьютеров — минус 273 градуса по Цельсию

Как делают кубиты и в чём сложность

Максимально упрощённо: чтобы получить рабочий кубит, нужно взять один атом, максимально его зафиксировать, оградить от посторонних излучений и связать с другим атомом специальной квантовой связью.

Чем больше таких кубитов связано между собой, тем менее стабильно они работают. Для достижения «квантового превосходства» над обычным компьютером нужно не менее 49 кубитов — а это очень неустойчивая система.

Основная сложность — декогеренция. Это когда много кубитов зависят друг от друга и на них может повлиять всё что угодно: космические лучи, радиация, колебания температуры и все остальные явления окружающего мира.

Такой «фазовый шум» — катастрофа для квантового компьютера, потому что он уничтожает суперпозицию и заставляет кубиты принимать ограниченные значения. Квантовый компьютер превращается в обычный — и очень медленный.

С декогеренцией можно бороться разными способами. Например, компания D-Wave, которая производит квантовые компьютеры, охлаждает атомы почти до абсолютного нуля, чтобы отсечь все внешние процессы. Поэтому они такие большие — почти всё место занимает защита для квантового процессора.

Квантовый процессор на девяти кубитах от Google

Зачем нужны квантовые компьютеры

Одно из самых важных применений квантового компьютера сейчас — разложение на простые числа. Дело в том, что вся современная криптография основана на том, что никто не сможет быстро разложить число из 30–40 знаков (или больше) на простые множители. На обычном компьютере на это уйдёт миллиарды лет. Квантовый компьютер сможет это сделать примерно за 18 секунд.

Это означает, что тайн больше не будет, потому что любые алгоритмы шифрования можно будет сразу взломать и получить доступ к чему угодно. Это касается всего — от банковских переводов до сообщений в мессенджере. Возможно, наступит интересный момент, когда обычное шифрование перестанет работать, а квантовое шифрование ещё не изобретут.

Ещё квантовые компьютеры отлично подходят для моделирования сложных ситуаций, например, расчёта физических свойств новых элементов на молекулярном уровне. Это, возможно, позволит быстрее находить новые лекарства или решать сложные ресурсоёмкие задачи.

Сейчас квантовые компьютеры всего этого не умеют — они слишком сложные в производстве и очень нестабильные в работе. Максимум, что можно пока сделать, — заточить квантовый компьютер под единственный алгоритм, чтобы получить на нём колоссальный выигрыш в производительности. Как раз для этих целей их и закупают крупнейшие компании — чтобы быстрее решать одну-две самые важные для себя задачи.

Обложка:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Маша Климентьева

Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию
Вам может быть интересно
Объясни мне: зачем нужен хостинг
Объясни мне: зачем нужен хостинг

Все говорят про какой-то хостинг. Что это вообще такое?

easy
Откуда взялась тысяча?
Откуда взялась тысяча?

Классическая задача на абстрактное мышление и логику.

easy
Как надевают носки настоящие программисты
Как надевают носки настоящие программисты
easy
Что такое чистый Android
Что такое чистый Android

Там не всё так просто

easy
Препроцессор Pug — возможности, основы работы, за что любят, в чём минусы
Препроцессор Pug — возможности, основы работы, за что любят, в чём минусы

Это как препроцессор CSS, только в HTML

easy
Как устроена память в Python
Как устроена память в Python

Как работают подсчёт ссылок, сборщик мусора и менеджер памяти

easy
Python-разработчик: сколько платят, что нужно уметь и куда идти работать
Python-разработчик: сколько платят, что нужно уметь и куда идти работать

Разговор с практикующим разработчиком о работе и зарплатах

easy
Что такое API
Что такое API

Это как нанять внешнего сотрудника на удалёнку.

medium
5 рюкзаков для программистов на все случаи жизни
5 рюкзаков для программистов на все случаи жизни

От похода в офис до похода в лес

easy
medium