Improving Simulated Annealing for Clique Partitioning Problems