Re: [RIFRAF] ACTION 173: Initial Ontology for Action Language Discriminators

Leora Morgenstern wrote:
> 
> Attached please find the initial pass at an ontology for action 
> languages (Action 173).  
> 
> 
> Some remarks on the ontology.
> 
> 1.I built my ontology on top of the ontology that Allen Ginsberg had 
> created for Action 173 (ontologizing semantic discriminators). This 
> approach has the advantage of dealing with at least some integration 
> issues from the start, instead of deferring them to a later date.
> 
> 2. As discussed during earlier telecons, I broadened the original 
> mandate for this action, which was to create an ontology for 
> discriminators for  ECA (event-condition-action) rules, which are used 
> mainly to describe updates to databases. I looked at the more general 
> problem of discriminators for AI action languages.
> These more general action languages would seem to be needed to represent 
> the use cases in the UCR document. (For example, in the use case Ruleset 
> Integration for Medical Decision Support, one reasons about various 
> medical events, such as Bob’s Hb1AC levels increasing, the doctor 
> prescribing various medications, Bob’s reactions to them, and Bob’s 
> taking a medical test.) ECA rules, which are much narrower in scope, can 
> be considered a subset of general action rules.
> 
> Examples of such general AI action languages include the situation 
> calculus, the event calculus, the fluent calculus, temporal action 
> logics, and  the action description languages \cal{A}, and \cal{C}
> 
> 3. These languages share certain features, but differ on other features. 
> A list of features of interest follows:
>    
> a. Division into sets of sentences: domain description, observation 
> sentences, queries. /(It is almost universally accepted to have at the 
> first two classes of sentences in action languages.)/
> b. Intervals vs. time points. vs. both /(E.g., the event calculus has 
> both time points and intervals; sitcalc has situations/time points, 
> \cal{A} has time points.)/
> c. Discrete time vs. continuous time /(Situation calculus: discrete 
> time; fluent calculus,  event calculus: continuous time)/
> d. Branching time vs. linear time; branching forward only vs. branching 
> both forward and backward /(Event calculus: linear time; situation 
> calculus: forward branching time.)/
> e. Causation as an explicit relation vs. concept explicit in rule and/or 
> material implication. /(Explicit in \cal{C}; implicit in temporal action 
> logics, EC, SC.)/
> f. Causal rules; state constraints
> g. Concurrency: concurrency disallowed; concurrent processes allowed, 
> but can’t have them starting at exactly the same time 
> (asynchronicity).  /(Fluent calculus, event calculus: concurrency 
> allowed; vanilla sitcalc; only one action at a time; extended 
> (Reiter-style) situation calculus: asynchronicity.)/
> h. Explicit agent vs. implicit agent
> i. Single agent vs. multiple agent
> j. Determinism vs. non-determinism
> k. Solving the frame problem: monotonic solutions (explanation closure 
> axioms; Reiter) vs. nonmonotonic solutions (using circumscription, or 
> answer-set semantics, e.g. together with an appropriate formulation of 
> the commonsense law of inertia)

Note that a further distinction in the action languages you mention, is 
that interia is not always implicit. As far as I remember, it is in 
\cal{A}, but not in \cal{C} (or the related language \cal{K} which we 
developed in Vienna during my thesis...)

In that context, it would maybe also, even be worthwhile to look into
planning languages like PDDL.
  The PDDL work might by itself be interesting, since it is also kind of 
a family of languages around a common core, where features can be 
added/left out, maybe providing some inspiration for the extension 
mechanism for dialects...

Axel

> l. All actions have preconditions and effects. Can also have failure 
> conditions and success conditions. (Success conditions different than 
> preconditions.)
> 
> 4. The different features are sometime superficial, but may reflect 
> different deep-seated foundational assumptions. Different sets of 
> assumptions underlying these languages could make translation difficult. 
>  Of importance is the growing set of results on methods of translations 
> between various pairs of languages (e.g., between TAL and   sitcalc, 
> fluent calc and various formalisms).
> 
> 5. The exercise of constructing the ontology brought to light some 
> interesting questions regarding the categorization of these features. 
>  Does the distinction between single agents and multiple agents belong 
> to the model or the theory? What about the distinction between the 
> concurrency and asynchronicity? I’ve done a first effort at addressing 
> these issues, but they remain open for discussion.
> 
> Best regards,
> Leora


-- 
Dr. Axel Polleres
email: axel@polleres.net  url: http://www.polleres.net/





Received on Wednesday, 25 April 2007 08:25:00 UTC