MINERVA: An out-of-the-box GUI tool for offline deep reinforcement learning

MINERVA is an out-of-the-box GUI tool for offline deep reinforcement learning, designed for everyone including non-programmers to do reinforcement learning as a tool.

Documentation: https://minerva-ui.readthedocs.io

Chat: Gitter

key features

:zap: All You Need Is Dataset

MINERVA only requires datasets to start offline deep reinforcement learning.
Any combinations of vector observations and image observations with discrete
actions and continuous actions are supported.

:beginner: Stunning GUI

MINERVA provides designed with intuitive GUI to let everyone lerverage extremely
powerful algorithms without barriers. The GUI is developed as a Single Page
Application (SPA) to make it work in the eye-opening speed.

:rocket: Powerful Algorithm

MINERVA is powered by d3rlpy, a powerful
offline deep reinforcement learning library for Python, to provide
extremely powerful algorithms in an out-of-the-box way. The trained policy can
be exported as TorchScript and
ONNX.

installation

PyPI

$ pip install minerva-ui

Docker

$ docker run -d --gpus all -p 9000:9000 --name minerva takuseno/minerva:latest

update guide

If you update MINERVA, the database schema should be also updated as follows:

$ pip install -U minerva-ui
$ minerva upgrade-db

usage

run server

At the first time, ~/.minerva will be automatically created to store
database, uploaded datasets and training metrics.

$ minerva run

By default, you can access to MINERVA interface at http://localhost:9000 .
You can change the host and port with --host and --port arguments
respectively.

delete data

You can delete entire data (~/.minerva) as follows:

$ minerva clean

contributions

build

$ npm install
$ npm run build

coding style

This repository is fully formatted with yapf
and standard.
You can format the entire scripts as follows:

$ ./scripts/format

lint

This repository is fully analyzed with Pylint,
ESLint and sass-lint.
You can run analysis as follows:

$ ./scripts/lint

test

The unit tests are provided as much as possible.
This repository is using pytest-cov instead of pytest.
You can run the entire tests as follows:

$ ./scripts/test

acknowledgement

This work is supported by Information-technology Promotion Agency, Japan
(IPA), Exploratory IT Human Resources Project (MITOU Program) in the fiscal
year 2020.

The concept of the GUI software for deep reinforcement learning is inspired by
DeepAnalyzer from Ghelia inc.
I'm showing the great respect to the team here.

GitHub

https://github.com/takuseno/minerva