Онлайн курс «Введение в квантовые вычисления»

Запись на курс
quantum computing course

В последние годы квантовые вычислительные устройства постепенно выходят из физических лабораторий и становятся прикладными разработками, которыми занимаются R&D отделы ведущих IT компаний мира. Квантовые алгоритмы из любопытных теоретических конструкций превращаются в прикладные инструменты, предназначенные для решения сложных вычислительных задач. Вместе с тем, атмосфера ажиотажа вокруг квантовых вычислений приводит к некоторой переоценке достижений и явному кризису завышенных ожиданий от технологии со стороны IT специалистов с одной стороны, и зачастую необоснованной критике со стороны специалистов-физиков с другой. При этом число хороших образовательных ресурсов, посвященных этой сложной тематике, в особенности на русском языке, очень ограничено. В нашем курсе мы постараемся создать у слушателей теоретическую базу в области квантовых вычислений в достаточном объеме для того, чтобы позволить им самостоятельно разбираться в современных работах по этой тематике.

В курсе будет рассмотрена гейтовая модель квантовых вычислений и универсальные наборы квантовых логических вентилей. Мы поговорим об основных типах квантовых алгоритмов, таких как алгоритм оценки фазы, алгоритм Шора и другие алгоритмы, основанные на квантовом преобразовании Фурье; алгоритм Гровера и квантовые алгоритмы поиска; квантовые вариационные алгоритмы. Подробно обсудим проблемы борьбы с декогеренцией и ошибками в квантовых вентилях, вопросы построения квантовых кодов коррекции ошибок. Будут рассмотрены варианты архитектуры квантового компьютера, устойчивого к ошибкам. Мы обсудим вопросы принципиальной возможности создания устойчивого к ошибкам квантового компьютера и реальное положение дел при современном уровне развития технологий.

Основная задача курса – познакомить слушателей с бурно развивающейся областью науки и технологии на стыке физики и компьютерных наук – квантовыми вычислениями.

Лекция 1. Введение. Историческая перспектива и современное состояние области. Зарождение индустрии квантовых вычислений. Представление об особенностях квантовых вычислений на примере простейшего алгоритма Дейча.

Лекция 2. Необходимые сведения из теории вычислительной сложности алгоритмов. Понятие алгоритма, машина Тьюринга, универсальная машина Тьюринга. Вычислимые и невычислимые функции, проблема остановки. Задачи разрешимости, представление о классах вычислительной сложности. Классы P и NP. Вероятностная машина Тьюринга, класс BPP. Задачи пересчёта количества решений, класс сложности #P. Проблема демонстрации квантового превосходства на примере задачи BosonSampling.

Лекция 3. Гейтовая модель классических вычислений, универсальные вентили. Гейтовая модель квантовых вычислений. Элементарные квантовые логические вентили, однокубитные и двухкубитные вентили. Условные двухкубитные вентили, представление условных многокубитных вентилей через двухкубитные. Описание измерений в квантовой теории, описание измерений в квантовых схемах.

Лекция 4. Универсальность однокубитных вентилей и вентиля CNOT. Дискретизация однокубитных вентилей, универсальные дискретные наборы вентилей. Сложность аппроксимации произвольного унитарного преобразования.

Лекция 5. Квантовое преобразование Фурье. Алгоритм оценки фазы, оценка необходимых ресурсов, упрощённый алгоритм Китаева. Экспериментальные реализации алгоритма оценки фазы и приложения к расчёту молекулярных термов.

Лекция 6. Алгоритм поиска периода функции. Факторизация чисел на простые множители, алгоритм Шора. Экспериментальные реализации алгоритма Шора. Другие алгоритмы, основанные на квантовом преобразовании Фурье.

Лекция 7. Квантовые алгоритмы поиска. Алгоритм Гровера, геометрическая иллюстрация, оценка ресурсов. Подсчёт числа решений поисковой задачи. Ускорение решения NP-полных задач. Квантовые поиск в неструктурированной базе данных. Оптимальность алгоритма Гровера. Алгоритмы, основанные на случайных блужданиях. Экспериментальные реализации поисковых алгоритмов.

Лекция 8. Классические коды коррекции ошибок, линейные коды. Ошибки в квантовых вычислениях, отличие от классического случая. Трехкубитный код, исправляющий X-ошибку. Трехкубитный код, исправляющий Z-ошибку. Девятикубитный код Шора.

Лекция 9. Общая теория исправления ошибок, дискретизация ошибок, модель независимых ошибок. Классические линейные коды, коды Хэмминга. Квантовые коды Кальдербанка-Шора-Стина.

Лекция 10. Формализм стабилизаторов, построение кодов КШС в формализме стабилизаторов. Унитарные преобразования и измерения в формализме стабилизаторов. Понятие о вычислениях, устойчивых к ошибкам. Построение универсального набора устойчивых к ошибкам вентилей. Измерения, устойчивые к ошибкам. Пороговая теорема. Экспериментальные перспективы реализации квантовой коррекции ошибок и устойчивых к ошибкам вычислений.

Лекция 11. Квантовые симуляции: «цифровые» и аналоговые. Некоторые экспериментальные реализации и перспективы аналоговых квантовых симуляций.

Лекция 12. Квантовые вычисления на NISQ-устройствах. Квантовые вариационные алгоритмы: QAOA и VQE. Приложения к задачам квантовой химии. Возможности реализации на современных квантовых процессорах, перспективы развития.

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

Курс рассчитан прежде всего на обучающихся в магистратуре по физическим специальностям. Также он может быть интересен студентам старших курсов специальностей, связанных с информационными технологиями и вычислительной техникой и IT специалистам, желающим разобраться в возможностях и современном положении дел в области квантовых вычислений. Уровень требований к слушателям курса достаточно высок. Необходимым минимумом является знание линейной алгебры в объеме стандартного университетского курса. Крайне желательно (хотя и не абсолютно необходимо) знание математического аппарата квантовой теории. Некоторые отдельные части лекционного курса, особенно посвященные вопросам экспериментальных реализаций квантовых вычислений, будут выходить за рамки общей программы физических факультетов и требовать, например, некоторых сведений из квантовой оптики. Однако эти части могут быть пропущены без особого ущерба для понимания остального материала.

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