Skip to main content

Agents for the Tangled game

Project description

snowdrop-tangled-agents

A place to build and test agents for playing Tangled!

How to build your own agent

This repo includes a random agent (see RandomRandyAgent in random_agent.py). To build your own agent, follow the instructions and pattern for that agent. The process is straightforward - your agent gets a Game instance as input/observable, which is a snapshot of the current game being played which includes the current state of the game, and you output an action/move. The move is just which edge to pick, and what color to apply to it. That's all! Obviously the underlying process you use to select this move can be arbitrarily complex but the actual agent interface is simple.

Testing agents

A test script is included in run_local_parallel_tournament.py. Out of the box it runs 100,000 games for each of the X-Prize graphs (not including the mutant C60 graph) where the adjudicator used is simulated annealing, and the two agents in the competition are both random agents.

Suggested next steps

If you want to build your own agent, I would start by building your own adjudicator (look at both the adjudicators in the snowdrop-adjudicators repo). The better you can spoof the D-Wave hardware, the better quality reward your agent will have to learn from. To do this, I would recommend you build a look-up table adjudicator, by first enumerating all the terminal states for a small game graph, and then adjudicating all of them using the schrodinger equation adjudicator (this will be limited to small game graphs, but it's still a great warm-up for doing something more ambitious). Once you have your lookup table adjudicator, you can then build an agent that uses it to give you the correct answer every time. You can use run_local_parallel_tournament.py - add your adjudicator and new agents to and see how well they do against the random agent and any other agents you might have built!

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

snowdrop_tangled_agents-0.0.3.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

snowdrop_tangled_agents-0.0.3-py3-none-any.whl (9.5 kB view details)

Uploaded Python 3

File details

Details for the file snowdrop_tangled_agents-0.0.3.tar.gz.

File metadata

  • Download URL: snowdrop_tangled_agents-0.0.3.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.11.12 Windows/10

File hashes

Hashes for snowdrop_tangled_agents-0.0.3.tar.gz
Algorithm Hash digest
SHA256 7984c936950ef9b57c6b9cd8f2f3f80a4b8af97497b84faa1f3c808b31bed2c1
MD5 35012ec8e9c0793fbb8c732ccab0c4f8
BLAKE2b-256 e49247da79dd51c8426647fff3ca91ab48fd1884cc9b18d5bc22dd99626108dc

See more details on using hashes here.

File details

Details for the file snowdrop_tangled_agents-0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for snowdrop_tangled_agents-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5fd078d08c0ff762ebe8a168dbb24a8574cc01bacea09f68712b7d1238dc11cc
MD5 574f1f2fefec6f83678550f24da25cbd
BLAKE2b-256 9ab37214c2d0e7430dbb5248ebb35d976d7ca0462df494c004a0636ddcfcd304

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