Download presentation
Presentation is loading. Please wait.
Published byErnest Paul Modified over 6 years ago
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
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.