Engine implementations shipped with NRP-coreΒΆ
This page lists Engine implementations currently available with NRP-core. These implementations provide out-of-the-box functionality for use with NRP-core, and also represent good examples to study for users interested in implementing their own engines. For each engine implementation, a general description of the provided functionality is offered first, followed by the engine configuration parameters, and finally a list of datapack types supported by the engine.
Additionally, in order to make it easier to implement new engines, we propose a way to leverage code reusability: for new engine implementations, interested users can therefore refer to one of the available Engine Communication Protocols. These are Engine templates implementing all aspects of engine client / server communication for a given protocol.
List of available engines:
Gazebo : engine implementation for the Gazebo physics simulator
NEST : two different implementations that integrate the NEST Simulator into NRP-core
Python JSON Engine : generic Python-based mechanism that imports and executes a simulator inside a user-defined python script. Ideal for simulators with a Python API.
Python GRPC Engine : This engine is similar to the Python JSON Engine but uses GRPC as the communication mechanism. Compared to Python JSON Engine, this kind of engine has a faster data transfer rate.
PySim : engine implementation based on the Python JSON Engine wrapping different simulators (Mujoco, Opensim and OpenAI) with a python API. Based on the integrated OpenAI, NRP supports Parallel Learning using different computation nodes or threads. The detailed processes can be seen on the page of Parallel Learning.
The Virtual Brain : engine implementation based on the Python JSON Engine and TVB Python API
Data Transfer Engine : engine implementation designed to transfer data from NRP-core experiments to file or the network.
Edlut Engine : engine implementation designed to integrate the EDLUT simulator in NRP-core.
Related Pages: