On the impact of linkage learning, gene-pool optimal mixing, and non-redundant encoding on permutation optimization