exarl

Subpackages

Package Contents

Classes

ExaComm

Helper class that provides a standard way to create an ABC using

ExaAgent

Agent base class: Inherits from abstract base class for mandating

ExaEnv

ExaWorkflow

Helper class that provides a standard way to create an ABC using

ExaLearner

ExaData

Helper class that provides a standard way to create an ABC using

class exarl.ExaComm(comm, procs_per_env, num_learners)

Bases: abc.ABC

Helper class that provides a standard way to create an ABC using inheritance.

global_comm
agent_comm
env_comm
learner_comm
num_learners = 1
abstract send(self, data, dest, pack=False)
abstract recv(self, data_type, data_count, source)
abstract bcast(self, data, root)
abstract barrier(self)
abstract reduce(self, arg, op, root)
abstract allreduce(self, arg, op)
abstract time(self)
abstract split(self, procs_per_env)
is_learner()
is_actor()
is_agent()
class exarl.ExaAgent(**kwargs)

Bases: abc.ABC

Agent base class: Inherits from abstract base class for mandating functionality (pure virtual functions).

abstract get_weights(self)

get target model weights

abstract set_weights(self)

set target model weights

abstract train(self)

train the agent

abstract action(self)

next action based on current state

abstract load(self)

load weights

abstract save(self, results_dir)

save weights

abstract has_data(self)

return true if agent has experiences from simulation

class exarl.ExaEnv(env, **kwargs)

Bases: gym.Wrapper

set_results_dir(self, results_dir)

Default method to save environment specific information

class exarl.ExaWorkflow(**kwargs)

Bases: abc.ABC

Helper class that provides a standard way to create an ABC using inheritance.

abstract run(self)
class exarl.ExaLearner(comm=None)
make(self)
set_training(self, nepisodes, nsteps)
set_config(self)
render_env(self)
run(self)
class exarl.ExaData(dataType, size, comm_size=1, max_model_lag=None, name=None)

Bases: abc.ABC

Helper class that provides a standard way to create an ABC using inheritance.

abstract pop(self, rank, count=1)
abstract push(self, data, rank=None)
get_data(self, learner_counter, low, high)