Для чего нужен квантовый компьютер
Немного о квантовых компьютерах и о том, изменят ли они нашу жизнь
Многие из нас слышали о квантовом компьютер, но что он собой представляет, а главное какие задачи с помощью него можно решать, известно далеко не всем. Квантовый компьютер уже несколько лет активно изучают лучшие умы мира; он даже появлялся на обложке журнала Time, с подписью: «Он обещает решить некоторые самые сложные проблемы человечества, при этом никто не знает, как он в действительности работает».
Сейчас компьютеры исследуют многие ученые и крупные компании, такие как Google, IBM, Microsoft и другие. По их словам, если такой компьютер все же удастся создать, то это будет настоящий прорыв, сравнимый с открытием классических компьютеров.
Квантовый компьютер и непреодолимые трудности
Квантовый компьютер — это вычислительное устройство, работающее по принципам квантовой механики, которую по праву можно назвать самым сложным разделом физики. Квантовая механика зародилась в начале 20-ого века, и изучает поведение квантовых систем и ее элементов. Квантовая частица может находиться в нескольких местах и состояниях одновременно, поэтому по определению квантовая механика полностью противоречит общей теории относительности. Но давайте не будем углубляться в науку, а вернемся к нашей главной теме — квантовому компьютеру.
В начале века выяснилось, что использование электрических схем для создания вычислительных устройств имеет свои границы, и все они практически были достигнуты. Сейчас же перед человечеством встают все новые и новые задачи, для решения которых классических компьютеров будет недостаточно. Самый простой пример такой задачи — это разложение больших чисел на множители. Для этой цели было построено большинство криптографических систем. Это покажется банальным но, если бы кому-то удалось быстро разложить большое число на простые множители, то для него стали доступны транзакции во всех банках мира.
Другая не менее важная задача, с которой современные компьютеры никогда не смогут справиться — это моделирование квантовых систем и молекул ДНК. Исходя из этого, можно сделать вывод, что создание квантовых компьютеров — весьма перспективное решение, которое позволит решить эти и многие другие проблемы.
Принцип работы квантового компьютера
Классический компьютер работает на основе транзисторов и кремниевых чипов, которые используют для обработки информации бинарный код, состоящий из нулей и единиц. Бит, как минимальная единица информации имеет два базовых состояния: 1 и 0. Изменения этих состояний можно легко контролировать: объекты могут либо находиться в конкретном месте, либо — не находится. Именно поэтому многие физические объекты внешнего мира можно перенести в виртуальный с помощью сложных комбинаций битов. Работа же квантового компьютера будет основываться на принципе суперпозиции, а вместо битов будут использоваться кубиты (квантовые биты), которые одновременно могут находиться во всевозможных состояниях (в 1 и 0 одновременно). По словам ученных, за счет этого квантовые компьютеры для определенных классов задач будут в миллионы раз мощнее нынешних. Сейчас уже описаны десятки всевозможных алгоритмов работы квантового компьютера, даже разрабатываются особые языки программирования.
По большому счету, мир использует квантовые технологии уже давно. Лазеры, томографы и сверхчувствительные микроскопы базируются на массовых эффектах, создаваемых большими группами квантовых частиц или волн, которые подчиняются законам квантовой механики. Основная же задача состоит в использовании этих эффектов для отдельных частиц, а не групп в целом.
Для чего нужен квантовый компьютер?
Пока ученные трудятся над созданием квантового компьютера, они одновременно ищут ему применение. Главным остается тот факт, что такой компьютер сможет моментально совершать вычисления и работать с большим объемом данных.
С помощью квантовых компьютеров можно оптимизировать множество процессов: от медицины и до машиностроения. Например, у людей появится возможность диагностировать рак на более ранних стадиях, или делать более сложные автопилоты. Как упоминалось ранее, с помощью квантового компьютера будет возможно быстро раскладывать большие числа на множители и моделировать молекулы ДНК. Также существует теория того, что квантовый компьютер будет справляться с задачами, которые обычный компьютер решить не в состоянии или потратит на это тысячи лет вычислений. Это, допустим, создание искусственного интеллекта или поиск разумных существ во Вселенной, кроме человека. В любом случае все ученные сходятся на том, что это создание такого компьютера будет настоящим прорывом, возможно, главным в истории человечества.
Исправление ошибок — основная проблема квантовых компьютеров
Ошибки в квантовых компьютерах можно разделить на два главных уровня. Ошибки первого уровня присущи всем компьютерам, в том числе и классическим. К таким ошибкам относится непроизвольная смена кубитов из-за внешнего шума (например: космических лучей или радиации). С этой проблемой недавно удалось справиться специалистам из компании Google. Для решения этой проблемы команда ученых во главе с Джулианом Келли создала особую квантовую схему из девяти кубитов, которые ищут ошибки в системе. Остальные кубиты отвечают за сохранность информации, таким образом, сохраняя ее дольше, нежели с использованием единичного кубита. Однако основная проблема никуда не делась, остается второй уровень ошибок.
Кубиты изначально по своей природе нестабильны, они мгновенно забывают информацию, которую вы хотите сохранить на квантовый компьютер. Под воздействием на кубит окружающей среды нарушается связь внутри квантовой системы (процесс декогеренции). Чтобы избавиться от этого, квантовый процессор нужно максимально изолировать от воздействия внешних факторов. Как это сделать? — пока остается загадкой. По словам экспертов, 99% мощности такого компьютера уйдет на исправления ошибок, и лишь 1% хватит для решения любых задач. Конечно, от ошибок не удастся избавиться полностью, но если минимизировать их до определенного уровня, квантовый компьютер сможет работать.
Насколько человечество близко к созданию квантовых компьютеров?
Дать ответ на этот вопрос сейчас очень сложно — практически невозможно. Новости о прорывах в этой сфере появляются регулярно, но нельзя сказать, что они глобальные. В создании квантовых компьютеров заинтересованы все: начиная военными и заканчивая технологическими компаниями. Компания D-Wawe, с которой активно сотрудничает Google и NASA, заявляет, что создала процессор с 84 кубитами, но критики, проанализировавшие его сообщили, что он работает как классический. IBM несколько лет назад объявили, что создали чип с тремя кубитами, а Microsoft основательно занимается разработкой квантовых компьютеров еще с 2007 года.
По прогнозу исследователей из компании Cisco Systems, полноценный рабочий квантовый компьютер появится к середине следующего десятилетия, и будут по мощности сравним с человеческим мозгом. В любом случае проблема разработки новых совершенных компьютеров будет актуальна до тех пор, пока человечество не научится исправлять квантовые ошибки второго уровня. Если это когда-то случится, то до создания рабочего квантового компьютера останется лишь несколько лет.
Что такое квантовый компьютер? Разбор
Интересно, а какая сторона у монетки в тот момент, когда она в воздухе? Орел или решка, горит или не горит, открытое или закрытое, 1 или 0. Все это примеры двоичной системы, то есть системы, которая имеет всего два возможных состояния. Все современные процессоры в своем фундаменте основаны именно на этом!
При правильной организации транзисторов и логических схем можно сделать практически все! Или все-таки нет?
Современные процессоры это произведение технологического искусства, за которым стоят многие десятки, а то и сотни лет фундаментальных исследований. И это одни из самых высокотехнологичных устройств в истории человечества! Мы о них уже не раз рассказывали, вспомните хотя бы процесс их создания!
Процессоры постоянно развиваются, мощности растут, количество данных увеличивается, современные дата-центры ворочают данные сотнями петабайт (10 в 15 степени = 1 000 000 000 000 000 байт). Но что если я скажу что на самом деле все наши компьютеры совсем не всесильны!
Например, если мы говорим о BigData (больших данных) то обычным компьютерам могут потребоваться года, а то и тысячи лет для того, чтобы обработать данные, рассчитать нужный вариант и выдать результат.
И тут на сцену выходят квантовые компьютеры. Но что такое квантовые компьютеры на самом деле? Чем они отличаются от обычных? Действительно ли они такие мощные? Будет ли на них CS:GO идти в 100 тысяч ФПС?
Небольшая затравочка — мы вам расскажем, как любой из вас может уже сегодня попробовать воспользоваться квантовым компьютером!
Устраивайтесь поудобнее, наливайте чай, будет интересно.
Глава 1. Чем плохи обычные компьютеры?
Начнем с очень простого классического примера.
Представим, что у вас есть самый мощный суперкомпьютер в мире. Это компьютер Фугаку. Его производительность составляет 415 ПетаФлопс.
Давайте дадим ему следующую задачку: надо распределить три человека в две машины такси. Сколько у нас есть вариантов? Нетрудно понять что таких вариантов 8, то есть это 2*2*2 или 2 в третьей степени.
Как быстро наш суперкомпьютер справится с этой задачей? Мгновенно! Задачка-то элементарная.
А теперь давайте возьмем 25 человек и рассадим их по двум шикарным лимузинам, получим 2 в 25 степени или 33 554 432 варианта. Поверьте, это число тоже плевое дело для нашего суперкомпьютера.
А теперь 100 человек и 2 автобуса, сколько вариантов?
Считаем: 2 в 100 степени — это примерно 1.27 x 1030 или 1,267,650,600,228,229,401,496,703,205,376 вариантов.
Теперь нашему суперкомпьютеру на перебор всех вариантов понадобится примерно 4.6*10^+35 (4.6 на 10 в 35 степени) лет. А это уже очень и очень много. Такой расчет займет больше времени чем суммарная жизнь сотен вселенных.
Суммарная жизнь нашей вселенной: 14 миллиардов лет или 14 на 10 в 9 степени.
Даже если мы объединим все компьютеры в мире ради решения, казалось бы, такой простой задачки как рассадка 100 человек по 2 автобусам — мы получим решение, практически никогда!
И что же? Все? Выхода нет?
Есть, ведь квантовые компьютеры будут способны решить эту задачку за секунды!
И уж поверьте — использоваться они будут совсем не для рассадки 100 человек по 2 автобусам!
Глава 2. Сравнение. Биты и Кубиты
Давайте разберемся, в чем же принципиальная разница.
Мы знаем, что классический процессор состоит из транзисторов и они могут пропускать или не пропускать ток, то есть быть в состоянии 1 или 0 — это и есть БИТ информации. Кстати, рекомендую посмотреть наше видео о том как работают процессоры.
Вернемся к нашему примеру с двумя такси и тремя людьми. Каждый человек может быть либо в одной, либо в другой машине — 1 или 0.
Для решения процессору надо пройти через абсолютно все варианты один за одним и выбрать те, которые подходят под заданные условия.
В квантовых компьютерах используются тоже биты, только квантовые и они принципиально отличаются от обычных транзисторов.
Они так и называются Quantum Bits, или Кубиты.
Что же такое кубиты?
Кубиты — это специальные квантовые объекты, настолько маленькие, что уже подчиняются законам квантового мира. Их главное свойство — они способны находиться одновременно в 2 состояниях, то есть в особом состоянии — суперпозиции.
Фактически, это и есть принципиальное отличие кубитов от обычных битов, которые могут быть только 1 или 0.
Суперпозиция — это нечто потрясающее. Считайте что кубиты — это одновременно открытая и закрытая дверь, или горящая и не горящая лампочка….
В нашем случае они одновременно 1 и 0!
Но квантовая механика говорит нам, что квантовый объект, то есть кубит, находится в суперпозиции, пока ты его не измеришь. Помните монетку — это идеальный пример суперпозиции — пока она в воздухе она одновременно и орел, и решка, но как только я ее поймал — все: либо орел, либо решка! Состояние определилось.
Надо понять, что эти кубиты и их поведение выбираются совсем не случайно — эти квантовые системы очень строго определены и их поведение известно. Они подчиняются законам квантовой механики!
Квантовый компьютер внутри
Говоря о самом устройстве, если мы привыкли к полупроводникам и кремнию в обычных процессорах, то в случае квантовых компьютеров люди все еще ищут, какие именно квантовые объекты лучше всего использовать для того, чтобы они выступили кубитами. Сейчас вариантов очень много — это могут быть и электроны со своим спином или, например, фотоны и их поляризация. Вариантов множество.
И это далеко не единственная сложность, с которой столкнулись ученые! Дело в том, что квантовые кубиты довольно нестабильны и их надо держать в холодном месте, чтобы можно было контролировать.
И если вы думаете, что для этого будет достаточно водяного охлаждения вашего системника, отчасти вы правы, только если залить туда жидкий Гелий, температура которого ниже минус двухсот семидесяти градусов Цельсия! А для его получения используются вот такие вот здоровые бочки.
Фактически, квантовые компьютеры — это одни из самых холодных мест во вселенной!
Принцип работы квантового компьютера
Давайте вернемся к нашей задачке про трех людей и две машины и рассмотрим ее с точки зрения квантового компьютера:
Для решения подобной системы нам понадобится компьютер с 3 кубитами.
Помните, что классический компьютер должен был пройти все варианты один за одним? Так вот поскольку кубиты одновременно имеют состояния «1» и «0», то и пройти через все варианты он сможет, фактически одновременно!
Знаю, что прозвучит максимально странно, но представьте, что в данной ситуации наши три кубита создают 8 различных параллельных миров, в каждом из которых существует одно решение, а потом они все собираются в один! Реально «Мстители» какие-то!
Но что же получается? Он выдает все варианты сразу, а как получить правильный?
Для этого существуют специальные математические операторы, например оператор Грувера, который позволяет нам определять правильные результаты вычислений квантовых систем! Это специальная функция, которая среди всех возможных вариантов находит нужный нам.
Помните задачку про 100 человек в 2 автобуса, которую не смогли бы решить все современные компьютеры вместе взятые? Для квантового компьютера со 100 кубитами эта задачка все равно что семечку щелкнуть! То есть компьютер находится одновременно в 2 в 100 степени состояний, а именно:
1,267,650,600,228,229,401,496,703,205,376 — вот столько состояний одновременно! Столько параллельных миров!
Думаете, что всё это звучит слишком хорошо, чтобы быть правдой? Да, вы правы. Есть куча нюансов и ограничений. Например, ошибка. Проблема в том, что кубиты, в отличие от обычных битов, не определены строго.
У них есть определенная вероятность нахождения в состоянии 1 или 0. Поэтому есть вероятность ошибки и чем больше кубитов в системе, тем больше суммарная вероятность, что система выдаст неправильный ответ. Поэтому зачастую надо провести несколько расчетов одной и той же задачи, чтобы получить верный ответ.
Ну то есть как верный? Он всегда будет содержать в себе минимальную возможность ошибки вследствие своей сложной квантовой природы, но ее можно сделать ничтожно малой, просто прогнав вычисления множество раз!
Квантовые компьютеры сегодня
Теперь перейдем к самому интересному — какое состояние сейчас у квантового компьютера? А то их пока как-то не наблюдается на полках магазинов!
На самом деле все, что я описал выше, это не такая уж и фантастика. Квантовые компьютеры уже среди нас и уже работают. Их разработкой занимаются GOOGLE, IBM, INTEL, MICROSOFT и другие компании поменьше. Кроме того в каждом большом институте есть исследовательские группы, которые занимаются разработкой и исследованием квантовых компьютеров.
Сундар Пичаи и Дэниэл Сэнк с квантовым компьютером Google. Октябрь 2019
В октябре прошлого года, в журнале Nature, Google выложила статью, которая шарахнула по всему миру огромными заголовками — КВАНТОВОЕ ПРЕВОСХОДСТВО!
В Google создали квантовый компьютер с 53 кубитами и смогли решить задачку, за 200 секунд, на решение которой у обычного компьютера ушло бы 10000 лет!
Конечно IBM было очень обидно и они начали говорить, что задача слишком специальная, и вообще не 10000 лет, а 2.5 дня, но факт остается фактом — квантовое превосходство было достигнуто в определенной степени!
Так что теперь вопрос считанных лет, когда квантовые компьютеры начнут использоваться повсеместно! IBM, например, только что анонсировали что в 2023 году создадут коммерческий квантовый компьютер с 1121 кубитами!
Чтобы вы понимали калькулятор Google даже не считает сколько будет 2 в 1121 степени, а просто говорит — бесконечность! И это совсем не предел.
Уже ведется разработка компьютеров на миллионы кубитов — именно они откроют истинный потенциал квантовых вычислений.
Более того, вы уже сейчас можете попробовать самостоятельно попробовать квантовые вычисления! IBM предлагает облачный доступ к самым современным квантовым компьютерам. Вы можете изучать, разрабатывать и запускать программы с помощью IBM Quantum Experience.
Но зачем вообще нужны квантовые компьютеры и где они будут применяться?
Естественно, не для распихивания людей по автобусам.
Задач множество. Главная — базы данных и поиск по ним, работа с BigData станет невероятно быстрой. Shazam, прокладывание маршрутов, нейронные сети, искусственный интеллект — все это получит невероятный толчок! Кроме того симуляции и моделирование квантовых систем! Зачем это надо — спросите вы?
Это очень важно, так как появится возможность строить модели взаимодействия сложных белковых соединений.
Это станет очень важным шагом для медицины, открывающим просто умопомрачительные просторы для создания будущих лекарств, понимания того как на нас влияют разные вирусы и так далее. Простор огромен!
Чтобы вы примерно понимали какая это сложная задачка, мы вернемся в примеру с монеткой. Представьте что вам надо заранее смоделировать что выпадет — орел или решка.
Надо учесть силу броска, плотность воздуха, температуру и кучу других факторов. Сложно? Ну не так уж!
А теперь представьте, что у вас не один человек, который кидает монетку, а миллион разных людей, в разных местах, по-разному кидают монетки. И вам надо рассчитать что выпадет у всех! Вот примерно настолько сложная эта модель о взаимодействии белков.
Кроме того, вы наверняка слышали о том, что квантовые компьютеры сделают наши пароли просто пшиком, который можно будет подобрать за секунды. Но это уже совсем другая тема…
Вывод
Какой вывод из всего этого мы можем сделать, квантовый компьютер — это принципиально новая система. Она отличается от обычных компьютеров в самом фундаменте, в физических основах на которых работает.
Их на самом деле даже нельзя сравнивать! Это все равно, что сравнивать обычные счеты и современные компьютеры!
И конечно есть большие сомнения, что вы когда-нибудь сможете прийти в магазин и купить свой маленький квантовый процессор. Но они вам и не нужны. Квантовые компьютеры для обычного пользователя станут как современные дата-центры, то есть нашими невидимыми помощниками, которые расположены далеко и которые просто делают нашу жизнь лучше или как минимум другой!
Что может квантовый компьютер
Квантовая физика родилась в 1900 году, когда Макс Планк предположил, что энергия поглощается не непрерывно, а отдельными порциями — квантами. Его идея получила дальнейшее развитие: фотоэлектрический эффект Эйнштейна, теория атома Бора, Резерфорд опытным путем показал, как выглядит ядро атома, Луи де Бройль стер границу между волнами и материей, Гейзенберг и Шрёдингер разработали квантовую механику.
Квантовую физику тяжело понять — её математический аппарат почти невозможно перевести на «человеческий» язык. Но «потрогать» её проявления в повседневной жизни вполне реально: лазеры, флэшки, компакт-диски, интегральные схемы или графен — все эти технологии появились благодаря квантовой физике. Логично, что ее решили использовать и для вычислений — в квантовых компьютерах.
Квантовые компьютеры кардинально отличаются от обычных: они обрабатывают информацию на порядок быстрее, а памяти у них больше экспоненциально. Уже сейчас экспериментальные образцы решают некоторые задачи быстрее, чем самые мощные суперкомпьютеры. Перспективы от внедрения квантовых компьютеров манят. С их помощью можно создать новые лекарства, композитные материалы прочнее титана и легче пластика, сверхпроводники, которые работают при комнатной температуре, добиться абсолютной безопасности шифрования или разработать универсальный искусственный интеллект. Но в реальности всё не так радужно. Всё потому, что мы пока не понимаем, что действительно умеет квантовый компьютер.
Анатолий Дымарский (Сколтех) — физик-теоретик, работает в области физики квантовых систем. Анатолий расскажет, чем квантовый компьютер отличается от обычного и что сулят его возможности IT-индустрии.
Как работает обычный компьютер
Чтобы объяснить, что такое квантовый компьютер и как он работает, нужно начать издалека и рассказать, как работает компьютер обычный. Работа обычного компьютера определяется двумя параметрами: памятью, скоростью вычислений.
Память — основная характеристика вычислительной системы. Компьютер умеет читать, писать и обрабатывать информацию, которая хранится в памяти.
Компьютер выполняет простейшие операции: перемножения, вычитания, сложения чисел. Если выполнять эти операции много и быстро, то можно объединить их в программу, которая обрабатывает информацию. Так работают базы данных, поиск или нейронные сети. Здесь важна скорость вычислений или скорость выполнения операций (FLOPS).
Есть еще третий (дополнительный) параметр — детерминизм, общая характеристика для всех вычислительных систем. Означает, что все машины работают по программе, которая однозначна — ноль всегда ноль, а единица это точно единица. Никаких иных толкований не предусмотрено и нет элемента неопределенности.
Неопределенность можно внести только на уровне входных данных, например, случайными числами. Ввод может быть случайным, но программа всегда однозначно обрабатывает все входящие данные.
Как работает квантовый компьютер
Он работает иначе — по интуитивно непонятной логике. Как и обычный, он проводит вычисления, но в его основе лежат законы квантовой механики.
Классический мир и классическая механика детерминистичны. Это значит, что значение любого регистра памяти в компьютере всегда 0 или 1, а тарелка всегда либо целая, либо разбита.
В квантово-механической системе нет такой четкости, а есть вероятность, которая определяет ее суть. Правильный вопрос здесь — какова вероятность, что тарелки разбились или целы, какова вероятность, что значения регистра 0 или 1?
Вероятность — первое важное понятие в квантовой механике. С точки зрения квантовой механики «тарелки Шредингера» одновременно и целые, и разбитые. Есть некая вероятность того, что они целые, и некоторая вероятность, что разбитые. Эта неопределенность и отражает реальный физический мир.
На классическом уровне неопределенность маскирует наше незнание. Например, когда мы покупаем лотерейный билет «Спортлото», для нас появляется вероятность выиграть, потому что мы не знаем выигрышный номер.
Для классической физики лотерея — это не вероятностный процесс. Всегда можно описать движение руки, которая запускает барабан, скорость и траекторию каждого шарика. Теоретически, можно угадать выигрышный номер (хотя практически — сложно). В квантовой механике даже теоретически нельзя угадать, что произойдет в следующую секунду. Мы можем только предсказать это с точки зрения вероятности.
Второе понятие — принцип суперпозиции. Обычный бит находится только в значениях 0 или 1. В квантовых компьютерах нет обычных битов, а есть квантовые — кубиты. Квантовый бит находится в состоянии 0 или 1 с какой-то вероятностью. Кубит может находиться одновременно в этих состояниях, притом в разных комбинациях — в суперпозиции этих состояний.
Когда система (кубит) находится одновременно в состоянии 0 или 1, можно говорить только о вероятностях. Если состояний много, система одновременно находится во всех возможных состояниях, но с меньшей вероятностью для каждого. Это принципиально важно.
В классической программе в каждый конкретный момент времени каждая строка программы работает с определенной ячейкой памяти. В квантовой механике можно работать со всеми ячейками памяти одновременно.
«Память» квантового компьютера
В чем основная разница между квантовой и классической памятью компьютера? В обычном компьютере мы записываем числа в двоичном коде. Например, число 8 в двоичной системе выглядит как 00001000, и для его записи достаточно 4 битов.
В квантовых компьютерах кубиты находятся в состоянии 0 или 1 с какой-то вероятностью. Вероятность — это число. Чтобы записать одно число с бесконечной точностью, нужно бесконечное количество битов. Поэтому, в теории, один кубит — это физическая система с бесконечным количеством памяти.
На практике у методов измерения ограниченная точность. Будем считать, что она соответствует обычной машинной (float). Получается, что кубит содержит два числа: вероятности, что кубит в состоянии 0 и в состоянии 1.
Примечание: для упрощения мы игнорируем, что сумма вероятностей кубита в состоянии 0 и 1 должна равняться единице. Основной вывод не зависит от упрощения.
Один кубит соответствует двум вещественным числам (float). Это большой выигрыш, потому что для двух вещественных чисел на обычном компьютере нужно два машинных слова — 128 обычных битов, а мы обошлись одним квантовым. Может показаться, что квантовый компьютер в 128 раз лучше обычного. Но это не так.
Квантовый компьютер экспоненциально лучше обычного.
Один кубит это 2 вещественных числа. Два кубита — 4 вещественных числа. Но восемь кубитов это 256 потенциальных конфигураций восьми нулей и единиц — два в восьмой степени.
Для одного кубита выигрыш в 128 раз, а для восьми кубитов он существенно больше — 256*128. Система n кубитов в памяти эквивалентна вещественных чисел.
Емкость квантовой памяти растет в геометрической прогрессии.
Память обычного ноутбука эквивалентна 15 кубитам, 40 кубитов равны памяти самых мощных вычислительных центров, а 50-60 кубитов превышают суммарную память всех вычислительных центров всего мира.
Три-четыре кубита эквивалентны увеличению обычной классической памяти в 10-20 раз. Квантовая память значительно более емкая, чем любые другие классические способы записи информации. В этом главный потенциал квантовых вычислений.
Но экспоненциальный рост емкости квантовой памяти вызывает проблему размерности. Из-за проклятия размерности сложно описать такую квантовую систему на классическом компьютере — требуется все больше и больше памяти.
Какие задачи может решить квантовый компьютер
Если квантовый мир работает на уровне неопределенности, как вообще возможно что-то посчитать? У квантовой механики вероятностная природа, а нам нужен точный ответ. Как все будет работать, если нужно просто перемножить два числа?
Объясню на примере задач класса NP, то есть задач разрешимости, решение которых невозможно найти за полиномиальное время — во всяком случае, в предположении . Однако, правильность решения за полиномиальное время проверить можно. Это похоже на взлом закрытого замка: мы не умеем пользоваться отмычками, но можем быстро проверить любой ключ, если он есть.
Благодаря принципу суперпозиции квантовая система находится сразу во всех состояниях и ищет лучший вариант. Однозначного ответа система не дает, но повышает вероятность того, что лучший вариант является решением. Когда система остановится на каком-то решении, мы сможем довольно быстро проверить его на правильность.
Если окажется, что ответ неверен, запустим квантовый компьютер еще раз. Вероятность получения правильного ответа больше 50%, а часто гораздо больше. Значит, за 2-4 запуска квантового алгоритма мы получим правильный ответ.
У нас не будет однозначного ответа, а только вероятность получить правильный ответ. Но эта вероятность весьма высока. Фактически, мы гадаем, но не на кофейной гуще, а на научной. За несколько итераций мы найдем ответ и проверим, что он правильный.
Параметры квантового компьютера
У классического компьютера два параметра качества: объем памяти и количество операций. С обычным компьютером мы по умолчанию предполагаем, что у нас есть доступ ко всем ячейкам памяти для записи и чтения.
В квантовом случае есть три параметра.
Объем памяти или количество кубит. Чем больше памяти, тем лучше? Для квантового компьютера нет — когда мы увеличиваем количество кубит, растет сложность квантовой системы. Систему становится тяжело поддерживать в изолированном состоянии.
Время работы или количество последовательных операций (когерентность). Систему обязательно требуется поддерживать в изолированном состоянии — в физике это называется когерентность. Если позволить квантовой системе взаимодействовать с окружающей средой, то это разрушит состояние ячеек квантовой памяти. Вместо нулей и единиц будет просто шум.
Мы пытаемся поддерживать систему изолированной как можно дольше. Но чем больше квантовых операций проводим, тем больше времени на них уходит, а значит все сложнее поддерживать систему в изолированном состоянии.
Примечание: здесь количество операций не в секунду, а за все время работы системы.
Возникает парадокс: чем больше кубитов, тем меньше операций доступно. Поэтому время, в течении которого можно держать систему изолированной и произвести некоторое количество операций, это важный параметр.
Представьте обычный компьютер, в котором нет охлаждения. Пока компьютер не перегреется, у него есть время что-то посчитать, а потом он отключается. Примерно то же самое происходит в квантовом компьютере. В нем нет «вентилятора»: чем больше работает, тем больше нагревается, пока не разрушится. Поэтому есть ограничение на количество операций.
Универсальность. В классическом компьютере доступны любые операции: умножение, деление, вычитание. Теоретически, в квантовом тоже. Но на практике, существенно проще проводить операции только с соседними кубитами, которые расположены на прямой, в прямоугольном или квадратном массиве. Для работы со всеми кубитами требуется очень сложная архитектура — на практике пока так не умеют.
Все три направления конфликтуют друг с другом. Мы можем улучшить одно, но это произойдет за счет ухудшения двух других. Сейчас, когда технология в зачаточном состоянии, можно выделить несколько прототипных платформ, и каждая из них пытается улучшить показатели одного направления за счет двух других.
Прототипы
Выделю три прототипа, над которыми работают крупные компании. Google, IBM, Intel, Microsoft вкладываются в развитие квантовых компьютеров. Все вместе они вложили больше 500 млн долларов в разработку, лаборатории и исследовательские центры.
Первые классические компьютеры занимали целые комнаты, работали на вакуумных лампах и так нагревались, что для них требовалось отдельное мощное охлаждение. Квантовые компьютеры на них очень похожи — это шкафы высотой по 3 метра, большую часть которых занимают системы охлаждения. Компьютеры охлаждают до температуры близкой к абсолютному нулю, чтобы квантовые системы могли выполнять свои вычислительные функции.
Универсальные квантовые компьютеры
Это универсальные машины от Google и IBM с памятью примерно 20 кубит. Они выполняют любые операции, потому что полная универсальность доступна с относительно небольшим числом кубитов, дальше возникает практическое ограничение. Возможно, через год люди научатся работать с 30-40 кубитами.
Универсальные квантовые компьютеры способны реализовать произвольные квантовые алгоритмы, например, алгоритмы Шора и Гровера.
Современная криптография основана на разложении чисел на простые множители. В настоящее время неизвестно, существует ли полиномиальный не квантовый алгоритм для задачи факторизации. Однако 25 лет назад Питер Шор опубликовал статью, в которой объяснил, как квантовый компьютер может разложить очень большое целое число на простые множители.
Квантовый алгоритм компьютера работает не детерминистически, а угадывает простые множители с вероятностью правильного ответа больше 50% и находит простые множители экспоненциально быстрее, чем обычный.
С распространением квантовых компьютеров все современные методы шифрования окажутся уязвимы, и это основная мотивация в разработке квантовых алгоритмов последние 25 лет. Но пока применить метод Шора пока сложно, потому что алгоритм требует большой квантовый компьютер. Маленькие решают задачу только для небольших чисел.
Другим примером, демонстрирующим потенциал квантовых вычислений, является Алгоритм Гровера для задачи перебора или поиска решения уравнения , где
какая-то сложная функция.
Кроме упомянутых выше алгоритмов Шора и Гравера есть большое количество других квантовых алгоритмов. Любая физическая система хочет перейти в состояние равновесия — квантовая не исключение. С научной точки зрения правильнее говорить не о равновесии, а об основном состоянии системы. Классический аналог — состояние покоя. Система всегда стремится перейти в состояние покоя с минимальной энергией. В терминах вычислительных задач — это оптимизационная задача минимизации энергии. Квантовый компьютер как раз может решать подобные задачи.
Вся область применимости квантовых алгоритмов и компьютеров пока не понятна. Но уже есть десятки различных оптимизационных задач, с которыми квантовые компьютеры и алгоритмы могут справиться, и находятся новые.
Квантовые симуляторы ограниченной универсальности
Это другое направление: универсальность ограничивается, но поддерживается изоляция (когерентность). Это компьютеры на рубеже в 50-70 кубитов, что в смысле памяти уже больше, чем любой суперкомпьютер.
На этой границе возможности специализированного квантового компьютера превосходят возможности классического — возникает квантовое превосходство. Это значит, что квантовые компьютеры могут решать некоторые задачи, на которые у обычных (даже суперкомпьютеров) уйдут десятки, сотни или тысячи лет.
В октябре 2019 Google заявил, что достиг квантового превосходства. Новость появилась во всех ведущих газетах и журналах, соответствующая научная статья была опубликована в Nature. Тематические статьи выпустили многие газеты, даже New York Times и Wall Street Journal, которые далеки от науки.
В реальности Google разработал квантовый процессор с ограниченной универсальностью. У него достаточно большое количество кубитов, и он может выполнять некоторые узкие задачи лучше, чем любой классический компьютер. Другой вопрос, что это очень узкие и искусственные задачи.
Некогерентные процессоры с числом кубитов от 2 тысяч
Если забыть про универсальность и когерентность, можно добавлять 2 или даже 3-4 тысячи кубитов. Этим направлением занимается компания D-Wave из Канады. У них есть процессоры с тысячей кубитов, но без когерентности.
Возможные области применения квантовых компьютеров
Одна большая потенциальная область применения — это криптография. Вторая — оптимизационные задачи, которые возникают в самых разных областях.
Наука. Квантовые вычисления могут помочь предсказывать поведение элементарных частиц, моделировать молекулы ДНК или разрабатывать новые лекарственные препараты. Например, квантовые вычисления пытаются применять в фармакологии. Для этого нужно понимать, какую форму принимают разные протеины (про которые можно думать, как про микроскопические квантовые объекты). Мы не знаем, как они себя будут вести, но самый простой способ это понять — симулировать их поведение на квантовом компьютере. У этой научной задачи огромный бизнес-потенциал: новые лекарства, добавки, антибиотики.
Новые материалы. В науке о материалах главное — понять взаимодействие атомов, что можно смоделировать на квантовых компьютерах. Это тоже научная задача, но создав новый материал, его уже можно продавать.
Машинное обучение и искусственный интеллект. Машинное обучение — сложный процесс, который требует огромного количества вычислений. Пока здесь нет практической пользы от квантовых компьютеров, потому что они сейчас не на том уровне развития. Но в перспективе, квантовые компьютеры могут ускорить стандартные алгоритмы. В некоторых случаях это выглядит революционно, потому что можно в десятки раз сократить время обучения нейросети.
Транспорт, энергетика, логистика. В этих сферах много оптимизационных задач. Например, в энергетике главная проблема — распределение электрической энергии по стране. Цена на электричество в разных регионах отличается, при этом во время передачи часть энергии теряется, а с ней и прибыль. Чтобы заработать больше денег, бизнес пытается оптимизировать передачу. Это одна из тех задач, которая находится в классе NP. Сложно найти правильное решение, но квантовый компьютер может помочь.
Бизнес-приложения. В бизнесе квантовыми вычислениями занимаются только большие компании, корпорации. У гигантов есть деньги и ресурсы, например, у Google, D-Wave или IBM (лидер области с большими наработками).
На сайте компании D-Wave написано, что уже в 150 бизнес-приложениях используются квантовые вычисления. IBM выпустил брошюру, в которой обсуждается, что можно сделать с помощью квантового компьютера. Это десятки различных индустрий и потенциально сотни бизнес-решений. Так все выглядит на бумаге.
В реальности все немного иначе. Развитие технологий сейчас пока не на том уровне, чтобы применять их на практике.
Что значит квантовая революция для IT-индустрии
Пока что ничего. Мы находимся в так называемой эре NISQ — Noisy Intermediate-Scale Quantum technology. Это значит, что сейчас нет таких квантовых устройств, которые могли бы соперничать с классическими компьютерами. Пока нельзя создать квантовую систему, которая по всем параметрам превзойдет классическую: достаточно небольшую, универсальную и изолированную. Пока получаются только системы, которые выполняют узкоспециальные задачи определенного сорта лучше, чем вычислительный кластер. Квантовые технологии пока непрактичны. Хотелось бы использовать этот огромный потенциал для своих ежедневных задач, но неизвестно, как это сделать.
У квантовых технологий огромный «подрывной потенциал». Если научиться хорошо решать хотя бы одну из оптимизационных задач, о которых говорилось выше, это изменит одну конкретную индустрию, как минимум. Надеюсь, что через 5-10 лет в некоторых направлениях ситуация изменится.
Многие компании создают прообразы настоящих квантовых компьютеров — они уже что-то умеют делать, но пока этого недостаточно.
В Сколтехе мы пытаемся ответить на главный вопрос — как и для чего можно использовать квантовый компьютер. С моими коллегами Владимиром Антоновым и Олегом Астафьевым трудимся над проектом, в рамках которого работаем над маленьким квантовым компьютером. К сожалению, часть архитектурных и дизайнерских вопросов еще не решены, потому что мы все еще не уверены, какие именно задачи должен будет решать этот компьютер. Если этот вопрос вам интересен, приглашаю его обсудить.
То, с каким интересом участники HighLoad++ восприняли доклад о квантовых компьютерах и АЭС, натолкнуло нас на мысль уделить большее внимание подобным темам на наших конференциях. Поэтому на РИТ++ в мае в онлайне у нас будут секции научпопа и применения IT в смежных областях. И это только малая часть новинок фестиваля «Российские интернет-технологии» — подробнее смотрите на сайте и в рассылке.