Title: G??sse?%20pe?????s
1G??sse? pe?????sµ??
- ?? e??a? ?? pe?????sµ??(constraints)?
- ???te??p???s? pe?????sµ??
- ?p???s? pe?????sµ??
- ???d?a pe?????sµ??
- ???e? pe?????? pe?????sµ??
- Properties of constraint solving
2?e?????sµ??
?etaß??t?? ap????e?s? t?µ??
S??a?t?s?a?? s?µß??a a?t?st????s? t?µ?? se t?µ??
S?es?a?? s?µß??a s??se?? µeta?? t?µ??
3?e?????sµ??
St???e??d?? pe?????sµ?? s??se?? pe?????sµ?? µe
???sµata
unary
binary
?e?????sµ?? s?????s? st???e??d?? pe?????sµ??
4??a??p???s?µ?t?ta
?p?t?µ?s? a???es? t?µ?? st?? µetaß??t??
?p???s? ap?t?µ?s? p?? ??a??p??e? t???
pe?????sµ???
5??a??p???s?µ?t?ta
??a??p???s?µ? ? pe?????sµ?? ??e? ??s? ??
??a??p???s?µ? ? pe?????sµ?? de? ??e? ??s?
??a??p???s?µ?
?? ??a??p???s?µ?
6S??ta?? pe?????sµ??
- ?? pe?????sµ?? e??a? s?µß???se????
- ?? a????e? de? ep??e????? (de? t??
???s?µ?p????µe) - ? se??? ep??e??e?
- ?e????? a??????µ?? e?a?t??ta? ap? t?? se???
7?s?d??aµ?a pe?????sµ??
??? d?af??et???? pe?????sµ?? µp??e? ?a
a?apa??st??? t?? ?d?a p????f???a
??? pe?????µ?? e??a? ?s?d??aµ?? ?ta? ????? t?
?d?? s????? ??se??
8???te??p???s? ???s?µ?p????ta? pe?????sµ???
- ?? pe?????sµ?? pe?????f??? ?deat?? s?µpe??f????
a?t??e?µ???? st?? p?a?µat??? ??sµ?
9??a??p???s? pe?????sµ??
- ?????t?? e??? pe?????sµ?? C ????µe d?? e??t?se??
- ??a??p???s?µ? ??e? ??s?
- ep???s? d?se µ?? µ?a ??s?, e?? ?p???e?
- ?? p??t? e??a? p?? ßas???
- ??a s?st?µa ep???s?? pe?????sµ?? apa?t?e? t?
e??t?µa t?? ??a??p???s?µ?t?ta?
10??a??p???s? pe?????sµ??
- ??? apa?t?µe t?? e??t?s?
- ?p?? p??s????s? ap?t?µ?s? ???? t?? p???a???
t?µ??(genarate test)
11Generate Test
- ???a??? ? p?? ?e???? µ???d?? ep???s??
- ???????µ??
- generate labelling
- test ??a??p???s?µ?t?ta?
- ?e???e?t?µata ?e?t??se??
- blind generator smart generator --gt local
search - a??? e?a???? ??e???? ?at? t?? e?a????
- as??epe??? --gt backtracking
12Backtracking (BT)
Systematic Search Methods
- incrementally extends a partial solution towards
a complete solution - Algorithm
- assign value to variable
- check consistency
- until all variables labelled
- Drawbacks
- thrashing
- redundant work
- late detection of conflict
A
1
B
2
1
C
2
1
1
D
2
2
1
1
1
?
A D, B ? D, AC lt 4
13GT BT - Example
Systematic Search Methods
- Problem X1,2, Y1,2, Z1,2 X Y, X
? Z, Y gt Z - generate test backtracking
14Consistency Techniques
- removing inconsistent values from variables
domains - graph representation of the CSP
- binary and unary constraints only (no problem!)
- nodes variables
- edges constraints
- node consistency (NC)
- arc consistency (AC)
- path consistency (PC)
- (strong) k-consistency
Agt5
A
AltC
A?B
C
B
BC
15Arc Consistency (AC)
Consistency Techniques
- the most widely used consistency technique (good
simplification/performance ratio) - deals with individual binary constraints
- repeated revisions of arcs
- AC-3, AC-4, Directional AC
a b c
a b c
a b c
Y
X
Z
16AC - Example
Consistency Techniques
- Problem X1,2, Y1,2, Z1,2 X Y, X
? Z, Y gt Z
X
X
1 2
1 2
1 2
1 2
Y
Y
1 2
1 2
Z
Z
17Is AC enough?
Consistency Techniques
- empty domain gt no solution
- cardinality of all domains is 1 gt solution
- Problem X1,2, Y1,2, Z1,2 X ? Y, X
? Z, Y ? Z
X
1 2
1 2
Y
Z
1 2
18Path Consistency (PC)
Consistency Techniques
V2
- consistency along the path only
- checking paths of length 2 is enough
- Plus/Minus
- detects more inconsistencies than AC
- - extensional representation of constraints
- - changes in graph connectivity
- Directional PC, Restricted PC
V4
V3
V5
V0
V1
???
19K -consistency
Consistency Techniques
- K-consistency
- consistent valuation o (K-1) variables can be
extended to K-th variable - strong K-consistency ? J-consistency for each
J?K - NC ? strong 1-consistency
- AC ? strong 2-consistency
- PC ? strong 3-consistency
20??a??p???s? pe?????sµ??
- ? ap?? p??s????s? de? d???e?e? ??a p??ß??µata t??
p?a?µat???? ??sµ?? - ??a p?? ???p?? ??d?s? ???s?µ?p??e?ta? ??a
pe?????sµ??? µe pepe?asµ??? ped?? ???sµ?? - Gauss-Jordan s??µa apa???f??
21Gauss-Jordan s??µa apa???f??
- ?p????? e??s?s?? c ap? C
- ?a?a????e c st? µ??f? x e
- ??t??at?st?se t? x pa?t?? st? C µe e
- ?pa???aße µ????
- ??e? ?? e??s?se?? ?a e??a? t?? µ??f?? x e
- ? µ?a e??s?s? e??a? ?s?d??aµ? µe d 0 (d ! 0)
- ?p?st?e?e True st?? p??t? pe??pt?s? a????? False
22Gauss-Jordan ?a??de??µa 1
??t??at?st?se X µe 2YZ-1
??t??at?st?se Y µe -1
?p?st?e?e false
23Gauss-Jordan Example 2
??t??at?st?se X µe 2YZ-1
??t??at?st?se Y µe -1
?p???s? µ??f?? pe?????sµ?? a?t?? t?? µ??f??
e??a? ??a??p???s?µ??
24?p???s? µ??f??
- ?? pa?aµet????? µetaß??t?? eµfa?????ta? sta
a??ste?? µ?a? e??s?s??. - ?a?aµet????? µetaß??t?? eµfa?????ta? sta de???
µ?a? e??s?s??. - ?p???s? ep????? pa?aµe????? t?µ?? ?a? ?a????sµ??
t?? µ? pa?aµet?????
25?????
- ?e???t? ???µ?s???
- Scene Labelling
- ??????? ?????aµµat?sµ??
- unification --gt constraint solving
- G?af???? a????ep?d??se??
- Sketchpad
- ThingLab
- ?p??e???s?a?? ??e??a
- NP-hard combinatorial problems
26?fa?µ????
- ???ß??µata ????es??
- t?p??es?a ?atas?e??? ae??d??µ???
- a?????ß???? p?????
- p??s?p??? a???es?
- ?at?????? ??s???µ??
- a???es? p????µ?t?? pt?se??
- d?a?e???s? ?a? d?aµ??f?s? d??t???
- s?ed?asµ?? ?a??d??s?? se t??ep????????a?? d??t?a
- ß??t?st? t?p???t?ts? sta?µ?? se as??µata d??t?a
- µ???a?? ß??????a
- DNA a???????a?
- a?a??????? ?a? ??f?a??? s?ed?asµ?? ?????µ?t??
27?fa?µ???? se ?????d?a???µµata
- ? p?? ep?t???? pe????? efa?µ????
- ?????d????aµµa pa?a?????
- s?ed?asµ?? pa?a????? ae??p????? (Dassault
Aviation)
28?e???e?t?µata
- NP-hard p??ß??µata
- µ? p??ß????µ? s?µpe??f???
- sta?e??t?ta µ??te??p???s??
- p??? ???? ep?ped? (???? pe?????sµ??, ep???t??)
- p??? ?aµ??? ep?ped? (µ??te??p???s?)
- p??? t?p???
- µ? a???t???? (rescheduling)
- ad??aµ?a s??e??as?a? ep???t??
29??e??e?t?µata
- epe????µat??? f?s?
- ep????t??s? t?? e?d?af???? st? pe????af? t??
p??ß??µat?? ?a? ??? st?? ep???s? t?? - ap?te?esµat??? ep???s? p??ß??µ?t??
- e??p???s? a??????µ?? p?? ???s?µ?p?????ta? ??a
e?d????? s??p??? - ?eµe???d?? s?µas??????a
- ?a?a??? ?a? ??µ??? ???sse?
- ßas??eta? st? ?????? p????aµµat?sµ?
- p??????e? efa?µ????
- a??et? ep?t???a se d??f????? t?µe??
30?ate????se??
- µ??te??p???s?
- ?a???????? pe?????sµ??? (???? d?af??et????)
- µ??te??p???s? ???ss?? (Numerica, VisOpt)
- ?ata???t? µe??t?
- ?pt???p???s?, ap?te?esµat??? debugging
- ?ß??d???? a??????µ??
- s??e??as?a ep???t??
- pa?a?????sµ??
- multi-agent te???????a