Skip to content

A reinforcement learning library in Rust

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

laboroai/border

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Border

A reinforcement learning library in Rust.

CI Latest version Documentation License

Border consists of the following crates:

  • Core and utility
    • border-core provides basic traits and functions generic to environments and reinforcmenet learning (RL) agents.
    • border-tensorboard has TensorboardRecorder struct to write records which can be shown in Tensorboard. It is based on tensorboard-rs.
    • border-mlflow-tracking support MLflow tracking to log metrices during training via REST API.
    • border-async-trainer defines some traits and functions for asynchronous training of RL agents by multiple actors, which runs sampling processes in parallel. In each sampling process, an agent interacts with an environment to collect samples to be sent to a shared replay buffer.
    • border is just a collection of examples.
  • Environment
  • Agent

Status

Border is experimental and currently under development. API is unstable.

Examples

There are some example sctipts in border/examples directory. These are tested in Docker containers, speficically the one in aarch64 directory on M2 Macbook air. Some scripts take few days for the training process, tested on Ubuntu22.04 virtual machine in GPUSOROBAN, a computing cloud.

Docker

In docker directory, there are scripts for running a Docker container, in which you can try the examples described above. Currently, only aarch64 is mainly used for the development.

License

Crates License
border-core MIT OR Apache-2.0
border-tensorboard MIT OR Apache-2.0
border-mlflow-tracking MIT OR Apache-2.0
border-async-trainer MIT OR Apache-2.0
border-py-gym-env MIT OR Apache-2.0
border-atari-env GPL-2.0-or-later
border-tch-agent MIT OR Apache-2.0
border-candle-agent MIT OR Apache-2.0
border-policy-no-backend MIT OR Apache-2.0
border GPL-2.0-or-later