gaoyuankidult / Generalized-RL-Self-Play-Framework

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Generalized-RL-Self-Play-Framework

Modules

rl_algorithms/

Module containing a set of classes representing various RL algorithms.

Currently implemented:

  • Tabular Q Learning.
  • DQN derivative (not done)

The interface they must follow is:

class Algorithm():

    def __init__(self, state_space_size, action_space_size, hashing_function, learning_rate, training):
        pass

    def handle_experience(self, state, action, reward, succesor_state):
        pass

    def take_action(self, state):
        pass

    def clone(self, training):
        pass

training_schemes/

(Only self play for now) Different training schemes. Currently we have

  • Naive Self Play
  • Delta Distributional Self Play

multiagent_loops/

(should probably rename to environment loops)

Module that defines environment loops. Some environments need agents to submit all actions simultaneously, such as Rock Paper Scissors, whilst others like Go need one action at a time.

experiment/

About


Languages

Language:Python 99.2%Language:Shell 0.8%