Boosting Constraint Acquisition via Generalization Queries - - PowerPoint PPT Presentation

boosting constraint acquisition via
SMART_READER_LITE
LIVE PREVIEW

Boosting Constraint Acquisition via Generalization Queries - - PowerPoint PPT Presentation

1/18 Boosting Constraint Acquisition via Generalization Queries Chris'an Bessiere 1 Remi Cole1a 1 Abderrazak Daoudi 12 Nadjib Lazaar 1 Younes Mechqrane 12 El


slide-1
SLIDE 1

ì ¡ Boosting ¡Constraint ¡Acquisition ¡via ¡ Generalization ¡Queries ¡

Chris'an ¡Bessiere1 ¡ ¡Remi ¡Cole1a1 ¡ ¡Abderrazak ¡Daoudi12 ¡ Nadjib ¡Lazaar1 ¡ ¡Younes ¡Mechqrane12 ¡El ¡Houssine ¡Bouyakhf2 ¡ ¡ ¡ ¡

1University ¡of ¡Montpellier, ¡France ¡ 2 ¡LIMIARF/FSR, ¡University ¡Mohammed ¡V ¡Agdal, ¡Rabat, ¡Morocco ¡

¡

1/18 ¡

UM5-Agdal

slide-2
SLIDE 2

Context ¡

2/18 ¡

CSP ¡ solu'on ¡

slide-3
SLIDE 3

Context ¡

3/18 ¡

CSP ¡ solu'on ¡

  • Ques'on: ¡ ¡How ¡does ¡the ¡user ¡write ¡down ¡the ¡constraints ¡of ¡a ¡problem? ¡
  • Limita'ons: ¡modelling ¡constraint ¡networks ¡requires ¡a ¡fair ¡exper'se ¡
  • Need: ¡ ¡Simple ¡way ¡to ¡build ¡constraint ¡models ¡è ¡Modeller-­‑assistant ¡
  • How: ¡In ¡a ¡Machine ¡Learning ¡way ¡(passive/ac've, ¡offline/online, ¡by ¡reinforcement…) ¡ ¡
slide-4
SLIDE 4

Context ¡

4/18 ¡

CSP ¡ solu'on ¡

  • Ques'on: ¡ ¡How ¡does ¡the ¡user ¡write ¡down ¡the ¡constraints ¡of ¡a ¡problem? ¡
  • Limita'ons: ¡modelling ¡constraint ¡networks ¡requires ¡a ¡fair ¡exper'se ¡
  • Need: ¡ ¡Simple ¡way ¡to ¡build ¡constraint ¡models ¡è ¡Modeller-­‑assistant ¡
  • How: ¡In ¡a ¡Machine ¡Learning ¡way ¡(passive/ac've, ¡offline/online, ¡by ¡reinforcement…) ¡ ¡

Learning ¡process ¡

solu'ons ¡ non-­‑solu'ons ¡

slide-5
SLIDE 5

Context ¡

4/18 ¡

CSP ¡ solu'on ¡

  • Ques'on: ¡ ¡How ¡does ¡the ¡user ¡write ¡down ¡the ¡constraints ¡of ¡a ¡problem? ¡
  • Limita'ons: ¡modelling ¡constraint ¡networks ¡requires ¡a ¡fair ¡exper'se ¡
  • Need: ¡ ¡Simple ¡way ¡to ¡build ¡constraint ¡models ¡è ¡Modeller-­‑assistant ¡
  • How: ¡In ¡a ¡Machine ¡Learning ¡way ¡(passive/ac've, ¡offline/online, ¡by ¡reinforcement…) ¡ ¡

Learning ¡process ¡

solu'ons ¡ non-­‑solu'ons ¡

Constraint ¡ ¡ Acquisi'on ¡ ¡ Problem ¡

slide-6
SLIDE 6

B

Constraint ¡Acquisition ¡Problem

ì Inputs: ì Output:

E - ¡ E+ ¡

CT ¡ CL ¡

5/18 ¡

  • (X, D) : Vocabulary
  • B : Basis (version space/possible constraints)
  • CT : Target Network
  • (E+, E−) : positives and negatives
  • CL : Learned network such that:

CL ⊂ B : CL ≡ CT

slide-7
SLIDE 7

Constraint ¡Acquisition ¡Systems ¡

ì CONACQ ¡

ì

Conacq1.0 ¡(passive ¡learning) ¡[Bessiere ¡et ¡al. ¡ECML05] ¡

ì

Conacq2.0 ¡(ac've ¡learning) ¡[Bessiere ¡et ¡al. ¡IJCAI07] ¡

ModelSeeker ¡[Beldicean ¡

u ¡and ¡Simonis, ¡CP12] ¡

A ¡passive ¡learnin ¡ ¡ Based ¡on ¡global ¡constraint ¡catalog ¡(more ¡than ¡400) ¡ Bu1om-­‑up ¡search ¡

6/18 ¡

E+ ¡ E-­‑ ¡

CL ¡

slide-8
SLIDE 8

Constraint ¡Acquisition ¡Systems ¡

ì CONACQ ¡

ì

Conacq1.0 ¡(passive ¡learning) ¡[Bessiere ¡et ¡al. ¡ECML05] ¡

ì

Conacq2.0 ¡(ac've ¡learning) ¡[Bessiere ¡et ¡al. ¡IJCAI07] ¡

ì ModelSeeker ¡[Beldiceanu ¡and ¡Simonis, ¡CP12] ¡

ì

A ¡passive ¡learning ¡

ì

Based ¡on ¡global ¡constraint ¡catalog ¡(more ¡than ¡400) ¡

ì

Bu1om-­‑up ¡search ¡

QUACQ ¡ ¡[Bessiere ¡et ¡al. ¡IJCAI13] ¡

Ac've ¡learning ¡approach ¡ Based ¡on ¡par'al ¡queries ¡to ¡elucidate ¡the ¡scope ¡of ¡the ¡constraint ¡to ¡learn ¡

6/18 ¡

E+ ¡

CL ¡

slide-9
SLIDE 9

Constraint ¡Acquisition ¡Systems ¡

ì CONACQ ¡

ì

Conacq1.0 ¡(passive ¡learning) ¡[Bessiere ¡et ¡al. ¡ECML05] ¡

ì

Conacq2.0 ¡(ac've ¡learning) ¡[Bessiere ¡et ¡al. ¡IJCAI07] ¡

ì ModelSeeker ¡[Beldiceanu ¡and ¡Simonis, ¡CP12] ¡

ì

A ¡passive ¡learning ¡

ì

Based ¡on ¡global ¡constraint ¡catalog ¡(more ¡than ¡400) ¡

ì

Bu1om-­‑up ¡search ¡

ì QUACQ ¡ ¡[Bessiere ¡et ¡al. ¡IJCAI13] ¡

ì

Ac've ¡learning ¡approach ¡

ì

Based ¡on ¡par'al ¡queries ¡to ¡elucidate ¡the ¡scope ¡

  • f ¡the ¡constraint ¡to ¡learn ¡

6/18 ¡

E+ ¡ E-­‑ ¡

CL ¡

slide-10
SLIDE 10

Motivations ¡

¡

7/18 ¡

E+ ¡ E-­‑ ¡

CL ¡ Limita'on: ¡

  • Hard ¡to ¡put ¡in ¡prac'ce: ¡ ¡
  • ModelSeeker: ¡cannot ¡learn ¡on ¡unstructured ¡problems ¡
  • CONACQ ¡and ¡QUACQ: ¡more ¡than ¡8000 ¡queries ¡to ¡

learn ¡the ¡Sudoku ¡model ¡ Need: ¡

  • Reduce ¡the ¡dialogue ¡with ¡the ¡user ¡to ¡make ¡constraint ¡acquisi'on ¡more ¡

efficient ¡in ¡prac'ce ¡ How: ¡

  • Elici'ng ¡more ¡informa'on ¡by ¡asking ¡complex ¡queries ¡to ¡the ¡user ¡ ¡
slide-11
SLIDE 11

Variables ¡and ¡Types ¡

ì A ¡type ¡is ¡a ¡subset ¡of ¡variables ¡defined ¡by ¡the ¡user ¡as ¡having ¡a ¡

common ¡property ¡

ì Example ¡(School ¡Timetabling ¡Problem) ¡ ¡

¡

8/18 ¡

Teachers ¡ Students ¡ Rooms ¡ Courses ¡

Can ¡C1 ¡be ¡generalized ¡to ¡all ¡Teachers, ¡Rooms ¡and ¡Courses? ¡ ¡

T7 ¡ C1 ¡ constraint ¡ R3 ¡ O2 ¡

slide-12
SLIDE 12

Generalization ¡Query ¡

ì Let ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡a ¡learned ¡constraint ¡and ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡are ¡types ¡of ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡: ¡

ì Generaliza'on ¡Query: ¡t ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡

ì The ¡user ¡says ¡yes ¡iff ¡the ¡constraint ¡c ¡holds ¡on ¡all ¡possible ¡scope ¡ ì Proper'es ¡ ¡

9/18 ¡

c(x, y) X, Y x, y AskGen((X, Y ), c) (xi, yi) ∈ (X, Y )

X ¡ Y ¡ X” ¡ Y” ¡ X’ ¡ Y’ ¡ types ¡ super-­‑types ¡ Sub-­‑types ¡

slide-13
SLIDE 13

Generalization ¡Query ¡

ì Let ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡a ¡learned ¡constraint ¡and ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡are ¡types ¡of ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡: ¡

ì Generaliza'on ¡Query: ¡t ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡

ì The ¡user ¡says ¡yes ¡iff ¡the ¡constraint ¡c ¡holds ¡on ¡all ¡possible ¡scope ¡ ì Proper'es ¡ ¡

9/18 ¡

c(x, y) X, Y x, y AskGen((X, Y ), c) (xi, yi) ∈ (X, Y )

X ¡ Y ¡ X” ¡ Y” ¡ X’ ¡ Y’ ¡ AskGen( ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡, ¡c) ¡= ¡YES ¡ AskGen( ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡, ¡c) ¡= ¡YES ¡

slide-14
SLIDE 14

Generalization ¡Query ¡

ì Let ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡a ¡learned ¡constraint ¡and ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡are ¡types ¡of ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡: ¡

ì Generaliza'on ¡Query: ¡t ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡

ì The ¡user ¡says ¡yes ¡iff ¡the ¡constraint ¡c ¡holds ¡on ¡all ¡possible ¡scope ¡ ì Proper'es ¡ ¡

9/18 ¡

c(x, y) X, Y x, y AskGen((X, Y ), c) (xi, yi) ∈ (X, Y )

X ¡ Y ¡ X” ¡ Y” ¡ X’ ¡ Y’ ¡ AskGen( ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡, ¡c) ¡= ¡NO ¡ AskGen( ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡, ¡c) ¡= ¡NO ¡

slide-15
SLIDE 15

GENACQ ¡

ì Inputs ¡

ì

A ¡learned ¡constraint ¡ ¡

ì

Combina'on ¡of ¡possible ¡types ¡(i.e., ¡table) ¡ ì

Output ¡

ì

Set ¡of ¡constraints ¡ ¡

10/18 ¡

X ¡

color ¡ drink ¡ cigaret ¡ pet ¡ na'onality ¡

X1 ¡ X1 ¡ X3 ¡ X1 ¡ X4 ¡ X1 ¡ X2 ¡ variables ¡ types ¡ X5 ¡ Zebra ¡Problem ¡

slide-16
SLIDE 16

GENACQ ¡

ì Inputs ¡

ì

A ¡learned ¡constraint ¡ ¡

ì

Combina'on ¡of ¡possible ¡types ¡(i.e., ¡table) ¡ ì

Output ¡

ì

Set ¡of ¡constraints ¡ ¡

10/18 ¡

X ¡

color ¡ drink ¡ cigaret ¡ pet ¡ na'onality ¡

X1 ¡ X1 ¡ X3 ¡ X1 ¡ X4 ¡ X1 ¡ X5 ¡ Zebra ¡Problem ¡ X2 ¡

≠ ¡

  • Learned ¡constraint ¡: ¡x2 ¡≠ ¡x5 ¡ ¡
  • Table: ¡ ¡

x2 ¡ x5 ¡ x2 ¡ color ¡ x2 ¡ X ¡ color ¡ x5 ¡ color ¡ color ¡ color ¡ X ¡ X ¡ x5 ¡ X ¡ color ¡ X ¡ X ¡ askGen ¡ INPUTS ¡ #q ¡= ¡4 ¡

slide-17
SLIDE 17

GENACQ ¡

ì Inputs ¡

ì

A ¡learned ¡constraint ¡ ¡

ì

Combina'on ¡of ¡possible ¡types ¡(i.e., ¡table) ¡ ì

Output ¡

ì

Set ¡of ¡constraints ¡ ¡

10/18 ¡

X ¡

color ¡ drink ¡ cigaret ¡ pet ¡ na'onality ¡

X1 ¡ X1 ¡ X3 ¡ X1 ¡ X4 ¡ X1 ¡ X5 ¡ Zebra ¡Problem ¡ X2 ¡

≠ ¡

  • Learned ¡constraint ¡: ¡x2 ¡≠ ¡x5 ¡ ¡
  • Table: ¡ ¡

x2 ¡ x5 ¡ x2 ¡ color ¡ x2 ¡ X ¡ color ¡ x5 ¡ color ¡ color ¡ color ¡ X ¡ X ¡ x5 ¡ X ¡ color ¡ X ¡ X ¡ INPUTS ¡ #q ¡= ¡5 ¡

slide-18
SLIDE 18

GENACQ ¡

ì Inputs ¡

ì

A ¡learned ¡constraint ¡ ¡

ì

Combina'on ¡of ¡possible ¡types ¡(i.e., ¡table) ¡ ì

Output ¡

ì

Set ¡of ¡constraints ¡ ¡

11/18 ¡

X ¡

color ¡ drink ¡ cigaret ¡ pet ¡ na'onality ¡

X1 ¡ X1 ¡ X3 ¡ X1 ¡ X4 ¡ X1 ¡ X5 ¡ Zebra ¡Problem ¡ X2 ¡

≠ ¡

  • Learned ¡constraint ¡: ¡x2 ¡≠ ¡x5 ¡ ¡
  • Table ¡
  • 9 ¡constraints ¡: ¡

INPUTS ¡ OUTPUT ¡

≠ ¡

x1 ¡ x3 ¡ x5 ¡ x2 ¡ x4 ¡

≠ ¡ ≠ ¡ ≠ ¡ ≠ ¡ ≠ ¡ ≠ ¡ ≠ ¡ ≠ ¡ ≠ ¡

#q ¡= ¡5 ¡

slide-19
SLIDE 19

Results ¡

ì

We ¡implemented ¡GENACQ ¡and ¡plugged ¡it ¡in ¡the ¡constraint ¡acquisi'on ¡system ¡ QUACQ ¡for ¡G-­‑QUACQ ¡version ¡

ì

We ¡Compared ¡QUACQ ¡to ¡G-­‑QUACQ ¡on: ¡

ì

Zebra ¡problem ¡(5 ¡types ¡of ¡5 ¡variables) ¡ ì ¡Sudoku ¡(9 ¡rows, ¡9 ¡columns ¡and ¡9 ¡squares) ¡ ì La'n ¡Square ¡(5 ¡rows ¡and ¡5 ¡columns) ¡ ì Radio ¡link ¡Frequency ¡Assignment ¡Problem ¡(5 ¡sta'ons ¡and ¡5 ¡terminals) ¡ ¡ ¡ ì Purdey’s ¡General ¡Store ¡Problem ¡(4 ¡families, ¡4 ¡items, ¡4 ¡payments) ¡ 12/18 ¡

slide-20
SLIDE 20

Results ¡

13/18 ¡

QUACQ

G-QUACQ

#Ask #Ask #AskGen

Zebra

638 257 67

Sudoku

8645 260 166

Latin square

1129 117 60

RFLAP

1653 151 37

Purdey

173 82 31

50% ¡ 95% ¡ 84% ¡ 88% ¡ 34% ¡

slide-21
SLIDE 21

Strategies ¡

ì Query ¡Selec'on ¡Heuris'cs ¡

ì Max ¡constraints ¡ ì Max ¡variables ¡ ì Min ¡constraints ¡ ì Min ¡variables ¡ ì Random ¡

ì Cutoffs ¡ ¡

ì exit ¡GENACQ ¡before ¡having ¡proved ¡

the ¡maximality ¡ ¡

ì Cutoff ¡on ¡the ¡number ¡of ¡consecu've ¡

nega've ¡answers ¡ ¡

14/18 ¡

#VAR ¡ #CST ¡

x2 ¡ x5 ¡ 5 ¡ 4 ¡ x2 ¡ color ¡ 25 ¡ 24 ¡ x2 ¡ X ¡ 5 ¡ 4 ¡ color ¡ x5 ¡ 5 ¡ 10 ¡ color ¡ color ¡ 25 ¡ 110 ¡ color ¡ X ¡ 25 ¡ 24 ¡ X ¡ x5 ¡ 25 ¡ 110 ¡ X ¡ color ¡ 25 ¡ 300 ¡ X ¡ X ¡ 6 ¡queries ¡ 5 ¡queries ¡ 5 ¡queries ¡ 5 ¡queries ¡

slide-22
SLIDE 22

Results(1/3) ¡

ì

G-­‑QUACQ ¡with ¡heuris'cs ¡and ¡cutoff ¡strategy ¡on ¡Sudoku ¡

15/18 ¡

cutoff #Ask #AskGen #yes #no

random

+∞ 260 166 42 124

min VAR

90 21 69

min CST

132 63 69

max VAR

263 63 200

max CST

247 21 226

min VAR

3 260 75 21 54 2 57 21 36 1 39 21 18

min CST

3 626 238 112 126 2 679 231 132 99 1 837 213 153 60

slide-23
SLIDE 23

Results(2/3) ¡

ì

G-­‑QUACQ ¡with ¡random, ¡min_VAR, ¡and ¡cutoff=1 ¡on ¡Zebra, ¡La'n ¡square, ¡RLFAP, ¡ and ¡Purdey ¡

16/18 ¡

#Ask #AskGen #yes #no Zebra

Random

257 67 10 57

min VAR

48 5 43

min VAR +cutoff=1

23 5 18 Latin square

Random

117 60 16 44

min VAR

34 10 24

min VAR +cutoff=1

20 10 10

slide-24
SLIDE 24

Results(3/3) ¡

ì

G-­‑QUACQ ¡with ¡random, ¡min_VAR, ¡and ¡cutoff=1 ¡on ¡Zebra, ¡La'n ¡square, ¡RLFAP, ¡ and ¡Purdey ¡

17/18 ¡

#Ask #AskGen #yes #no RLFAP

Random

151 37 16 21

min VAR

41 14 27

min VAR +cutoff=1

22 14 8 Purdey

Random

82 31 5 26

min VAR

24 3 21

min VAR +cutoff=1

12 3 9

slide-25
SLIDE 25

Conclusions ¡

ì Generaliza'on ¡query ¡based ¡on ¡types ¡of ¡variables ¡ ì GENACQ ¡algorithm ¡ ì Several ¡heuris'cs ¡and ¡strategies ¡to ¡select ¡the ¡good ¡candidate ¡

generaliza'on ¡query ¡

ì Can ¡be ¡plugged ¡in ¡any ¡ac've ¡constraint ¡acquisi'on ¡system ¡ ì Results ¡by ¡plugging ¡GENACQ ¡in ¡the ¡QUACQ ¡acquisi'on ¡System ¡

18/18 ¡