Skip to content

TommyTranX/hackathon_RL_XHEC_2020

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This repository contains the materials necessary for the ending Hackathon for the 2020 RL@XHEC course.

The goal is for the students to define the rewards and train&tweak the agent to achieve the best score possible.

How-to use it:

  1. Clone this repository : git clone https://gitlab.com/the_insighters/x-hec/hackathon-rlxhec.git
  2. Enter the repo folder cd hackathon-rlxhec
  3. (Optional if already done) : install poetry curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python -
  4. Install the libraries : poetry install
  5. You can now run main.py using poetry: poetry run python main.py
  6. Modify main.py to tweak the agent and reward.
  7. Good luck !

To-do list

  • Transform the Rocker lander from https://github.com/EmbersArc/gym_rocketLander/blob/master/gym/envs/box2d/rocket_lander.py into an exploitable environment.
  • Customize the environment for the reward function to be definable from main.py
  • Create a nice training&testing interface
  • Add a save Agent functionnality
  • Solve the task with PPO)
  • Add video recording (instead of just being able to watch the episode at the time it is done)
  • Add a cue when the task is "solved"
  • Add landed and landed full to available variables
  • Add difficulty levels (done but not very useful, maybe a score system will be beter)
  • Add score
  • Add variables description
  • Tweak the difficulty for a nice experience
  • Test the exercise with different people to measure difficulty and time to beat

Architecture:

  • main.py : This is where the student will define reward function and agent and will be able to train and see the results
  • utils.py : Scripts to help the students. non directly related to RL.
  • gym_rocketLander (submodule) : Custom gym environment for SpaceX Rocket Lander (original work from EmbersArc modified to tweak difficulty)
  • requirements.txt : Specifies the needed libraries
  • .gitignore : Specifies which files to ignore when commiting.
  • data (folder): stores the data needed for the plots and agent. It is of no use for the user
  • figs (folder): stores the graphs (rewards over the episodes)
  • vids (folder): stores the vids of the agent's execution for each batch

Variable explanation

Disclaimer: The environment is based on https://github.com/EmbersArc/gym_rocketLander

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 69.6%
  • Jupyter Notebook 30.4%