All Projects → seoulai → Gym

seoulai / Gym

Licence: mit
Seoul AI Gym is a toolkit for developing AI algorithms.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Gym

Doyouevenlearn
Essential Guide to keep up with AI/ML/DL/CV
Stars: ✭ 913 (+3281.48%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Rex Gym
OpenAI Gym environments for an open-source quadruped robot (SpotMicro)
Stars: ✭ 684 (+2433.33%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Ai Toolbox
A C++ framework for MDPs and POMDPs with Python bindings
Stars: ✭ 500 (+1751.85%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Arnold
Arnold - DOOM Agent
Stars: ✭ 457 (+1592.59%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Basic reinforcement learning
An introductory series to Reinforcement Learning (RL) with comprehensive step-by-step tutorials.
Stars: ✭ 826 (+2959.26%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Recsim
A Configurable Recommender Systems Simulation Platform
Stars: ✭ 461 (+1607.41%)
Mutual labels:  artificial-intelligence, reinforcement-learning
David Silver Reinforcement Learning
Notes for the Reinforcement Learning course by David Silver along with implementation of various algorithms.
Stars: ✭ 623 (+2207.41%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Text summurization abstractive methods
Multiple implementations for abstractive text summurization , using google colab
Stars: ✭ 359 (+1229.63%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Tensorlayer
Deep Learning and Reinforcement Learning Library for Scientists and Engineers 🔥
Stars: ✭ 6,796 (+25070.37%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Notes
Resources to learn more about Machine Learning and Artificial Intelligence
Stars: ✭ 766 (+2737.04%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Huskarl
Deep Reinforcement Learning Framework + Algorithms
Stars: ✭ 414 (+1433.33%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Ciff
Cornell Instruction Following Framework
Stars: ✭ 23 (-14.81%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Home Platform
HoME: a Household Multimodal Environment is a platform for artificial agents to learn from vision, audio, semantics, physics, and interaction with objects and other agents, all within a realistic context.
Stars: ✭ 370 (+1270.37%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Reaver
Reaver: Modular Deep Reinforcement Learning Framework. Focused on StarCraft II. Supports Gym, Atari, and MuJoCo.
Stars: ✭ 499 (+1748.15%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Lagom
lagom: A PyTorch infrastructure for rapid prototyping of reinforcement learning algorithms.
Stars: ✭ 364 (+1248.15%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Gym Starcraft
StarCraft environment for OpenAI Gym, based on Facebook's TorchCraft. (In progress)
Stars: ✭ 514 (+1803.7%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Rl4j
Deep Reinforcement Learning for the JVM (Deep-Q, A3C)
Stars: ✭ 330 (+1122.22%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Pomdps.jl
MDPs and POMDPs in Julia - An interface for defining, solving, and simulating fully and partially observable Markov decision processes on discrete and continuous spaces.
Stars: ✭ 338 (+1151.85%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Awesome Artificial Intelligence
A curated list of Artificial Intelligence (AI) courses, books, video lectures and papers.
Stars: ✭ 6,516 (+24033.33%)
Mutual labels:  artificial-intelligence, reinforcement-learning
Pygame Learning Environment
PyGame Learning Environment (PLE) -- Reinforcement Learning Environment in Python.
Stars: ✭ 828 (+2966.67%)
Mutual labels:  artificial-intelligence, reinforcement-learning

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.

Contents

Basics

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.

Installation

There are two ways to install seoulai-gym.

pip3

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 https://github.com/seoulai/gym.git
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.

Environments

Currently, environment simulating game of Checkers, [Mighty] (https://en.wikipedia.org/wiki/Mighty_(card_game)), and Market are provided.

  • Checkers

    import seoulai_gym as gym
    env = gym.make("Checkers")
    env.reset()
    env.render()
    
  • 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 = [
      players[0]._name,
      players[1]._name,
      players[2]._name,
      players[3]._name,
      players[4]._name,
      ]
    env.render()
    
    
  • Market

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

Examples

Testing

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

pytest
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].