New Constraint Programming Approaches For The Computation Of - - PowerPoint PPT Presentation

new constraint programming approaches for the computation
SMART_READER_LITE
LIVE PREVIEW

New Constraint Programming Approaches For The Computation Of - - PowerPoint PPT Presentation

New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks Sylvain Bouveret and Michel Lematre Office National dtudes et de Recherches Arospatiales (ONERA) Centre National dtudes


slide-1
SLIDE 1

New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

Sylvain Bouveret and Michel Lemaître

Office National d’Études et de Recherches Aérospatiales (ONERA) Centre National d’Études Spatiales (CNES) Institut de Recherche en Informatique de Toulouse (IRIT) Toulouse – France

20th International Joint Conference on Artificial Intelligence Hyderabad, January 11, 2007

slide-2
SLIDE 2

Introduction Modeling the problem Solving the problem Results Conclusion

Fairness in combinatorial problems. . .

Many real-world combinatorial problems. . .

Nurse rostering problem. Balanced timetables. Fair allocation of airport and airspace resources (to several airlines). Fair share of Earth Observation Satellites.

. . . are combinatorial collective decision making problems under admissibility constraints, involving directly or indirectly the concept

  • f fairness.

Initial question How can we handle fairness requirements in this kind of constraint satisfaction problems ?

2 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-3
SLIDE 3

Introduction Modeling the problem Solving the problem Results Conclusion

Fairness in combinatorial problems. . .

Many real-world combinatorial problems. . .

Nurse rostering problem. Balanced timetables. Fair allocation of airport and airspace resources (to several airlines). Fair share of Earth Observation Satellites.

. . . are combinatorial collective decision making problems under admissibility constraints, involving directly or indirectly the concept

  • f fairness.

Initial question How can we handle fairness requirements in this kind of constraint satisfaction problems ?

2 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-4
SLIDE 4

Introduction Modeling the problem Solving the problem Results Conclusion

Outline

1

Modeling the problem Constraint Satisfaction Problems The leximin criterion

2

Solving the problem Sort and Conquer Using cardinality combinators A branch-and-bound-like algorithm Using cardinality-minimal critical subsets

3

Implementing the problem

3 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-5
SLIDE 5

Introduction Modeling the problem Solving the problem Results Conclusion

Outline

1

Modeling the problem Constraint Satisfaction Problems The leximin criterion

2

Solving the problem Sort and Conquer Using cardinality combinators A branch-and-bound-like algorithm Using cardinality-minimal critical subsets

3

Implementing the problem

4 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-6
SLIDE 6

Introduction Modeling the problem Solving the problem Results Conclusion

Constraint networks

Constraint network [Montanari, 1974] A constraint network is based on :

a set of variables X = {x1, . . . , xp} ; a set of domains D = {Dx1, . . . , Dxp} ; a set of constraints C , with, for all c ∈ C :

X(c) the scope of the constraint, R(c) the set of allowed tuples of the constraint.

Montanari, U. (1974).

Networks of constraints: Fundamental properties and applications to picture processing. Information Sciences, 7:95–132.

5 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-7
SLIDE 7

Introduction Modeling the problem Solving the problem Results Conclusion

The Constraint Satisfaction Problem

Classical CSP

Given : A constraint network (X , D, C ).

Is there a complete consistent instantiation v of (X , D, C ) ?

❀ NP-complete.

CSP with objective variable

Given : A constraint network (X , D, C ) and an objective variable

  • ∈ X , such that Do ⊂ N.

What is the maximal value α of Do such that there is a complete consistent instantiation b v with b v(o) = α ?

❀ NP-complete (decision problem).

6 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-8
SLIDE 8

Introduction Modeling the problem Solving the problem Results Conclusion

The Constraint Satisfaction Problem

Classical CSP

Given : A constraint network (X , D, C ).

Is there a complete consistent instantiation v of (X , D, C ) ?

❀ NP-complete.

CSP with objective variable

Given : A constraint network (X , D, C ) and an objective variable

  • ∈ X , such that Do ⊂ N.

What is the maximal value α of Do such that there is a complete consistent instantiation b v with b v(o) = α ?

❀ NP-complete (decision problem).

6 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-9
SLIDE 9

Introduction Modeling the problem Solving the problem Results Conclusion

Fairness requirements ?

Hypotheses:

The preferences are numerical. The quality of a solution is measured only on the basis of the agents utilities (Welfarism).

7 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-10
SLIDE 10

Introduction Modeling the problem Solving the problem Results Conclusion

Fairness requirements ?

Hypotheses:

The preferences are numerical. The quality of a solution is measured only on the basis of the agents utilities (Welfarism).

7 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-11
SLIDE 11

Introduction Modeling the problem Solving the problem Results Conclusion

Fairness requirements ?

Hypotheses:

The preferences are numerical. The quality of a solution is measured only on the basis of the agents utilities (Welfarism).

7 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-12
SLIDE 12

Introduction Modeling the problem Solving the problem Results Conclusion

Fairness requirements ?

Hypotheses:

The preferences are numerical. The quality of a solution is measured only on the basis of the agents utilities (Welfarism).

3 7 1 2 4

7 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-13
SLIDE 13

Introduction Modeling the problem Solving the problem Results Conclusion

Fairness requirements ?

Hypotheses:

The preferences are numerical. The quality of a solution is measured only on the basis of the agents utilities (Welfarism).

3 7 1 2 4 Utility profile: − → u = 3, 4, 2, 1, 7

7 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-14
SLIDE 14

Introduction Modeling the problem Solving the problem Results Conclusion

Classical Social Welfare Orderings

Classical utilitarian SWO. Egalitarian SWO. Leximin SWO.

8 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-15
SLIDE 15

Introduction Modeling the problem Solving the problem Results Conclusion

Classical Social Welfare Orderings

Classical utilitarian SWO. Egalitarian SWO. Leximin SWO.

Classical utilitarian SWO [Harsanyi] − → u − → v ⇔ n

i=1 ui ≤ n i=1 vi.

Features The agents are utility “producers”. It is indifferent to inequalities between agents ❀ it can lead to very unfair decisions.

8 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-16
SLIDE 16

Introduction Modeling the problem Solving the problem Results Conclusion

Classical Social Welfare Orderings

Classical utilitarian SWO. Egalitarian SWO. Leximin SWO.

Classical utilitarian SWO [Harsanyi] − → u − → v ⇔ n

i=1 ui ≤ n i=1 vi.

Fairness and utilitarian SWO 10, 10, 10, 10 41, 0, 0, 0, whereas 10, 10, 10, 10 is more equitable than 41, 0, 0, 0.

8 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-17
SLIDE 17

Introduction Modeling the problem Solving the problem Results Conclusion

Classical Social Welfare Orderings

Classical utilitarian SWO. Egalitarian SWO. Leximin SWO.

Egalitarian SWO [Rawls] − → u − → v ⇔ minn

i=1 ui ≤ minn i=1 vi.

Features It only takes the least satisfied agent into account ❀ natural inclination to fairness.

8 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-18
SLIDE 18

Introduction Modeling the problem Solving the problem Results Conclusion

Classical Social Welfare Orderings

Classical utilitarian SWO. Egalitarian SWO. Leximin SWO.

Egalitarian SWO [Rawls] − → u − → v ⇔ minn

i=1 ui ≤ minn i=1 vi.

Features It only takes the least satisfied agent into account ❀ natural inclination to fairness. On the other hand, it can lead to non Pareto-optimal decisions (drowning effect).

8 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-19
SLIDE 19

Introduction Modeling the problem Solving the problem Results Conclusion

Classical Social Welfare Orderings

Classical utilitarian SWO. Egalitarian SWO. Leximin SWO.

Egalitarian SWO [Rawls] − → u − → v ⇔ minn

i=1 ui ≤ minn i=1 vi.

Egalitarian SWO and Pareto-efficiency 1, 1, 1, 1 ∼ 1000, 1, 1000, 1000, whereas 1, 1, 1, 1 and 1000, 1, 1000, 1000 are very different !

8 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-20
SLIDE 20

Introduction Modeling the problem Solving the problem Results Conclusion

Classical Social Welfare Orderings

Classical utilitarian SWO. Egalitarian SWO. Leximin SWO.

Leximin SWO

Let − → x be a vector. We write − → x ↑ the sorted version of − → x . − → u ≻leximin − → v ⇔ ∃k such that ∀i ≤ k, u↑

i = v ↑ i and u↑ k+1 > v ↑ k+1.

In other words, a lexicographic comparison on the sorted vectors.

Performing a leximin comparison. . .

Two vectors to compare: − → u = 4, 10, 3, 5 and − → v = 4, 3, 6, 6.

We sort the vectors:  − → u ↑ = 3, 4, 5, 10 − → v ↑ = 3, 4, 6, 6 We compare the sorted vectors lexicographically: − → u ↑ ≺lexico − → v ↑

8 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-21
SLIDE 21

Introduction Modeling the problem Solving the problem Results Conclusion

Classical Social Welfare Orderings

Classical utilitarian SWO. Egalitarian SWO. Leximin SWO.

Leximin SWO

Let − → x be a vector. We write − → x ↑ the sorted version of − → x . − → u ≻leximin − → v ⇔ ∃k such that ∀i ≤ k, u↑

i = v ↑ i and u↑ k+1 > v ↑ k+1.

In other words, a lexicographic comparison on the sorted vectors.

Features It takes all agents into account, in the order of their satisfaction level ❀ natural inclination to fairness. It both refines the order induced by the egalitarian SWO and the Pareto order.

8 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-22
SLIDE 22

Introduction Modeling the problem Solving the problem Results Conclusion

Classical Social Welfare Orderings

Classical utilitarian SWO. Egalitarian SWO. Leximin SWO.

Leximin SWO

Let − → x be a vector. We write − → x ↑ the sorted version of − → x . − → u ≻leximin − → v ⇔ ∃k such that ∀i ≤ k, u↑

i = v ↑ i and u↑ k+1 > v ↑ k+1.

In other words, a lexicographic comparison on the sorted vectors.

Leximin SWO and Pareto-efficiency 1, 1, 1, 1 ≺ 1000, 1, 1000, 1000 (the second value of the ordered vectors is discriminatory).

8 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-23
SLIDE 23

Introduction Modeling the problem Solving the problem Results Conclusion

The Constraint Satisfaction Problem

Classical CSP

Given : A constraint network (X , D, C ).

Is there a complete consistent instantiation v of (X , D, C ) ?

CSP with objective variable

Given : A constraint network (X , D, C ) and an objective variable

  • ∈ X , such that Do ⊂ N.

What is the maximal value α of Do such that there is a complete consistent instantiation b v with b v(o) = α ?

Leximin-CSP (as a multi-objective CSP)

Given : A constraint network (X , D, C ) and a vector of variables − → u = u1, . . . , un (∀i, ui ∈ X and Dui ∈ N) called objective vector.

What is the leximin-optimal vector α1, . . . , αn of Du1, . . . , Dun such that there is a complete consistent instantiation b v with b v(ui) = αi forall i ?

9 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-24
SLIDE 24

Introduction Modeling the problem Solving the problem Results Conclusion

Outline

1

Modeling the problem Constraint Satisfaction Problems The leximin criterion

2

Solving the problem Sort and Conquer Using cardinality combinators A branch-and-bound-like algorithm Using cardinality-minimal critical subsets

3

Implementing the problem

10 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-25
SLIDE 25

Introduction Modeling the problem Solving the problem Results Conclusion

Constraint Programming

Constraint programming provides a flexible and efficient tool for implementing and solving CSPs.

Our approach: use this tool as a “black box” for solving leximin-CSPs. Aims:

develop generic algorithms. benefit from using of a powerful framework and of its algorithmics.

11 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-26
SLIDE 26

Introduction Modeling the problem Solving the problem Results Conclusion

Constraint Programming

Search mechanisms Constraint propagation Call for propagation Domain updates Exploration of the search tree, exploration strategies (heuristics) Domain updates, arc-consistency

What we can do:

Set up the problem (declare variables, domains, constraints). Implement new constraint propagation algorithms. Make calls to functions solve or maximize (black boxes).

12 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-27
SLIDE 27

Introduction Modeling the problem Solving the problem Results Conclusion

Algorithm 1

Sort and conquer

13 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-28
SLIDE 28

Introduction Modeling the problem Solving the problem Results Conclusion

Sorted version of the objective vector

Initial idea

Maximize the objective vector using the leximin preorder ⇔ maximize the successive components of the ordered objective vector.

❀ We have to introduce the sorted version of the objective vector:

A vector of variables (y1, . . . , yn). A constraint Sort(−

→ u , − → y ) ([Mehlhorn and Thiel, 2000] (filtering in time O(n log(n))).

Mehlhorn, K. and Thiel, S. (2000).

Faster algorithms for bound-consistency of the sortedness and the alldifferent constraint. In Dechter, R., editor, Proc. of CP’00, pages 306–319, Singapore.

14 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-29
SLIDE 29

Introduction Modeling the problem Solving the problem Results Conclusion

Sorted version of the objective vector

Initial idea

Maximize the objective vector using the leximin preorder ⇔ maximize the successive components of the ordered objective vector.

❀ We have to introduce the sorted version of the objective vector:

A vector of variables (y1, . . . , yn). A constraint Sort(−

→ u , − → y ) ([Mehlhorn and Thiel, 2000] (filtering in time O(n log(n))).

1

Maximize y1 : y1.

2

Maximize y2 under the constraint y1 = y1 : y2.

. . .

n

Maximize yn under the constraints y1 = y1, . . . , yn−1 = yn−1.

14 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-30
SLIDE 30

Introduction Modeling the problem Solving the problem Results Conclusion

Sorted version of the objective vector

Initial idea

Maximize the objective vector using the leximin preorder ⇔ maximize the successive components of the ordered objective vector.

❀ We have to introduce the sorted version of the objective vector:

A vector of variables (y1, . . . , yn). A constraint Sort(−

→ u , − → y ) ([Mehlhorn and Thiel, 2000] (filtering in time O(n log(n))).

1

Maximize y1 : y1.

2

Maximize y2 under the constraint y1 = y1 : y2.

. . .

n

Maximize yn under the constraints y1 = y1, . . . , yn−1 = yn−1.

14 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-31
SLIDE 31

Introduction Modeling the problem Solving the problem Results Conclusion

Sorted version of the objective vector

Initial idea

Maximize the objective vector using the leximin preorder ⇔ maximize the successive components of the ordered objective vector.

❀ We have to introduce the sorted version of the objective vector:

A vector of variables (y1, . . . , yn). A constraint Sort(−

→ u , − → y ) ([Mehlhorn and Thiel, 2000] (filtering in time O(n log(n))).

1

Maximize y1 : y1.

2

Maximize y2 under the constraint y1 = y1 : y2.

. . .

n

Maximize yn under the constraints y1 = y1, . . . , yn−1 = yn−1.

14 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-32
SLIDE 32

Introduction Modeling the problem Solving the problem Results Conclusion

Sorted version of the objective vector

Initial idea

Maximize the objective vector using the leximin preorder ⇔ maximize the successive components of the ordered objective vector.

❀ We have to introduce the sorted version of the objective vector:

A vector of variables (y1, . . . , yn). A constraint Sort(−

→ u , − → y ) ([Mehlhorn and Thiel, 2000] (filtering in time O(n log(n))).

1

Maximize y1 : y1.

2

Maximize y2 under the constraint y1 = y1 : y2.

. . .

n

Maximize yn under the constraints y1 = y1, . . . , yn−1 = yn−1.

14 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-33
SLIDE 33

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui) i v(yi)

15 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-34
SLIDE 34

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui) i v(yi)

15 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-35
SLIDE 35

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui) i v(yi)

15 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-36
SLIDE 36

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui) i v(yi)

15 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-37
SLIDE 37

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui) i v(yi)

15 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-38
SLIDE 38

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui) i v(yi)

15 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-39
SLIDE 39

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui) i v(yi)

15 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-40
SLIDE 40

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui) i v(yi)

15 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-41
SLIDE 41

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui) i v(yi)

15 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-42
SLIDE 42

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui) i v(yi)

15 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-43
SLIDE 43

Introduction Modeling the problem Solving the problem Results Conclusion

Algorithm 2

Using cardinality combinators. . .

16 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-44
SLIDE 44

Introduction Modeling the problem Solving the problem Results Conclusion

An alternative definition of sorting. . .

Proposition y1, . . . , yn is the permutation of u1, . . . , un sorted in non-decreasing order if and only if:

y1 is the maximal value such that all the ui are g.eq to y1; y2 is the maximal value such that at least n − 1 values among the ui are g.eq to y2; . . . yn is the maximal value such that at least 1 value among the ui is g.eq to yn.

17 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-45
SLIDE 45

Introduction Modeling the problem Solving the problem Results Conclusion

An alternative definition of sorting. . .

Proposition y1, . . . , yn is the permutation of u1, . . . , un sorted in non-decreasing order if and only if:

y1 is the maximal value such that all the ui are g.eq to y1; y2 is the maximal value such that at least n − 1 values among the ui are g.eq to y2; . . . yn is the maximal value such that at least 1 value among the ui is g.eq to yn.

17 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-46
SLIDE 46

Introduction Modeling the problem Solving the problem Results Conclusion

An alternative definition of sorting. . .

Proposition y1, . . . , yn is the permutation of u1, . . . , un sorted in non-decreasing order if and only if:

y1 is the maximal value such that all the ui are g.eq to y1; y2 is the maximal value such that at least n − 1 values among the ui are g.eq to y2; . . . yn is the maximal value such that at least 1 value among the ui is g.eq to yn.

17 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-47
SLIDE 47

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui)

18 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-48
SLIDE 48

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui)

18 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-49
SLIDE 49

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui)

18 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-50
SLIDE 50

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui)

18 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-51
SLIDE 51

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui)

18 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-52
SLIDE 52

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui)

18 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-53
SLIDE 53

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui)

18 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-54
SLIDE 54

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui)

18 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-55
SLIDE 55

Introduction Modeling the problem Solving the problem Results Conclusion

i v(ui)

18 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-56
SLIDE 56

Introduction Modeling the problem Solving the problem Results Conclusion

The meta-constraint AtLeast

“ yi is the maximal value such that at least n − i + 1 values among the ui are g.e.q than yi “ ❀ a particular cardinality meta-constraint [Van Hentenryck et al., 1992]: AtLeast({yi ≥ u1, . . . , yi ≥ un}, n − i + 1) Van Hentenryck, P., Simonis, H., and Dincbas, M. (1992).

Constraint satisfaction using constraint logic programming. A.I., 58(1-3):113–159.

19 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-57
SLIDE 57

Introduction Modeling the problem Solving the problem Results Conclusion

The meta-constraint AtLeast

“ yi is the maximal value such that at least n − i + 1 values among the ui are g.e.q than yi “ ❀ a particular cardinality meta-constraint [Van Hentenryck et al., 1992]: AtLeast({yi ≥ u1, . . . , yi ≥ un}, n − i + 1)

A specific filtering algorithm running in O(n). A possible implementation using linear constraints.

Van Hentenryck, P., Simonis, H., and Dincbas, M. (1992).

Constraint satisfaction using constraint logic programming. A.I., 58(1-3):113–159.

19 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-58
SLIDE 58

Introduction Modeling the problem Solving the problem Results Conclusion

Algorithm 3

A branch-and-bound-like algorithm

20 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-59
SLIDE 59

Introduction Modeling the problem Solving the problem Results Conclusion

A branch-and-bound-like algorithm

The classical branch-and-bound (integral criterion):

A branching algorithm (exploration of the search tree). A lower bound on the criterion to maximize. An upper bound and a pruning mechanism (ub ≤ lb).

Our algorithm (vectorial criterion with leximin preorder):

Branching algorithm given by the constraint solver (call to solve). Lower bound: the objective vector of the last solution found. Pruning mechanism given by a filtering procedure associated to the leximin preorder (we reject every solution whose objective vector is leximin-lower than the lower bound).

21 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-60
SLIDE 60

Introduction Modeling the problem Solving the problem Results Conclusion

A branch-and-bound-like algorithm

The classical branch-and-bound (integral criterion):

A branching algorithm (exploration of the search tree). A lower bound on the criterion to maximize. An upper bound and a pruning mechanism (ub ≤ lb).

Our algorithm (vectorial criterion with leximin preorder):

Branching algorithm given by the constraint solver (call to solve). Lower bound: the objective vector of the last solution found. Pruning mechanism given by a filtering procedure associated to the leximin preorder (we reject every solution whose objective vector is leximin-lower than the lower bound).

21 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-61
SLIDE 61

Introduction Modeling the problem Solving the problem Results Conclusion

A branch-and-bound-like algorithm

The classical branch-and-bound (integral criterion):

A branching algorithm (exploration of the search tree). A lower bound on the criterion to maximize. An upper bound and a pruning mechanism (ub ≤ lb).

Our algorithm (vectorial criterion with leximin preorder):

Branching algorithm given by the constraint solver (call to solve). Lower bound: the objective vector of the last solution found. Pruning mechanism given by a filtering procedure associated to the leximin preorder (we reject every solution whose objective vector is leximin-lower than the lower bound).

21 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-62
SLIDE 62

Introduction Modeling the problem Solving the problem Results Conclusion

A branch-and-bound-like algorithm

The classical branch-and-bound (integral criterion):

A branching algorithm (exploration of the search tree). A lower bound on the criterion to maximize. An upper bound and a pruning mechanism (ub ≤ lb).

Our algorithm (vectorial criterion with leximin preorder):

Branching algorithm given by the constraint solver (call to solve). Lower bound: the objective vector of the last solution found. Pruning mechanism given by a filtering procedure associated to the leximin preorder (we reject every solution whose objective vector is leximin-lower than the lower bound).

21 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-63
SLIDE 63

Introduction Modeling the problem Solving the problem Results Conclusion

A branch-and-bound-like algorithm

The classical branch-and-bound (integral criterion):

A branching algorithm (exploration of the search tree). A lower bound on the criterion to maximize. An upper bound and a pruning mechanism (ub ≤ lb).

Our algorithm (vectorial criterion with leximin preorder):

Branching algorithm given by the constraint solver (call to solve). Lower bound: the objective vector of the last solution found. Pruning mechanism given by a filtering procedure associated to the leximin preorder (we reject every solution whose objective vector is leximin-lower than the lower bound).

21 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-64
SLIDE 64

Introduction Modeling the problem Solving the problem Results Conclusion

A branch-and-bound-like algorithm

The classical branch-and-bound (integral criterion):

A branching algorithm (exploration of the search tree). A lower bound on the criterion to maximize. An upper bound and a pruning mechanism (ub ≤ lb).

Our algorithm (vectorial criterion with leximin preorder):

Branching algorithm given by the constraint solver (call to solve). Lower bound: the objective vector of the last solution found. Pruning mechanism given by a filtering procedure associated to the leximin preorder (we reject every solution whose objective vector is leximin-lower than the lower bound).

21 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-65
SLIDE 65

Introduction Modeling the problem Solving the problem Results Conclusion

A constraint Leximin

We use a constraint Leximin: Leximin(−

→ λ , − → x ) (the vector −

→ x must be leximin-greater than the integer vector − → λ )

This constraint is based on the constraint Multiset Ordering, introduced in [Frisch et al., 2003] (filtering in O(n log(n))). Frisch, A., Hnich, B., Kiziltan, Z., Miguel, I., and Walsh, T. (2003).

Multiset ordering constraints. In Proc. of IJCAI’03, Acapulco, Mexico.

22 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-66
SLIDE 66

Introduction Modeling the problem Solving the problem Results Conclusion

Algorithm 4

Using cardinality-minimal critical subsets

23 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-67
SLIDE 67

Introduction Modeling the problem Solving the problem Results Conclusion

Leximin and critical subsets

The algorithm comes from the litterature on flexible CSP [Dubois and Fortemps, 1999]. It is based on the search for critical subsets of components of the

  • bjective vector (i.e. conditioning the minimax value).

Major drawback: can potentially perform an exponential number of calls to solve.

Dubois, D. and Fortemps, P. (1999).

Computing improved optimal solutions to max-min flexible constraint satisfaction problems. European Journal of Operational Research.

24 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-68
SLIDE 68

Introduction Modeling the problem Solving the problem Results Conclusion

Leximin and critical subsets

The algorithm comes from the litterature on flexible CSP [Dubois and Fortemps, 1999]. It is based on the search for critical subsets of components of the

  • bjective vector (i.e. conditioning the minimax value).

Major drawback: can potentially perform an exponential number of calls to solve.

Dubois, D. and Fortemps, P. (1999).

Computing improved optimal solutions to max-min flexible constraint satisfaction problems. European Journal of Operational Research.

24 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-69
SLIDE 69

Introduction Modeling the problem Solving the problem Results Conclusion

Leximin and critical subsets

The algorithm comes from the litterature on flexible CSP [Dubois and Fortemps, 1999]. It is based on the search for critical subsets of components of the

  • bjective vector (i.e. conditioning the minimax value).

Major drawback: can potentially perform an exponential number of calls to solve.

Dubois, D. and Fortemps, P. (1999).

Computing improved optimal solutions to max-min flexible constraint satisfaction problems. European Journal of Operational Research.

24 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-70
SLIDE 70

Introduction Modeling the problem Solving the problem Results Conclusion

Outline

1

Modeling the problem Constraint Satisfaction Problems The leximin criterion

2

Solving the problem Sort and Conquer Using cardinality combinators A branch-and-bound-like algorithm Using cardinality-minimal critical subsets

3

Implementing the problem

25 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-71
SLIDE 71

Introduction Modeling the problem Solving the problem Results Conclusion

Implementation

Implementation of the algorithms: The four algorithms have been implemented using Choco [F. Laburthe and the OCRE project team, 2000] in Java.

  • F. Laburthe and the OCRE project team (2000).

CHOCO: Implementing a CP kernel. In Proceedings of TRICKS’2000, Workshop on techniques for implementing Constraint Programming systems, Singapore. http://sourceforge.net/projects/choco.

26 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-72
SLIDE 72

Introduction Modeling the problem Solving the problem Results Conclusion

Our real world application

The algorithms have been tested using a (very) simplified model extracted from a real world application: Fair share of a constellation of Earth Observation Satellites cofunded by several countries. Our simplified model is a multiagent resource allocation problem with (linear) consumption and volume resources. Instance generator:

We implemented a random instance generator for our simplified problem. Available online: http://www.cert.fr/dcsd/THESES/sbouveret/benchmark

27 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-73
SLIDE 73

Introduction Modeling the problem Solving the problem Results Conclusion

General tendency of the results

The algorithm based on the AtLeast constraint is often the most efficient, followed by the algorithm based on the Sort constraint (which has similar running times, except when the number of agents increases). The algorithm inspired by the Multiset ordering constraint is efficient on the instances of our resource allocation problem with a high number of agents. The algorithm from [Dubois and Fortemps, 1999] explodes when the number of equal components in the leximin-optimal vector increases.

28 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-74
SLIDE 74

Introduction Modeling the problem Solving the problem Results Conclusion

Summary

Problem studied: Computation of a leximin-optimal allocation of a constraint network. Justification: The leximin preorder ensures some interesting properties of fairness and efficiency for collective decision making problems. Algorithms: Introduction of four algorithms (the last one coming from flexible CSP) based on the CP framework. Implementation: Implementation and testing of the algorithms in Java with Choco.

29 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-75
SLIDE 75

Introduction Modeling the problem Solving the problem Results Conclusion

Summary

Problem studied: Computation of a leximin-optimal allocation of a constraint network. Justification: The leximin preorder ensures some interesting properties of fairness and efficiency for collective decision making problems. Algorithms: Introduction of four algorithms (the last one coming from flexible CSP) based on the CP framework. Implementation: Implementation and testing of the algorithms in Java with Choco.

29 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-76
SLIDE 76

Introduction Modeling the problem Solving the problem Results Conclusion

Summary

Problem studied: Computation of a leximin-optimal allocation of a constraint network. Justification: The leximin preorder ensures some interesting properties of fairness and efficiency for collective decision making problems. Algorithms: Introduction of four algorithms (the last one coming from flexible CSP) based on the CP framework. Implementation: Implementation and testing of the algorithms in Java with Choco.

29 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-77
SLIDE 77

Introduction Modeling the problem Solving the problem Results Conclusion

Summary

Problem studied: Computation of a leximin-optimal allocation of a constraint network. Justification: The leximin preorder ensures some interesting properties of fairness and efficiency for collective decision making problems. Algorithms: Introduction of four algorithms (the last one coming from flexible CSP) based on the CP framework. Implementation: Implementation and testing of the algorithms in Java with Choco.

29 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-78
SLIDE 78

Introduction Modeling the problem Solving the problem Results Conclusion

Future work

More about leximin-optimality:

Comparing our algorithms to a numerical approach of leximin (i.e by encoding the leximin preorder by a collective utility function) – possibly using the WCSP framework. Combining some of the four algorithms together to get better results. Designing and implementing approximation algorithms.

Possible extensions:

More general (and softer) modeling of fairness (e.g. OWA, inequality indices, . . . ). Applying the algorithms to other practical fields and applications.

30 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-79
SLIDE 79

Introduction Modeling the problem Solving the problem Results Conclusion

Future work

More about leximin-optimality:

Comparing our algorithms to a numerical approach of leximin (i.e by encoding the leximin preorder by a collective utility function) – possibly using the WCSP framework. Combining some of the four algorithms together to get better results. Designing and implementing approximation algorithms.

Possible extensions:

More general (and softer) modeling of fairness (e.g. OWA, inequality indices, . . . ). Applying the algorithms to other practical fields and applications.

30 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-80
SLIDE 80

Introduction Modeling the problem Solving the problem Results Conclusion

Future work

More about leximin-optimality:

Comparing our algorithms to a numerical approach of leximin (i.e by encoding the leximin preorder by a collective utility function) – possibly using the WCSP framework. Combining some of the four algorithms together to get better results. Designing and implementing approximation algorithms.

Possible extensions:

More general (and softer) modeling of fairness (e.g. OWA, inequality indices, . . . ). Applying the algorithms to other practical fields and applications.

30 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-81
SLIDE 81

Introduction Modeling the problem Solving the problem Results Conclusion

Future work

More about leximin-optimality:

Comparing our algorithms to a numerical approach of leximin (i.e by encoding the leximin preorder by a collective utility function) – possibly using the WCSP framework. Combining some of the four algorithms together to get better results. Designing and implementing approximation algorithms.

Possible extensions:

More general (and softer) modeling of fairness (e.g. OWA, inequality indices, . . . ). Applying the algorithms to other practical fields and applications.

30 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-82
SLIDE 82

Introduction Modeling the problem Solving the problem Results Conclusion

Future work

More about leximin-optimality:

Comparing our algorithms to a numerical approach of leximin (i.e by encoding the leximin preorder by a collective utility function) – possibly using the WCSP framework. Combining some of the four algorithms together to get better results. Designing and implementing approximation algorithms.

Possible extensions:

More general (and softer) modeling of fairness (e.g. OWA, inequality indices, . . . ). Applying the algorithms to other practical fields and applications.

30 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-83
SLIDE 83

Introduction Modeling the problem Solving the problem Results Conclusion

Future work

More about leximin-optimality:

Comparing our algorithms to a numerical approach of leximin (i.e by encoding the leximin preorder by a collective utility function) – possibly using the WCSP framework. Combining some of the four algorithms together to get better results. Designing and implementing approximation algorithms.

Possible extensions:

More general (and softer) modeling of fairness (e.g. OWA, inequality indices, . . . ). Applying the algorithms to other practical fields and applications.

30 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-84
SLIDE 84

Introduction Modeling the problem Solving the problem Results Conclusion

Future work

More about leximin-optimality:

Comparing our algorithms to a numerical approach of leximin (i.e by encoding the leximin preorder by a collective utility function) – possibly using the WCSP framework. Combining some of the four algorithms together to get better results. Designing and implementing approximation algorithms.

Possible extensions:

More general (and softer) modeling of fairness (e.g. OWA, inequality indices, . . . ). Applying the algorithms to other practical fields and applications.

30 / 31 New Constraint Programming Approaches For The Computation Of Leximin-Optimal Solutions In Constraint Networks

slide-85
SLIDE 85

This is the end.

For more information: michel.lemaitre@cert.fr sylvain.bouveret@cert.fr http://www.cert.fr/dcsd/THESES/sbouveret Random instance generator available online: http://www.cert.fr/dcsd/THESES/sbouveret/benchmark