constraint acquisition via partial queries
play

Constraint Acquisition via Partial Queries Chris'an Bessiere - PowerPoint PPT Presentation

1 Constraint Acquisition via Partial Queries Chris'an Bessiere 1 Remi Cole1a 1 Emmanuel Hebrard 2 George


  1. 1 ¡ ì ¡ Constraint ¡Acquisition ¡via ¡Partial ¡Queries ¡ Chris'an ¡Bessiere 1 ¡ ¡ ¡ ¡ ¡ ¡ ¡Remi ¡Cole1a 1 ¡ ¡ ¡ ¡ ¡ ¡Emmanuel ¡Hebrard 2 ¡ ¡ ¡ ¡ ¡ ¡ ¡George ¡Katsirelos 3 ¡ Nadjib ¡Lazaar 1 ¡ ¡ ¡ ¡ ¡ ¡ ¡Nina ¡Narodytska 4 ¡ ¡ ¡ ¡ ¡ ¡ ¡Claude-­‑Guy ¡Quimper 5 ¡ ¡ ¡ ¡ ¡ ¡Toby ¡Walsh 4 ¡ ¡ ¡ 1 CNRS, ¡U. ¡Montpellier, ¡France ¡ ¡ 2 LAAS-­‑CNRS, ¡Toulouse, ¡France ¡ ¡ 3 INRA ¡Toulouse, ¡France ¡ 4 NICTA, ¡UNSW, ¡Sydney, ¡Australia ¡ ¡ 5 U. ¡Laval, ¡Quebec ¡City, ¡Canada ¡ ¡ ¡ ¡

  2. 2 ¡ Motivations ¡ CSP ¡ solu'on ¡

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

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

  5. 2 ¡ Motivations ¡ Constraint ¡ ¡ Learning ¡process ¡ Acquisi'on ¡ ¡ solu'ons ¡ Problem ¡ non-­‑solu'ons ¡ CSP ¡ solu'on ¡ Ques'on: ¡ ¡How ¡does ¡the ¡user ¡write ¡down ¡the ¡constraints ¡of ¡a ¡problem? ¡ • Limita'ons: ¡modelling ¡constraint ¡networks ¡require ¡a ¡fair ¡exper'se ¡ • Need: ¡ ¡Simple ¡way ¡to ¡build ¡constraint ¡model ¡ è ¡Modeller-­‑assistant ¡ • How: ¡In ¡a ¡Machine ¡Learning ¡way ¡(passive/ac've, ¡offline/online, ¡by ¡reinforcement…) ¡ ¡ •

  6. 2 ¡ Motivations ¡ Constraint ¡ ¡ Learning ¡process ¡ Acquisi'on ¡ ¡ solu'ons ¡ Problem ¡ non-­‑solu'ons ¡ CSP ¡ Any ¡problem ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Solver!! ¡ solu'on ¡ Ques'on: ¡ ¡How ¡does ¡the ¡user ¡write ¡down ¡the ¡constraints ¡of ¡a ¡problem? ¡ • Limita'ons: ¡modelling ¡constraint ¡networks ¡require ¡a ¡fair ¡exper'se ¡ • Need: ¡ ¡Simple ¡way ¡to ¡build ¡constraint ¡model ¡ è ¡Modeller-­‑assistant ¡ • How: ¡In ¡a ¡Machine ¡Learning ¡way ¡(passive/ac've, ¡offline/online, ¡by ¡reinforcement…) ¡ ¡ •

  7. 3 ¡ Constraint ¡Acquisition ¡Problem E - ¡ ∅ ì Inputs: • ( X, D ) : Vocabulary • B : Bias (possible constraints) C T ¡ C L ¡ • C T : Target network • ( E + , E − ) : positives and negatives ì Output: E + ¡ B • C L : Learnt network s.t., – C L ⊂ B : C L ≡ C T

  8. 4 ¡ Example ¡ • Γ = { <, = } X2 ¡ < ¡ • B = { x i < x j , x i = x j , ∀ i, j } • C T = { x 1 = x 3 , x 1 < x 2 } = ¡ X1 ¡ X3 ¡ • C L = { x 1 = x 3 , x 3 < x 2 } X2 ¡ < ¡ = ¡ X1 ¡ X3 ¡

  9. 5 ¡ State ¡of ¡the ¡art ¡ ì CONACQ ¡ SAT-­‑Based ¡constraint ¡acquisi'on ¡ ì Bidirec'onal ¡search ¡ ì E -­‑ ¡ Conacq1.0 ¡(passive ¡learning) ¡ [Bessiere ¡et ¡al. ¡ECML05] ¡ ì Conacq2.0 ¡(ac've ¡learning) ¡ [Bessiere ¡et ¡al. ¡IJCAI07] ¡ ì C L ¡ ModelSeeker ¡ [Beldiceanu ¡and ¡Simonis, ¡CP12] ¡ E + ¡ A ¡passive ¡learning ¡ Based ¡on ¡global ¡constraint ¡catalog ¡ Bu1om-­‑up ¡search ¡

  10. 5 ¡ State ¡of ¡the ¡art ¡ ì CONACQ ¡ SAT-­‑Based ¡constraint ¡acquisi'on ¡ ì Bidirec'onal ¡search ¡ ì E -­‑ ¡ Conacq1.0 ¡(passive ¡learning) ¡ [Bessiere ¡et ¡al. ¡ECML05] ¡ ì Conacq2.0 ¡(ac've ¡learning) ¡ [Bessiere ¡et ¡al. ¡IJCAI07] ¡ ì ^ K = ( ¬ x 1 ∧ ¬ x 2 ∧ ¬ x 3 ) ( x 4 ∨ x 5 ∨ x 6 ∨ x 7 ) . . . C L ¡ e + ¡ e -­‑ ¡ ModelSeeker ¡ [Beldiceanu ¡and ¡Simonis, ¡CP12] ¡ E + ¡ A ¡passive ¡learning ¡ Based ¡on ¡global ¡constraint ¡catalog ¡ Bu1om-­‑up ¡search ¡

  11. 5 ¡ State ¡of ¡the ¡art ¡ ì CONACQ ¡ SAT-­‑Based ¡constraint ¡acquisi'on ¡ ì Bidirec'onal ¡search ¡ ì Conacq1.0 ¡(passive ¡learning) ¡ [Bessiere ¡et ¡al. ¡ECML05] ¡ ì Conacq2.0 ¡(ac've ¡learning) ¡ [Bessiere ¡et ¡al. ¡IJCAI07] ¡ ì ^ K = ( ¬ x 1 ∧ ¬ x 2 ∧ ¬ x 3 ) ( x 4 ∨ x 5 ∨ x 6 ∨ x 7 ) . . . C L ¡ e + ¡ e -­‑ ¡ ì ModelSeeker ¡ [Beldiceanu ¡and ¡Simonis, ¡CP12] ¡ E + ¡ A ¡passive ¡learning ¡ ì Based ¡on ¡global ¡constraint ¡catalog ¡(more ¡than ¡400) ¡ ì Bu1om-­‑up ¡search ¡ ì

  12. 6 ¡ QUACQ: ¡Quick ¡Acquisition ¡ ì QUACQ ¡ ¡ [Bessiere ¡et ¡al. ¡IJCAI13] ¡ Ac've ¡learning ¡approach ¡ ì Bidirec'onal ¡search ¡ ì E -­‑ ¡ ì But ¡it ¡can ¡be ¡top-­‑down ¡search ¡only ¡if ¡no ¡posi've ¡ example ¡ Based ¡on ¡par'al ¡queries ¡to ¡elucidate ¡the ¡scope ¡ ì C L ¡ of ¡the ¡constraint ¡to ¡learn ¡ ¡ E + ¡

  13. 7 ¡ Partial Queries ask(2, ¡8, ¡4, ¡2, ¡6, ¡5, ¡1, ¡6) ¡

  14. 7 ¡ Partial Queries ask(2, ¡8, ¡4, ¡2, ¡6, ¡5, ¡1, ¡6) ¡= ¡No ¡

  15. 7 ¡ Partial Queries ask(2, ¡8, ¡4, ¡2, ¡-­‑, ¡-­‑, ¡-­‑, ¡-­‑) ¡= ¡No ¡

  16. 7 ¡ Partial Queries ask(2, ¡8, ¡-­‑, ¡-­‑, ¡-­‑, ¡-­‑, ¡-­‑, ¡-­‑) ¡= ¡Yes ¡

  17. 7 ¡ Partial Queries ask(2, ¡8, ¡4, ¡-­‑, ¡-­‑, ¡-­‑, ¡-­‑, ¡-­‑) ¡= ¡No ¡

  18. 8 ¡ QUACQ: ¡Quick ¡Acquisition ¡ QUACQ ¡ yes ¡ reduce(B) ¡ ask(e) ¡ Gen-­‑query ¡ INPUT ¡

  19. 8 ¡ QUACQ: ¡Quick ¡Acquisition ¡ QUACQ ¡ yes ¡ reduce(B) ¡ ask(e) ¡ Gen-­‑query ¡ INPUT ¡ No ¡ FindScope ¡ par'al-­‑ask(e) ¡

  20. 8 ¡ QUACQ: ¡Quick ¡Acquisition ¡ QUACQ ¡ yes ¡ reduce(B) ¡ ask(e) ¡ Gen-­‑query ¡ INPUT ¡ No ¡ FindC ¡ FindScope ¡ scope ¡ par'al-­‑ask(e) ¡

  21. 8 ¡ QUACQ: ¡Quick ¡Acquisition ¡ QUACQ ¡ yes ¡ reduce(B) ¡ ask(e) ¡ Gen-­‑query ¡ INPUT ¡ Update(C L ) ¡ C ¡ No ¡ FindC ¡ FindScope ¡ scope ¡ par'al-­‑ask(e) ¡

  22. 8 ¡ QUACQ: ¡Quick ¡Acquisition ¡ QUACQ ¡ yes ¡ reduce(B) ¡ C L ¡ ask(e) ¡ Gen-­‑query ¡ B=  ¡ INPUT ¡ Update(C L ) ¡ C ¡ No ¡ FindC ¡ FindScope ¡ scope ¡ par'al-­‑ask(e) ¡

  23. 12 ¡ Complexity ¡of ¡QUACQ ¡ E - ¡ ì The number of queries required to find the target concept is in: O ( | C T | · (log | X | + | Γ | )) ì The number of queries required to converge is in: O ( | B | ) E + ¡

  24. 13 ¡ Some ¡Results ¡ ì Random ¡ Under-­‑constrained ¡instance ¡(X,D,C)=(50, ¡10, ¡12) ¡ ì Phase ¡transi'on ¡instance ¡(X,D,C)=(50, ¡10, ¡122) ¡ ¡ ¡ ì |B|= ¡7350 ¡built ¡on ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ì Γ = { = , 6 = , <, � , >,  }

  25. 13 ¡ Some ¡Results ¡ ì Random ¡ Under-­‑constrained ¡instance ¡(X,D,C)=(50, ¡10, ¡12) ¡ ì Phase ¡transi'on ¡instance ¡(X,D,C)=(50, ¡10, ¡122) ¡ ¡ ¡ ì |B|= ¡7350 ¡built ¡on ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ì Γ = { = , 6 = , <, � , >,  } | C L | # q # q c q ¯ time 12 196 34 24.04 0.23 rand 50 10 12 86 1074 94 13.90 0.14 rand 50 10 122 ¡Intel ¡Xeon ¡E5462 ¡ ¡@ ¡2.80GHz ¡with ¡16 ¡Gb ¡of ¡RAM. ¡

  26. 13 ¡ Some ¡Results ¡ ì Zebra ¡puzzle ¡ QUACQ ¡behavior ¡on ¡different ¡bias ¡sizes ¡ ì ¡Intel ¡Xeon ¡E5462 ¡ ¡@ ¡2.80GHz ¡with ¡16 ¡Gb ¡of ¡RAM. ¡

Recommend


More recommend