1 / 13

Foundations of Constraint Processing CSCE421/821, Fall 2014 cse.unl/~choueiry/F14-421-821/

Lookahead Schemas. Foundations of Constraint Processing CSCE421/821, Fall 2014 www.cse.unl.edu/~choueiry/F14-421-821/ All questions to Piazza Berthe Y. Choueiry (Shu-we-ri) Avery Hall, Room 360 Tel: +1(402)472-5444. Outline: Lookahead Schemas. Forward checking (FC)

christianaa
Download Presentation

Foundations of Constraint Processing CSCE421/821, Fall 2014 cse.unl/~choueiry/F14-421-821/

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lookahead Schemas Foundations of Constraint Processing CSCE421/821, Fall 2014 www.cse.unl.edu/~choueiry/F14-421-821/ All questions to Piazza Berthe Y. Choueiry (Shu-we-ri) Avery Hall, Room 360 Tel: +1(402)472-5444

  2. Outline: Lookahead Schemas • Forward checking (FC) • Directional Arc Consistency (DAC) • Maintaining Arc Consistency (a.k.a. full arc-consistency)

  3. Looking ahead • Rationale: • As decisions are made (conditioning), • Revise the domain of future variables to propagate the effects of decisions • i.e., eliminate inconsistent choices in future sub-problem • Domain annihilation of a future variable avoids expansion of useless portions of the tree • Techniques • Partial: forward-checking (FC), directional arc-consistency (DAC) • Full: Maintaining arc-consistency (MAC), Real Full Lookahead (RFL) • Use: Revise(Vf, Vc), Vf future variable, Vc current variable

  4. Revise the domain of Vi • Revising the domain of Vi given a constraint CVi,Vj on Vi (i.e., ViScope(C)) • General notation: Revise(Vi,CVi,Vj) • In a binary CSP: Revise(Vi,CVi,Vj)=Revise(Vi, Vj)

  5. Revise(Vi, Vj)NOTE: only DVi may be updated Revise(Vi, Vj) • revised  nil •  x  DVi • found  nil •  y  DVj • If Check((Vi,x),(Vj,y)) Then Begin • found  t • Break • End • If found=nil Then Begin • revised  t • DVi  DVi \ {x} • End • Return (revised)

  6. Revise(Vi, Vj) Revise(Vi, Vj) • revised  nil •  x  Dvi •  y  DVj • If Check((Vi,x),(Vj,y)) Then Break() • revised  t • DVi  DVi \ {x} • Return (revised) Simpler, equivalent code but not as obvious as the previous one

  7. Domain filtering in lookahead • Vc current variable • Vf future variable • {Vf} all future variables • Revise(Vf, Vc) • FC(Vc): •  Vf {Vf} connected to Vc • Revise(Vf,Vc) • If DVf ={} then return(nil)

  8. Directional Arc Consistency • Choose an ordering d, stick to it • After instantiating a variable at level i, do the following • For k from i to (n-1) in the ordering d Do • If FC(Vk)=nil then Return(nil)

  9. Real Full Lookahead (RFL) • First, FC(Vc), • If it does not fail, then, form a queue with all constraints (Vi,Vj) and (Vj,Vi) between future variables, and run AC AC-1 • Q  {(Vi,Vj),(Vj,Vi), …, (Vk,Vm), (Vm,VK)} • Change  true • While Change Do • Change  false • For all (Va,Vb) in Q Do • If Revise(Va,Vb) • Then If Dom(Va) = • Then Return (nil) • Else Change  true

  10. Look-ahead techniques:FC, DAC, RFL FC(Vc) • FC: • DAC: • assumes a fixed variable ordering d • RFL: • does more pruning (search may visit fewer nodes) at the cost of more consistency checks FC(Vc); While not failure: For the next Vf in the ordering d, FC(Vf) FC(Vc); AC({Vf}) FC(Vc); Repeat until quiescence or failure Vf1,Vf2 {Vf}, Revise(Vf1,Vf2)

  11. Terminology overload alert: FC • FC is used to denote any of the following: • a partial look-ahead schema • a specific chronological backtrack search algorithm that uses the partial look-ahead schema • Meaning is inferred from context • Not a healthy situation, but a fact of reality • Advice: state upfront the meaning of your terms and stick to them throughout your paper

  12. (BT Search +) RFL vs. FC • Reference: [Sabin & Freuder, ECAI94], [Bessière & Régin, CP97], [Sabin & Freuder, CP97], [Gent & Prosser, APES-20-2000], [Experiments by Lin XU, 2001], [Yang, MS thesis 2003] • Results: (sketchy) • Note: Results depend on • Variable ordering (static vs. dynamic) • Problem difficulty (positive relative to crossover point)

  13. Alert: Terminology • Distinguish between • Real Full Lookahead (RFL) • Maintaining Arc Consistency (MAC) • MAC assumes binary branching

More Related