Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

39
Foundations of Constraint Processing Basic Consistency Methods 1 Problem Solving with Constraints CSCE421/821, Fall2012 www.cse.unl.edu/~ choueiry/F12-421-821 All questions: Piazza Berthe Y. Choueiry (Shu-we-ri) Avery Hall, Room 360 Tel: +1(402)472-5444 Path Consistency & Global Consistency Properties

description

Path Consistency & Global Consistency Properties. Problem Solving with Constraints CSCE421/821, Fall2012 www.cse.unl.edu/~ choueiry/F12-421-821 All questions: Piazza Berthe Y. Choueiry (Shu-we-ri) Avery Hall, Room 360 Tel: +1(402)472-5444. Lecture Sources. Required reading - PowerPoint PPT Presentation

Transcript of Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Page 1: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 1

Problem Solving with ConstraintsCSCE421/821, Fall2012

www.cse.unl.edu/~choueiry/F12-421-821All questions: Piazza

Berthe Y. Choueiry (Shu-we-ri)Avery Hall, Room 360Tel: +1(402)472-5444

Path Consistency & Global Consistency Properties

Page 2: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 2

Lecture SourcesRequired reading1. Algorithms for Constraint Satisfaction Problems, Mackworth and

Freuder AIJ'852. Sections 3.1, 3.2, 3.3. Chapter 3. Constraint Processing. Dechter

Recommended1. Sections 3.4—3.10. Chapter 3. Constraint Processing. Dechter2. Networks of Constraints: Fundamental Properties and Application

to Picture Processing, Montanari, Information Sciences 743. Bartak: Consistency Techniques (link)4. Path Consistency on Triangulated Constraint Graphs, Bliek & Sam-

Haroud IJCAI'99

Page 3: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 3

Outline1. Motivation2. Path consistency and its complexity3. Global consistency properties

– Minimality– Decomposability

4. When PC guarantees global consistency

Page 4: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 4

AC is not enough Example borrowed from Dechter

Arc-consistent?Satisfiable?

seek higher levels of consistency

V1a b

a b a bV2 V3

=

V1b a

a b b aV2 V3

=

=

Page 5: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 5

Outline1. Motivation2. Path consistency and its complexity3. Global consistency properties

– Minimality– Decomposability

4. When PC guarantees global consistency

Page 6: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 6

Consistency of a pathA path (V0, V1, V2, …, Vm) of length m is consistent iff • for any value xDV0 and for any value yDVm that are consistent (i.e., PV0 Vm(x, y)) a sequence of values z1, z2, … , zm-1 in the domains of variables V1, V2, …, Vm-1,

such that all constraints between them (along the path, not across it) are satisfied (i.e., PV0 V1(x, z1) PV1 V2(z1, z2) … PVm-1 Vm(zm-1, zm) )

for all x DV0 for all y DVm

V0 Vm

Vm-1

V2

V1

Page 7: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 7

Note The same variable can appear more than once in the path Every time, it may have a different value Constraints considered: PV0,Vm and those along the path

All other constraints are neglected

for all x DV0 for all y DVm

V0 Vm

Vm-1

V2

V1

Page 8: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 8

Example: consistency of a path Check path length = 2, 3, 4, 5, 6, ....

{a, b, c}

V2

{a, b, c}

V3

{a, b, c}

V1

{a, b, c}

V4

{a, b, c}V7

{a, b, c} V5

{a, b, c}

V6

All mutex constraints

Page 9: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 9

Path consistency: definition A path of length m is path consistent A CSP is path consistent Property of a

CSP

Definition: A CSP is path consistent (PC) iff every path isconsistent (i.e., any length of path)

Question: should we enumerate every path of any length?Answer: No, only length 2, thanks to [Mackworth AIJ'77]

Page 10: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 10

Tools for PC-1Two operators

1. Constraint composition: ( • )R13 = R12 • R23

2. Constraint intersection: ( )R13 R13, old R13, induced

Page 11: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 11

Path consistency (PC-1)Achieved by composition and intersection (of binary relations

expressed as matrices) over all paths of length two.Procedure PC-1:1 Begin2 Yn R3 repeat4 begin5 Y0 Yn

6 For k 1 until n do7 For i 1 until n do8 For j 1 until n do9 Yl

ij Yl-1ij Yl-1

ik • Yl-1kk • Yl-1

kj

10 end11 until Yn = Y0

12 Y Yn

10 end

Page 12: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 12

Properties of PC-1Discrete CSPs [Montanari'74]

1. PC-1 terminates2. PC-1 results in a path consistent CSP

• PC-1 terminates. It is complete, sound (for finding PC network)

• PC-2: Improves PC-1 similar to how AC3 improves AC-1

Complexity of PC-1..

Page 13: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

13

Complexity of PC-1Procedure PC-1:1 Begin2 Yn R3 repeat4 begin5 Y0 Yn

6 For k 1 until n do7 For i 1 until n do8 For j 1 until n do9 Yl

ij Yl-1ij Yl-1

ik • Yl-1kk • Yl-1

kj

10 end11 until Yn = Y0

12 Y Yn

10 end

Line 9: a3

Lines 6–10: n3. a3

Line 3: at most n2 relations x a2 elements

PC-1 is O(a5n5)

Basic Consistency Methods

PC-2 is O(a5n3) and (a3n3)

PC-1, PC-2 are specified using constraint composition

Page 14: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 14

Enforcing Path Consistency (PC)General case: Complete graphTheorem: In a complete graph, if every path of length 2 is

consistent, the network is path consistent [Mackworth AIJ'77]

PC-1: two operations, composition and intersection Proof by induction.

General case: Triangulated graphTheorem: In a triangulated graph, if every path of length 2 is

consistent, the network is path consistent [Bliek & Sam-Haroud ‘99]

PPC (partially path consistent) PC

Page 15: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods

PPC versus PC

15

Page 16: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 16

Some improvements• Mohr & Henderson (AIJ 86)

– PC-2 O(a5n3) PC-3 O(a3n3)– Open question: PC-3 optimal?

• Han & Lee (AIJ 88)– PC-3 is incorrect– PC-4 O(a3n3) space and time

• Singh (ICTAI 95)– PC-5 uses ideas of AC-6 (support bookkeeping)

• Also:– PC8: iterates over domains, not constraints [Chmeiss & Jégou 1998]– PC2001: an improvement over PC8, not tested [Bessière et al. 2005]

Note: PC is seldom used in practical applications unless in presence of special type of constraints (e.g., bounded difference)

Project!

Page 17: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 17

Path consistency as inference of binary constraints

Path consistency corresponds to inferring a new constraint(alternatively, tightening an existing constraint) between every twovariables given the constraints that link them to a third variable

Considers all subgraphs of 3 variables 3-consistency

B

C

A

B < C

A < B

B

C

AA < B

A < C

B < C

Page 18: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 18

Path consistency as inference of binary constraints

Another example:

V4

V3

a b

V4

V2

V1

a b

V3

a b

a b

V2

a b

V1

a b

a b

=

=a b a b

Page 19: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 19

Question Adapted from Dechter

Given three variables Vi, Vk, and Vj and the constraints CVi,Vk, CVi,Vj, and CVk,Vj, write the effect of PC as a sequence of operations in relational algebra.

B

C

A

B < C

A < B

A + 3 > C

B

C

AA < B

A + 3 > C

A < C

B < C

B

C

AA < B

-3 < A –C < 0

B < C

Solution: CVi,Vj CVi,Vj ij(CVi,Vk CVk,Vj)

Page 20: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 20

Constraint propagation courtesy of Dechter

After Arc-consistency:

After Path-consistency:

• Are these CSPs the same?– Which one is more explicit?– Are they equivalent?

• The more propagation,– the more explicit the constraints– the more search is directed towards a solution

1

2

3

1

2

3

1

2 2

3

( 0, 1 )

( 0, 1 )( 0, 1 )

( 0, 1 )

( 0, 1 )( 0, 1 )

Page 21: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 21

Arc-consistent?

Path-consistent?

PC can detect unsatisfiability

V3

a b

V4

a bV2

V1 a b

a b

a b

Page 22: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 22

• Question:– Is this CSP 3-consistent? – is it 2-consistent?

• Lesson: – 3-consistency does not guarantee 2-consistency

Warning: Does 3-consistency guarantee 2-consistency?

{red, blue}

A

B

{ red }

{red, blue}

{ red }

C

Page 23: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 23

PC is not enough

Arc-consistent?Path-consistent?Satisfiable? we should seek (even) higher levels of consistency k-consistency, k = 1, 2, 3, …. …following lecture

{a, b, c}

V2

{a, b, c}

V3

{a, b, c}

V1

{a, b, c}

V4

{a, b, c}V7

{a, b, c} V5

{a, b, c}

V6

All mutex constraints

Page 24: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 24

Outline1. Motivation2. Path consistency and its complexity3. Global consistency properties

– Minimality– Decomposability

4. When PC guarantees global consistency

Page 25: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 25

MinimalityPC tightens the binary constraintsThe tightest possible binary constraints yield the minimal network

Minimal network a.k.a. central problem Given two values for two variables, if they are consistent, then they

appear in at least one solution.

Note:• Minimal path consistent• The definition of minimal CSP is concerned with binary CSPs, but it

need not be

Page 26: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 26

Minimal CSPMinimal network a.k.a. central problem Given two values for two variables, if they are consistent, then they

appear in at least one solution.

Informally• In a minimal CSP the remainder of the CSP does not add any

further constraint to the direct constraint CVi, Vj between the two variables Vi and Vj [Mackworth AIJ'77]

• A minimal CSP is perfectly explicit: as far as the pair Vi and Vj is concerned, the rest of the network does not add any further constraints to the direct constraint CVi, Vj [Montanari'74]

• The binary constraints are explicit as possible. [Montanari'74]

Page 27: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 27

Strong n-consistent

Decomposability• Any combination of values for k variables that satisfy the constraints

between them can be extended to a solution.

• Decomposability generalizes minimality Minimality: any consistent combination of values for

any 2 variables is extendable to a solutionDecomposability: any consistent combination of values for

any k variables is extendable to a solution

Decomposable Minimal Path Consistent

n-consistent Solvable

Page 28: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 28

Relations to (theory of) DB

CSP DatabaseMinimal • |C|-wise consistent

• The relations join completelyDecomposable ?

Page 29: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 29

Outline1. Motivation2. Path consistency and its complexity3. Global consistency properties

– Minimality– Decomposability

4. When PC guarantees global consistency

Page 30: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 30

PC approximates.. In general:• Decomposability minimality path consistent• PC is used to approximate minimality (which is the central problem)

When is the approximation the real thing?Special cases:• When composition distributes over intersection, [Montanari'74]

PC-1 on the completed graph guarantees minimality and decomposability

• When constraints are convex [Bliek & Sam-Haroud 99]

PPC on the triangulated graph guarantees minimality and decomposability (and the existing edges are as tight as possible)

Page 31: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods

PPC versus PC

31

Page 32: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 32

PC: Special Case• Distributivity property

– Outer loop in PC-1 (PC-3) can be ignored • Exploiting special conditions in temporal

reasoning – Temporal constraints in the Simple Temporal Problem

(STP): composition & intersection– Composition distributes over intersection

• PC-1 is a generalization of the Floyd-Warshall algorithm (all pairs shortest path)

– Convex constraints• PPC

Page 33: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 33

Distributivity propertyIn PC-1, two operations:

RAB • (RBC R'BC) = (RAB • RBC) (RAB • R’BC)

When ( • ) distributes over ( ), then [Montanari'74]

• PC-1 guarantees that CSP is minimal and decomposable• The outer loop of PC-1 can be removed

Intersection,

Composition, •

RAB R’BCRBCA

B

C

Page 34: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods

Condition does not always holdConstraint composition does not always distribute over constraint intersection•R12= R23= R’23=

• ⋅( ∩ ) = =⋅

•( ) ∩ ( )= ∩ = ⋅ ⋅

34

1 10 0

0 01 0

1 00 0

1 10 0

0 00 0

0 00 0

1 10 0

0 01 0

1 00 0

1 10 0

0 01 0

1 10 0

1 00 0

1 00 0

1 00 0

1 00 0

Page 35: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods

Temporal Reasoning constraints of bounded difference

35

Variables: X, Y, Z, etc.

Constraints: a Y-X b, i.e. Y-X = [a, b] = I

Composition: I 1 • I2 = [a1, b1] • [a2, b2] = [a1+ a2, b1+b2] Interpretation: – intervals indicate distances– composition is triangle inequality.

Intersection: I1 I2 = [max(a1, a2), min(b1, b2)]

Distributivity: I1 • (I2 I3) = (I1 • I2) (I1 • I3)

Proof: left as an exercise

Page 36: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods

Example: Temporal Reasoning

36

Composition of intervals + :R’13 = R12 + R23 = [4, 12]R01 + R13 = [2,5] + [3, 5] = [5, 10]R01 + R'13 = [2,5] + [4, 12] = [6, 17]

Intersection of intervals: R13 R'13 = [4, 12] [3, 5] = [4, 5]R01 + (R13 R'13) = (R01 + R13) (R01 + R'13)R01 + (R13 R'13) = [2, 5] + [4, 5] = [6, 10](R01 + R13) (R01 + R'13) = [5, 10] [6,17] = [6, 10]

Here, path consistency guarantees minimality and decomposability

R’13

R13 =[3,5]

R23=[1,8]R12=[3,4]

V1 V3

V2

V0 R01=[2,5]

Page 37: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 37

Composition Distributes over • PC-1 generalizes Floyd-Warshall algorithm (all-

pairs shortest path), where – composition is ‘scalar addition’ and– intersection is ‘scalar minimal’

• PC-1 generalizes Warshall algorithm (transitive closure)– Composition is logical OR– Intersection is logical AND

Page 38: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 38

Convex constraints: temporal reasoning (again!)

Thanks to Xu Lin (2002)

• Constraints of bounded difference are convex

• We triangulate the graph (good heuristics exist)

• Apply PPC: restrict propagations in PC to triangles of the graph (and not in the complete graph)

• According to [Bliek & Sam-Haroud 99] PPC becomes equivalent to PC, thus it guarantees minimality and decomposability

Page 39: Problem Solving with Constraints CSCE421/821, Fall2012 cse.unl/~ choueiry/F12-421-821

Foundations of Constraint Processing

Basic Consistency Methods 39

Summary1. Alert: Do not confuse a consistency property with the algorithms for

reinforcing it2. Local consistency methods

– Remove inconsistent values (node, arc consistency)– Remove Inconsistent tuples (path consistency)– Get us closer to the solution– Reduce the ‘size’ of the problem & thrashing during search – Are ‘cheap’ (i.e., polynomial time)

3. Global consistency properties are the goal we aim at4. Sometimes (special constraints, graphs, etc) local consistency guarantees

global consistency– E.g., Distributivity property in PC, row-convex constraints, special networks

5. Sometimes enforcing local consistency can be made cheaper than in the general case– E.g., functional constraints for AC, triangulated graphs for PC