Presentation is loading. Please wait.

Presentation is loading. Please wait.

Debugging Constraint Models with Metamodels and Metaknowledge

Similar presentations


Presentation on theme: "Debugging Constraint Models with Metamodels and Metaknowledge"— Presentation transcript:

1 Debugging Constraint Models with Metamodels and Metaknowledge
Eugene C. Freuder1 Richard J. Wallace1 Tomas E. Nordlander2 1Cork Constraint Computation Centre University College Cork 2SINTEF

2 Outline Model Debugging Ananke 1.0 Future Work Example Related work
Interface Meta Knowledge Metrics Preliminary Results Future Work

3 Model Debugging Given: a CSP model that is incorrect in some respects
Not yet complete World has changed (World needs to be changed) Given: a Knowledgeable User, who knows that a given assignment should be possible Goal: to adjust model to accommodate the new information

4 Model Debugging - Small Example
A meeting scheduling problem 3 meetings – A, B, C ( Variables ) Each meeting can be held at 11 AM or 1 PM ( Domain values ) Meeting A must be held before meeting B ( Constraint ) Meeting B must be held at the same time as C ( Constraint ) A B C < =

5 Model Debugging - Small Example
Modeller A B C < = 1 PM  DA User

6 Model Debugging - Small Example
Modeller {solutions} =∅ ??? User

7 Model Debugging - Small Example
Modeller {solutions} =∅ 1 PM  DA ! User

8 Small Example 1 PM  DA ! What if we allow A to occur after B?
Modeller What if we allow A to occur after B? 1 PM  DA ! User

9 Model Debugging - Small Example
Modeller Okay A B C <> = ? User

10 Related Work Partial CSP Interactive constraint solving
(usually) different metric Interactive constraint solving Here, adjusting our model, not telling user that a given assignment is infeasible Constraint-based matchmaking There, system suggested solutions, user indicated additional constraints Here, user indicates solutions, system adjusts constraints

11 Outline Model Debugging Ananke 1.0 Future Work Example Related work
Interface Meta Knowledge Metrics Preliminary Results Future Work

12 Ananke 1.0 Present system goes under the name, “Ananke”, a Greek goddess who was the “personification of destiny, necessity and fate”, i.e. the Goddess of Constraints In its full manifestation, Ananke is intended serve as a general environment for acquiring and modifying constraint models An inspiration for this work is Teiresias, an early system that used meta-knowledge to improve incomplete or incorrect rule bases

13 Ananke 1.0 Interface

14 Model & User Suggestion

15 Maximal Match

16 Suggestions

17 Ananke Debugging Overview
Partial Complete Range No solution Expected solution MK ES found CSP Search User Suggested changes Debug Previous Users Any =< => < > = <> CSP MK CSP loaded Expected solution inserted Meta Knowledge added Constraints Search heuristic Complete Search Start If solution found, user informed. And can then check other expected solutions. If solution NOT found, closeness appear along with the DEBUG option DEBUG Meta Constraints are added A branch and bound algorithm with a cost function that aim to find the minimum change on constraint to include the solution. Cost function is decided by the user RESULT: a set of constraint changes Meta Knowledge Model

18 Metaknowledge To guide the Search Heuristic
Missing solution(s) are represented by a “missing solution constraint” (ms-constraint) over a subset of the problem variables e.g. A = 1 PM To guide the Search Heuristic

19 Metrics Basic metric: number of solutions added by the changes in constraints - Since this is often too hard to compute, we would like to use some surrogate metric Step measure according to possible relaxations among the values of the meta-variable A B C < = Any =< => < > = <> 1 step

20 Metrics Tuple measure = number of extra tuples allowed by a relaxation
Example of tuple metric For |d| = 5 Any =< => < > = <> 10 10 5 {1,2,3,4,5} {1,2,3,4,5} A B C < = 10 10 5 10 10 5 5 10 10

21 Heuristics Order changes in a constraint according to cost function involved Restrict search to meta-variables for “link constraints” – i.e. constraints adjacent to unmatched variables in partial solution

22 Outline Model Maintenance Ananke Future Work Example Related work
Interface Meta Knowledge Metrics Preliminary Results Future Work

23 Algorithm Simple branch and bound – based on chosen metric
Looks for all minimal relaxations that give a CSP with desired solution(s) When new best-cost CSP found, calls CSP solver to check feasibility ECAI 2008 Workshop on Modeling and Solving Problems with Constraints 21 July 2008

24 Preliminary Results

25 Outline Model Debugging Ananke 1.0 Future Work Example Related work
Interface Meta Knowledge Metrics Preliminary Results Future Work

26 Future Work Improve algorithms Enlarge scope of meta-CSPs
Take advantage of CSP and MAX-CSP methods Expand on heuristics (e.g. vary focus) Enlarge scope of meta-CSPs Greater number of constraint types E.g. Allen’s Algebra Make interface more flexible User should be able to indicate that solutions should be present that have a certain property (not just A = 1 PM)

27 THE END


Download ppt "Debugging Constraint Models with Metamodels and Metaknowledge"

Similar presentations


Ads by Google