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

Квантовые вычисления используют радикально другой подход к программированию. Руководитель отдела образования IBM обсуждает, как начать работу

Область квантовых вычислений добилась быстрого прогресса только за последние несколько лет. В 2016 году IBM разместила первый квантовый компьютер в облаке, расширив охват этой технологии за пределы исследовательских лабораторий. Наша цель — сделать квантовые вычисления доступными для всех, кто заинтересован, и помочь подготовить готовые к квантовым вычислениям кадры, которые могут превратить проблемы отрасли в проблемы, которые могут решить квантовые компьютеры.

Промышленность начала экспериментировать с квантовыми компьютерами, чтобы помочь оптимизировать расчеты по транзакциям, использовать машинное обучение для получения новых идей и ускорения научных открытий. Для успеха тех и других проектов нам понадобится намного больше квантовых разработчиков. Хотите знать, стоит ли вам тоже подготовиться к «квантовой подготовке»? Короткий ответ: да.

Всего четыре с половиной года назад, когда я был ассистентом преподавателя в аспирантуре Принстонского университета, я преподавал квантовые вычисления с помощью доски примерно 20 студентам. С тех пор, как IBM сделала доступными облачные квантовые компьютеры, преподаватели из Принстона — академического партнера IBM Q Network с 2019 года — смогли интегрировать практический опыт в свою учебную программу. Посещаемость курса (ELE 396/COS 396) выросла и стала одной из самых больших на факультете.

Сегодня несколько университетов по всему миру предлагают аналогичные курсы квантовых вычислений, интегрируя квантовые облачные вычисления. компьютеров в их педагогике.

Что вам нужно знать о квантовых компьютерах

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

В то время как биты в наших классических компьютерах могут принимать только значения. 0 или 1, кубиты могут существовать в комбинациях 0 и 1. Это свойство, известное как суперпозиция, означает, что отдельные кубиты могут принимать состояния, недоступные в классических компьютерах, таких как ноутбук, который я использовал для написания этой статьи.

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

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

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

Запуск квантовых вычислений

Требуется всего одна операция, чтобы перейти из классического состояния вычислений, которое выглядит как 0 или 1, в состояние суперпозиции, где информация может быть в виде комбинации 0 и 1. Точно так же требуется всего две операции для создания сцепления между двумя кубитами.

IBM Quantum Experience предоставляет доступ к общедоступным ресурсам IBM. 5-кубитовые и 15-кубитные системы. IBM предоставляет инструмент под названием Circuit Composer для написания квантовых программ путем перетаскивания гейтов индивидуально на кубиты.

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

Для опытных разработчиков в отрасли, которые хотят изучить потенциальные приложения квантовых вычислений, Qiskit element Aqua (алгоритмы для приложений квантовых вычислений) предлагает библиотеку алгоритмов для искусственного интеллекта, химии, финансов и оптимизации. Например, существует ряд учебных пособий, связанных с финансами, в которых можно поэкспериментировать с анализом кредитного риска, ценообразованием с фиксированным доходом, ценообразованием опционов на корзину и т. Д.

Ученые IBM и JP Morgan Chase опубликовали исследование о тестировании потенциала будущее ускорение ценообразования опционов по сравнению с существующими классическими методами Монте-Карло с использованием алгоритма оценки амплитуды в Qiskit.

Абрахам Асфау, руководитель отдела квантового образования в IBM Quantum

Подробнее о квантовом вычисления

  • Google утверждает, что разработал алгоритм для квантового компьютера, на запуск которого традиционному «классическому» компьютеру потребуется 10 000 лет.
  • Volkswagen Недавно Group продемонстрировала, как она работает с D-Wave для исследования использования квантовых вычислений. Узнаем, чего хочет добиться автопроизводитель.

Содержание продолжается ниже

Загрузите это бесплатное руководство

Децентрализация центров обработки данных : Новые вызовы безопасности на периферии

В сентябре 2020 года Computer Weekly Security Think Tank, наша группа экспертов по информации и кибербезопасности, рассмотрела проблемы, связанные с децентрализацией центра обработки данных, и изложила Чтобы ответить на вопрос, как специалисты по безопасности могут гарантировать, что такие настройки столь же безопасны, как традиционная централизованная модель? Подробнее читайте в этом электронном руководстве.

Подробнее о микросхемах и аппаратном обеспечении процессора


  • Квантовые машины в суперпозиции в программировании суперпозиции

  • Honeywell рекламирует скорость квантового компьютера, но насколько быстро он?

  • квантовые вычисления

  • IBM отмечает четвертую годовщину квантового облака с проблемой кодирования


Программирование квантового компьютера

с ection>

Исследование сингулярности

Программное обеспечение для квантовых логических вентилей

Амели Шрайбер

12 апреля 2020 г. · чтение за 6 минут

Распространено заблуждение, что квантовые компьютеры еще не готовы для приложений, а у технологии еще есть много лет, прежде чем она станет полезной. В этой статье мы рассмотрим некоторые из основных принципов программирования квантового компьютера и рассмотрим это заблуждение. Мы рассмотрим бесплатное программное обеспечение с открытым исходным кодом, такое как QISKit от IBM, а также программное обеспечение для квантового машинного обучения PennyLane. Мы также объясним, как вы можете запускать свои программы на реальных квантовых компьютерах в облаке в IBM.. В следующей статье мы поговорим о некоторых приложениях машинного обучения, которые в настоящее время готовы к использованию для всех, кому интересно.

Что такое квантовые компьютеры?

Прежде всего, давайте немного поговорим о квантовых вычислениях и чего можно ожидать от технологии. Современные архитектуры компьютерных микросхем, которые можно найти внутри телефона, ноутбука или планшета, построены на основе кремния. Один из наиболее распространенных методов — вытравливание крошечных микроскопических узоров на кремниевом чипе с использованием особого типа световой литографии. Эти крошечные узоры позволяют нам создавать кремниевые чипы, которые контролируемо переносят электроны (электрический ток) через чип. В настоящее время мы достигли физического предела того, насколько маленькими могут быть эти крошечные узоры. Их можно эффективно создавать в массовых количествах с точностью до нанометров, с типичной архитектурой около 10 нанометров, что составляет от 20 до 50 атомов в поперечнике.

Существует более точная технология, которая может управлять отдельными атомами и в настоящее время мы можем создавать архитектуры, которые даже меньше, чем то, что вы обычно найдете в компьютере или телефоне. Этот процесс изготовления немного медленнее, и поэтому массовое производство этих гораздо меньших чипов атомарной точности немного сложнее. Одна из трудностей, с которыми мы сталкиваемся при создании компьютерных микросхем с такими небольшими характеристиками, — это квантовое поведение электронов и атомов. У электронов есть нечто, называемое дуальностью волна-частица. Это означает, что при определенных обстоятельствах электрон ведет себя как волна, а не частица, и поэтому удержание его крошечным вытравленным узором на кремниевом кристалле становится намного труднее, когда вытравленные узоры слишком малы. Электрон «распространяется», и происходит утечка электронов, вызывая проблемы с током, протекающим через эти крошечные каналы в кремниевом кристалле. Эта утечка означает, что чип не работает должным образом, и волнообразное поведение электрона становится проблемой. Это часто называют «смертью закона Мура», и это означает остановку роста производительности компьютеров, которую мы привыкли ожидать в последние несколько десятилетий. Это большая проблема, если вы делаете ставку на рынок, построенный на предположении о постоянном и непрерывном росте, потому что действительно существует физический предел тому, насколько маленькими и эффективными вы можете делать компьютерные чипы.

Квантовые вычисления. стремится использовать эту «проблему» квантово-механического поведения в качестве вычислительного преимущества, используя ее для обработки информации принципиально отличным от обычных двоичных единиц и нулей способом в наших телефонах и ноутбуках. Квантовый компьютер можно рассматривать как ASIC (специализированную интегральную схему). Это не совсем так, но это неплохая аналогия. Думайте об этом как об особом виде компьютерного чипа, предназначенного для выполнения определенных видов вычислений гораздо более эффективно, чем стандартные кремниевые чипы.. Давайте посмотрим, как представить основные вычислительные единицы в QISKit.

Состояния Qubit в QISKit

Во-первых, вам необходимо загрузить бесплатный дистрибутив Anaconda, чтобы вы могли использовать Jupyter Lab. После того, как вы загрузили Anaconda, откройте навигатор Anaconda и откройте экземпляр Jupyter Lab. Если вы хотите скачать блокнот с Github, вы можете найти его здесь. Если вы хотите увидеть интерактивную версию в Binder, вы можете найти ее здесь. Чтобы установить QISKit, вы можете просто использовать pip в Jupyter notebook или Jupyter Lab.

 Изображение для сообщения

Изображение для сообщения

Теперь, если вы хотите изобразить« раскручивающееся »состояние на сфере Блоха, вы можно ввести следующую команду.

Изображение для сообщения

Мы можем построить график состояния «Spin-Down» кубита с помощью следующей команды.

Изображение для публикации

В общем, состояния кубита больше не ограничиваются простыми 0 или 1 как классический двоичный бит информации. Кубиты могут находиться в бесконечном множестве состояний. Каждое состояние представлено точкой на сфере Блоха. Spin-Up соответствует состоянию 0, а Spin-Down соответствует состоянию 1, но кубит также может находиться в комбинации этих двух состояний. Каждая точка на сфере Блоха, как и координаты на поверхности Земли, представляет собой уникальное состояние кубита. Эта способность кубита находиться в бесконечном множестве различных состояний связана с концепцией «суперпозиции» в квантовой физике. Например, следующее состояние на сфере Блоха представляет собой четную смесь состояния 0 и состояния 1, поэтому оно находится в суперпозиции этих двух состояний.

Изображение для публикации

Это« Spin-Right » позиция представлена ​​как «суперпозиция»,

 Изображение для сообщения

 Изображение для сообщения

Изображение для сообщения

 Изображение для сообщения

Оцените статью
logicle.ru
Добавить комментарий