pyqlearning.annealingmodel package

Submodules

pyqlearning.annealingmodel.cost_functionable module

class pyqlearning.annealingmodel.cost_functionable.CostFunctionable[source]

Bases: object

The interface of cost function in annealing.

The definition of cost function is possible option: not necessity but contingent from the point of view of modal logic. You should questions the necessity of definition and re-define, for designing the implementation of this interface, in relation to your problem settings.

References

  • Bertsimas, D., & Tsitsiklis, J. (1993). Simulated annealing. Statistical science, 8(1), 10-15.
  • Das, A., & Chakrabarti, B. K. (Eds.). (2005). Quantum annealing and related optimization methods (Vol. 679). Springer Science & Business Media.
  • Du, K. L., & Swamy, M. N. S. (2016). Search and optimization by metaheuristics. New York City: Springer.
  • Edwards, S. F., & Anderson, P. W. (1975). Theory of spin glasses. Journal of Physics F: Metal Physics, 5(5), 965.
compute(x)[source]

Compute.

Parameters:x – var.
Returns:Cost.

pyqlearning.annealingmodel.distance_computable module

class pyqlearning.annealingmodel.distance_computable.DistanceComputable[source]

Bases: object

The interface of computing distance, to compute cost as distance for QuantumMonteCarlo.

References

  • Das, A., & Chakrabarti, B. K. (Eds.). (2005). Quantum annealing and related optimization methods (Vol. 679). Springer Science & Business Media.
compute(x, y)[source]

Compute distance.

Parameters:
  • x – Data point.
  • y – Data point.
Returns:

Distance.

pyqlearning.annealingmodel.quantum_monte_carlo module

class pyqlearning.annealingmodel.quantum_monte_carlo.QuantumMonteCarlo(distance_computable, cycles_num=100, inverse_temperature_beta=50, gammma=1.0, fractional_reduction=0.99, trotter_dimention=None, mc_step=None, point_num=None, spin_arr=None, tolerance_diff_e=None)[source]

Bases: pyqlearning.annealing_model.AnnealingModel

Quantum Monte Carlo.

Generally, Quantum Monte Carlo is a stochastic method to solve the Schrödinger equation. This algorithm is one of the earliest types of solution in order to simulate the Quantum Annealing in classical computer. In summary, one of the function of this algorithm is to solve the ground state search problem which is known as logically equivalent to combinatorial optimization problem.

References

  • Das, A., & Chakrabarti, B. K. (Eds.). (2005). Quantum annealing and related optimization methods (Vol. 679). Springer Science & Business Media.
  • Facchi, P., & Pascazio, S. (2008). Quantum Zeno dynamics: mathematical and physical aspects. Journal of Physics A: Mathematical and Theoretical, 41(49), 493001.
  • Heim, B., Rønnow, T. F., Isakov, S. V., & Troyer, M. (2015). Quantum versus classical annealing of Ising spin glasses. Science, 348(6231), 215-217.
  • Heisenberg, W. (1925) Über quantentheoretische Umdeutung kinematischer und mechanischer Beziehungen. Z. Phys. 33, pp.879—893.
  • Heisenberg, W. (1927). Über den anschaulichen Inhalt der quantentheoretischen Kinematik und Mechanik. Zeitschrift fur Physik, 43, 172-198.
  • Heisenberg, W. (1984). The development of quantum mechanics. In Scientific Review Papers, Talks, and Books -Wissenschaftliche Übersichtsartikel, Vorträge und Bücher (pp. 226-237). Springer Berlin Heidelberg. Hilgevoord, Jan and Uffink, Jos, “The Uncertainty Principle”, The Stanford Encyclopedia of Philosophy (Winter 2016 Edition), Edward N. Zalta (ed.), URL = <https://plato.stanford.edu/archives/win2016/entries/qt-uncertainty/>.
  • Jarzynski, C. (1997). Nonequilibrium equality for free energy differences. Physical Review Letters, 78(14), 2690.
  • Messiah, A. (1966). Quantum mechanics. 2 (1966). North-Holland Publishing Company.
  • Schrödinger, E. (1926). Quantisierung als eigenwertproblem. Annalen der physik, 385(13), S.437-490.
  • Somma, R. D., Batista, C. D., & Ortiz, G. (2007). Quantum approach to classical statistical mechanics. Physical review letters, 99(3), 030603.
  • 鈴木正. (2008). 「組み合わせ最適化問題と量子アニーリング: 量子断熱発展の理論と性能評価」.,『物性研究』, 90(4): pp598-676. 参照箇所はpp619-624.
  • 西森秀稔、大関真之(2018) 『量子アニーリングの基礎』須藤 彰三、岡 真 監修、共立出版、参照箇所はpp9-46.
annealing()[source]

Annealing.

get_spin_arr()[source]

getter

set_readonly(value)[source]

setter

spin_arr

getter

pyqlearning.annealingmodel.simulated_annealing module

class pyqlearning.annealingmodel.simulated_annealing.SimulatedAnnealing(cost_functionable, cycles_num=200, trials_per_cycle=50, accepted_sol_num=0.0, init_prob=0.7, final_prob=0.001, start_pos=0, move_range=3, tolerance_diff_e=None)[source]

Bases: pyqlearning.annealing_model.AnnealingModel

Simulated Annealing.

Simulated Annealing is a probabilistic single solution based search method inspired by the annealing process in metallurgy. Annealing is a physical process referred to as tempering certain alloys of metal, glass, or crystal by heating above its melting point, holding its temperature, and then cooling it very slowly until it solidifies into a perfect crystalline structure. The simulation of this process is known as simulated annealing.

References

  • Bertsimas, D., & Tsitsiklis, J. (1993). Simulated annealing. Statistical science, 8(1), 10-15.
  • Du, K. L., & Swamy, M. N. S. (2016). Search and optimization by metaheuristics. New York City: Springer.
  • Mezard, M., & Montanari, A. (2009). Information, physics, and computation. Oxford University Press.
  • Nallusamy, R., Duraiswamy, K., Dhanalaksmi, R., & Parthiban, P. (2009). Optimization of non-linear multiple traveling salesman problem using k-means clustering, shrink wrap algorithm and meta-heuristics. International Journal of Nonlinear Science, 8(4), 480-487.
annealing()[source]

Annealing.

Module contents