Моделювання природи
Подивись це відео від Олівії Лейнс про моделювання природи за допомогою квантових комп'ютерів або відкрий відео в окремому вікні на YouTube.
Цей урок використовує матеріали з цього туторіалу:
Utility-scale error mitigation with probabilistic error amplification tutorial
Вступ
Одне з найпереконливіших застосувань квантових комп'ютерів — їхня здатність моделювати природні явища. У цьому уроці ми розглянемо, як квантові комп'ютери використовуються для розв'язання задач квантової динаміки — зокрема, як вони допомагають нам зрозуміти часову еволюцію квантової системи.
Спочатку ми загально розглянемо основні кроки, що входять до проведення таких симуляцій. Потім вивчимо конкретний приклад: експеримент, який IBM представила у 2023 році та який продемонстрував концепцію квантової корисності. Цей експеримент є чудовим прикладом для розуміння практичних кроків та наслідків моделювання квантової динаміки на реальному квантовому обладнанні. Наприкінці у вас буде чіткіше уявлення про те, як дослідники підходять до цих задач і чому квантове мод елювання є настільки перспективним для поглиблення нашого розуміння природного світу.
Річард Фейнман прочитав надзвичайно впливову лекцію в Калтеху у 1959 році. Вона мала знамениту назву «There's Plenty of Room at the Bottom» («Там унизу ще багато місця»), жартівливо натякаючи на величезні, недосліджені можливості на мікроскопічному рівні. Фейнман стверджував, що велика частина фізики на атомному та субатомному рівнях ще не була відкрита.
Значення цієї доповіді зросло у 1980-х роках із прогресом технологій. У цей період Фейнман повернувся до цих ідей в іншій важливій лекції в Калтеху, представивши статтю під назвою «Simulating Nature with Computers» («Моделювання природи за допомогою комп'ютерів»). Там він поставив сміливе запитання: чи можна використати комп'ютери для виконання точних симуляцій, які відтворюють поведінку природи на квантовому рівні? Фейнман запропонував, що замість використання грубих наближень для моделювання атомних процесів ми могли б використовувати комп'ютери, які використовують закони квантової механіки — не просто моделювати природу, а емулювати її.
Саме цей тип фізичного моделюванн я ми розглянемо в цьому уроці.
Пригадаймо цю часову шкалу, представлену в попередньому епізоді. На одному кінці спектру ми бачимо задачі, які легко розв'язати і не потребують підвищеної швидкості, яку можуть забезпечити квантові обчислення.
На протилежному кінці — надзвичайно складні задачі, що вимагають повністю стійких до помилок квантових машин — технології, яка поки що недоступна. На щастя, вважається, що багато задач моделювання потрапляють кудись посередині цієї шкали, у діапазон, де сьогоднішні квантові комп'ютери вже можуть бути ефективно застосовані. Є багато причин захоплюватися цією перспективою, оскільки моделювання природи формує основу для широкого спектру перспективних застосувань.
Далі наведена інформація, що охоплює загальний робочий процес моделювання природи, а потім конкретний приклад робочого процесу для відтворення результатів відомого дослідження.
Загальний робочий процес
Перш ніж хтось зможе застосувати квантові обчислення до цих захопливих галузей, важливо спочатку зрозуміти основні кроки типового робочого процесу моделювання:
- Визначити гамільтоніан системи
- Кодування гамільтоніана
- Підготовка стану
- Часова еволюція стану
- Оптимізація схеми
- Виконання схеми
- Постобробка
Процес починається з визначення квантової системи, що цікавить. Це допомагає визначити гамільтоніан, який керує її часовою еволюцією, а також змістовний опис початкових властивостей системи, або її стану. Далі потрібно обрати відповідний метод реалізації часової еволюції цього стану. Зверніть увагу, що перші чотири кроки цього робочого процесу є частиною кроку Відображення (Mapping) у фреймворку Qiskit patterns.
Після налаштування схеми часової еволюції наступні етапи включають проведення власне експерименту. Зазвичай це включає оптимізацію квантової схеми, що реалізує алгоритм часової еволюції, виконання схеми на квантовому обладнанні та постобробку результатів. Це ті самі останні три кроки фреймворку Qiskit patterns.
Далі ми обговоримо, що означають ці кроки, перш ніж перейти до кодування.
1. Визначити гамільтоніан системи
Першим необхідним кроком при проведенні експерименту з моделювання є визначення гамільтоніана, що описує систему. У багатьох випадках гамільтоніан є добре відомим. Проте ми часто конструюємо його, підсумовуючи енергетичні внески від менших частин системи. Зазвичай це виражається як сума доданків:
де кожен доданок діє на одну з локальних підсистем (наприклад, окрему частинку або невелику групу частинок) повного гамільтоніана . У випадку нерозрізнюваних елементарних частинок важливо визначити, чи система включає ферміони чи бозони, де ферміони підкоряються принципу виключення Паулі, що означає, що два ідентичні ферміони не можуть займати однакові квантові стани, як електрони. На відміну від ферміонів, кілька бозонів можуть існувати в одному квантовому с тані, і ця різниця впливає на статистику системи та на те, як її потрібно моделювати.
На практиці дослідників часто цікавлять фізичні системи, в яких елементи вважаються добре розділеними або маркованими, а отже, розрізнюваними, як спіни на решітці.
Ця система складається з магнітних дипольних спінів, розташованих на решітці, які розглядаються як розрізнювані частинки за їхньою адресою. Ця система описується моделлю Ізінга з поперечним полем, і її гамільтоніан будується як сума двох частин:
Тут перший доданок представляє енергію взаємодії між сусідніми спінами. Позначення вказує, що ми підсумовуємо по всіх парах спінів, безпосередньо з'єднаних на решітці, та — матриці Паулі-Z, що представляють стан спінів у вузлах та , а — константа зв'язку, що визначає силу цієї взаємодії. Другий доданок представляє вплив зовнішнього магнітного поля, прикладеного до всієї системи. Тут — матриця Паулі-X, що діє на окремий спін у вузлі , а вказує на силу цього зовнішнього поля.
2. Кодування гамільтоніана
Наступний крок — перекласти гамільтоніан у форму, яку може обробити квантовий комп'ютер, що ми називаємо кодуванням. Цей процес кодування критично залежить від типу частинок у системі: розрізнювані чи нерозрізнювані, і ферміони чи бозони, якщо частинки нерозрізнювані.
Якщо у вас система з розрізнюваними частинками, як спіни , закріплені на решітці, які ми розглянули вище, гамільтоніан часто вже записаний мовою, сумісною з кубітами. Оператор Паулі-Z, наприклад, природно описує спін вгору або вниз, і спеціальне кодування не потрібне.
При моделюванні нерозрізнюваних частинок — ферміонів або бозонів — необхідно застосувати перетворення кодування. Ці частинки описуються у спеціальному математичному фреймворку, що називається вторинним квантуванням, який відстежує число заповнення кожного квантового стану шляхом введення операторів народження та знищення, де оператор народження додає одну частинку до стану , а оператор знищення видаляє одну частинку зі стану . На основі фреймворку вторинного квантування ферміони можуть бути перетворені за допомогою Бравого–Кітаєва та Жордана–Вігнера. Перетворення Жордана–Вігнера визначає ферміонний оператор народження
, який заповнює -й квантовий стан ферміоном, та ферміонний оператор знищення , який звільняє ферміон із -го стану. Більше деталей про перетворення Жордана–Вігнера можна знайти в Quantum Computing in Practice, episode 5 - Mapping. Аналогічно, бозони також потребують власних методів кодування, таких як перетворення Гольштейна–Прімакова, для представлення кубітами.
Зрештою, незалежно від того, чи шлях прямий, чи потребує перекладу, мета однакова: виразити гамільтоніан системи у формі спінових операторів Паулі, які квантовий комп'ютер може зрозуміти та виконати.
3. Підготовка стану
Після кодування бажаного гамільтоніана у набір гейтів квантового комп'ютера наступним важливим кроком є вибір відповідного початкового квантового стану для початку моделювання. Вибір початкового стану впливає не лише на збіжність варіаційних алгоритмів, таких як Варіаційний квантовий солвер власних значень (VQE), а й на точність та ефективність часової еволюції та семплювання. По суті, початковий стан слугує відправною точкою обчислення, закладаючи основу для отримання корисних спостережуваних від модельованої квантової системи. В ідеалі цей стан повинен представляти фізично значущу конфігурацію досліджуваної системи.
Для багатьох квантово-хімічних моделювань стан Гартрі–Фока може бути хорошою відправною точкою. Мовою вторинного квантування, стан Гартрі–Фока () створюється шляхом застосування операторів народження () для кожної з найнижчих енергетичних орбіталей до вакуумного стану (), стану без електронів.
Крім того, легко підготовлений ансатц зі значним перекриттям з істинним основним станом може слугувати хорошим початковим станом для задач хімії, таких як знаходження енергії основного стану.
Більш загально, ми можемо записати довільний -кубітний стан як суперпозицію обчислювальних базисних станів з коефіцієнтами , що задовольняють умови нормування. Підготовка такого стану зазвичай може бути здійснена шляхом застосування специфічного оператора до початкового стану, яким за угодою є стандартний базисний стан з усіма нулями.
Однак цей процес часто вимагає експоненційної кількості CNOT-гейтів, що робить його загалом ресурсоємним. Ми часто зосереджуємося на підготовці початкових станів, для яких вимоги до ресурсів реалізації є більш помірними. З цієї причини ми часто зосереджуємося на підготовці менш складних початкових станів. Поширеним та практичним вибором є продуктовий стан, де кубіти не заплутані, який можна підготувати лише за допомогою однокубітних операцій, значно зменшуючи ресурсні вимоги до підготовки стану та складність. 4. Часова еволюція стану
Тепер, коли початковий стан встановлено, ми нарешті можемо розпочати власне моделювання — дослідити, як стан системи змінився на через деякий час . У квантовій механіці ця еволюція описується єдиною математичною операцією, що називається оператором часової еволюції:
де ми покладаємо за угодою. Застосування цього оператора до нашого початкового стану дає нам кінцевий стан:
Однак побудова квантової схеми, яка безпосередньо реалізує повний оператор , зазвичай неможлива, коли наш гамільтоніан є сумою різних частин. Тому нам потрібна троттеризація.
Простими словами, троттеризація — це техніка наближення експоненціювання матриці (тут — гамільтоніана ), особливо коли показник степеня містить некомутуючі оператори (). Часто гамільтоніан складається з кількох операторів, що не комутують. У цьому випадку їхні експоненти не можна розділити:
Корисний підхід — почергово застосовувати експоненти їхньої часової еволюції протягом малих інтервалів загалом разів. У випадку цих двох некомутуючих доданків ми запишемо
Похибка, що вноситься цим наближенням, називається похибкою Троттера. Ми можемо зменшити цю похибку, збільшуючи , але це має свою ціну. Також існують більш просунуті формули вищих порядків (д ругого порядку та інші варіанти). Наприклад, формула другого порядку забезпечує кращу точність шляхом застосування кроків у симетричному порядку.
Тут — це кількість некомутуючих доданків у гамільтоніані, що розбивається таким чином, а — кількість малих часових кроків, на які розбивається еволюція. Зверніть увагу на зворотний порядок операторів у другому добутку у формулі другого порядку.
Дивись розділ про троттеризацію в курсі Квантові алгоритми діагоналізації для отримання додаткових деталей. 5. Оптимізація схеми
Після генерації троттеризованої схеми крок відображення завершено, і ми можемо перейти до оптимізації схеми. Цей процес включає кілька ключових завдань:
- Встановити розкладку кубітів, що відображає абстрактні кубіти схеми на фізичні кубіти обладнання. Цей крок необхідний, оскільки архітектура обладнання часто має специфічні обмеження зв'язності, тоді як проєктування квантових схем зазвичай припускає, що будь-який кубіт може взаємодіяти з будь-яким іншим.
- Вставити swap-гейти за потребою, щоб забезпечити взаємодію між кубітами, які не з'єднані безпосередньо на пристрої.
- Перекласти гейти схеми в інструкції архітектури набору команд (ISA), які обладнання може виконати безпосередньо.
- Виконати оптимізації схеми для зменшення глибини схеми та кількості гейтів. Ця оптимізація також може бути застосована раніше, до віртуальної схеми, перш ніж кубіти будуть призначені на конкретні з'єднання обладнання.
Важливо зазначити, що значна частина цього процесу оптимізації виконується автоматично інструментами Qiskit. Ми розглянемо, як це працює, далі в цьому уроці.
6. Виконання схеми
Після завершення кроку оптимізації ми готові виконати схему за допомогою примітиву. Ми розглядаємо експеримент моделювання, в якому метою є зрозуміти, як певні властивості системи змінюються з часом. Для цієї мети примітив Estimator є найбільш доречним вибором, оскільки він дозволяє вимірювати очікувані значення спостережуваних, що відповідають цим властивостям.
Далі ми використовуємо опції, включаючи техніки придушення та пом'якшення помилок, для покращення точності Estimator. Нарешті, ми запускаємо експеримент для збору результатів.
7. Постобробка
Останній крок — постобробка зібраних даних. Це включає витягнення виміряних очікуваних значень або, якщо використовувався примітив Sampler, вибраного розподілу ймовірностей в обчислювальному базисі. Коли потрібні лише очікувані значення відповідних спостережуваних, їх можна безпосередньо отримати від примітиву Estimator, доступні як необроблені результати, так і з застосованим пом'якшенням помилок. Часто ці виміряні очікувані значення слугують відправною точкою для додаткових обчислень, що включають інші величини, що цікавлять. Такі додаткові обчислення зазвичай не потребують квантових обчислень і можуть бути ефективно виконані на класичному комп'ютері.
Відтворення статті «Utility»
Ця частина є високорівневим оглядом туторіалу Utility-scale error mitigation with probabilistic error amplification, який відтворює результати статті Evidence for the Utility of Quantum Computing Before Fault Tolerance. Ми настійно рекомендуємо відкрити вказаний туторіал разом із цією сесією.
Тепер ми розглянемо конкретний приклад із надзвичайно впливової статті, опублікованої IBM у 2023 році, під назвою Evidence for the Utility of Quantum Computing Before Fault Tolerance, яку часто називають «статтею про корисність» (Utility paper).
Після публікації ця робота швидко стала знаковим дослідженням у спільноті квантових обчислень. Її центральна теза полягає в тому, що зашумлений квантовий комп'ютер, що використовує 127 кубітів та 2880 гейтів, може видавати точні очікувані значення для квантових схем, які виходять за межі можливостей методів класичного моделювання грубою силою, що намагаються виконати точне моделювання тих самих схем.
Це дослідження було особливо значущим, оскільки продемонструвало, що квантові комп'ютери можуть використовуватися для перевірки або порівняння результатів із наближеними кл асичними методами моделювання, такими як алгоритми тензорних мереж — особливо в сценаріях, де точне розв'язання заздалегідь невідоме.
Ще одним важливим аспектом цієї роботи є те, що вона була широко відтворена: дослідники та користувачі тепер мають можливість відтворити та перевірити експеримент за допомогою хмарних квантових систем IBM та програмного фреймворку Qiskit. Далі ми проведемо вас через кроки для виконання цього відтворення самостійно, розглядаючи туторіал IBM крок за кроком.
У цьому уроці ми обговорюємо конкретні кроки, необхідні для перетворення задачі на вхідні дані, які може обробити квантовий пристрій. Ми зосереджуємося на моделюванні динаміки повної намагніченості системи магнітних дипольних спінів, розташованих на решітці та підданих зовнішньому магнітному полю. Ця система може бути описана моделлю Ізінга з поперечним магнітним полем. Ми представляємо її за допомогою параметризованої квантової схеми, де параметри відповідають налаштовуваним значенням спін-спінових () взаємодій та силі зовнішнього поперечного магнітного поля (, параметризованого за допомогою ).
Оскільки ця серія називається «Квантові обчислення на практиці», ми розглянемо додаткові деталі експериментальних технік, використаних для покращення якості результатів. Одна важлива процедура включає ідентифікацію та видалення «поганих» кубітів — тих, що мають низьку вірність гейтів або короткі часи декогеренції — які можуть суттєво вплинути на результат експерименту. Такі проблемні кубіти можуть виникати через погане калібрування або взаємодію з дворівневими системами (TLS). Видалення цих кубітів змінює нативну топологію обладнання, фактично змінюючи решітку, на якій моделюється система.
Крім того, ми обговоримо, як побудувати параметризовану квантову схему, що реалізує часову еволюцію системи за допомогою троттеризації. Ключовою частиною цього процесу є ідентифікація заплутуючих шарів у схемі, які відіграють вирішальну роль в основній техніці пом'якшення помилок.