add hill climbing alg