QPU does not solve my problem
My problem size is 39 qubits. The optimal solution can be attained using exhaustive search and QBSolve can for most of the time return the optimal...but not the 2000Q and Advantagesystem1.1...regardless of how large my num_reads is set. And 2000Q always returns an objective value larger than Advantagesystem1.1
Is it something to do with my problem structure? How does it relate to the performance of the QPU in particular? I assume the problem size is not that large to exceed the capacity of the QPU...am I correct?
The H,J matrix are densely populated so there is no fixed variable. The problem can not be trimmed in this case.
Please kindly give a hint. Thanks.
Comments
Hi Jie,
Apologies for the late response!
Have you tried tuning the chain_strength parameter for both the Advantage_system1.1 and DW_2000Q_6? Since these solvers use entirely different QPUs your problem will have a different embedding on each (and will likely have different chain lengths), so it's important to tune the problem specifically for each system.
A problem with 39 variables can fit on both systems, even if the problem is fully connected.
It's hard to say if there's an issue with your problem structure (or just the way you've tuned the QPU parameters) without knowing more about about your problem. Can you say more about your problem and what you've tried to improve the results?
Hi there,
Much apology for the even later response...
Here is the most updated exploration using ADV_SYS...
Hdict={1: 100.0, 2: 0.0, 3: 0.0, 4: 0.0, 5: -100.0}
Jdict={(1, 2): -100.0, (1, 3): 0.0, (1, 4): 0.0, (1, 5): 0.0, (2, 1): 0.0, (2, 3): -100.0, (2, 4): 0.0, (2, 5): 0.0, (3, 1): 0.0, (3, 2): 0.0, (3, 4): -100.0, (3, 5): 0.0, (4, 1): 0.0, (4, 2): 0.0, (4, 3): 0.0, (4, 5): -100.0, (5, 1): 0.0, (5, 2): 0.0, (5, 3): 0.0, (5, 4): 0.0}
chain_strength is by the uniform_torque_compensation.
expt_sampler.sample(bqm,num_reads=1000,chain_strength=ChainVal,auto_scale=True)
If you run the command line, it might pop out the optimal answer for once but could not guarantee to always return the optimal solution regardless how large you set the num_reads...
Hi Jie,
Thank you for sharing your problem.
I used Advantage_system1.1 and chain strength calculated by uniform_torque_compensation to submit the problem and got the following results:
For the above problem, the first six rows are the minimum energy state. To verify, you can also use ExactSolver to test and debug a problem this size. It calculates the energy for all possible states using local resources.
Did you notice different results during your run? or Were you expecting different results? If so, would you mind specifying what results you observed or expected?
I would also mention that due to the probabilistic nature of the QPU, you don't always get the minimum energy solution for every run(rows 6-8 in the above solution).
Please sign in to leave a comment.