Skip to main content

For creating and solving Potts-model representations of combinatorial optimization problems

Project description

PottsPlayground is for constructing and simulating combinatorial optimization problems represented as Potts Models. It includes a system for constructing weight matrices in Python and a C++/CUDA extension for minimizing the Potts model energy on a CPU or GPU using various flavors of simulated annealing. It is intended as a demonstration of what the Potts model is and is not capable of, and as a tool for further research with the Potts model of computation.

Read the full docs here.

Built-in combinatorial problems can be generated and solved easily:

import PottsPlayground
PottsTask = PottsPlayground.Tasks.TravelingSalesman(ncities=10, ConstraintFactor=1.5)
temp = PottsPlayground.Schedules.SawtoothTempLog2Space(MaxTemp=1., MinTemp=0.05, nTeeth=3, nIters=1e4)
results = PottsPlayground.Anneal(PottsTask, temp)
final_best_soln = results['MinStates'][-1,:]
PottsTask.DisplayState(final_best_soln)

There is also a BaseTask class that can be used to try out any Potts Model problem representations you can think of, and anneal it using the high-performance backend.

Features:

  • Structured construction of Potts Models

  • Automatic conversion from Potts to Ising models

  • Minor Embedding of Ising models

  • GPU accelerated annealing and sampling

  • Parallel replicates

  • Parallel updating

  • Comprehensive statistical reporting

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pottsplayground-0.2.0.tar.gz (69.6 kB view details)

Uploaded Source

File details

Details for the file pottsplayground-0.2.0.tar.gz.

File metadata

  • Download URL: pottsplayground-0.2.0.tar.gz
  • Upload date:
  • Size: 69.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for pottsplayground-0.2.0.tar.gz
Algorithm Hash digest
SHA256 33b7b7af9ceb8f4a9b6a7870a568798c6dc7cc577818c301e1061117e8b1d2ec
MD5 529bc3022036a9b7fba3cc087c57068b
BLAKE2b-256 cb866fdcc49df701f33858d895f70a2412b4365251b4ad9f5468e5760b57d157

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page