A Bottom Set Strategy for Tractable Feature Construction F il i p - - PowerPoint PPT Presentation

a bottom set strategy for tractable feature construction
SMART_READER_LITE
LIVE PREVIEW

A Bottom Set Strategy for Tractable Feature Construction F il i p - - PowerPoint PPT Presentation

laboratory Gerstner If you have a bottom clause, you have almost solved the problem. A Bottom Set Strategy for Tractable Feature Construction F il i p Zelezn y CVUT Prague , School of Electrical Engineering, Dept. of Cybernetics


slide-1
SLIDE 1

laboratory

Gerstner

“If you have a bottom clause, you have almost solved the problem.”

A Bottom Set Strategy for Tractable Feature Construction

Filip ˇ Zelezn´ y ˇ CVUT Prague, School of Electrical Engineering, Dept. of Cybernetics The Gerstner Laboratory for Intelligent Decision Making and Control

c Filip ˇ Zelezn´ y 2004 Czech Institute of Technology (ˇ CVUT) in Prague / School of Electrical Engineering / Dept. of Cybernetics / The Gerstner Lab 1/6

slide-2
SLIDE 2

laboratory

Gerstner

Introduction

:: We are concerned with constructing features, ie. expressions such as hasCar(C), hasLoad(C,L), isBig(L) :: The language of features F(n) is a set where elements comply to constraints: − Size. Each f ∈ F(n) has at most n atoms. − Typing & Moding. Specify predicates, arguments types and i/o modes. hasCar(-car), hasLoad(+car,-load), isBig(+load), isSmall(+load) − ETA Constraint. Each var has both an input and an output occurrence. (ETA = ‘Extended Transformation Approach’ [Lavraˇ

c & Flach, 2001])

c Filip ˇ Zelezn´ y 2004 Czech Institute of Technology (ˇ CVUT) in Prague / School of Electrical Engineering / Dept. of Cybernetics / The Gerstner Lab 2/6

slide-3
SLIDE 3

laboratory

Gerstner

The Bottom Set Theorem

:: 2 Problems of size n − Existence: Find an element of F(n). − Enumeration: Find all elements of F(n) (up to var renaming). :: A bottom set is an expression ⊥(n) complying to the typing constraint such that f ⊆ ⊥(n) (up to var renaming) whenever f ∈ F(n). :: Theorem. Given a ⊥(n) such that |⊥(n)| ≤ poly(n), one can solve efficiently the existence problem, ie. find in time poly(n) a feature f ∈ F(n) if it exists, or answer NO. :: Proof. Naive approach: must check ETA constraint for O(|⊥(n)|n) subsets :-(. Trick: reduce polynomially onto HORNSAT.

c Filip ˇ Zelezn´ y 2004 Czech Institute of Technology (ˇ CVUT) in Prague / School of Electrical Engineering / Dept. of Cybernetics / The Gerstner Lab 3/6

slide-4
SLIDE 4

laboratory

Gerstner

The Essence of the Proof in an Example

:: Bottom set ⊥(3) = hasCar(C), hasLoad(C, L), isBig(L), isSmall(L) propositional vars: P1 P2 P3 P4 :: HORNSAT assignment: Pi false iff i-th atom included in feature variable production consumption C P2 ← P1 P1 ← P2 L P3 ← P2 P2 ← P3 ∧ P4 P4 ← P2 non-emptiness ← P1 ∧ P2 ∧ P3 ∧ P4 :: P1 = P2 = P3 = false is a maximal (fewest false assignments) solution (found efficiently [Dowling & Gallier, 1984]), thus f = hasCar(C), hasLoad(C, L), isBig(L) is a minimal feature. Because |f| ≤ 3, we output f (otherwise would say NO).

c Filip ˇ Zelezn´ y 2004 Czech Institute of Technology (ˇ CVUT) in Prague / School of Electrical Engineering / Dept. of Cybernetics / The Gerstner Lab 4/6

slide-5
SLIDE 5

laboratory

Gerstner

Tractable Cases: Example

:: A connected depth-limited language FD(n) ⊂ F(n) branching factor ≤ n            hasCar(C) → hasRoof(C) → hasLoad(C, L1) → isBig(L1) → isSmall(L2) → hasLoad(C, L2) → isBig(L2) → isSmall(L2) ← depth ≤ D → :: If literals with multiple inputs, then branching factor O(nA) (A ∼ max arity). :: Therefore |⊥(n)| ≤ O(nA×D) = poly(n). :: Therefore tractable.

c Filip ˇ Zelezn´ y 2004 Czech Institute of Technology (ˇ CVUT) in Prague / School of Electrical Engineering / Dept. of Cybernetics / The Gerstner Lab 5/6

slide-6
SLIDE 6

laboratory

Gerstner

Intractable Cases: Example (W-I-P)

:: A “no variable reuse” language FR(n) ⊂ F(n). Represent typing/moding by a matrix M. Find a feature f ∈ FR(n) a represent it by a vector

  • f. For example

M = hasCar hasLoad hasRoof isBig isSmall −1 +1 +1 car −1 +1 +1 load f =hasCar(C1), hasLoad(C1,L), isBig(L), hasCar(C2), hasRoof(C2)

  • f =

[ 2, 1, 1, 1, 0 ]−1 hasCar hasLoad hasRoof isBig isSmall

  • f solves (due to no-var-reuse assumption) the matrix equation

M × f = 0,

  • Ie. solves an instance of the NP-complete integer programming problem.

Remains to show reduction from an arbitrary integer programming instance.

c Filip ˇ Zelezn´ y 2004 Czech Institute of Technology (ˇ CVUT) in Prague / School of Electrical Engineering / Dept. of Cybernetics / The Gerstner Lab 6/6

slide-7
SLIDE 7

laboratory

Gerstner

“If you have a bottom clause, you have almost solved the problem.”

* THE END *

c Filip ˇ Zelezn´ y 2004 Czech Institute of Technology (ˇ CVUT) in Prague / School of Electrical Engineering / Dept. of Cybernetics / The Gerstner Lab 7/6