50 likes | 163 Views
Least Commitment Rationale & Strategies. Foundations of Constraint Processing CSCE421/821, Spring 2009: www.cse.unl.edu/~choueiry/S09-421-821/ Berthe Y. Choueiry (Shu-we-ri) Avery Hall, Room 360 choueiry@cse.unl.edu Tel: +1(402)472-5444. Background. Constraint propagation
E N D
Least Commitment Rationale & Strategies Foundations of Constraint Processing CSCE421/821, Spring 2009: www.cse.unl.edu/~choueiry/S09-421-821/ Berthe Y. Choueiry (Shu-we-ri) Avery Hall, Room 360 choueiry@cse.unl.edu Tel: +1(402)472-5444 Weak Commitment
Background • Constraint propagation • Reduces problem size • Eliminates inconsistent choices • Gets the problem closer to being solved • But does not eliminate any solutions • When it solves the problem, we keep all solutions • Search • Solves the problem by making decisions • At each step, decisions ignore some perfectly acceptable choices • But search focuses on finding one solution Weak Commitment
Generalizing.. • Constraint propagation makes no commitment at all • Search makes strong commitments • Question: is there anything in the middle? • Answer: least commitment • Common: planning, scheduling communities Weak Commitment
Least commitment: rationale • As long as you do not need to make a commitment, keep propagating • If propagation is ‘stuck’ (no progress), • then make the least commitment you need to make • in order to enable more propagation • without ruling out ‘too’ many solutions • Technique • typically by adding a constraint (which is weaker than a variable assignment) Weak Commitment
Example: scheduling • Context: • scheduling tasks in time. You notice the 2 tasks must use the same resource • Propagation • adds a mutex constraint between both tasks without ordering them • Search • fixes the time for one or both tasks thus ruling out so many possibilities • Least commitment • adds a constraint committing one task to be before the other • tasks remain floating in time • and any task can be inserted between them Weak Commitment