Evolutionary Computation in Combinatorial Optimisation - Blum (Springer Berlin Heidelberg, 2014)