Skip to main content

The Seoul AI Gym: Seoul AI Gym is a toolkit for developing AI algorithms.

Project description

Seoul AI Gym

Seoul AI Gym is a toolkit for developing AI algorithms. This gym simulates environments and enables you to apply any teaching technique on agent.

Build Status

Seoul AI Gym was inspired by OpenAI gym and tries to follow its API very closely.



There are two terms that are important to understand: Environment and Agent.

An environment is a world (simulation) with which an agent can interact. An agent can observe a world and act based on its decision.

seoulai-gym provides environments. An example of creating environment:

import seoulai_gym as gym
env = gym.make("Checkers")

Every environment has three important methods: reset, step and render.

reset(self) -> observation

Reset an environment to default state and return observation of default state. observation data structure depends on environment and is described separately for each environment.

step(self, agent, action) -> observation, reward, done, info

Perform an action on behalf of agent in environment lastly observed by either reset or step. An action can differ among different environments but the return value of step method is always same. A reward is given to an agent when action that was done in the current step or some of the previous steps have led to a positive outcome for an agent (e.g winning a game). An info is a dictionary containing extra information about performed action.

render(self) -> None

Display state of game on a screen.


There are two ways to install seoulai-gym.


The recommended way for developers creating an agent is to install seoulai-gym using pip3.

pip3 install seoulai-gym

From source

You can also clone and install seoulai-gym from source. This option is for developers that want to create new environments or modify existing ones.

git clone
cd gym
pip3 install -e .

Supported systems

seoulai-gym requires to have at least Python 3.6 and was tested on Arch Linux, macOS High Sierra and Windows 10.


Currently, environment simulating game of Checkers, [Mighty] (, and Market are provided.

  • Checkers

    import seoulai_gym as gym
    env = gym.make("Checkers")
  • Mighty

    import seoulai_gym as gym
    from seoulai_gym.envs.mighty.agent.RandomAgent import RandomAgent
    env = gym.make("Mighty")
    players = [RandomAgent("Agent 1", 0),
                RandomAgent("Agent 2", 1),
                RandomAgent("Agent 3", 2),
                RandomAgent("Agent 4", 3),
                RandomAgent("Agent 5", 4)]
    obs = env.reset()
    obs["game"].players = [
  • Market

    import seoulai_gym as gym
    from seoulai_gym.envs.traders.agents import RandomAgentBuffett
    # make enviroment
    env = gym.make("Market")
    # select exchange"upbit")
    init_cash = 100000000  # KRW
    a1 = RandomAgentBuffett("Buffett", init_cash)
    current_agent = a1



All test are written using pytest. You can run them via:


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

seoulai-gym-0.1.2.tar.gz (1.6 MB view hashes)

Uploaded source

Built Distribution

seoulai_gym-0.1.2-py3-none-any.whl (1.6 MB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page