Skip to content

Agent of Reinforcement Learning for Intelligent Environments

License

Notifications You must be signed in to change notification settings

PlainConcepts/ARLIE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ARLIE

Agent of Reinforcement Learning for Intelligent Environments

ARLIE makes easier to work on complex reinforcement learning problems by providing different 3D environments and a common API to work with them.

For each environment, users can develop and/or test multiple training algorithms, policies, or rewards to get to an optimal solution in as less training steps as possible. To measure the optimality of a solution, each environment provides a score function.

CHallenging with ARLIE is a platform to encourage developers to come up with novel RL techniques and solve the different ARLIE environments.

Best scores are published in the Learderboard. Do you have what it takes to beat the leader? Submit your solution and compete with the others for the first place!

Playing with ARLIE

Installation

ARLIE is python based and it is published in Pypi.

pip install arlie

There is also a conda file min-environment.yml that creates a conda environment named arlie by default:

conda create -f min-environment.yml

As the 3D environments can be much heavy than regular python packages, they are downloaded separately the first time the package is executed.

Check this PlainTV on how to start with ARLIE (Spanish):

Introduction to ARLIE

Environments

Environments simulate 3D scenarios using Wave Engine, in which a certain goal must be achieve. That goal is modeled by a score function which evaluate according to how good the goal was achieved.

ARLIE users are meant to provide, for a certain environment, a training algorithm, an agent (a neural network to be trained, the policy), and optionally a reward function. After the training process, the goodness of the trained agent (the policy optimality) can be evaluated using the score function.

The pair of the training algorithm and the agent is often called a model. ARLIE provides two simple models by default: Human, in which agent actions are taken by a person (using the keyboard), and Random, in which actions are taken randomly. As you probably notice, training these models is futile.

When no reward function is provided, a default one is used. This implementation can be seen as an example on how rewards functions can be modeled for a particular environment.

To open ARLIE to well stablished RL implementations, their API is 100% compatible with OpenAI Gym, which means that all open source code available for that platform can work on ARLIE as well.


Available environments:


Examples

Four examples illustrates how to work with ARLIE.

In this PlainTV we present the Random, Human and DeepQ examples (Spanish):

Exploring ARLIE

In this PlainTV we present how ARLIE can be integrated with Stable Baselines (Spanish):

ARLIE and its friends