Bio-Inspired Global Optimization



Bio-Inspired algorithms are a class of optimization methods which rely on techniques inspired by nature, like social interactions, the human brain, or darwinian evolution.

They have been increasingly used in the last years for solving many real-world tasks that can be formulated as optimization problems. Among their numerous strengths, we can consider:

  • easy to implement
  • easy to parallelize
  • they do not depend on the function to optimize
  • the function does not need to be differentiable

 

LibCudaOptimize 

To help the use of these techniques, we created a library called LibCudaOptimize (the documentation is available here). 

LibCudaOptimize is a GPU-based open source library that allows you to run state-of-the-art bio-inspired optimization heuristics in parallel to optimize a fitness function, introduce a new optimization algorithm, or easily modify/extend existing ones.
In the first case, the only thing you need to do is to write your fitness to be optimized in C++ or CUDA-C, while in the second and third cases, you can take advantage of the framework offered by the library to avoid the need to go deep into basic implementation issues, especially regarding parallel code.

Methods actually implemented in LibCudaOptimize are:

  • Particle Swarm Optimization
  • Differential Evolution
  • Scatter Search

 

EMOPaT

We are currently working on Multi-Objective Automatic Parameter Tuning for bio-inspired optimization algorithms. The code is available here

For more details, see the Publications page.




PROJECTS:


Bio-Inspired Global Optimization

Hippocampus Localization in Brain Histological Images

PAVISYS

Real-time object recognition

Sentiment Analysis