For a project I'm working on, I want to use D-Wave systems to estimate the probabilities of a Boltzmann distribution given a QUBO (Hamiltonian), this being performed through sampling and the use of the law of large numbers. Yet, I have some problems.

  1. There is a difference between the mathematical QUBO I have, that I define in Python, and the physical QUBO that is actually implemented. Such a difference must exist for multiple reasons:
    • A priori, the QUBO I define can have arbitrary big coefficients, while a physical system cannot have arbitrary big energies. Thus, my QUBO must be scaled at some point.
    • The QUBO written in Python is physically dimensionless, while an actual energy has a physical dimension (ML^2T^-2). Thus, an energy scale must be involved.
    • The physical Boltzmann distribution depends on temperature through a factor 1/(kB*T).

This can be summarized by saying that denoting by H the QUBO defined in Python, what the machine implements and samples from is some \beta_eff*H. While having a positive \beta_eff ensures that the ground states remain the same and therefore allows for the discovery of the ground state of my mathematical QUBO, the Boltzmann distribution is changed by this factor.

  1. Getting an estimation of a probability distribution through a statistical sampling implies having enough samples to reach convergence in the law of large numbers. As a first approximation, if N is the amount of qubits involved in my QUBO, then there are 2^N possible states and thus 100*2^N is a decent estimation of the amount of samples required to reach the aforementioned convergence. Now, when trying to sample from a distribution, I encountered an error stating that num_reads is at maximum 10 000, which (according to the previous estimation) allows for no more than 6 qubits, so not enough for me. I thought of simply make multiple batches of 10 000 reads and concatenate them together with Python ; however, this forum thread implies that it won't be a solution.

Hence the question : Is it possible to sample from a given Boltzmann distribution using a D-Wave computer, and if yes, how to do so ?

Thanks in advance for your help

  • 2
    $\begingroup$ Welcome to the site! Please note that StackExchange is tailored towards each post containing a single, laser-focused question. Posts trying to ask too many things make it harder to get good answers and are liable to be closed by the community. Feel free to the edit the post to make it more focused and easier to answer. You can open different posts to ask different questions $\endgroup$
    – glS
    Aug 4 at 15:54
  • $\begingroup$ Thanks for the tip, it's done. It's a one question post now (the two points explain why the question is relevant). $\endgroup$ Aug 5 at 7:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.