# Rcognita: A framework for DP and RL algorithm development, testing, and simulation

Welocme to `rcognita`’s documentation! This wiki contains all the nescessary information to get started with usage or development. Follow the installation instructions to get rcognita or check out rcognita’s github page if you’d like to browse releases or fork the repository.

- About
- Installation
- General description
- Usage
- Related literature
- Closing remarks
- Getting started
- For developers

# Modules

`rcognita.controllers` | This module contains controllers (agents).
`rcognita.loggers` | This module contains the logger interface along with concrete realizations for each separate system.
`rcognita.models` | This module contains classes to be used in fitting system models.
`rcognita.simulator` | This module contains one single class that simulates controller-system (agent-environment) loops.
`rcognita.systems` | This module contains a generic interface for systems (environments) as well as concrete systems as realizations of the former
`rcognita.utilities` | This module contains auxiliary functions.
`rcognita.visuals` | This module contains an interface class animator along with concrete realizations, each of which is associated with a corresponding system.