DM63 - Heuristics for Combinatorial Optimization Problems - Weekly Notes
Lecture 5, Fall 2006

Lecture October 2

We commented on the results of the Task 1bis of the Competition. In particular we looked at error boxplots, rank boxplots, average/median numerical results and size vs time scatter plots.


We characterized the search landscape by describing its fundamental features: search space size, search space diameter, density of local/global optima solutions in the search space, distribution of local/global optima solutions in the search space, position types, fitness-distance correlation, ruggedness, plateaus and basins and barriers.


Finally, we introduced Variable Depth Search.


As exercise, we defined the p-median problem, devised construction heuristics for it and discussed different solution representations.

Bibliographical Notes

The search landscape analysis is described in the slides by Hoos and Stützle which are based upon chapter 5 of their book.


In the next lecture we will describe the Lin-Kernighan heuristic for the TSP and the Simulated Annealing metaheuristic. An article on the former has been distributed at the lecture while the article 4 from the Notes is about the latter.

Competition - Task 2

The deadline is at 23.59 of Monday, October 9.


Implement 3 of the following versions of 2-opt iterative improvement for TSP:

It should be possible to select as starting solution all the three construction heuristics developed under Task 1. Moreover, it should also be possible to run the program with as starting solution the canonical tour. The canonical tour corresponds to $0,1,2,3,\ldots,n,0$ and its identifier from the command line must be (I).


The test instances remain the same as for Task 1.


The code can be developed by maintaining the structure simplified from EasyLocal++ or re-designed at the candidate's best convenience. If using the object oriented framework from EasyLocal++, a 2-opt exchange should be created from the class Move, the exploration of the neighborhood (returning a best or a first improvement) from the class NeighborhoodExplorer and the overall Iterative Improvement procedure from the class Runner.


Read the documentation under the Course Section ``Competition'' for the modalities of submission. The program must run with an additional option: -l NAME_LOCAL_SEARCH. The NAME_LOCAL_SEARCH for each construction heuristic is given between parentheses above. Which versions have been implemented must be written in the README file.



Marco Chiarandini 2006-10-02