A custom AI Gym environment for the sliding block puzzle game
Project description
Puzzle15Gym
A custom AI Gym environment for the 15-puzzle game: https://en.wikipedia.org/wiki/15_puzzle.
The blank space is represented by -1.
Usage
Initiating the env via gym
import gym
env_3x3_random = gym.make('Puzzle3x3Random-v0')
env_3x3_fixed = gym.make('Puzzle3x3Fixed-v0')
env_4x4_random = gym.make('Puzzle4x4Random-v0')
env_4x4_fixed = gym.make('Puzzle4x4Fixed-v0')
env_5x5_random = gym.make('Puzzle5x5Random-v0')
env_5x5_fixed = gym.make('Puzzle5x5Fixed-v0')
Initiating the env directly
from puzzle15Gym import Puzzle15Env
env_random = Puzzle15Env(height=4, width=4)
env_fixed = Puzzle15Env(custom_puzzle="2 8 6|7 1 3|-1 5 4")
Making moves
import gym
env_3x3_random = gym.make('Puzzle3x3Random-v0')
# Reset the environment
observation, info = env_3x3.reset()
# Make a random valid move
import random
valid_actions = info["valid_actions"]
random_action = random.choice(list(valid_actions))
observation, reward, done, truncated, info = env_3x3.step(random_action)
# Render the environment. The only render mode is 'human' which renders visual output.
env_3x3.render()
# Close the environment
env_3x3.close()
Environment Details
- Action Space: Discrete(4) -
0: up,1: right,2: down,3: left. - Observation Space:
Box(-1, height*width-1, (height*width), int32). Contains unique values from-1to (width * height - 1), excluding0. - Reward:
1if the puzzle is solved,0if not,-2if invalid move. - Done:
Trueif the puzzle is solved,Falseotherwise.
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
puzzle15gym-1.0.3.tar.gz
(17.7 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file puzzle15gym-1.0.3.tar.gz.
File metadata
- Download URL: puzzle15gym-1.0.3.tar.gz
- Upload date:
- Size: 17.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
083300ff3ffa02dda04066cb085ecbc3f81e1716d41b679991f8c5f1f1a1198e
|
|
| MD5 |
8b59e8b466f04c2ed4b5cc9d3151594e
|
|
| BLAKE2b-256 |
7471a1ef38687ae624990b99dc1398740f8648bd4ec98ff66e0a9b6c180d200a
|
File details
Details for the file puzzle15gym-1.0.3-py3-none-any.whl.
File metadata
- Download URL: puzzle15gym-1.0.3-py3-none-any.whl
- Upload date:
- Size: 17.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9aff823e3c98f3b8f68fc35d9f6ca755c58484545a9a10d78c5a4316d5354d00
|
|
| MD5 |
6480cdcd477cbb003157f5d2005e1196
|
|
| BLAKE2b-256 |
9febca9f00ae58ffd0ebd4b2965f6e73b5f4cffa3f20b5d5b687b2ac15409922
|