Skip to main content

OpenAI Gym Environment for 2048 extended functionality

Project description

https://travis-ci.com/salmanazarr/gym-2048.svg?branch=master https://badge.fury.io/py/gym-2048.svg

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

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

gym_2048_extended-1.2-py3.10.egg (14.9 kB view details)

Uploaded Source

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

Hashes for gym_2048_extended-1.2-py3.10.egg
Algorithm Hash digest
SHA256 10059e4fb1e50c7aa3aa285316608be55e53bcae5495b209afa99e4297a51bb7
MD5 dd2b72b47fd813e7afa8039b919daaa8
BLAKE2b-256 6b97d41ec1a5a1b1f4d9d4476c21b701eebe1f339525344960aacf64a0c9edbd

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page