Skip to content

The implementation of a Central Pattern Generator (CPG) model optimized using a Genetic Algorithm (GA) for controlling a Mantis robot

Notifications You must be signed in to change notification settings

yasamanhbn/CPG-controller-with-GA-optimization

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

CPG Controller with GA Optimization

This repository contains the implementation of a Central Pattern Generator (CPG) model optimized using a Genetic Algorithm (GA) for controlling a Mantis robot.

Overview

The project demonstrates the integration of a CPG model with GA optimization to enhance the locomotion capabilities of a Mantis robot in a Webots simulation environment. The CPG controller is based on the principles discussed in the following paper: Learning to Move in Modular Robots using Central Pattern Generators and Online Optimization.

Setup Instructions

To run the code, follow these steps:

  1. Add the world to Webots:

    • Open the Webots simulation environment.
    • Add the provided world file to the Webots environment.
  2. Choose the controller:

    • Select the appropriate controller for the robot in Webots.

Controllers

CPG Controller

The CPG controller implements a central pattern generator based on the mentioned paper. The hyperparameters for this controller are selected experimentally and are not optimized.

GA Controller

The GA controller uses optimized hyperparameters of the CPG controller obtained via a genetic algorithm. The optimization process is run for 10 generations with an initial population of 30.

Usage

To use the controllers, follow these steps:

  1. Clone the repository:
    git clone https://github.com/yourusername/CPG-controller-with-GA-optimization.git
    cd CPG-controller-with-GA-optimization

About

The implementation of a Central Pattern Generator (CPG) model optimized using a Genetic Algorithm (GA) for controlling a Mantis robot

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages