Overview¶
CIM¶
CIM (Coherent Ising Machine), is a quantum computer technology that QBoson focuses on developing at present. CIM is an optical quantum computer based on degenerate optical parametric oscillator (DOPO). In mathematical practice, we can abstract CIM as a specialized computer for optimizing Ising models.
Ising Model¶
Ising Model is a kind of stochastic process model describing the phase transition of substances, with the mathematical form of:
where \(\sigma\) are spin variables to be solved, taking the values of \(\{-1,1\}\). \(H\) is the Hamiltonian. \(J\),\(\mu\),\(h\) are quadratic coefficients and linear coefficients respectively.
QUBO¶
QUBO (Quadratic unconstrained binary optimization) has the following mathematical form:
where \(x\) are binary variables to be solved, taking the values of \(\{0,1\}\). \(f\) is the objective function. \(q\) is the quadratic coefficients, which is given. In the form of linear algebra:
where \(\pmb x\) are variables, \(\pmb Q\) is the QUBO matrix. The objective of QUBO model is to find \(\pmb x\) to maximize or minimize \(f\), that is:
Solving Models Using CIM¶
The process of solving QUBO or optimizing Ising model is a process of importing \(q_{ij}\) in QUBO or \(J_{ij}\) in Ising to CIM, and CIM returns \(\pmb x\) or \(\sigma\).
Kaiwu SDK¶
The Kaiwu SDK is currently a software development kit based on CIM for solving QUBO, which is divided into four modules:
qubo
- for QUBO, providing some solution pre-processing toolscim
- CIM solving module, including simulation solver and physical machine interface, etcclassical
- containing multiple classic solvers for QUBO or Isingsampler
- solution post-processing module, performing data processing on the output of the solver