The following blogpost describes the reasoning behind the code in more detail: https://medium.com/p/b9623ccc9427
Tags: KU Leuven, genetic algorithms, evolutionary computing, Travelling Salesman Problem (TSP), B-KUL-H02D1A, Python, Numba, selection, elimination, k-opt, fitness sharing, local search operators