- From: Drew McDermott <drew.mcdermott@yale.edu>
- Date: Fri, 2 Apr 2004 18:44:00 -0500 (EST)
- To: public-sws-ig@w3.org
I believe we're in "tutorial mode" here, since Sheila and I probably both know everything we're likely to say to each other, but are assuming some of the audience will find it interesting. > [Sheila McIlraith] > The > problem is also complicated by the "ramification problem" -- > that processes can also have indirect effects as the result of > state constraints that exist in an ontology. > > A hasty example is the following: > > Let's say I have a constraint that says > > teach(sheila,Date) -> location(sheila,toronto,Date) > (i.e, to teach my class on Date, I must be located in Toronto on Date) > > but let's say that I execute a web service to book a flight from Toronto > to San Francisco on 04-01-04. > > The direct effect is that location(sheila,san_francisco,04-01-04), but the > indirect effect is > not teach(sheila,04-01-04) > > What's even harder than putting a local-closed world assumption on > the direct effects is integrating the ramifications appropriate. The usual way to fix (or anyway avoid thinking about) this problem is to (a) separate action definitions out from ordinary axioms; and (b) classify predicates into _primitive_ and _derived_, with the obvious extension to atomic formulas. Situations are modeled as finite sets of primitive atomic formulas. All other primitive atomic formulas are assumed false. Actions are defined (item (a)) using add- and delete-lists that specify which primitive atomic formulas to add or delete from the set. Derived predicates can now be axiomatized any way you want, because (in principle) their truth values are redetermined after every reshuffle of the primitives due to an action having been taken. In the latest incarnation of PDDL, for the 2004 Planning Competition, this device has become more or less official with the introduction of a :derived keyword. (The semantics of PDDL are still pretty informal.) In your example, the axiom would be replaced by the action definition (:action (teach ?a - Agent) :precondition (or (not (= ?a sheila)) (loc ?a toronto)) ...) (Or, in English, "If you wish to have someone teach outside of Toronto, the person must not be Sheila.") The effect of leaving Toronto (while staying Sheila) is that the action becomes infeasible. This approach is not elegant, and doesn't really tackle the hard ramification cases, but it works well enough in practice, because ramification is not considered a critical problem right now in the AI-planning community. > *example disclaimer: OK...when you book a flight, the actual effect is > that your *expected* location will be the destination of the flight. > That's true with any web service that talks about effects that will occur > in the future. The principle behind the example still holds No disclaimer necessary. An "expected" location is just the location after a hypothetical action, and it's in the situation after that action that one decides whether (teach Sheila) is feasible. -- Drew -- -- Drew McDermott Yale Computer Science Department
Received on Friday, 2 April 2004 18:45:06 UTC