- From: Drew McDermott <drew.mcdermott@yale.edu>
- Date: Wed, 21 Apr 2004 16:16:22 -0400 (EDT)
- To: public-sws-ig@w3.org
> [Jeff Dalton] > > Would it skip? I'd have thought, perhaps naively, that in a sequence, > if a precondition of a step was not satisfied, then execution could not > advance beyond that point. The execution engine would do something > such as wait, or signal an error, or ask someone what to do. You're assuming that the execution engine can check whether an arbitrary precondition is true. But suppose a planner created a plan to achieve goal G by instanting plan A. A has H as a precondition and G as an effect. The planner finds another action B that has H as an effect. It produces the plan {B; A} Now it may be that there is no easy way to verify that H is true after B, but the plan still may be correct. For instance, G might be "customer has paid"; A might be "charge to credit card"; H might be "credit card is valid"; B might be "verify with credit-card company." The presence of B doesn't make the precondition H go away, it just obviates any steps to check that it's true. There are other occasions when it might make sense to insert plan steps to verify that a condition really holds. But an agent obviously can't do this for every condition, or we'd have an infinite regress of steps inserted to verify the preconditions of previously inserted steps. -- Drew -- -- Drew McDermott Yale University CS Dept.
Received on Wednesday, 21 April 2004 16:16:24 UTC