Interactive Robot Learning including IBO
Go to file
2024-02-15 12:24:20 +01:00
src initial 2024-02-15 12:24:20 +01:00
.gitignore initial 2024-02-14 12:16:31 +01:00
docker-compose.yaml initial 2024-02-15 12:04:54 +01:00
Dockerfile initial 2024-02-15 12:04:54 +01:00
README.md initial 2024-02-15 12:04:54 +01:00
requirements.txt initial 2024-02-15 12:04:54 +01:00

Interactive Robot Learning Framework

Welcome to the Interactive Robot Learning Framework, a modular and extensible system designed for robotics research and development. This framework utilizes Docker and ROS2 to provide a flexible and isolated environment for experimenting with robot learning algorithms, interaction metrics, objective functions, representation models, benchmark environments, and communication messages.

Getting Started

This section will guide you through the process of setting up the Docker container for the framework. [Final startup instructions will be provided by the user.]

Prerequisites

  • Docker
  • ROS2 Foxy Fitzroy (or your target ROS2 distribution)

Installation

  1. Clone the repository:
git clone [repository-url]
cd [repository-name]
  1. Build the Docker container:
docker build -t interactive-robot-learning-framework .
  1. Launch the Docker container using docker-compose:
docker-compose up -d

Framework Structure

The Interactive Robot Learning Framework consists of several key ROS2 packages, each responsible for different aspects of robot learning and interaction. Below is an overview of each package:

Optimizer ROS2 Package

  • Description: Contains various optimization algorithms designed to fine-tune robot learning parameters.
  • Key Components: Gradient descent, genetic algorithms, simulated annealing, etc.

InteractionQuery Package

  • Description: Implements metrics to quantify and analyze user interactions with the optimizer, facilitating adaptive learning processes.
  • Key Components: Engagement level, feedback quality, interaction frequency, etc.

ObjectiveFunctions Package

  • Description: Houses the objective functions used by optimizers to evaluate the performance of robot learning tasks.
  • Key Components: Loss functions, reward functions, etc.

RepresentationModel Package

  • Description: Provides models for representing robot trajectories in a manner conducive to learning and optimization.
  • Key Components: Graphical models, neural networks, geometric representations, etc.

Benchmark Package

  • Description: Includes various reinforcement learning (RL) benchmark environments for testing and evaluating learning algorithms.
  • Key Components: Simulated robotics tasks, navigation challenges, manipulation tasks, etc.

InteractionMsgs Package

  • Description: Contains all necessary ROS2 messages, services, and actions for facilitating communication within the framework.
  • Key Components: Custom message definitions, service calls for optimizer control, action definitions for task execution, etc.

Starting Up

[This section will be completed by the user, detailing the steps to initialize the framework and begin experiments.]

Contributing

We welcome contributions to the Interactive Robot Learning Framework! Please read our contributing guidelines for more information on how to participate in the development.

License

[Specify the license under which the framework is released, e.g., MIT, GPL, Apache.]

Acknowledgments

[Optional: Acknowledge any contributions, inspirations, or frameworks that assisted in the development of this project.]