This is a python implementation of the RK-EDA for solving different permutation problems (i.e. TSP, LOP, QAP and PFSP).
The implementation can be adapted for solving any permutation problem by passing in the objective function in Algorithm.run_algorithm
Examples of how to run the RK-EDA are presented in SolveQAP.py and SolvePFSP.py
The algorithm is sensitive to sigma. See the following papers for more details:
Ayodele, Mayowa, John McCall, and Olivier Regnier-Coudert. "RK-EDA: A novel random key based estimation of distribution algorithm." International Conference on Parallel Problem Solving from Nature (PPSN). Springer, Cham, 2016.
Ayodele, Mayowa, et al. "A random key based estimation of distribution algorithm for the permutation flowshop scheduling problem." 2017 IEEE Congress on Evolutionary Computation (CEC). IEEE, 2017.