1 / 61

Solving Finite Domain Hierarchical Constraint Optimization Problems

Solving Finite Domain Hierarchical Constraint Optimization Problems. By Lua Seet Chong Supervised By A.P. Martin Henz 9th March 2001. Outline. Motivation, Project Background Constraint Hierarchies Tree Search Local Search Experimental Results: Gate Allocation Problem

eydie
Télécharger la présentation

Solving Finite Domain Hierarchical Constraint Optimization Problems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Solving Finite Domain Hierarchical Constraint Optimization Problems By Lua Seet Chong Supervised By A.P. Martin Henz 9th March 2001

  2. Outline • Motivation, Project Background • Constraint Hierarchies • Tree Search • Local Search • Experimental Results: • Gate Allocation Problem • Sports Scheduling Problem • Conclusion

  3. “Integrate” Project Background • Solve the gate allocation problem • Domain knowledge provided by CAAS and Changi Airport • KRDL provides the management support • Sponsored by NSTB

  4. Motivation • Gate Allocation Problems: • large combinatorial optimization problems with many complex soft and “easy” hard constraints • Local Search • Constraint Hierarchies • Flexibility of using symbolic constraints

  5. Previous Works • Constraint Hierarchies Hierarchical Constraint Logic Programming, Alan Borning, 1992 • Over-constrained Integer Programming WSAT(OIP), Joachim Paul Walser, 1997

  6. Problem Encoding • Propositional Satisfiability Problems (SAT) • represent the problem in CNF • Constraint Satisfaction Problems (CSP) • allow many types of formulation • example: linear programming

  7. Why CSP is successful • Clean separation between problem encodings and problem solving techniques • Flexibility to extend the problem encoding by adding new constraint type • Synergy: problem solving techniques for all constraint types work with each other.

  8. Over-Constrained Problems • Constraint problems where conflicting constraints exist • Hierarchical Constraints

  9. Constraint Hierarchies

  10. Constraint Hierarchy Example • Constraints ca : y = -x + 10 cb : y 4x cc : y  x + 8 cd : y  5 • Constraint Hierarchy C0 : { ca } C1 : {cb ,cc } C2: { cd }

  11. Feasible Region Bounded by Cb and Cb

  12. Constraint Hierarchy Example P2:{x 4, y  6} P3:{x 1, y  9} e(cd ) = 1 e(cd ) = 4 e(cc ) = 0 e(cc ) = 0 e(cb ) = 2.3 e(cb ) = 0 e(ca ) = 0 e(ca ) = 0 Weighted-Sum-Better

  13. Constraint Hierarchy Example P4:{x 2, y  8} P3:{x 1, y  9} e(cd ) = 3 e(cd ) = 4 e(cc ) = 0 e(cc ) = 0 e(cb ) = 0 e(cb ) = 0 e(ca ) = 0 e(ca ) = 0 Weighted-Sum-Better

  14. Constraint Hierarchy • X : set of variables • For each x X, Dx : finite set of values that x can take • k-nary constraint over variables x1,…, xk is a relation over Dx1 …  Dxk

  15. Constraint Hierarchy • Constraint Hierarchy, CHis a vector C0 ,C1 ,…,Cn where for each 0  i  n, Ci is a multiset constraints of rank i • C0 contains required (hard) constraints • C1,…,Cn denote preferential (soft) constraints

  16. Constraint Hierarchy • A valuation  is a function that maps the variables in X to elements in the domain D • Solution set S0 = { |c  C0, c holds} • Optimal solution set, Sbetter = { S0 |  S0 , better( ,  )}

  17. Constraint Hierarchy • Comparator weighted-sum-better( ,  )  k. 1  k  n such that i {1…k-1}. rank-sum( ,Ci) = rank-sum( , Ci)  rank-sum( ,Ck) < rank-sum( , Ck)

  18. Constraint Hierarchy • rank-sum( ,Ci)  cCiw(c)e(c ) where w(c) is a real number weight for constraint c and e(c ) is an error function

  19. Tree Search

  20. Finite DomainConstraint Programming • Successful technique for solving combinatorial problems. • 3 main components: • Propagation Algorithms • Branching Algorithms • Exploration Algorithms

  21. Branching Algorithms • Assume • a stable constraint store s and • a branching constraint c • A branching algorithm make use of a branching constraint c looking into 2 new constraint stores s  c and sc

  22. Enumeration Algorithms • Enumeration algorithm if c is in the form of x = v • 2 heuristics: • variable selection heuristic • value selection heuristic

  23. Cost Driven Value Selection • A value selection heuristic that order the values using the cost variable 2 Variant of Search: • Cost Driven Search • Cost Driven Descent

  24. Cost Driven Value Selection

  25. Hierarchical Cost Driven Value Selection • Order the values within a variable according to the hierarchical comparator instead of a integer comparator

  26. Local Search

  27. Walk Search Background • GSAT, WSAT  WSAT(OIP) [Bart Selman and Henry Kautz, 1993] • WSAT(OIP) generalized the SAT problem solving techniques to solve over-constrained integer programming problems [Walser 1997]

  28. WalkSearch Algorithm Proc WalkSearch(C, X, Max_moves, Max_tries) for i:= 1 to Max_tries do  := an initial assignment ; _best := ; for j := 1 to Max_moves do if  meets solution stopping condition then return ; if  is feasible  improve(, _best, C) then _best := ; c := select-unsatisfied-constraint(C, X, ); <xk,v> := select-partial-repair(C, X, c, );  := [xk v]; end end return _best; end

  29. Generalization of WSAT(OIP) • Any constraints (i.e non-linear, symbolic) • select-partial-repair • Constraint hierarchy • improve • select-unsatisfied-constraint

  30. select-partial-repair • Generate the VarValue pairs • Remove tabued VarValue pairs • Choose VarValue pair that give the highest score. Tie breaking using i) least frequently ii) longest time ago • If the chosen VarValue pair does not improve the global score, choose any pair from VarValue with probability pnoise

  31. select-unsatisfied-constraint • hardOrSoft, select a violated constraint in C0with probability Phard • topOrRest, select a violated constraint in top most unsatisfied rank with probability Ptop • rankProb, select a violated constraint in Ci with probability Pi • consProb, select a violated constraint in Ci with a dynamic probability Dpi which is Pi |Ci|violated j{0,…,n}Pj |Cj|violated

  32. Why consProb? Prob. for selecting a constraint in rank i Pi Ci Rank i rankProb consProb 0 100 1000 100/111  1000 = 0.0009009 100 (10) 10/111  10 = 0.009009 1 10 10 10 (100) 1/111  100 = 0.00009009 2 1 100 1 (1)

  33. Gate Allocation Problem

  34. Gate Allocation Problem (GAP) • Allocating gates to arriving and departing aircrafts, Haghani, 1998, Yu Cheng, 1998 • Minimizing Transfer Walking Distance • Work on instances from Changi Airport

  35. GAP constraints • No Overlapping - No two aircraft can be allocated to the same gate simultaneously • Aircraft Type - Particular gates can be restricted to admit only certain aircraft types • Push Back - An aircraft leaving a gate (push-back) will restrict other operations in close temporal and spatial vicinity • 22 more constraints

  36. GAP 0/1 Model • GAP with m aircrafts and n gates • mn 0/1 variables Yij are introduced where 1  i  m and 1  j  n • Yij = 1 iff aircraft i is allocated to gate j

  37. Example: 0/1 Model of No Overlapping • If aircraft i and k has overlapping ground time, for every gate j where 1  j  n Yij + Ykj 1

  38. GAP Finite Domain Model • GAP with m aircrafts and n gates • For each aircraft i, Xi is introduced to represent the gate aircraft i uses • The domain of Xi is 1 to n • Xi = j iff aircraft i is allocated to gate j

  39. Example: FD Model of No Overlapping • For each maximal set of aircraft S whose ground time overlaps, a symbolic constraint alldiff(S) is introduced

  40. Objectives of Experiments • Comparing 0/1 model vs finite domain model • Comparing the performance of proposed constraint selection scheme

  41. Setup of Experiments • For each problem model, benchmark problem and constraint selection scheme • pNoise (0.0, 0.1, …, 0.5) • 5 probability distributions among ranks • 8:4:2:1 • 9:0.33:0.33:0.33 • 8:0.5:0.5:1 • 6:1:1:2 • 1000:100:10:1

  42. Setup of Experiments • Small benchmarks allow optimality comparison • use CPLEX to find optimal solution • count how often optimal solution is reached • Large benchmarks • compare scaling behavior • use relative solution quality to compare

  43. Benchmark Problems • Small Problem (P1 - P6) • ranging from 10 - 30 flights • Bigger Problem (P7 - P15) • ranging from 50 -257 flights

  44. Comparison of Solving Time

  45. Performance of Finite Domain vs 0/1 Model using Best select-unsatisfied-constraint

  46. Performance of Finite Domain vs 0/1 Model for Bigger Test Cases

  47. Performance of Different Constraint Selection Scheme on FD Model

  48. Performance of Different Constraint Selection Scheme on 0/1 Model

  49. Performance of Different Constraint Selection Scheme on FD Model for Bigger Test Cases

  50. Performance of Different Constraint Selection Scheme on 0/1 Model for Bigger Test Cases

More Related