DM86 Local Search Methods - Weekly Notes
Week 4, Spring 2006

Lecture February 23

We completed the description of search landscape characteristics by adding the concepts of plateaus, basins and barriers. Moreover, with focus on the SAT problem, we discussed the phenomenon of phase transition which explains where problems become harder. This concept is related with the concept of solution backbones. Finally, we shortly mentioned the concept of epistasis and the NK model.


In regards to the Traveling Salesman Problem, we gave the solution of Exercise 1 in the weekly notes of Week 3 and pointed out which of the four 3-opt reconstructions is used for the asymmetric TSP. In addition, with concern to efficiency, we mentioned which are data structures that are most suitable. We then discussed Construction Heuristics and Iterative Improvements for the other permutation problem: the SMTWTP. We considered the earliest due date, modified due date and apparent urgency heuristics and the interchange, insert and swap neighborhood based iterative improvements. We pointed out possible speed-ups in the neighborhood exploration of the insert and interchange operators. Afterward, we focused on assignment problems, giving the definition of neighborhood operators and relative distances. The assignment problem we considered is the graph coloring problem and for this one we review three construction heuristics: those based on greedy coloring with static or dynamic order (this last one called DSATUR) and the one based on the partition representation (RLF). In addition we review the different approaches with the corresponding neighborhoods and evaluation functions for solving the GCP by iterative improvement. The material relative to the GCP is treated in the survey [1] available from the course section Literature.


In the third part of the lecture we focused on Iterative Improvement Extensions. These arise when there is more than one neighborhood available. The union or composition is not the best choice and Variable Neighborhood Descent or Variable Depth Search are preferred. An example of Variable Depth Search is the Lin Kernighan algorithm for the TSP. We outlined the general procedure of this algorithm.

Bibliography

1
M. Chiarandini, I. Dumitrescu, and T. Stützle.
Stochastic local search algorithms for the graph colouring problem.
Technical Report AIDA-05-03, Intellectics Group, Computer Science Department, Darmstadt University of Technology, Darmstadt, Germany, September 2005.

Exercises

Note: completing all exercises with code development can be perhaps demanding for a single week time with also assignments from other courses. It is however important to try at least to answer the questions and design in all the details the algorithms. Clearly, understanding which are all the details requires practice, ie, code implementation.

Exercise 1

In the lecture we discussed the phase transition for the SAT problem. This phenomenon has been studied also in other combinatorial problems. Appealing for its similarity with the SUDOKU is the Latin Square Completion problem. A demo, available at http://www.cs.cornell.edu/gomes/QUASIdemo.html, characterizes the rise of the phase transition on this problem. Explore the demo.

Exercise 2

Implement the following construction heuristics for the Graph Coloring Problem (all based on the greedy coloring heuristic):

Provide an analysis of the computational complexity for each heuristic and test the heuristics on the instance DSJC1000.5 available from the DIMACS repository for graph coloring benchmark instances (http://mat.gsia.cmu.edu/COLOR04/). Report the results by means of a histogram of the number of colors found from a sample of 100 runs per heuristic. The C++ code for reading the instances and a solution checker program are available from the section Course Resources.

Exercise 3

Implement an Iterative Best Improvement for Graph Coloring under the approach $k$-fixed, complete improper colorings with one-exchange neighborhood. Use one of the construction heuristics from Exercise 2 to provide a starting solution and a random reassignment of vertices when removing one color. Devote particular attention at implementation of the delta evaluation in a one exchange move. In particular find a way to examine the whole neighborhood in $O(\vert V^c\vert k)$, where $V^c$ is the set of vertices currently involved in a constraint violation. In order to do this, an auxiliary matrix $\vert V\vert \times k$ is needed reporting the delta for each pair $v,k$. Determine the computational complexity to initialize the matrix and update it after each one-exchange move. Test the obtained algorithm on the instance DSJC1000.5 and plot a histogram of the improvement occurred in each run over the construction heuristic which provides the initial solution.

Exercise 4

Exercise 1 suggested that the SUDOKU can be formalized as a graph coloring problem. In this case the graph is a structured graph very similar to Latin Squares. Take an instance of SUDOKU and code it as an instance for graph coloring. Test the algorithms developed in Exercises 2 and 3 on this instance. Note that it is possible to deal with the preassignment of colors in two ways: 1) treating them as fixed color assignments in the algorithm 2) transforming the graph $G$ with precolored vertices in an uncolored graph $G'$. Show how to achieve case 2).



Marco Chiarandini 2006-02-24