Skip to content

nikolim/cablab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Cablab

Development, improvement and testing of various reinforcement learning algorithms.
Focus is on finding an effective algorithm for the Cabworld. The algorithms can also be applied to all other OpenAIGym environments.

Currently implemented Algorithms

Single Agent

Multi Agent

  • MA-DQN with different extensions

Archive

  • A2C
  • MA-PPO (individual)

AdvNet

WIP: Seperate Network to enable agents to communicate

Installation

pip install -r requirements.txt
pip install -e .

Usage

Configuration

Please use the config.toml files in cablab/configs

Training

cd cablab
python3 train.py -a dqn -n 100 -env v0
python3 train.py -a ppo -n 100 -env v1
python3 train.py -a ma-dqn -n 100 -env v2
usage: python3 train.py -a ALGORITHM -n NUMBER -env ENVIRONMENT
error: the following arguments are required: -a/--algorithm, -n/--number, -env/--environment

Deploy

Uses the most recent model. Models can only be deployed in environments they were trained in.

python3 deploy.py -a ppo -n 10 -env v0 -r True
usage: python3 deploy.py -a ALGORITHM -n NUMBER -env ENVIRONEMTN [-w WAIT] [-r RENDER] [-e EVAL]
error: the following arguments are required: -a/--algorithm, -n/--number, -env/--environment

Plots

Every traning run creates basic plots and use-case specific plots. Example plots for Cabworld v0 for PPO, DQN and M-DQN


About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published