От Панайотис Баркуцос, Криста Зуфал, Брайс Фулър, Стефан Вьорнер

Днес ние сме развълнувани да обявим пълно преработване на модула Qiskit Chemistry, плюс новата рамка Qiskit Gradients, предназначена както за разработчици на квантови приложения, така и за експерти в областта с основни познания за квантовите изчисления. Тези подобрения представляват важна стъпка към квантово изчисление без триене, където разработчиците могат да пишат приложения, които се възползват от предимствата на квантовите компютри, без да се занимават с тънкостите на хардуера.

Екипът проектира новия модул Qiskit Chemistry да бъде както модулен, така и разширяем, като същевременно предоставя приложения от високо ниво, които правят програмирането по-интуитивно за всеки, който се интересува от квантово изчисление. Модулът включва алгоритми за изчисляване на електронната и вибронна структура на молекулите, плюс алгоритмични примитиви, които да служат като градивни елементи за приложения от по-високо ниво. Наскоро се обединихме с учени от ExxonMobil, за да „изчислим термодинамични наблюдаеми“ за молекулата на водорода на квантовия процесор ibmq_valencia с помощта на Qiskit.

„Разработването на новия модул Qiskit Chemistry е едновременно вълнуващо и много важно. Това ще даде възможност на учени с ограничено излагане на квантов хардуер бързо да започнат да симулират интересни и подходящи химически проблеми. Може би също толкова важен, този нов модул също ще помогне на учените да мислят „по квантов начин“, когато решават някои от нашите най-предизвикателни проблеми“, каза Лоран Уайт, ръководител на отдел, компютърна физика, ExxonMobil Research and Engineering

Много краткосрочни квантови алгоритми — включително тези, налични в модула Qiskit Chemistry — са вариационни, т.е. използват класическа оптимизация, за да намерят набор от параметри, които минимизират някои целеви функции, оценени с помощта на квантов компютър. Тези видове алгоритми разчитат на ефективна и стабилна оптимизация, за да обслужват цели при комбинаторни проблеми или квантово машинно обучение - а в случая с квантовата химия целта е енергия.

Междувременно новата рамка на Qiskit Gradients осигурява автоматизиран начин за изчисляване на аналитични градиенти - основно как се променя веригата, докато вариационният алгоритъм работи - както и функции на градиентите за различни класове проблеми. Това се постига чрез автоматично конструиране на операторите, необходими за оценка на производните на веригата и комбиниране на това с класическото „автоматично диференциране“. Градиентната рамка поддържа не само оценката на градиентите от първи ред, но също и информационните матрици на Hessian и Quantum Fisher. Това веднага проправя пътя към по-усъвършенствани алгоритми като Квантови естествени градиенти, Вариационна квантова въображаема / Еволюция в реално време и Вариационна подготовка на състоянието на Гибс. Рамката Gradients е интегрирана в основните алгоритми на Qiskit, което я прави лесна за използване в съществуващи приложения. Освен това, той ще служи като градивен елемент за бъдещи приложни модули, като например квантово машинно обучение.

Модулът Qiskit по химия

Симулирането на квантови системи на класически компютри е едно от най-големите предизвикателства за общностите на квантовата физика и квантовата химия през последните няколко десетилетия. Класически трябва да използваме приближения, за да симулираме по-големи системи поради присъщата сложност, но квантовите компютри могат да уловят сложните детайли на квантовите системи като молекули, което прави тези устройства привлекателни за подобрена точност, както и за скорост. Квантовото изчисление предлага възможност за ефективно симулиране на проблеми като електронната структура на молекулярните системи, с потенциала да ни помогне да открием нови химични реакции или нови материали. Тук представяме новия модул Qiskit Chemistry, който е очертан на следващата фигура и който е стъпка към овладяване на мощността на квантовите компютри за приложения в квантовата химия и физика.

Когато решаваме проблеми с квантовата химия с квантов компютър, често трябва първо да изчислим допълнителни класически величини. Например, преди да можем да използваме квантови техники, за да изчислим каквото и да е свойство на основното състояние на молекула, като нейната енергия или диполен момент, трябва да изчислим класически едно- и двуелектронни интеграли. Тази стъпка на предварителна обработка може да се извърши ефективно с помощта на класически компютри и е достъпна чрез множество класически софтуерни инструменти. За да се гарантира, че работи добре с такива инструменти, модулът Qiskit Chemistry предоставя последователна рамка, наречена драйвери, за дефиниране на проблеми с „електронна структура“ или „вибронна структура“ въз основа на молекулни свойства като геометрия, заряди и завъртания. По този начин потребителите могат да определят химическа система, напр. молекула и автоматично изчислява класическите свойства, необходими за генериране на съответния фермионен или бозонен хамилтониан. За да се гарантира, че хамилтонианът на всеки проблем може да бъде изразен като оператор Qubit, тази версия на Qiskit въвежда интерфейси за преобразуване на Qubit за картографиране на фермионни и бозонови проблеми. Например, във фермионния случай, преобразуването от хамилтониан към кубит оператор може да се направи с помощта на различни преобразувания, като картографиране на Bravyi-Kitaev, Jordan Wigner или паритетно картографиране. След като проблемът бъде картографиран във форма, която можем да оценим на квантовия хардуер, модулът за химия може допълнително да опрости оператора с различни схеми за намаляване на симетрията. Чрез осигуряване на контрол върху всяка стъпка в тази процедура за превод на проблема, модулът за химия дава възможност на потребителите да изстискат максималната производителност от техниките, предназначени за близкосрочни квантови устройства.

Решател на основно състояние

Основен алгоритмичен градивен елемент на модула Chemistry е Ground State Solver, т.е. способността да се приближи основното състояние за даден проблем. Ние предоставяме множество реализации, като Groundstate Eigensolver, който първо обработва превода от екземпляра на проблема (даден като драйвер) към Qubit Hamiltonian, след това извиква минимален Eigensolver, като Variational Quantum Eigensolver (VQE), и накрая превежда резултатите обратно към електронна или вибронна структура в зависимост от предоставената трансформация. Qiskit Chemistry предлага различни предварително дефинирани вариационни вериги, като анзац Unitary Coupled Cluster with Single and Double Excitations (UCCSD), но алгоритмите също са съвместими с общи параметризирани квантови вериги и могат да използват библиотеката на Qiskit's Circuit Library. Освен това изданието включва някои по-насочени алгоритми като AdaptVQE и Orbital Optimization VQE, които могат да се използват за изчисления на електронна структура и да използват допълнителна информация за проблема за по-ефективно приближаване на основните състояния.

Решаване на възбудени състояния

В допълнение към приближаването на основните състояния, също така е важно да можете да изчислявате възбудени състояния и съответните им енергии. До тази степен Qiskit Chemistry предлага „Решаватели на възбудени състояния“ като генерично изчисление, базирано на собствени солвери, което може да се използва с генерични собствени солвери, както и с алгоритъма за квантово уравнение на движението (QEOM). QEOM използва Ground State Solver и използва неговите резултати заедно със спомагателни оператори за възбуждане, за да оцени съответните комутатори и да изчисли енергиите във възбудено състояние. Отново, въз основа на предоставената трансформация, Excited States Solvers могат да се използват както за електронна структура, така и за изчисления на вибронна структура.

BOPES семплер

Решавателите на основно състояние и възбудени състояния позволяват на крайните потребители да оценят свойствата на дадена молекула. Въпреки това, за много приложения също е важно да се види как свойствата се променят, напр. с промяна на молекулярната геометрия или чрез промяна на други входни параметри. С тази версия Qiskit Chemistry поддържа общ обект Molecule, който позволява смущение на различни степени на свобода (напр. междуатомно разстояние, огъване на молекула и т.н.). Това се използва в „Потенциалната енергийна повърхност на Борн-Опенхаймер (BOPES) Sampler“ за скрининг на набор от различни геометрии и приближаване на BOPES. За да ускори изчислението, семплерът също така поддържа стартиране или екстраполиране с помощта на предишни изчисления. BOPES Sampler може да използва всеки инструмент за определяне на състоянието на земята, предоставен от потребителя, за да оцени BOPES. Достъпът до BOPES дава възможност за допълнителни приложения като напасване на аналитични функции към повърхността на потенциалната енергия и евентуално изчисляване на вибронни енергии и функции на разделяне. Това беше демонстрирано в споменатата по-горе работа на ExxonMobil и IBM Quantum и ние също предоставяме урок, който го демонстрира. Следният кодов фрагмент очертава как да настроите BOPES Sampler с помощта на VQE и да създадете профила на дисоциация на водородна молекула.

Градиентната рамка на Qiskit

Повечето краткосрочни квантови алгоритми включват оптимизиране на класически параметри, например за минимизиране на енергии, разходи или функции на загуби. Ето защо е изключително важно тази оптимизация да бъде възможно най-ефективна и мощна. За тази цел въвеждаме рамката Qiskit Gradients. Това съчетава класически и квантови техники за автоматично диференциране за автоматично конструиране на квантовите вериги и класическата логика, необходими за оценка на аналитичните градиенти. Общ преглед на новите компоненти, въведени в рамката Qiskit Gradients, е даден на Фигура 4.

За някои приложения за вариационна оптимизация ние се интересуваме от настройка не само на параметризирани квантови вериги, но и на параметризирани хамилтониани. Това може да бъде полезно при оптимизиране на „смесени цели числа“, както и при „търсене на молекулярни конфигурации“. Разбира се, рамката Gradients също е приложима към тези настройки чрез комбиниране на класическа автоматична диференциация с автоматично генериране на градиенти на веригата и по този начин е в състояние да оцени проблемните производни.

Градиенти на веригата

Множество подходи за оценка на градиентите на веригата се поддържат от рамката за градиенти на Qiskit: изместване на параметри, линейна комбинация от унитари и крайна разлика. Градиентите на изместване на параметрите позволяват параметризираните вериги да бъдат използвани повторно, както са дадени, и изискват само известна настройка на параметрите. Въпреки това, тъй като градиентите на изместване на параметър изискват две оценки на верига за производна, дисперсията на оценителя се увеличава. За разлика от това, „подходът на линейната комбинация“ постига по-ниска дисперсия, но изисква въвеждането на допълнителен работещ кюбит и прихващане на контролирани врати. По този начин и двата типа имат плюсове и минуси и трябва да бъдат избрани въз основа на контекста. И накрая, крайната разлика е директен числен подход, който е общоприложим, но за разлика от първите два метода, той само приближава градиента и по този начин може да доведе до по-лошо представяне.

Поддържани типове проблеми

В много краткосрочни квантови алгоритми общата подпрограма включва минимизиране на очакваната стойност на някои квантово-механични наблюдаеми. Тези наблюдаеми често съответстват на енергии, разходи или функции на загуба и възникват в различни контексти като квантова химия, физика, комбинаторна оптимизация и машинно обучение. По този начин оценката на градиентите при оценка на наблюдаеми е добре мотивиран примитив, сега директно поддържан от Qiskit. Въпреки това, за по-сложни функции на загуба може да се изисква оценка на „градиенти на вероятността“, т.е. градиент на вероятностите за вземане на проби за конкретна база на измерване. За щастие оценката на градиентите на вероятността също се поддържа и може да се използва за оценка на градиентите на по-общ клас функции на загуба, като логаритмичната вероятност. Показаният по-горе химически кодов фрагмент използва Gradient в рамките на VQE и илюстрира колко безпроблемно може да бъде интегриран в съществуващи работни потоци.

Производни и показатели от по-висок порядък

Градиентната рамка на Qiskit също поддържа оценката на матрицата на Хесиан, т.е. на двойни производни от втори ред. Хесианът може да се използва за дефиниране на схеми за оптимизация от по-висок ред; това обаче идва с цената на изискването за изчисляване на повече вериги на итерация. Въздействието от използването на матрицата на Хесиан, особено при наличие на шум, е отворен изследователски въпрос, който изисква допълнително проучване.

В допълнение към производните от първи и втори ред, рамката на градиентите също така позволява автоматично изчисляване на матрицата на информацията на Quantum Fisher (QFI). QFI е метричен тензор, който може да ни даде представа колко добре една квантова верига може да представя функции. Също така е от особен интерес, тъй като може да помогне за подобряване на ландшафта за оптимизация чрез картографиране на градиента в пространство на характеристиките, което взема предвид информационната геометрия на проблема, т.е. чрез използване на Квантови естествени градиенти. Позволяваме три различни оценки на QFI: Първо, пълният QFI чрез „линеен комбиниран подход“. Второ, блоково-диагонален QFI чрез „подхода на припокриване“, където блоковете се определят от един слой параметризирани порти във вариационната верига. И накрая, диагоналът на QFI, отново чрез подхода на припокриване. Въпреки че линейната комбинация от унитарни методи е точна, приближенията на припокриване не изискват използването на работещи кубити или прихващащи контролирани порти и могат да намерят приложение в зависимост от контекста. В допълнение към Квантовия естествен градиент, автоматизираното изчисляване на QFI метричните тензори на Qiskit позволява сложни приложения като Вариационна квантова въображаема / Еволюция в реално време, Подготовка на състоянието на Гибс или Вариационни квантови Болцманови машини.

Как да започнете

Най-лесният начин да разгледате инструментите, представени по-горе, е да инсталирате най-новата версия на Qiskit и да започнете да си играете с новоиздадените учебни тетрадки за химия и градиенти. Освен това можете да разгледате работното пространство на Qiskit slack, за да се свържете с други потребители и сътрудници на Qiskit.

Благодарности

Специални благодарности на основните сътрудници на новите модули на Qiskit Applications (по азбучен ред):

Антон Декусар, Жулиен Гакон, Ико Хамамура, Стюарт Харууд, Такаши Имамичи, Джон Лапейр, Маноел Маркес, Ацуши Мацуо, Полин Олитро, Макс Росманек, Игор Соколов, Спенсър Стобър, Ивано Тавернели, Димитър Тренев, Давиндра Тулси, Стив Ууд