Три новых правила игры
Квантовая механика — это такой же набор законов природы только для мира очень маленьких частиц — электронов, протонов, фотонов, альтронов. хотя нет, это из Мстителей.
Короче, всех тех штук, из которых мы все состоим.
В начале прошлого века мы внезапно обнаружили, что между ними происходит полная дичь, необъяснимая имевшимися у нас законами физики. Мы нафигачили загадок и парадоксов, о которых все обожают спорить.
Но мы здесь сегодня не для этого.
Пока газеты тешили публику кликбейтными парадоксами, ученые за сотню лет изобрели себе набор законов, которые позволили все эти непотребства вполне логично считать на уровне простых вероятностей.
К сожалению, эти два мира так пока и не дружат, потому как всё это правильно объяснять простым людям никто не придумал. Каждый изобретает свой подход как ввести человека в новые правила игрового мира и выдержать тонкий баланс между «ученые засмеют» и «читатели ничего не поймут».
Здесь все либо впадают в упрощения с котами, которые «как будто одновременно и там и сям», либо в научную заумь с матрицами прямо на лицо.
Сегодня я попробую свой путь, которым я объясняю это своим интересующимся друзьям. ? Как обычно, ничего «моего» во всём этом нет — это лишь компиляция того, как умные люди объясняли тему мне самому. Но я же не могу вот взять и признаться в этом на публике!
Итак, заходя в новый мир, нам надо принять ТРИ самых важных правила этой игры. Тогда остальное будет выводиться как бы автоматически.
Начнём с первого.
Что это за «квант»?
Квант – это не физический объект. В физике термин «квант» используется для описания наименьшей возможной части чего-либо. Это может быть «квант мощности», «квант времени» или «квант частицы». Следуя этому пути, мы придём к таким терминам, как «квантовая физика» и «квантовая механика», то есть к областям науки, имеющим дело с минимально возможными взаимодействиями или системами – на уровне атомов и даже отдельных кварков.
Мы подошли к кубиту (квантовому биту), то есть «наименьшей и неделимой единице квантовой информации». В то же время мы подходим к первой точке касания, которая говорит нам о сходствах и различиях в том, как классические компьютеры (с использованием битов) и квантовые компьютеры (с использованием кубитов) выполняют вычисления.
В классических компьютерах каждая часть информации хранится в виде последовательности нулей и единиц. Вкл/выкл – только такую информацию понимают и интерпретируют современные компьютеры, консоли, смартфоны, умные часы и умные телевизоры. То же самое и с операциями, выполняемыми с этой информацией. Просматриваем ли мы фотографии из отпуска, болтаем с друзьями в чате, играем в последнюю игру или выполняем сложные криптографические вычисления – всё происходит в двоичном формате, где либо 0, либо 1, и ничего больше.
Насколько неэффективна эта система, мы можем увидеть, когда подойдем к её пределам. И независимо от того, не хватает ли нам места на смартфоне для нового селфи или ученым приходится неделями создавать математические модели развития пандемии, вина кроется в том, что для этого нужно слишком много нулей и единиц, а места для их хранения и ресурсов для обработки не хватает.
Кубит решает эту проблему! Этот способ хранения информации использует свойства квантовой физики, которые позволяют ему оставаться в суперпозиции. Кубит может принимать любое значение от 0 до 1 – он обладает свойствами всего спектра и может составлять, например, 15 процентов в данный момент и 85 процентов – в следующий. Теоретически это позволяет хранить гораздо больше информации или ускорить вычисления, но также связано с множеством проблем, которые сложно контролировать и даже понять.
Ещё одна особенность квантовых компьютеров, которая позволяет дополнительно масштабировать вычислительную мощность – это использование квантовой запутанности. Это состояние, когда два кубита соединены друг с другом, и всякий раз, когда мы наблюдаем за одним из них, другой будет находиться в точно таком же состоянии. Запутанность позволяет группировать кубиты в ещё более эффективные единицы для записи и обработки информации.
Квантовый компьютер и его принцип работы
Классический процессор – это транзисторная схема. Транзисторы могут в разные периоды времени пропускать ток или создавать препятствие для его прохождения. Это означает, что они находятся в одном из состояний двоичной системы – 1 или 0. В терминологии компьютерщиков это называется битом информации. Двоичная система перебирает для решения задачи все варианты, составляемые из символов 1 и 0. Затем, она выбирает те из них, которые соответствуют заданным условиям.
Суть квантового компьютера заключается в использовании принципиально других единиц – квантовых бит (кубитов). Они не перебирают все возможные варианты один за одним, как это делают биты. Благодаря особым свойствам кубитов машина перебирает практически все варианты решения задачи одновременно.
Ионы и атомы
Но и у сверхпроводящей технологии есть проблемы, которых нет в системах на ионах и нейтральных атомах. Ионы и атомы – естественная реализация квантовой системы, так как они фундаментально все одинаковы, а сверхпроводники – искусственные структуры, поскольку они делаются литографией, и все они разные. Помимо того, что нужно корректировать ошибки, с каждым кубитом надо «разговаривать» на его частоте. К тому же все сделано на твердотельной электронике, которая имеет прямой контакт с окружающей средой, и процессы разрушения квантовости там сильные.
В системах на ионах все очень классно, пока их немного. У них потрясающее качество логических операций, так как заряженные частицы прекрасно взаимодействуют между собой. Но есть проблемы в том, чтобы сделать сотни ионных кубитов. Ионы ловятся электрическими полями. «Не проблема сделать цепочку из ста ионов, – говорит руководитель научной группы по созданию квантового компьютера на холодных ионах Российского квантового центра Кирилл Лахманский. – Но увеличить больше сотни очень трудно. Проблемы начинаются, когда нужно расположить цепочки рядом, поставить две ловушки очень близко друг к другу. Масштабирование – главная проблема при работе с ионами».
Изолированные ионы и нейтральные атомы висят почти в абсолютном вакууме. В квантовых компьютерах на базе холодных атомов используются сфокусированные лазерные лучи, которые могут в области максимальной интенсивности удерживать атомы. Используя лазерные световые ловушки, можно делать решетку из сотен узлов и в каждый поместить одиночный нейтральный атом, который играет роль физического кубита. Увеличение числа кубитов не требует принципиального изменения установки. «Сложности начинаются с логическими операциями, – говорит Станислав Страупе. – Чтобы квантовое состояние распадалось медленнее, чем выполнялся алгоритм, надо научиться делать стабильные кубиты и совершать быстрые операции. С этим проблема во всех технологиях».
Вероятность создания квантового ПК
Кубит не построить из нескольких частиц, а в нужном состоянии могут находиться только атомы. По умолчанию эти множественные частицы неурегулированные. Китайские и канадские ученые пытались использовать для разработки компьютера чипы на фотонах, но исследования не увенчались успехом.
Существующие типы квантовых ПК:
- в полупроводниковых кремниевых кристаллах;
- на электронах в полупроводниковых квантовых точках;
- в микрорезонаторах на одиночных атомах;
- на линейных оптических элементах;
- на ионах в одномерном кристалле в ловушке Пауля.
Квантовые вычисления предполагают последовательность операций, которые совершаются с одним или несколькими кубитами, что вызывает изменения всей системы. Задача – выбрать из всех ее состояний правильное, дающее результат вычислений. Может быть сколь угодно много состояний, максимально приближенных к истинному.
Для полноценного квантового ПК нужны значительные достижения в физике. Программирование должно отличаться от существующего сейчас. Квантовые вычислительные устройства не смогут решить задачи, которые не под силу обычным, но ускорят решения тех, с которыми справляются.
Последним по времени прорывом стало создание процессора Bristlecone корпорацией Google. Весной 2018 года компания опубликовала заявление про получение 72-кубитного процессора, но его принципы работы не проафишировала. Считается, что для достижения «квантового превосходства», когда ПК начинает превосходить обычный, потребуется 49 кубитов. Google добилась выполнения условия, но вероятность погрешности вычислений (0,6 %) осталась выше требуемого.
История идеи
Идею квантовых вычислительных устройств впервые высказал в 1980 году советский математик Юрий Манин. В книге «Вычислимое и невычислимое», рассуждая о сложности процесса считывания и записи биологической информации с молекул ДНК, он заметил, что для моделирования этого процесса могли бы подойти квантовые устройства. Здесь же Манин указал указал на главное их преимущество — рост числа состояний таких устройств идет по степенному закону:
Годом позже, в мае 1981 года, идею квантового компьютера сформулировал физик и нобелевский лауреат Ричард Фейнман в докладе, посвященном возможности моделирования физических процессов.
Ученый подчеркнул, что все явления подчиняются квантовым законам (а классическая физика — только приближение). Если поведение одиночного квантового объекта достаточно легко поддается моделированию с помощью компьютера, то нарастание количества элементов ведет к экспоненциальному росту сложности вычислений.
Из этого следовало два выхода, говорил Фейнман: первый — признать, что квантовые системы не поддаются моделированию с помощью компьютеров, и второй — построить вычислительную машину из квантовых элементов, подчиняющихся тем же квантовым законам, что и моделируемая система.
В своем докладе Фейнман впервые сформулировал понятие квантового симулятора — квантовой системы, воспроизводящей поведение какой-то другой квантовой системы, а также универсального квантового компьютера — такой квантовой системы, которую можно перенастроить (перепрограммировать) так, чтобы она была способна моделировать поведение многих других систем.
Наконец, Фейнман также впервые описал пример работы системы из кубитов, созданных из фотонов с определенной поляризацией.
Работа одного из элементов квантового компьютера в представлении Фейнмана
В 1985 году Дэвид Дойч из Оксфордского университета разработал теорию универсального квантового компьютера как квантовой машины Тьюринга.
Однако первый в мире квантовый компьютер мог появиться намного раньше, еще до статей Манина и Фейнмана, в 1950-е годы. Тогда японский ученый Гото Эйичи экспериментировал с низкотемпературной электроникой для разработки миниатюрного магнитно-управляемого бита, то есть системы, способной находиться в двух состояниях и служить, как и обычный полупроводниковый транзистор, основным элементом компьютера.
Эйичи назвал свой бит параметроном, и его первый прототип был создан в 1958 году в Токийском университете. Ниже представлен схематический чертеж оригинального устройства Гото.
Гото Эйичи и его команда повысить энергетический барьер между двумя состояниями битов, чтобы их гарантированно можно было различить. Иначе говоря, японские ученые хотели, чтобы устройство ни в коем случае не оказывалось в бистабильном состоянии, то есть в состоянии квантовой суперпозиции.
Такое состояние рассматривалось ими как нечто, вызывающее неуправляемый и нежелательный шум, в то время как квантовые эффекты могли дать им принципиально новый метод вычислений. Если бы не стремление японских специалистов к избавлению от ошибок, квантовые симуляторы, возможно, появились бы на полвека раньше.
Существуют ли настоящие квантовые компьютеры?
— Они уже есть, и вполне настоящие. Их покупают и продают. Канадская компания «Ди-вэйв» (D-Wave) с 2011 года продает процессоры на нескольких сотнях и более кубитов. Одним из покупателей является аэрокосмическая корпорация «Локхид Мартин» (Lockheed Martin), приобретшая один из первых 128-кубитных процессоров за $11 млн. В начале прошлого года «Ди-вэйв» выпустила устройство с 2000 кубитов.
Правда, на стол в каждой отдельной семье квантовый компьютер поставить трудно — это ящик трехметровой высоты стоимостью $15 млн, внутри которого холоднее, чем в открытом космосе, нагретом реликтовым излучением до 2,725 Кельвина или -270,425 градусов по Цельсию. [Компьютер D-Wave работает при температуре -273 градуса по Цельсию, тогда как на орбите Земли средняя температура абсолютно черного тела составит +4 градуса — прим. Onliner.by]. И даже если оставить сомнения в истинной квантовости компьютера «Ди-вэйв», выгода от него — лишь для отдельных специализированных задач.
В начале прошлого года D-Wave выпустила устройство с 2000 кубитов, которое работает при температуре −273 градуса по Цельсию
В некоторых случаях речь идет о задачах по оптимизации функции затрат по принципу квантового отжига. Например, компании Google это позволило в одном из таких алгоритмов добиться в 100 млн раз большего быстродействия по сравнению с обычным компьютером.
А летом прошлого года группа физиков под руководством профессора Гарварда и сооснователя Российского квантового центра Михаила Лукина смогла создать 51-кубитный квантовый компьютер для моделирования квантовых систем, то есть квантовый симулятор. «Наш симулятор обладает достаточно хорошей когерентностью и довольно большим количеством кубитов, но все это есть и у других систем. Что важно — нам удалось сделать систему с высокой степенью программируемости», — говорил Михаил Лукин в интервью РБК. Квантовый симулятор, по мнению американского ученого Кристофера Монро, это то, что можно запрограммировать под выполнение лишь определенного вида задач и со временем превратить в универсальный квантовый компьютер, когда станет возможно программировать симулятор произвольным образом. Михаил Лукин отмечает, что на данном этапе исследований грань между компьютером и симулятором очень размыта.
Компания Intel в октябре прошлого года объявила о выпуске экспериментального 17-кубитного квантового процессора. Разработчики утверждают, что применили новую архитектуру, которая позволила повысить надежность, улучшить температурные характеристики и изоляцию от помех из-за совместной работы кубитов.
Работы ведутся. Как в середине прошлого века ученые предполагали, что на весь мир хватит и пяти компьютеров, так в нынешнем столетии хочется надеяться, что и задач для квантовых компьютеров станет больше, и для их производства найдутся эффективные и масштабируемые технологии. Пока же есть загвоздки.
История создания квантового компьютера
У истоков самой идеи квантового программирования стоит человек, известный каждому, кто хоть немного интересуется физикой. Знаменитый американский ученый и популяризатор науки Ричард Фейнман, лауреат Нобелевской премии по физике, предположил возможность существования квантового компьютера еще в 1981 году. Произошло это на совместной конференции, которую организовали корпорация IBM и MIT (Массачусетский технологический институт). В то время никто еще не задумывался всерьез о реализации этой идеи на практике. Даже в теории она казалась весьма непростой. Квантовая механика, в отличие от классической, которую все мы изучали в школе, описывает явления не на уровне тел, а на уровне атомов, электронов, фотонов и прочих элементарных частиц. И квантовые эффекты, которые предполагалось использовать, создавая первый квантовый компьютер, проявляются в микроскопических масштабах.
Переместиться на микроуровень в поисках новых возможностей ученых заставили физические основы, на которых базируется традиционная вычислительная техника. Схема ее работы основана на транзисторах, в каждом современном компьютере их миллионы или даже миллиарды. Каждый из них может в определенный момент времени находиться в «открытом» или «закрытом» состоянии — как электрический переключатель. Эти два состояния и представляют собой те самые нули и единицы, с помощью которых человек общается с компьютером (и наоборот). По мере развития технологий производители размещают на процессорах компьютеров все большее и большее количество транзисторов. Это увеличивает скорость работы и вычислительные возможности техники. Но всему есть физический предел, и мы вплотную к нему приблизились. Если раньше вычислительная мощность производимых процессоров удваивалась примерно каждые два года, то сегодня этот темп падает на глазах. В то же время потребности человечества в вычислениях постоянно растут, опережая развитие электроники.
Но вернемся к Ричарду Фейнману и его теории. Основное отличие квантового компьютера от обычного заключается в представлении информации в его процессоре. Единица информации в обычном компьютере — бит, представляющий собой ноль или единицу. Третьего не дано. Единица хранения информации для квантового компьютера — квантовый бит, или, сокращенно, кубит. Это квантовый объект — вещь, которую гораздо проще описать, чем представить.
Ближе к человеку
Еще одна большая задача — программное обеспечение квантовых вычислений, которое выстраивает связь от квантового процессора к конечному потребителю. Для этого требуется несколько уровней сложнейшей математики. Первый уровень, который очень близок к физике, решает задачи, как на конкретной физической платформе реализовать операции: проанализировать, какие состояния наилучшим образом подходят для реализации, и, выбрав достаточное количество простых операций, построить из них универсальный набор квантовых логических элементов. Кроме того, необходимы методы оптимального управления состояниями квантового процессора, то есть нужно правильно построить систему и защитить ее от внешнего окружения. На этом этапе теоретики очень плотно общаются с экспериментаторами и интересуются, как работают кубиты, какие операции можно делать параллельно, а какие — обязательно последовательно, какие кубиты можно измерять, а какие — нет.
Дальше идут методы подавления и исправления ошибок. Из-за воздействия декогеренции — потери квантовой информации — возникают ошибки в ходе вычислений, и математически можно либо подавить их влияние на вычисления, либо вовсе их устранить. Это уже квантовые аналоги кодов коррекции ошибок в классических вычислениях. «В квантовом мире суперэффективных кодов коррекции ошибок пока нет, — утверждает профессор МФТИ, руководитель научной группы «Квантовые информационные технологии» Алексей Федоров, который и занимается теоретическим сопровождением проекта квантовых вычислений. — Это одна из больших задач».
На следующем уровне абстракции есть квантовый компьютер как ресурс, работающий с ошибками или без. И нужно понять, как построить квантовый алгоритм для решения конкретных задач. Как заставить эту квантовую магию работать? «Строить квантовые алгоритмы — настоящее искусство, — говорит Алексей,. — Их придумано не так много за последнее время — десятки. Это почти магия — заставить квантовую физику работать над решением конкретных задач».
На все это наслаивается более прикладная, но не менее интересная задача — как встроить все это в традиционные инструменты для разработки программного обеспечения? Потому что конечные пользователи систем вовсе не специалисты по квантовым вычислениям. Требуется создать набор библиотек или алгоритмов для традиционных средств разработки, чтобы специализированные задачи отправлялись на квантовые процессоры — QPU, как сейчас графика обрабатывается на специализированных графических процессорах — GPU. Имея такой инструмент, очень абстрагированный от реального «железа», можно максимально приблизиться к конечному пользователю.
Однако это еще не все. «Часть пользователей квантовых компьютеров — ученые, — говорит Алексей Федоров. — Для них нужно создать графическую и максимально приближенную к квантовому компьютеру среду разработки. Чтобы люди обучались и понимали, как работает квантовый компьютер. Чтобы они выбирали кубиты и делали с ними реальные логические операции».