Алгоритми квантової оптимізації
Математична оптимізація стосується пошуку найкращого рішення проблеми (за деякими критеріями) із набору можливих рішень. Переважно, проблема оптимізації формулюється як проблема мінімізації, де намагаються мінімізувати помилку, яка залежить від рішення: оптимальне рішення має мінімальну помилку. У різних галузях, таких як механіка, економіка та інженерія, застосовуються різні методи оптимізації, а в міру збільшення складності та обсягу даних необхідні більш ефективні способи вирішення проблем оптимізації. Потужність квантових обчислень може дозволити вирішувати задачі, які практично не можливо розв'язати на класичних комп'ютерах, або запропонувати значну швидкість щодо найбільш відомого класичного алгоритму. Серед інших квантових алгоритмів існують алгоритми квантової оптимізації, які можуть запропонувати вдосконалення у вирішенні завдань оптимізації.[1]
Квантова апроксимація даних
Апроксимація даних — це процес побудови математичної функції, яка найкраще відповідає набору точок даних. Якість придатності вимірюється деякими критеріями, як правило, відстані між функцією та точками даних.
Квантова апроксимація методом найменших квадратів
Один з найпоширеніших типів апроксимації даних — це розв'язання задачі з найменшими квадратами, мінімізація суми квадратів відмінностей між точками даних та вбудованою функцією.
Алгоритм отримує на вхід точок даних і неперервних функцій. Алгоритм знаходить і дає на вихід неперервну функцію , котра є лінійною комбінацією із :
Іншими словами, алгоритм знаходить складний коефіцієнт і, таким чином, знаходить вектор
Алгоритм спрямований на мінімізацію помилки, котра задається:
де ми визначаємо як наступну матрицю:
Квантовий алгоритм апроксимації найменших квадратів[2] використовує версію квантового алгоритму Харроу, Хассідима та Ллойда для лінійних систем рівнянь (HHL) та виводить коефіцієнти і оцінку якості апроксимації . Він складається з трьох підпрограм: алгоритму виконання псевдо зворотної операції, однієї підпрограми для оцінки якості придатності та алгоритму вивчення параметрів придатності.
Оскільки квантовий алгоритм в основному базується на алгоритмі HHL, він пропонує експоненціальне поліпшення[3] у випадку, коли є розрідженою матрицею і число умови (а саме співвідношення між найбільшим і найменшим власними значеннями) обох і невелике.
Квантове напіввизначене програмування
Напіввизначене програмування - це підрозділ оптимізації, що займається оптимізацією лінійної цільової функції (визначена користувачем функція, яка повинна бути мінімізована або максимізована), через перетин конуса позитивних напіввизначених матриць із афінним простором. Цільова функція - це внутрішній добуток матриці (заданий як вхід) зі змінною . Позначимо як простір усіх симетричних матриць. Змінна повинна лежати у еконусі позитивних напіввизначених симетричних матриць . Внутрішній добуток двох матриць визначається як:
Проблема може мати додаткові обмеження (задані як вхідні дані), які також формулюються як внутрішні добутки. Кожне обмеження змушує внутрішній добуток матриць (задане як вхід) із змінною оптимізації бути меншим, ніж задане значення (задається як вхід). Нарешті, проблему можна записати так:
Найкращий відомий класичний алгоритм працює у найгіршому випадку за поліноміальний час.
Квантовий алгоритм
Входи алгоритму: та параметри, точність та оптимальне значення (значення цільової функції в оптимальній точці).
Квантовий алгоритм[4] складається з декількох ітерацій. У кожній ітерації він знаходить будь-яке рішення, що задовольняє наступним умовам (даючи поріг ):
У кожній ітерації вибирається інший поріг , і алгоритм виводить або рішення таке, що (і інші обмеження теж задоволені) або вказівку на відсутність існування такого рішення. Алгоритм виконує двійковий пошук, щоб знайти мінімальний поріг , для якого все ще існує рішення : це дає мінімальну відповідь для задачі.
Квантовий алгоритм забезпечує квадратичне вдосконалення над найкращим класичним алгоритмом у загальному випадку та експоненціальне вдосконалення, коли вхідні матриці низького рангу.
Квантова комбінаторна оптимізація
Проблема комбінаторної оптимізації спрямована на пошук оптимального об'єкта з скінченного набору об'єктів. Проблема може бути сформульована як максимізація цільової функції, яка є сумою булевих функцій. Кожна булева функція отримує на вході -бітний рядок і дає як вихід один біт (0 або 1). Проблема комбінаторної оптимізації бітів і умов є знаходженням -бітового рядка , котрий максимізує функцію
Приблизна оптимізація - це спосіб пошуку приблизного вирішення проблеми оптимізації, який часто є задачею класу NP-важка. Приблизним вирішенням задачі комбінаторної оптимізації є рядок , близький до максимізації .
Квантовий приблизний алгоритм оптимізації
Для комбінаторної оптимізації алгоритм квантової приблизної оптимізації (КПАО)[5] має кращий коефіцієнт наближення, ніж будь-який відомий класичний алгоритм поліноміального часу (для певної проблеми)[5], поки не було запропоновано більш ефективний класичний алгоритм[6]. Відносна прискореність квантового алгоритму є відкритим дослідницьким питанням.
Серце КПАО покладається на використання унітарних операторів, залежних від кутів , де є вхідним цілим числом. Ці оператори ітераційно застосовуються в стані, що є зрівноваженою квантовою суперпозицією всіх можливих станів в обчислювальній основі. У кожній ітерації стан вимірюється в обчислювальній основі і обчислюється . Після достатньої кількості повторень значення є майже оптимальним, і стан, що вимірюється, також близький до оптимального.
У квітні 2021 відбулась демонстрація застосування надпровідного кубітового квантового процесора Sycamore до комбінаторних задач оптимізації з алгоритмом квантової наближеної оптимізації (QAOA). Як і в минулих експериментах QAOA, вивчалась ефективність для проблем, визначених на площинному графіку; однак QAOA також застосовувалась до модель Шеррінгтона – Кіркпатріка та MaxCut (максимальний розріз графа), для реалізації яких потрібна велика компіляція[7].
Посилання
- Moll, Nikolaj; Barkoutsos, Panagiotis; Bishop, Lev S; Chow, Jerry M; Cross, Andrew; Egger, Daniel J; Filipp, Stefan; Fuhrer, Andreas та ін. (19 червня 2018). Quantum optimization using variational algorithms on near-term quantum devices. Quantum Science and Technology 3 (3). с. 030503. ISSN 2058-9565. doi:10.1088/2058-9565/aab822. Процитовано 23 грудня 2019.
- Wiebe, Nathan; Braun, Daniel; Lloyd, Seth (2 серпня 2012). Quantum Algorithm for Data Fitting. Physical Review Letters 109 (5). ISSN 0031-9007. doi:10.1103/physrevlett.109.050505. Процитовано 23 грудня 2019.
- Montanaro, Ashley (12 січня 2016). Quantum algorithms: an overview. npj Quantum Information 2 (1). ISSN 2056-6387. doi:10.1038/npjqi.2015.23. Процитовано 23 грудня 2019.
- Brandao, Fernando G.S.L.; Svore, Krysta M. (2017-10). Quantum Speed-Ups for Solving Semidefinite Programs. 2017 IEEE 58th Annual Symposium on Foundations of Computer Science (FOCS) (IEEE). ISBN 978-1-5386-3464-6. doi:10.1109/focs.2017.45. Процитовано 23 грудня 2019.
- FARHI, EDWARD; GOLDSTONE, JEFFREY; GUTMANN, SAM; NAGAJ, DANIEL (2008-06). HOW TO MAKE THE QUANTUM ADIABATIC ALGORITHM FAIL. International Journal of Quantum Information 06 (03). с. 503–516. ISSN 0219-7499. doi:10.1142/s021974990800358x. Процитовано 23 грудня 2019.
- Barak, Boaz; Raghavendra, Prasad; Steurer, David (2011-10). Rounding Semidefinite Programming Hierarchies via Global Correlation. 2011 IEEE 52nd Annual Symposium on Foundations of Computer Science (IEEE). ISBN 978-0-7695-4571-4. doi:10.1109/focs.2011.95. Процитовано 23 грудня 2019.
- Harrigan, Matthew P.; Sung, Kevin J.; Neeley, Matthew; Satzinger, Kevin J.; Arute, Frank; Arya, Kunal; Atalaya, Juan; Bardin, Joseph C. та ін. (2021-03). Quantum approximate optimization of non-planar graph problems on a planar superconducting processor. Nature Physics (англ.) 17 (3). с. 332–336. ISSN 1745-2481. doi:10.1038/s41567-020-01105-y. Процитовано 1 травня 2021.