Integration of a Multicriteria Decision Model in Constraint

  • Slides: 38
Download presentation
Integration of a Multicriteria Decision Model in Constraint Programming I T &S A e

Integration of a Multicriteria Decision Model in Constraint Programming I T &S A e r o s p a c e D e f e n c e F. Le Huédé M. Grabisch C. Labreuche P. Savéant

Preference Modeling with fuzzy measures and the Choquet integral 2 in Constraint Programming in

Preference Modeling with fuzzy measures and the Choquet integral 2 in Constraint Programming in order to solve Multicriteria Combinatorial Optimization Problems. This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Objective Integrate

Why These Approaches? n For the software engineering aspect of CP. n For the

Why These Approaches? n For the software engineering aspect of CP. n For the modelling capacities of CP languages and the models flexibility. capacities n For the efficiency of the combination between search and constraints propagation. Why a multicriteria model based on an aggregation function? n In an Automated Decision context, decisions are taken by the software or Decision an embedded system. è The algorithm must return a unique solution of solution good quality è Preferences must be modelled « a priori » precisely. priori 3 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Why CP?

Why the Choquet Integral? The Choquet integral allows to model: C D A B

Why the Choquet Integral? The Choquet integral allows to model: C D A B • interactions between criteria. Many different behaviors. 4 solutions to compare: Criterion 1 C 2 C D C D A B A B C 1 Tolerance Redundant criteria 4 C 2 C 1 Intolerance Complementary criteria Independence C 1 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Criterion 2 • the importance of a criterion,

To find a good multicriteria solution within a satisfying time. Ø How can we

To find a good multicriteria solution within a satisfying time. Ø How can we model and propagate the multicriteria model in CP? Ø How can we guide the search towards good solutions? 5 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Main Issue

The Multicriteria Examination Timetabling Problem Data: n A set of exams to plan. n

The Multicriteria Examination Timetabling Problem Data: n A set of exams to plan. n A set of rooms of given capacities. n A set of periods. Objective: To give each examination a period number and a room. Constraints: n Disjunction constraints: two exams followed by a same student can’t be planned on the same period. n Room capacity: the number of students having an exam in a room on a given period can’t exceed the capacity of this room. Criteria: n Examination duration. n Number of used rooms. n Spreading of the exams. 6 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 n A set of students, each enrolled to a set of exams.

7 I. The MCDM Model II. Modelling a Multicriteria Model in CP III. The

7 I. The MCDM Model II. Modelling a Multicriteria Model in CP III. The Search of Solutions for Multicriteria Optimisation Problems This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Outline

8 Formalizing criteria Utility functions Modeling interactions between criteria Fuzzy measure Aggregating Choquet Integral

8 Formalizing criteria Utility functions Modeling interactions between criteria Fuzzy measure Aggregating Choquet Integral This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Components of the Multicriteria Model

MCDM Methodlogy: Criteria Formalization Overall Evaluation C 1 C 3 C 2 Construction of

MCDM Methodlogy: Criteria Formalization Overall Evaluation C 1 C 3 C 2 Construction of an interval scale over each criterion 0 Aggregation Criterion Definition of reference levels Utility u 1 1 u 2 1 Attribute 0 Hierarchical organization of criteria 9 u 3 1 0 a 2 Construction of utility functions a 3 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 1

Utility = Degree of satisfaction of the criteria: Minimise the duration 10 1 0

Utility = Degree of satisfaction of the criteria: Minimise the duration 10 1 0 LB 1. LB 2. LB 3. LB max Attribute: Duration of the exams This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Utility function

Fuzzy measures N: criteria set A N : criteria coalition µ(A) : weight of

Fuzzy measures N: criteria set A N : criteria coalition µ(A) : weight of coalition A Definition: A fuzzy measure µ on N is a function µ: P(N) [0, 1], such that: • µ( )=0, µ(N)=1 • A B µ(A) µ(B). 11 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Define a weight, not only for each criterion but also for each criteria coalition.

The Choquet integral of u with respect to µ: u(3) u(2) n Cµ(u 1,

The Choquet integral of u with respect to µ: u(3) u(2) n Cµ(u 1, u 2, u 3) Cµ(u)= u(i) [µ({(i), . . . , (n)}) - µ({(i+1), . . . , (n)})] i=1 u(1) µ({(1), (2), (3)}) µ({(3)}) 12 where (. ) indicate that the indices have been permuted so that: u(1) u(2) u(3) and µ({(n+1)}) = 0 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 u = (u 1, u 2, u 3) : satisfaction degrees of a solution a.

u 1 13 Cµ(u 1, u 2)=z 1 u 1=u 2 Cµ(u 1, u

u 1 13 Cµ(u 1, u 2)=z 1 u 1=u 2 Cµ(u 1, u 2)=z 2 u 2 Complementary criteria u 2 Redundant criteria This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Graphical representations of the Choquet integral u 1=u 2

14 I. The MCDM Model II. Modelling a Multicriteria Model in CP III. The

14 I. The MCDM Model II. Modelling a Multicriteria Model in CP III. The Search of Solutions for Multicriteria Optimisation Problems This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Outline

Integration in a CP solver y Affine Constraint Objective functions = Cµ(u 1, u

Integration in a CP solver y Affine Constraint Objective functions = Cµ(u 1, u 2, u 3 ) u 1 u 2 u 3 a 1 a 2 a 3 Utilities / scores u 1=U 1(a 1), u 2=U 2(a 2) u 3=U 3(a 3) Attributes a 1=f 1(x 1, …, xm), a 2=f 2(x 1, …, xm), a 3=f 3(x 1, …, xm) FD x 1, x 2, . . , xm 15 [0, 1] Problem variables and constraints This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Choquet Constraint: y Overall evaluation

n n 16 Establish the relation : y = Cµ(u 1, . . .

n n 16 Establish the relation : y = Cµ(u 1, . . . , un) During the search, propagate domain reductions between the variables y, u 1, . . . , un. This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 The Choquet constraint Objective :

Constraint Propagation n construction of a search tree, n constraint propagation at each node

Constraint Propagation n construction of a search tree, n constraint propagation at each node of the tree. Propagation = enforcing a consistency level for each constraint: n Arc consistency : A constraint propagation technique enforces arcconsistency on a constraint c(x 1. . . xm), if and only if when propagation stops the following statement holds: for every variable xi for every value vali in the domain of xi there are values val 1. . . vali-1 vali+1. . . valm in the domains of x 1. . . xi-1 xi+1. . . xm such that val 1. . . vali-1 vali+1. . . valm satisfy c n Bound consistency techniques: consistency checks are done only on the bounds of the domains. 17 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 The CP resolution process alternates :

Propagation of the Choquet constraint = Cµ(u 1, . . . , un), it

Propagation of the Choquet constraint = Cµ(u 1, . . . , un), it is bound- 1 2 3 4 18 How can we deduce some new bounds for uk ? This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Consider a constraint that maintains the relation y consistent iff conditions 1, 2, 3 and 4 hold:

Þ 1 2 19 Find the smallest value, , such that: Determine on which

Þ 1 2 19 Find the smallest value, , such that: Determine on which piece of the function is located Compute This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Computing a new lower bound for uk Notation :

The Choquet constraint propagation: Example µ 0 = 0 µ 1 = 0. 1

The Choquet constraint propagation: Example µ 0 = 0 µ 1 = 0. 1 µ 2 = 0. 4 µ 3 = 0. 1 µ 12 = 0. 5 µ 13 = 0. 2 µ 23 = 0. 6 µ 123 = 1 y [0. 4, 1] u 1 [0, 0. 2] u 2 [0, 0. 8] u 3 [0, 0. 2] 20 y [0. 4, 0. 44] u 1 [0. 1, 0. 2] u 2 [0. 7, 0. 8] u 3 [0. 12, 0. 2] This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 y = Cµ(u 1, u 2, u 3)

The Choquet constraint propagation: Results for a model with redundant criteria With Propagation Nb.

The Choquet constraint propagation: Results for a model with redundant criteria With Propagation Nb. Btk ms Sc. 6 602 50 136 40 Sc. 15 40741 4920 9106 1570 Sc. 20 374943 55460 37931 8820 Sc. 23 30885518 2569 s 12266735 790 s Results for a model with independant criteria Without Propagation 21 With Propagation Nb. Btk ms Sc. 6 1501 130 419 70 Sc. 15 23801 2820 3908 840 Sc. 20 738869 106100 51786 16120 Sc. 23 29816827 1234 s 24700990 1179 s This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Without Propagation

22 I. The MCDM Model II. Modelling a Multicriteria Model in CP III. The

22 I. The MCDM Model II. Modelling a Multicriteria Model in CP III. The Search of Solutions for Multicriteria Optimisation Problems This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Outline

Main Issue: Guiding the Search Objective: Difficult due to: n Conflicting criteria A strategy

Main Issue: Guiding the Search Objective: Difficult due to: n Conflicting criteria A strategy that is good for optimising a criteria is often inefficient for another n Compensation phenomena Good solutions offer a trade-off between the criteria u 1=u 2 Cµ(u 1, u 2)=z 1 u 2 23 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 To define a search strategy able to guide the search quickly towards good solutions.

24 Focacci-Godard CP-AI-OR’ 02 : Junker CP-AI-OR’ 02 : « Preference Based Search »

24 Focacci-Godard CP-AI-OR’ 02 : Junker CP-AI-OR’ 02 : « Preference Based Search » Definition of a partial search algorithm for a three objectives job shop aggregated by a weighted sum. At each solution, bounding constraints are set on the objectives of the problem to speed-up the finding of good solutions. The best algorithm alternates several searches with different configurations of bounding constraints. A simple formalism allows to express some preferences between the criteria. The PBS algorithm performs successive mono-objective optimisations to find the set of non-dominated solutions. A suitable labelling strategy is selected for each mono-objective optimisation depending on the criterion to optimise. è A practical and dedicated approach. è Incomplete search. è The model returns a set of solutions. è The whole set of non-dominated solutions is hard to find in large size optimisation problems. This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Guiding the Search in Multicriteria Optimisation: Related Papers

to multicriteria combinatorial optimisation problems in an automated decision context. 25 This document and

to multicriteria combinatorial optimisation problems in an automated decision context. 25 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 So What Do We Need? A general approach for the search of solutions

Suggested Approach: The MCS Algorithm (1) General principle: n A search on a criterion

Suggested Approach: The MCS Algorithm (1) General principle: n A search on a criterion uses a dedicated mono-criterion strategy that allows to find strategy quickly solutions of good quality on this criterion. n After a search on a criterion, the criterion choice heuristic dynamically chooses the heuristic criterion that will guide the next search. n The algorithm ends when a user-defined stopping condition is verified. condition n Before a mono-criterion search, an improvement on a criterion can be explicitly imposed thanks to local constraints. 26 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 to alternate searches on the problem criteria in order to find solutions of increasing quality.

Suggested Approach: The MCS Algorithm (2) c <set. Local. Constraints>(s*, c) c, b MCS(

Suggested Approach: The MCS Algorithm (2) c <set. Local. Constraints>(s*, c) c, b MCS( y, list<Var>(u 1, …, un), list<Hybrid. Search>(S 1, …, Sn), <get. Next. Criterion>, Local constraints addition <set. Local. Constraints>, <check. Termination> ) Solutions search Search(uc, y, get. Strategy (c)) , y, s* <check. Termination>(s*, b) true 27 false Stopping Condition This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Criterion choice heuristic <get. Next. Criterion>(s*)

Instantiating MCS: An Example Ø Search for a first solution on criterion 1; old_c

Instantiating MCS: An Example Ø Search for a first solution on criterion 1; old_c : = 1 Ø Set constraint propagate bounds and Ø Select the criterion c that maximises: Ø If ( c = old_c) set local constraint ; Ø Search for a solution on criterion c or nil Ø Terminate if (local true) and (s = nil) else old_c : = c 28 local : = true This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0

c <set. Local. Constraints>(s*, c) c, b Search(uc, y, get. Strategy (c)) , y,

c <set. Local. Constraints>(s*, c) c, b Search(uc, y, get. Strategy (c)) , y, s* <check. Termination>(s*, b) true 29 false This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 MCS Components: n Mono-Criterion Search Strategies <get. Next. Criterion>(s*)

MCS Components: n Mono-Criterion Search Strategies MCS(y, (u 1, …, un), (S 1, …,

MCS Components: n Mono-Criterion Search Strategies MCS(y, (u 1, …, un), (S 1, …, Sn), <get. Next. Criterion>, <set. Local. Constraints>, <check. Termination>) n Definition of the search tree: Variable choice heuristic ; n Labelling strategy. n n Specification of the maximum number of solutions per search. n Specification of complete or partial search strategies. n A library of hybrid methods that combine tree search and local search. n Definition of an overall time limit and of a time limit per search. 30 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Many kinds of search strategies can be defined easily with dedicated search pattern libraries such as To. OLS© :

c <set. Local. Constraints>(s*, c) c, b Search(uc, y, get. Strategy(c) ) , y,

c <set. Local. Constraints>(s*, c) c, b Search(uc, y, get. Strategy(c) ) , y, s* <check. Termination>(s*, b) true 31 false This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 MCS Components: The Criterion Choice Heuristic <get. Next. Criterion>(s*)

MCS Components: The Criterion Choice Heuristic MCS(y, (u 1, …, un), (S 1, …,

MCS Components: The Criterion Choice Heuristic MCS(y, (u 1, …, un), (S 1, …, Sn), <get. Next. Criterion>, <set. Local. Constraints>, <check. Termination>) è Indicates the criterion on which it is the most interesting to get an improvement with respect to: problem criteria). l The aggregation function coefficients. l The upper bounds of utility variables (denoted ). è Some criterion choice heuristics: l Choose the criterion that maximises the maximum improvement indicator : indicator l Choose the criterion that maximises the average improvement indicator : indicator 32 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 l The last found solution (we denote its performances on the

c <set. Local. Constraints>(s*, c) c, b Search(uc, y, get. Strategy(c) ) , y,

c <set. Local. Constraints>(s*, c) c, b Search(uc, y, get. Strategy(c) ) , y, s* <check. Termination>(s*, b) true 33 false This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 MCS components: Local Constraints <get. Next. Criterion>(s*)

MCS Components: Local Constraints MCS(y, (u 1, …, un), (S 1, …, Sn), <get.

MCS Components: Local Constraints MCS(y, (u 1, …, un), (S 1, …, Sn), <get. Next. Criterion>, <set. Local. Constraints>, <check. Termination>) è <set. Local. Constraints>(s*, c) allows to add some constraints on the criteria (uc > u*c) è When a function posts a local constraint, it notifies the whole algorithm by returning true. è Advantages: makes the search more efficient for the search of a solution of better quality on a selected criterion (if such a solution exists). è Drawbacks: can make the search incomplete and take time for the search of a solution that does not exist. è Examples : systematic. Improvement(s*, c): systematically add the constraint uc > u*c. l consecutive. Improvement(s*, c): add the constraint uc > u*c when criterion c had been selected for the guiding of the previous search. l 34 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 è A local constraint is valid during only one search.

c <set. Local. Constraints>(s*, c) c, b Search(uc, y, get. Strategy(c) ) , y,

c <set. Local. Constraints>(s*, c) c, b Search(uc, y, get. Strategy(c) ) , y, s* <check. Termination>(s*, b) true 35 false This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 MCS components: The algorithm Stopping Condition <get. Next. Criterion>(s*)

MCS Components: The Algorithm Stopping Condition MCS(y, (u 1, …, un), (S 1, …,

MCS Components: The Algorithm Stopping Condition MCS(y, (u 1, …, un), (S 1, …, Sn), <get. Next. Criterion>, <set. Local. Constraints>, <check. Termination>) n The termination of the algorithm (e. g. , when a search can’t find any solution). n The use of information returned by a search to reinforce the model. optimality. Condition(local, s*, s, u, c) if (get. Overall. Value(s*) = y. sup) return true else if (s = ) \ the last search did not find any solution if (local) \ A local constraint was used set. Constraint(u[c] get. Value(s*, c)), return false else return true else return false end 36 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 <check. Termination> realises two kinds of operations:

Results on the examination timetabling problem 37 This document and any data included are

Results on the examination timetabling problem 37 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 Some Instances of MCS for Complete Search MCS Instances

Conclusion and Future Work Contributions: n The MCS algorithm, dedicated to the search of

Conclusion and Future Work Contributions: n The MCS algorithm, dedicated to the search of solutions to multicriteria optimisation problems. n The criterion choice heuristic. n The definition of MCS components to achieve complete search. n Implementation of these results in the Eclair© solver. On going work: n Instantiation of the MCS algorithm for partial search. n Large combinatorial optimisation problems. 38 This document and any data included are the property of THALES. They cannot be reproduced, disclosed or used without THALES' prior written approval. ©THALES 2003. Template trtco V 6. 0. 0 n Integration of an MCDM model in CP.