Heuristics based on mathematical programming