Optimasi menggunakan Quantum Logics

Aug 27 2020

Apakah mungkin untuk menyelesaikan jenis pengoptimalan berikut menggunakan Quantum Computing?

Minimize
5*x1 - 7*x2

binary
x1
x2

Jika ya, apakah mungkin menggunakan kode contoh QISKit?

Jawaban

2 StefanWoerner Aug 27 2020 at 14:14

Qiskit memiliki modul pengoptimalan dan Anda dapat menemukan tutorial yang menggambarkan fungsinya di sini .

Untuk mengatasi contoh yang Anda posting, misalnya, dengan Quantum Approximate Optimization Algorithm (QAOA), Anda dapat melakukan hal berikut:

from qiskit import Aer
from qiskit.optimization import QuadraticProgram
from qiskit.aqua.algorithms import QAOA
from qiskit.optimization.algorithms import MinimumEigenOptimizer

# construct optimization problem
qp = QuadraticProgram()
qp.binary_var('x1')
qp.binary_var('x2')
qp.minimize(linear=[5, -7])

# initialize optimizer
qaoa_mes = QAOA(quantum_instance=Aer.get_backend('statevector_simulator'))
qaoa = MinimumEigenOptimizer(qaoa_mes)

# solve problem
result = qaoa.solve(qp)
print(result)

yang mencetak:

optimal function value: -7.0
optimal value: [0. 1.]
status: SUCCESS

Modul pengoptimalan Qiskit juga menyediakan algoritme pengoptimalan kuantum lainnya untuk program kuadrat dan Anda dapat menemukan deskripsi yang lebih detail di sini .