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.2.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.2.tar.gz.
File metadata
- Download URL: puzzle15gym-1.0.2.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 |
e9683553a785692e34bff5fc339234112a4db93d095cd8b933a26156a91b81be
|
|
| MD5 |
46751bbddbf29a5327d2ee190e0f5c72
|
|
| BLAKE2b-256 |
c5600ecebfdf5fe01bb2764a627ac9dc0c7bfa9d53dbb86006224a8bd4573e53
|
File details
Details for the file puzzle15gym-1.0.2-py3-none-any.whl.
File metadata
- Download URL: puzzle15gym-1.0.2-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 |
330634677b2762cd68e14e3875db13f983d20c47f9f96b86438f00609ee6eefb
|
|
| MD5 |
31f0870c7be5c0de041d682a95e19195
|
|
| BLAKE2b-256 |
532f9ace03b0715d8dbe4f18b5cd097ba4959f84b9841c061081be65dd9372da
|