Skip to content

Commit 5abacdb

Browse files
committed
minor changes
1 parent ff785e6 commit 5abacdb

File tree

4 files changed

+23
-24
lines changed

4 files changed

+23
-24
lines changed

examples/benchmark_experiment.ipynb

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"import numpy as np\n",
1212
"import matplotlib.pyplot as plt\n",
1313
"from qhdopt import QHD\n",
14-
"from qhdopt.utils.benchmark_utils import run_test, compare_coarse_and_refine, make_violin_plot"
14+
"from benchmark_utils import run_test, compare_coarse_and_refine, make_violin_plot"
1515
]
1616
},
1717
{

qhdopt/utils/benchmark_utils.py examples/benchmark_utils.py

+20-20
Original file line numberDiff line numberDiff line change
@@ -30,26 +30,26 @@ def calc_h_and_J(qhd):
3030
def run_test(model, tol=1e-3):
3131
data_vector = np.zeros(16)
3232
# # Run QHD with post-processor = Ipopt
33-
# response = model.optimize(verbose=1)
34-
# qhd_ipopt_success_prob = response.get_success_probability()
35-
# data_vector[0] = model.info["average_qpu_time"]
36-
# data_vector[1] = model.info["post_processing_time"] / len(model.info["sample_times"])
37-
# data_vector[12] = statistics.stdev(model.info["sample_times"][1:])
38-
# data_vector[2] = qhd_ipopt_success_prob
39-
# data_vector[3] = TTS((data_vector[0] + data_vector[1]), data_vector[2])
40-
# best = response.minimum
41-
# # Same QHD samples post-processed by TNC
42-
# qhd_samples = [sample for sample in response.coarse_samples if sample is not None]
43-
# response = model.classically_optimize(solver="TNC", initial_guess=qhd_samples)
44-
#
45-
# qhd_tnc_success_prob = response.get_success_probability(tol=tol, minimum=best)
46-
#
47-
#
48-
# data_vector[4] = model.info["average_qpu_time"]
49-
# data_vector[5] = model.info["refining_time"] / len(model.info["sample_times"])
50-
# data_vector[13] = statistics.stdev(model.info["sample_times"][1:])
51-
# data_vector[6] = qhd_tnc_success_prob
52-
# data_vector[7] = TTS((data_vector[4] + data_vector[5]), data_vector[6])
33+
response = model.optimize(verbose=1)
34+
qhd_ipopt_success_prob = response.get_success_probability()
35+
data_vector[0] = model.info["average_qpu_time"]
36+
data_vector[1] = model.info["post_processing_time"] / len(model.info["sample_times"])
37+
data_vector[12] = statistics.stdev(model.info["sample_times"][1:])
38+
data_vector[2] = qhd_ipopt_success_prob
39+
data_vector[3] = TTS((data_vector[0] + data_vector[1]), data_vector[2])
40+
best = response.minimum
41+
# Same QHD samples post-processed by TNC
42+
qhd_samples = [sample for sample in response.coarse_samples if sample is not None]
43+
response = model.classically_optimize(solver="TNC", initial_guess=qhd_samples)
44+
45+
qhd_tnc_success_prob = response.get_success_probability(tol=tol, minimum=best)
46+
47+
48+
data_vector[4] = model.info["average_qpu_time"]
49+
data_vector[5] = model.info["refining_time"] / len(model.info["sample_times"])
50+
data_vector[13] = statistics.stdev(model.info["sample_times"][1:])
51+
data_vector[6] = qhd_tnc_success_prob
52+
data_vector[7] = TTS((data_vector[4] + data_vector[5]), data_vector[6])
5353

5454
# Run Ipopt with random init
5555
response = model.classically_optimize(solver="IPOPT", num_shots=model.shots)

tests/test_backend.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ def test_backend_performance():
99
bt = [3 / 4, -1 / 4]
1010
sol = -.75
1111
model = QHD.QP(Q, bt)
12-
response = model.classically_optimize(solver="IPOPT", verbose=1)
12+
response = model.classically_optimize(solver="TNC", verbose=1)
1313
assert abs(response.minimum - sol) < 1e-3
1414

1515
model.qutip_setup(resolution=6, time_discretization=40)

tests/test_qhd.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,8 @@
22

33
from qhdopt import QHD
44
import numpy as np
5-
from simuq.dwave import DWaveProvider
65

7-
from qhdopt.utils.benchmark_utils import calc_h_and_J
6+
from examples.benchmark_utils import calc_h_and_J
87

98

109
def convert_key(tup: Tuple) -> str:

0 commit comments

Comments
 (0)