A New Constraint-based Framework for Qualitative Reasoning - - PowerPoint PPT Presentation

a new constraint based framework for qualitative reasoning
SMART_READER_LITE
LIVE PREVIEW

A New Constraint-based Framework for Qualitative Reasoning - - PowerPoint PPT Presentation

A New Constraint-based Framework for Qualitative Reasoning Krzysztof Apt CWI & University of Amsterdam (Joint work with Sebastian Brand) Constraint-based Qualitative Reasoning p.1/26


slide-1
SLIDE 1

A New Constraint-based Framework for Qualitative Reasoning

Krzysztof Apt CWI & University of Amsterdam

(Joint work with Sebastian Brand)

Constraint-based Qualitative Reasoning – p.1/26

slide-2
SLIDE 2

Outline

  • Qualitative (spatial) reasoning (QR)
  • Constraint programming (CP)
  • Mapping QR problems to CP
  • Evolving qualitative scenarios
  • Case study

Constraint-based Qualitative Reasoning – p.2/26

slide-3
SLIDE 3

Qualitative Reasoning

Constraint-based Qualitative Reasoning – p.3/26

slide-4
SLIDE 4

Qualitative Spatial Reasoning

Example Two houses are connected by a road. The first house is surrounded by its garden or is adjacent to its boundary while the second house is surrounded by its garden. What can we conclude about the relation between the second garden and the road?

garden 1 house 1 garden 2 house 2 road

Constraint-based Qualitative Reasoning – p.4/26

slide-5
SLIDE 5

8 Spatial Relations

A B A B A B A B A B A B disjoint(A,B) meet(A,B) equal(A,B) covers(A,B) coveredby(B,A) contains(A,B) inside(B,A)

  • verlap(A,B)

Constraint-based Qualitative Reasoning – p.5/26

slide-6
SLIDE 6

The composition table for RCC8

disjoint meet equal inside coveredby contains covers

  • verlap

disjoint RCC8 disjoint disjoint disjoint disjoint disjoint disjoint disjoint meet meet meet meet inside inside inside inside coveredby coveredby coveredby coveredby

  • verlap
  • verlap
  • verlap
  • verlap

meet disjoint disjoint meet inside meet disjoint disjoint disjoint meet meet coveredby inside meet meet contains equal

  • verlap

inside covers coveredby coveredby

  • verlap

covers

  • verlap
  • verlap

equal disjoint meet equal inside coveredby contains covers

  • verlap

inside disjoint disjoint inside inside inside RCC8 disjoint disjoint meet meet inside inside coveredby coveredby

  • verlap
  • verlap

coveredby disjoint disjoint coveredby inside inside disjoint disjoint disjoint meet coveredby meet meet meet contains equal

  • verlap

covers coveredby coveredby

  • verlap

covers

  • verlap
  • verlap

contains disjoint contains contains equal contains contains contains contains meet covers inside covers covers contains

  • verlap

coveredby

  • verlap
  • verlap

covers contains

  • verlap

covers

  • verlap

covers disjoint meet covers inside equal contains contains contains meet contains coveredby coveredby covers covers contains covers

  • verlap

covers

  • verlap

covers

  • verlap
  • verlap
  • verlap
  • verlap

disjoint disjoint

  • verlap

inside inside disjoint disjoint RCC8 meet meet coveredby coveredby meet meet contains contains

  • verlap
  • verlap

contains contains covers covers covers covers

  • verlap
  • verlap
  • verlap
  • verlap

Constraint-based Qualitative Reasoning – p.6/26

slide-7
SLIDE 7

Reasoning using RCC8

  • In total 193 entries.
  • They summarize all possibilities.

For example: contains(A,B), covers(B,C) implies contains(A,C).

  • Using this table we can conclude that

covers(garden2,road) or overlap(garden2,road).

Constraint-based Qualitative Reasoning – p.7/26

slide-8
SLIDE 8

Examples of Qualitative Reasoning

  • Spatial relations (RCC8) (Egenhofer ’91, Randell, Cui &

Cohn ’92).

  • Temporal relations (Allen ’83): 13 temporal relations

between intervals: before, overlaps, . . .

  • Cardinal directions (Frank ’92, Ligozat ’98):

North, NorthWest, . . .

  • Absolute directions (Skiadopoulos & Koubarakis ’01):

Example: in Hong Kong, when facing Hainan Beijing is to the right.

  • Relative size (Gerevini & Renz ’02):

<, =, >,

  • . . .

Constraint-based Qualitative Reasoning – p.8/26

slide-9
SLIDE 9

Constraint Programming

Constraint-based Qualitative Reasoning – p.9/26

slide-10
SLIDE 10

Constraint Programming

An approach to programming in which the programming process is limited to

  • generation of requirements

(constraints); it results in a constraint satisfaction problem (CSP),

  • solution of these requirements by
  • general methods dealing with search space reduction

(notably constraint propagation),

  • r
  • specialized methods for domain specific problems

(constraint solvers),

  • r
  • their combination.

Constraint-based Qualitative Reasoning – p.10/26

slide-11
SLIDE 11

Solving CSPs

  • Search

– Divide into subproblems. For example: split a domain of a variable.

  • Constraint Propagation

– Transform a CSP to a simpler but equivalent one. For example: (repeatedly) remove inconsistent values from a variable domain.

Constraint-based Qualitative Reasoning – p.11/26

slide-12
SLIDE 12

Mapping QR problems to CP

Constraint-based Qualitative Reasoning – p.12/26

slide-13
SLIDE 13

Example: the gardens puzzle

  • 5 spatial objects: H1 (house 1), G1 (garden 1), H2, G2, R.
  • 10 variables with domains, each associated with an ordered

pair of spatial objects:

  • Q[H1, G1] ∈ {inside,coveredby},
  • Q[H2, G2] ∈ {inside},
  • Q[H1, H2] ∈ {disjoint},
  • Q[H1, R] ∈ {meet},
  • Q[H2, R] ∈ {meet},
  • Q[G1, G2] ∈ {disjoint,meet},
  • Q[H1, G2] ∈ {disjoint,meet},
  • Q[G1, H2] ∈ {disjoint,meet},
  • Q[G1, R] ∈ RCC8,
  • Q[G2, R] ∈ RCC8.

Constraint-based Qualitative Reasoning – p.13/26

slide-14
SLIDE 14

Representation as a CSP, ctd

Constraints

  • S3: RCC8 composition table as a ternary relation.
  • For each ordered triple A,B,C of the objects a constraint

CA,B,C on the variables Q[A, B], Q[B, C], Q[A, C]: CA,B,C := S3 ∩ (DA,B × DB,C × DA,C).

where

Q[A, B] ∈ DA,B, Q[B, C] ∈ DB,C, Q[A, C] ∈ DA,C.

  • In total 10 constraints.

Constraint-based Qualitative Reasoning – p.14/26

slide-15
SLIDE 15

Evolving qualitative scenarios

Constraint-based Qualitative Reasoning – p.15/26

slide-16
SLIDE 16

Evolving Scenarios

Q[A, B]

now

Q[A, B]

at some later time instance

  • Simulation: sequence of evolving scenarios (CSPs)

discrete linear time; t = 0, 1, . . . time index:

Q[A, B, t] Temporal logic for specifying simulations φ

eventually,

φ

next time,

φ

from now on,

ψ U φ

until.

Q[France, EU] = inside Q[France, EU] = inside

Constraint-based Qualitative Reasoning – p.16/26

slide-17
SLIDE 17

Temporal specifications

disjoint meet

  • verlap

equal

covered-by

covers inside contains

Example

Conceptual neighbourhood

(22 pairs) Smooth transitions in time:

(Q[A, B] = meet → (Q[A, B] = meet ∨ Q[A, B] = disjoint ∨ Q[A, B] = overlap))

Constraint-based Qualitative Reasoning – p.17/26

slide-18
SLIDE 18

Formulas as Constraints

Assume simulation of finite length tmax, evaluate formula at time t

Constraint translation

principle: unravel iteratively to simple constraints

Q[A, B] ∈ Rels at t

is

Q[A, B, t] ∈ Rels φ at t

is

  • φ at t + 1

if t < tmax

?

if t = tmax

φ

is

φ ∨ φ

Result: Boolean constraints, arithmetic constraints and simple constraints on Q.

Constraint-based Qualitative Reasoning – p.18/26

slide-19
SLIDE 19

Planning problems

  • Two distinguished formulas:

– φfirst (initial situation), –

φgoal (final situation).

– φfirst and φgoal do not contain any temporal operators.

  • Typical state transition formulas:

ψA → ψB.

  • Viewed as a finite simulation:

Translate

φ at tmax

= “false”

Constraint-based Qualitative Reasoning – p.19/26

slide-20
SLIDE 20

Infinite simulations

Backward loops employed.

  • Q1

Q2 . . .

Qℓ . . .

Qk

translate

φ at tmax

= translate φ at ℓ – Loop paths as in bounded model checking (Biere et al. ’03) – All simulation stages maintained in one CSP

Constraint-based Qualitative Reasoning – p.20/26

slide-21
SLIDE 21

Case Study

Constraint-based Qualitative Reasoning – p.21/26

slide-22
SLIDE 22

Juggling

Qualitative formulation of open-ended juggling

Objects: O := Hands ∪ Balls, Hands := {left-hand, right-hand}, Balls := { balli | i ∈ [1..3] }. Relations: meet

(in hand)

disjoint

(in air)

Constraint-based Qualitative Reasoning – p.22/26

slide-23
SLIDE 23

Specifications

  • From some time on, at most one ball is not in the air:

(∀b ∈ Balls. ∀h ∈ Hands. Q[b, h] = meet → ∀b2 ∈ Balls. b = b2 → ∀h2 ∈ Hands. Q[b2, h2] = disjoint).

  • A ball thrown from one hand remains in the air until it lands in

the other hand:

(∀b ∈ Balls. ∀h1, h2 ∈ Hands. h1 = h2 ∧ Q[h1, b] = meet → Q[h1, b] = meet U (Q[h1, b] = disjoint ∧ Q[h2, b] = disjoint ∧ (Q[h1, b] = disjoint U Q[h2, b] = meet))).

Constraint-based Qualitative Reasoning – p.23/26

slide-24
SLIDE 24

Specifications, ctd

  • Initial formulation was incomplete:

– several balls could be thrown at the same time instance, – balls could “overtake” each other in the air.

  • Repaired using additional temporal formulas.
  • For the resulting specifications our program finds infinite

simulation of 8 steps, with a backward loop.

Constraint-based Qualitative Reasoning – p.24/26

slide-25
SLIDE 25

Juggling

Result:

State 1 State 2 State 3 State 4 State 5 State 6 State 7 State 8

1 2 3 1 2 3 3 1 2 2 3 1 2 1 3 1 3 2 3 2 1 2 1 3

(running time: 100 seconds)

Constraint-based Qualitative Reasoning – p.25/26

slide-26
SLIDE 26

Conclusions

  • Constraint programming helps to solve qualitative reasoning

problems.

  • It is beneficial to represent qualitative relations between
  • bjects as variables and not as constraints.
  • Such a representation facilitates reasoning about

combinations of various forms of qualitative reasoning (RCC8, cardinal directions, relative size, . . .).

  • Planning and simulation problems can be dealt with using

the same approach, based on bounded model checking.

  • Constraint propagation is crucial to make this approach

feasible.

Constraint-based Qualitative Reasoning – p.26/26