KIT-TVA / qc-configuration-problem

Repository serves as playground for the configuration problem in QuBRA
MIT License
1 stars 0 forks source link

Add implementation for QAOA using PUBOs instead of QUBOs #22

Closed Cauterium closed 1 year ago

Cauterium commented 1 year ago

This closes #19 and closes #8.

This adds implementation for creating a QAOA circuit for Polynomial Unconstrained Binary Optimization (PUBO) problems, as well as for calculating the corresponding penalty for arbitrary SAT instances in conjunctive form.

The new qaoa_mincost_k_sat notebook contains explanations for creating the cost hamiltonian, how to implement the quantum circuit, how to quadratize PUBOs in order to use the corresponding QUBO problem instead and how PUBO models can be used for configuration prioritization.

Furthermore, this adds a new folder for the different files associated with QAOA.

Graphs for the instance evaluated in the notebook:

Cost landscape

PUBO Cost Landscape

QAOA results for PUBO form using StatevectorSimulator

PUBO results

QAOA results for quadratized QUBO form using StatevectorSimulator

Quadratized PUBO results