Awesome
<div align="center"><img src="assets/logo.jpg" width="800"/></div>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.
<div align="center"><img src="assets/screenshot1.jpg" width="800"/></div>Documentation: https://minerva-ui.readthedocs.io
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.