2.5-opt implementation