salvacorts / UGR-Metaheuristics

:seedling: Genetic Algorithm, Memetic Algorithms, GRASP, Simulated Annealing, Multi start search, Reiterated Local Search, Local Search, Greedy and randomized Greedy

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

A collection of different metaheuristics written in C++ to solve QAP problems.

Technical Paper comparing and explaining them (PDF in Spanish)

Available Algorithms

  • Greedy
  • Randomized Greedy
  • Local Search
  • Local Search with Don't loock Bits mask
  • Genetic (Generational and Estacionary)
  • Memetic (Based on Generational Genetic Algorithm)
  • Simulated Annealing
  • Basic Multistart Search
  • GRASP
  • Iterated Local Search
  • Iterated Local Search using Simulated Annealing instead of Local search

alt text

Compilation

In order to compile with debug symbols:

cd build/
cmake -D CMAKE_BUILD_TYPE=Debug ..
make

To compile with optimization:

cd build/
cmake -D CMAKE_BUILD_TYPE=Release ..
make

Execution

./bin/main <problem> <random_seed>

Parameters:

  • Problem: QAP problem definition, you can find some of them in instancias/
  • Random Seed: Seed for random numbers generator, default is 7

Example:

./bin/main ./instancias/chr22a.dat 7

About

:seedling: Genetic Algorithm, Memetic Algorithms, GRASP, Simulated Annealing, Multi start search, Reiterated Local Search, Local Search, Greedy and randomized Greedy

License:Other


Languages

Language:C++ 98.8%Language:CMake 0.9%Language:Shell 0.3%