SKModel#
- class SKModel(num_sites, rng_or_seed=None)[source]#
Bases:
OptimizationApplication
Optimization application of the “Sherrington Kirkpatrick (SK) model” [1].
The SK Hamiltonian over n spins is given as: \(H(x)=-1/\sqrt{n} \sum_{i<j} w_{i,j}x_ix_j\), where \(x_i\in\{\pm 1\}\) is the configuration of spins and \(w_{i,j}\in\{\pm 1\}\) is a disorder chosen independently and uniformly at random. Notice that there are other variants of disorders e.g., with \(w_{i,j}\) chosen from the normal distribution with mean 0 and variance 1.
References
[1]: Dmitry Panchenko. “The Sherrington-Kirkpatrick model: an overview”, https://arxiv.org/abs/1211.1094
- Parameters:
Attributes
- graph#
Getter of the graph representation. :returns: A graph for a problem.
- num_sites#
Getter of the number of sites. :returns: Number of sites.
Methods
- interpret(result)[source]#
Interpret a result as configuration of spins.
- Parameters:
result (OptimizationResult | ndarray) – The calculated result of the problem.
- Returns:
configuration of spins
- Return type:
- static sample_most_likely(state_vector)#
Compute the most likely binary string from state vector.
- Parameters:
state_vector (QuasiDistribution | Statevector | ndarray | Dict) – state vector or counts or quasi-probabilities.
- Returns:
binary string as numpy.ndarray of ints.
- Raises:
ValueError – if state_vector is not QuasiDistribution, Statevector, np.ndarray, or dict.
- Return type: