Transforming Constraint Programs to Input for Local Search
University of Leuven, Belgium
Jo Devriendt, Patrick De Causmaecker, Marc Denecker
jo.devriendt@cs.kuleuven.be
Context: NP optimization problems
- Find optimal feasible solution
- Deciding existence feasible solution: in NP
- Computing objective value: poly-time
Examples: TSP, knapsack, chromatic number, etc.
Same problem statement
Different technologies
Search & Explanation
- Choice based search tree
- Explanations (nogoods)
construct infeasibility proof - CP, SAT, SMT
Approach 1:
Relaxation & Cutting
- Relax problemon by dropping discreteness
- Poly-time algorithm finds optimal solution
- Add valid constraints that cut away approximate solutions
- MIP, Convex Programming
Approach 2:
Local Search
- Initial feasible solution
- Move between neighboring feasible solutions
- Metaheuristics, Evolutionary computing
Approach 3:
Local Search:
Neigborhood examples
- Permuting cities in Traveling Salesman Problem
- Swapping shifts in Nurse Scheduling Problem
- Flipping boolean values in SAT
- Changing location of facility in Facility Location Problem
- Permuting rounds in Sport Scheduling problems
- Adding or removing node from vertex cover
- ...
All information available in problem specification.
This talk:
Automated derivation of local search input (using symmetry)
Local Search
By Jo Devriendt
Local Search
Presentation for ModRef
- 1,533