How to solve it: modern heuristics - Michalewicz,Zbigniew (Springer, 2000)