A collection of different metaheuristics written in C++ to solve QAP problems.
Technical Paper comparing and explaining them (PDF in Spanish)
- 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
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
./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