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.3.0.tar.gz (73.9 kB view details)

Uploaded Source

File details

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

File metadata

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

File hashes

Hashes for pottsplayground-0.3.0.tar.gz
Algorithm Hash digest
SHA256 2dbc1fd848b3248d0b607c026766c410bfc8d28bdac4060c16e5d648c316304c
MD5 bfdaa23af47e8417041eda2bf047ec5e
BLAKE2b-256 95d6c8799542bb94ad2fa3981a5c28455251da0c9ec5d9c7a96f17c356544c08

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