OpenAI Gym Environment for 2048 extended functionality
Project description
This package implements the classic grid game 2048 for OpenAI gym environment.
Install
pip install gym-2048
Environment(s)
The package currently contains two environments
Tiny2048-v0: A 2 x 2 grid game.
2048-v0: The standard 4 x 4 grid game.
Attributes
Observation: All observations are n x n numpy arrays representing the grid. The array is 0 for empty locations and numbered 2, 4, 8, ... wherever the tiles are placed.
- Actions: There are four actions defined by integers.
LEFT = 0
UP = 1
RIGHT = 2
DOWN = 3
Reward: Reward is the total score obtained by merging any potential tiles for a given action. Score obtained by merging two tiles is simply the sum of values of those two tiles.
Rendering
Currently only basic print rendering (mode='human') is supported. Graphic rendering support is coming soon.
Usage
Here is a sample rollout of the game which follows the same API as OpenAI gym.Env.
import gym_2048
import gym
if __name__ == '__main__':
env = gym.make('2048-v0')
env.seed(42)
env.reset()
env.render()
done = False
moves = 0
while not done:
action = env.np_random.choice(range(4), 1).item()
next_state, reward, done, info = env.step(action)
moves += 1
print('Next Action: "{}"\n\nReward: {}'.format(
gym_2048.Base2048Env.ACTION_STRING[action], reward))
env.render()
print('\nTotal Moves: {}'.format(moves))
NOTE: Top level import gym_2048 is needed to ensure registration with Gym.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file gym_2048_extended-1.2-py3.10.egg
.
File metadata
- Download URL: gym_2048_extended-1.2-py3.10.egg
- Upload date:
- Size: 14.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 10059e4fb1e50c7aa3aa285316608be55e53bcae5495b209afa99e4297a51bb7 |
|
MD5 | dd2b72b47fd813e7afa8039b919daaa8 |
|
BLAKE2b-256 | 6b97d41ec1a5a1b1f4d9d4476c21b701eebe1f339525344960aacf64a0c9edbd |