This repository contains two implementations of Genetic Algorithms (GAs) for solving the Quadratic Assignment Problem (QAP):
- GA implemented in C: A sequential version of the Genetic Algorithm designed to run on CPU.
- GA implemented in CUDA: A parallelized version of the Genetic Algorithm GPU for improved computational performance, developed using the paper "Solving Quadratic Assignment Problems by Genetic Algorithms with GPU Computation: A Case Study" as a reference.
- Mathematical Model in Jupyter Notebook: A Jupyter Notebook containing the mathematical model to solve the QAP.
The instances used in this project are sourced from QAPLIB, a benchmark library for Quadratic Assignment Problems. Special thanks to the authors of the paper "Solving Quadratic Assignment Problems by Genetic Algorithms with GPU Computation: A Case Study".