Тема 1. Введение
Почему будущее вычислений за квантовыми компьютерами? Какое отношение физика (тем более квантовая) имеет к информатике?
Уважаемые слушатели, некоторые материалы данного курса доступны для ознакомительного просмотра. Чтобы получить доступ ко всем материалам курса, необходимо оплатить доступ к материалам.
Команда курса желает вам успехов в освоении материала. Мы будем искренне рады, если знания, полученные вами здесь, помогут вам в достижении новых теоретических и практических результатов.
Форма обучения заочная (дистанционная). Еженедельные занятия будут включать просмотр тематических видеолекций, изучение дополнительных материалов и выполнение тестовых заданий с автоматизированной проверкой результатов, тестирование по пройденному материалу. Для получения сертификата необходимо выполнить все задания, тесты и написать финальный экзамен.
Мы ждем на курсе математиков и программистов, которым было бы интересно освоить новую перспективную область – квантовые вычисления. Вам потребуется вспомнить линейную алгебру, гильбертовы пространства над комплексными числами, теорию операторов, теорию чисел (немножко) и, тоже совсем чуть-чуть, теорию сложности вычислений.
Курс разделен на логические блоки, каждый из которых содержит лекции разных уровней сложности:
СИНИЙ – вводные блоки, охватывающие необходимые знания для остальной части курса
ЗЕЛЕНЫЙ – лекции «основного» блока курса
ЖЕЛТЫЙ – лекции, глубже раскрывающие темы блоков
КРАСНЫЙ – лекции про физику и математику, которая стоит за всем этим
БЕЛЫЙ – карьера в области квантовых вычислений и квантового машинного обучения
Почему именно этот курс?
Этот курс отличается от других курсов по квантовым вычислениям:
Основатель курса Семён Синченко:
Я очень люблю квантовые технологии и являюсь их большим энтузиастом. При этом моя основная работа связана с машинным обучением, поэтому идею сделать курс по QML я вынашивал очень давно. В сообществе ODS мне удалось найти единомышленников, и вместе мы подготовили для вас набор лекций и домашних заданий, которые проведут вас через удивительный мир кубитов, гейтов и квантовых нейросетей. Мы очень хотели сделать курс одновременно простым и понятным, но также строгим и глубоким с технической точки зрения и, надеюсь, у нас это получилось. В основном мы будем обсуждать темы, которые будут перспективны в ближайшие годы, а также максимально ориентироваться на практической стороне вопроса. Я лично верю, что квантовые технологии по мере их развития произведут не меньшую революцию, чем, например, распространение вычислений на видеокартах, а также позволят по-другому подойти к задачам, которые мы раньше не умели решать . Надеюсь, что после прохождения этого курса поверите и вы! В любом случае, я уверен, что тема QML и квантовых вычислений как минимум стоит того, чтобы с ней познакомиться. Надеюсь, что вам будет интересно!
Как проходить этот курс?
Рекомендуется проходить курс в том порядке, который обозначен на схеме. У курса есть пререквизиты – программирование на Python, основы линейной алгебры и машинного обучения, советуем с ними ознакомиться и (опционально) проверить себя с помощью входного теста.
Как можно помочь?
Помочь можно словом и делом. Если знаете людей, интересующихся квантовыми вычислениями – замолвите словечко. Курс разрабатывается сообществом OpenDataScience, такими же «больными», как и организаторы. Если горите желанием в чем-то помочь, то создавайте Issue, а лучше сразу Pull Request в репозитории курса (Contributing guide).
Основная задача курса – познакомить слушателей с бурно развивающейся областью науки и технологии на стыке физики и компьютерных наук – квантовыми вычислениями. В последние годы квантовые вычислительные устройства постепенно выходят из физических лабораторий и становятся прикладными разработками, которыми занимаются R&D отделы ведущих IT компаний мира. Квантовые алгоритмы из любопытных теоретических конструкций превращаются в прикладные инструменты, предназначенные для решения сложных вычислительных задач. Вместе с тем, атмосфера ажиотажа вокруг квантовых вычислений приводит к некоторой переоценке достижений и явному кризису завышенных ожиданий от технологии со стороны IT специалистов с одной стороны, и зачастую необоснованной критике со стороны специалистов-физиков с другой. При этом число хороших образовательных ресурсов, посвященных этой сложной тематике, в особенности на русском языке, очень ограничено. В нашем курсе мы постараемся создать у слушателей теоретическую базу в области квантовых вычислений в достаточном объеме для того, чтобы позволить им самостоятельно разбираться в современных работах по этой тематике.
В курсе будет рассмотрена гейтовая модель квантовых вычислений и универсальные наборы квантовых логических вентилей. Мы поговорим об основных типах квантовых алгоритмов, таких как алгоритм оценки фазы, алгоритм Шора и другие алгоритмы, основанные на квантовом преобразовании Фурье; алгоритм Гровера и квантовые алгоритмы поиска; квантовые вариационные алгоритмы. Подробно обсудим проблемы борьбы с декогеренцией и ошибками в квантовых вентилях, вопросы построения квантовых кодов коррекции ошибок. Будут рассмотрены варианты архитектуры квантового компьютера, устойчивого к ошибкам. Мы обсудим вопросы принципиальной возможности создания устойчивого к ошибкам квантового компьютера и реальное положение дел при современном уровне развития технологий.
Форма обучения заочная (дистанционная).
Еженедельные занятия будут включать просмотр тематических видео-лекций и выполнение тестовых заданий с автоматизированной проверкой результатов. Важной составляющей курса является самостоятельное решение слушателем предложенных задач. Задачи будут различаться по своей сложности, большая часть из них представляют собой простые упражнения, однако некоторые могут потребовать значительных временных затрат на решение.
Лекция 1. Введение. Историческая перспектива и современное состояние области. Зарождение индустрии квантовых вычислений. Представление об особенностях квантовых вычислений на примере простейшего алгоритма Дейча.
Лекция 2. Некоторые вопросы теории сложности вычислений. Понятие алгоритма, машина Тьюринга, универсальная машина Тьюринга. Вычислимые и невычислимые функции, проблема остановки. Задачи разрешимости, представление о классах вычислительной сложности. Классы P и NP. Вероятностная машина Тьюринга, класс BPP. Задачи пересчёта количества решений, класс сложности #P. Проблема демонстрации квантового превосходства на примере задачи BosonSampling.
Лекция 3. Основы гейтовой модели квантовых вычислений. Гейтовая модель квантовых вычислений. Элементарные квантовые логические вентили, однокубитные и двухкубитные вентили. Условные двухкубитные вентили, представление условных многокубитных вентилей через двухкубитные. Описание измерений в квантовой теории, описание измерений в квантовых схемах.
Лекция 4. Универсальный набор квантовых логических вентилей. Дискретизация однокубитных вентилей, универсальные дискретные наборы вентилей. Сложность аппроксимации произвольного унитарного преобразования.
Лекция 5. Квантовое преобразование Фурье. Алгоритм оценки фазы, оценка необходимых ресурсов, упрощённый алгоритм Китаева. Экспериментальные реализации алгоритма оценки фазы и приложения к расчёту молекулярных термов.
Лекция 6. Алгоритм Шора. Факторизация чисел на простые множители, алгоритм Шора. Экспериментальные реализации алгоритма Шора. Другие алгоритмы, основанные на квантовом преобразовании Фурье.
Лекция 7. Квантовые алгоритмы поиска. Алгоритм Гровера, геометрическая иллюстрация, оценка ресурсов. Подсчёт числа решений поисковой задачи. Ускорение решения NP-полных задач. Квантовые поиск в неструктурированной базе данных. Оптимальность алгоритма Гровера. Алгоритмы, основанные на случайных блужданиях. Экспериментальные реализации поисковых алгоритмов.
Лекция 8. Квантовая коррекция ошибок. Простейшие коды. Ошибки в квантовых вычислениях, отличие от классического случая. Трехкубитный код, исправляющий X-ошибку. Трехкубитный код, исправляющий Z-ошибку. Девятикубитный код Шора.
Лекция 9. Квантовая коррекция ошибок. Коды Кальдербанка-Шора-Стина. Общая теория исправления ошибок, дискретизация ошибок, модель независимых ошибок. Классические линейные коды, коды Хэмминга. Квантовые коды Кальдербанка-Шора-Стина.
Лекция 10. Вычисления, устойчивые к ошибкам. Формализм стабилизаторов, построение кодов КШС в формализме стабилизаторов. Унитарные преобразования и измерения в формализме стабилизаторов. Понятие о вычислениях, устойчивых к ошибкам. Построение универсального набора устойчивых к ошибкам вентилей. Измерения, устойчивые к ошибкам. Пороговая теорема. Экспериментальные перспективы реализации квантовой коррекции ошибок и устойчивых к ошибкам вычислений.
Лекция 11. Квантовые вычисления для NISQ систем. Квантовые вариационные алгоритмы: QAOA и VQE. Приложения к задачам квантовой химии. Возможности реализации на современных квантовых процессорах, перспективы развития.
В результате обучения слушатель получит базовые представления о квантовых алгоритмах, квантовой коррекции ошибок и архитектуре универсального квантового компьютера, а также некоторое представление о современном состоянии развития технологии квантовых вычислений. В курсе не рассматриваются различные существующие языки программирования для квантовых устройств, однако полученных в рамках курса знаний должно быть достаточно для того, чтобы начать практическую работу на некоторых из существующих квантовых процессоров, например, на доступных процессорах IBM.
СТАЖИРОВКА ДЛЯ ОСВОИВШИХ КУРС
«Успешное прохождение курса (не ниже 75 баллов) даёт возможность для участия в очной оплачиваемой стажировке (18/10/21—04/02/22) по направлению «Квантовые вычисления» в компании ИнфоТеКС в следующих городах: Санкт-Петербург, Пенза, Уфа, Томск».
Форма обучения заочная (дистанционная).
Еженедельные занятия будут включать просмотр тематических видео-лекций и выполнение тестовых заданий с автоматизированной проверкой результатов. Важной составляющей курса является самостоятельное решение слушателем предложенных задач. Задачи будут различаться по своей сложности, большая часть из них представляют собой простые упражнения, однако некоторые могут потребовать значительных временных затрат на решение.
В открытом доступе вы можете ознакомиться с видеолекциями первых двух недель, остальные материалы станут доступны после оплаты курса.
Курс рассчитан прежде всего на обучающихся в магистратуре по физическим специальностям. Также он может быть интересен студентам старших курсов специальностей, связанных с информационными технологиями и вычислительной техникой и IT специалистам, желающим разобраться в возможностях и современном положении дел в области квантовых вычислений.
Уровень требований к слушателям курса достаточно высок. Необходимым минимумом является знание линейной алгебры в объеме стандартного университетского курса. Крайне желательно (хотя и не абсолютно необходимо) знание математического аппарата квантовой теории. Некоторые отдельные части лекционного курса, особенно посвященные вопросам экспериментальных реализаций квантовых вычислений, будут выходить за рамки общей программы физических факультетов и требовать, например, некоторых сведений из квантовой оптики. Однако эти части могут быть пропущены без особого ущерба для понимания остального материала.
Тема 2. Математическая модель квантовых вычислений
В этой теме ознакомитесь с математической моделью квантовой информации и квантовых вычислений и поймете, что такое алгоритм для квантового компьютера.
Тема3. Квантовый компьютер и квантовые алгоритмы
В этой теме мы рассмотрим прототип квантового компьютера на двух фотонах и несколько простых квантовых алгоритмов.
Тема 5. Алгоритм Гровера и границы квантовых вычислений
По завершении этого курса учащиеся будут:
Дисциплина участвует в формировании универсальных компетенций обучающихся по образовательным программам бакалавриата/специалитета, а также иных компетенций, предусмотренных образовательной программой.
Тема 4. Алгоритм Шора
В этой теме мы разберем самый известный квантовый алгоритм – алгоритм Шора, позволяющий эффективно раскладывать составное число на множители.