find best partner to swap with