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

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

Embed Size (px)

Citation preview

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

Solving Finite Domain Hierarchical Constraint Optimization

Problems

By

Lua Seet Chong

Supervised By A.P. Martin Henz

9th March 2001

Page 2: 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– Sports Scheduling Problem

• Conclusion

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

“Integrate” Project Background

• Solve the gate allocation problem

• Domain knowledge provided by CAAS and Changi Airport

• KRDL provides the management support

• Sponsored by NSTB

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

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

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

Previous Works• Constraint Hierarchies

Hierarchical Constraint Logic Programming, Alan Borning, 1992

• Over-constrained Integer Programming

WSAT(OIP), Joachim Paul Walser, 1997

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

Problem Encoding

• Propositional Satisfiability Problems (SAT)– represent the problem in CNF

• Constraint Satisfaction Problems (CSP)– allow many types of formulation– example: linear programming

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

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.

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

Over-Constrained Problems

• Constraint problems where conflicting constraints exist

• Hierarchical Constraints

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

Constraint Hierarchies

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

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 }

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

Feasible Region Boundedby Cb and Cb

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

Constraint Hierarchy Example

e(ca ) = 0

e(cb ) = 2.3e(cc ) = 0

e(cd ) = 1

e(ca ) = 0

e(cb ) = 0e(cc ) = 0

e(cd ) = 4

Weighted-Sum-Better

P2:{x 4, y 6} P3:{x 1, y 9}

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

Constraint Hierarchy Example

e(ca ) = 0

e(cb ) = 0e(cc ) = 0

e(cd ) = 3

e(ca ) = 0

e(cb ) = 0e(cc ) = 0

e(cd ) = 4

Weighted-Sum-Better

P4:{x 2, y 8} P3:{x 1, y 9}

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

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

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

Constraint Hierarchy

• Constraint Hierarchy,

CH is 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

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

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( , )}

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

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)

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

Constraint Hierarchy

• rank-sum( ,Ci) cCiw(c)e(c )

where w(c) is a real number weight for constraint c and e(c ) is an error function

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

Tree Search

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

Finite DomainConstraint Programming

• Successful technique for solving combinatorial problems.

• 3 main components:– Propagation Algorithms– Branching Algorithms– Exploration Algorithms

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

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

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

Enumeration Algorithms

• Enumeration algorithm if

c is in the form of x = v

• 2 heuristics:– variable selection heuristic– value selection heuristic

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

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

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

Cost Driven Value Selection

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

Hierarchical Cost Driven Value Selection

• Order the values within a variable according to the hierarchical comparator instead of a integer comparator

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

Local Search

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

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]

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

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

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

Generalization of WSAT(OIP)

• Any constraints (i.e non-linear, symbolic)– select-partial-repair

• Constraint hierarchy – improve– select-unsatisfied-constraint

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

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

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

select-unsatisfied-constraint

• hardOrSoft, select a violated constraint in C0 with 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

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

Why consProb?

Ci

1

10

100

Rank i Pi

2

1

0

100

10

1000

rankProb consProb

1/111 100= 0.00009009

10/111 10= 0.009009

100/111 1000= 0.0009009

1

10

100

Prob. for selecting a constraint in rank i

(10)

(100)

(1)

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

Gate Allocation Problem

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

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

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

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

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

GAP 0/1 Model

• GAP with m aircrafts and n gates

• mn 0/1 variables Yij are introduced where

1 i m and 1 j n

• Yij = 1 iff aircraft i is allocated to gate j

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

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

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

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

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

Example: FD Model of No Overlapping

• For each maximal set of aircraft S whose ground time overlaps, a symbolic constraint alldiff(S) is introduced

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

Objectives of Experiments

• Comparing 0/1 model vs finite domain model

• Comparing the performance of proposed constraint selection scheme

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

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

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

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

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

Benchmark Problems

• Small Problem (P1 - P6)– ranging from 10 - 30 flights

• Bigger Problem (P7 - P15)– ranging from 50 -257 flights

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

Comparison of Solving Time

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

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

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

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

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

Performance of Different Constraint Selection Scheme on FD Model

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

Performance of Different Constraint Selection Scheme on 0/1 Model

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

Performance of Different Constraint Selection Schemeon FD Model for Bigger Test Cases

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

Performance of Different Constraint Selection Scheme on 0/1 Modelfor Bigger Test Cases

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

Hierarchical Cost Driven Descent on GAP

Problems Pessimistic HCDS Optimistic HCDS

P1 [0 0 5 1442] [0 0 5 1442]

P2 [0 2 25 11096] [0 2 15 34168]

P3 [0 2 25 11096] [0 2 20 22442]

P4 [0 2 25 11096] [0 2 20 22442]

P5 [0 3 21 14214] [0 3 15 39386]

P6 - -

P7 [0 4 31 48630] [0 4 46 73942]

P8 [0 4 41 50107] [0 4 56 73942]

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

Experimental Result Summary

• Finite Domain model allows WalkSearch solver to works better than 0/1 model

• Constraint hierarchy specific select-unsatisfied-constraint

perform better (ConsProb, RankProb)

• Hierarchical Cost Driven Descent is able to find reasonably good solution

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

Sports Scheduling Problem

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

Number of Moves to Solve ACC Problem

WalkSearch

WSAT(OIP)

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

CPU Time Taken to Solve ACC Problem

WalkSearch

WSAT(OIP)

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

Experimental Result Summary

• WalkSearch solver works for a non-hierarchical constraint problem

• WalkSearch solver works as good as WSAT(OIP)

• WalkSearch find solution more frequently than WSAT(OIP) but it runs slower

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

Conclusion

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

Conclusion

• Empirical Study on Changi Airport Gate Allocation Problem

• Hierarchical Cost Driven Descent is able to solve Gate Allocation Problem

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

Conclusion

• Adapted Contraint Hierarchies to Finite Domain Problem– Hierarchy-specific constraint selection scheme

helps to find better solutions

• WalkSearch Solver can solve both 0/1 and Finite Domain Hierarchical Constraint Problems

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

Acknowledgement

• Integrate project members

– Roland H. C. Yap

– J. Paul Walser

– Lim Yun Fong

– Shi Xiao Ping

– Hu You Lan

• We thank Civil Aviation Authority of Singapore, Kent Ridge Digital Labs for providing documents and test data sets on the Changi Airport gate allocation problem.

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

Thank You