- В базисе QUBO:
argmin_s(s^T * Q * s)
.s_i = {0, 1}
- В базисе Ising:
argmin_s(s^T * J * s + s^T * h)
.s_i = {-1; 1}
- Для базиса QUBO:
- Трансляция входных задач в базис QUBO.
- Учёт ограничений для QUBO:
sA <= b
.
- Для базиса Ising:
- Конвертация между в базис QUBO.
- Адиабатический КК. Доступ через удалённое API. Dwave-leap SDK.
- Квантовый симулятор. Локальный, либо удалённый. Квантовый симулятор РКЦ.
- Оптимизационный пакет. Локальный.
quantum-sdk:
- solvers - солверы для различных типов базисов.
- QSolver - интерфейс солвера.
- basis - работа с базисами:
- convert - процедуры для конвертации между базисами. Переделаны из того, что есть в D-Wave.dimod.
- backends - вычислительные бэк-энды. Каждый - наследник класса
Backend
.- dwave - квантовый бэкэнд. Удалённый доступ по сети.
- qsim - квантовый симулятор РКЦ. Локальный или удалённый доступ по сети.
- optim - локальный оптимизационный пакет. Локальный запуск на классическом железе, доступ через импорт.
- examples - каталог с примерами.
from quantum_sdk import QSolver
qsolver = QSolver(backend=”quantum”)
Q = np.random.rand(5, 5)
s = qsolver.solve_qubo(Q)
>> s = [1,0,0,1,1]