![]() |
![]() |
Planning Initiative Shared Planning and Activity Representation - SPAR |
Part of the DARPA/Rome Laboratory
Planning Initiative (ARPI)
This is an initial draft of the SPAR Document.
Some parts of this document are not yet complete.
Responsibility for parts under development are indicated by [...].
"Getting as far as we can is the best that we can do"
(Edward Witten, Princeton University, investigator of
superstring theory as an explanation of everything)
Sections remaining to complete for version 0.1 by 22-Oct-97:
Version: 0.0b Date: 17-Oct-97 Status: Draft Request for Comments by: not set |
E-mail: spar-core@isi.edu WWW: http://www.aiai.ed.ac.uk/~arpi/spar |
|
Program Manager perspective on need for SPAR [TG]
The design of SPAR provides structure where there is a consensus on the key entities and relationships amongst those creating and using planning and activity representations. It specifies the structure to a level of detail judged to relate to the needs of the majority of potential users of the representation. However, planning and activity representations are the subject of active research. Some of the current approaches are conceptually simpler or more uniform than SPAR - e.g., using pure logic [Gruninger, ??] or all constraint [Etherington, ??; Joslin, 1996; Tate, 1996a] bases. Even where the structure of SPAR itself is not suitable as a basis for novel research or applications, the intention is that the semantics of the SPAR Representation should be clearly defined such that it can be translated to alternative representations. This also provides the important capability that SPAR-represented information will be able to be communicated to future representational frameworks as and when those are adopted in a widespread way.
It is intended that a process for sharing experiences of using SPAR will be established and continuing design issues tracked. A collected volume of papers describing SPAR and relating experience in using, adapting or extending the representation is planned in the medium term.
History
The AI planning community has used explicit domain description
languages and plan definitions for more than 25 years [Tate et. al., 1990; Allen
et. al., 1990]. As long ago as the late 1960s, work on the STRIPS
operator representation of actions [Fikes &
Nilsson, 1971] was used to practical effect for planning and
control of the SRI Shakey robot. This early application was based
upon more theoretical roots in the QA3 theorem prover [Green, 1969] and situation calculus [McCarthy & Hayes, 1969]. There is now a
wealth of experience of defining plan representations from both
theoretical studies and practical planning.
In 1992, under the DARPA/Rome Laboratory Planning Initiative (ARPI)
[Fowler et. al., 1995], a number of
participants created the KRSL plan language [Lehrer, 1993]. Although this has been used for
some transfers of information between planning components within the
ARPI (in particular an Integrated Feasibility Demonstration called
IFD-2 [Burstein et. al., 1995]), it has not
had the widespread impact desired. Its structure was too rigid and
KRSL excluded much that was already being done within AI planning
research. However, it did establish a range of entities which needed
to be in a plan representation and was an influence on subsequent
work.
In 1994, a group was formed to create an ontology for plans, using new insights gained over the last few years in the knowledge-sharing community in the US [Neches et. al., 1991; Genesereth & Fikes, 1992; Gruber, 1993] and Europe [Uschold et. al., 1998; Breuker & van de Velde, 1994]. This led to an outline plan model [Tate, 1996b]. However, this work was not brought to a conclusion.
Since 1995, there have been a number of initiatives to standardise terminology in the subject area of activities and plans. These include enterprise processes in PIF (the Process Interchange Format [Lee et. al., 1996]); workflow (International Workflow Management Coalition [WfMC, 1994]); CASE systems data modelling exchange in CDIF [Ernst, 1997; Navarro, 1996]; manufacturing processes (NIST's Process Specification Language [Schlenoff et. al., 1996]); the Object Model Working Group's CPR (Core Plan Representation - [Pease & Carrico, 1997]); and in the US military planning research community [Kingston et. al., 1997; Swartout et. al., ??]. These initiatives have involved academic, government and industry participants.
In August 1997, DARPA and Rome Laboratory Programme Managers for ARPI proposed a renewed effort to tap into this accumulated expertise, and to create a shared plan representation suitable for use in ARPI and on applied research programmes in their communities. This effort is called the Shared Planning and Activity Representation (SPAR).
SPAR is drawing on a wide range of previous work. Plan ontologies and representations created by participants of ARPI-related projects include:
Since 1994, work within ARPI on plan representations has proceeded in parallel with pre-standards work on process interchange and representation. ARPI researchers have been involved in these activities, and others have supported the continuing ARPI work - including helping in the development and review of SPAR. The relevant standards activities that have been jointly pursued are:
A common model of processes and activity has emerged from this work and has been used as the basis for SPAR.
Development, Refinement and Review Process
SPAR is being developed in the following way:
The Core Group has decided to prioritise the areas of planning and activity representation which it will seek to address in SPAR during its initial development and request for comment review cycles:
[Comments on this prioritisation are sought from reviewers.] [AT]
Requirements
An initial set of representational and functional requirements has
been assembled for the SPAR development process. These requirements
represent a wide-ranging set of sources. This set may be used to:
help determine the scope and priorities of the project; elicit
concepts and constructs; and gauge the adequacy of the SPAR
representation.
One of the sources for these requirements includes the results from recent project work on process representation. During phase 1 of the development of the National Institute of Standards and Technology's (NIST) Process Specification Language (PSL), a set of requirements were developed that were expected to be satisfied by the end-product language [Schlenoff et. al., 1996; Gruninger et. al., 1997]. These requirements were produced by analysing existing process-centred manufacturing software applications such as scheduling, process planning, and workflow. The approach for phase 2 of this project was to identify existing representations that were believed to address these requirements to some degree. Each representation was then assessed by assigning an evaluation of its coverage for each requirement. A summary of results for a number of DARPA/Rome Laboratory Planning Initiative (ARPI) plan/process and schedule representations (ACT, CPR, <I-N-OVA>, O-Plan TF, OZONE Scheduling Ontology, PIF) has been produced [Polyak & Tate, 97]. Requirements appropriate for SPAR development from this work have been incorporated.
Requirements were also extracted directly from several of the existing DARPA/Rome Laboratory Planning Initiative (ARPI) plan/process and schedule representations mentioned above as well as from past ARPI shared plan efforts (i.e. KRSL, KRSL-Plans). ARPI member input (e.g. researchers, program managers, etc.) has also played a role in creating the initial set. This input included direct comments on concepts and constructs desired for SPAR, as well as past comments on what was required for other representations (e.g. CPR, KRSL, etc.)
Once the set had been pulled together from these sources, the elements were partitioned into representational and functional categories. Requirements in each category were then clustered into various groupings. The representational requirements define the elements that are needed to express information centred around plan representations, either explicitly or implicitly. The representational groupings are:
SPAR Model
Scope and Design Principles
The principal scope of SPAR is to represent past, present and possible
future activity and the command, planning and control processes that
create and execute plans meant to guide or constrain future activity.
It can be used descriptively for past and present activity and
prescriptively for possible future activity.
The SPAR design has adopted a small number of guiding principles. It seeks to use these principles in a consistent manner.
It is possible that a process for communicating and registering Partially Shared View extensions to a broader community could be provided by a suitable standards body (as is intended for PIF [Lee et. al., 1996]).
SPAR can co-exist with one or more such models which can therefore be chosen to reflect standards established elsewhere. An example of a detailed object description standard is that established by International Standards Organisation's STEP [ISO, 1995] or EXPRESS [Express, 1995] for product interchange in manufacturing. Examples of organisational and agent relationships models can be found in the Enterprise Models [Fraser & Tate, 1995; Fox et. al., 1993], the ORDIT Organisational Model [Blyth et. al., 1993], and the work on classifications of agents and their relationships by Doyle at MIT [Doyle, ??].
An "Environment" contains the world model, including the descriptions of the processes or activity that model includes whether that activity can be planned for or not (i.e. the domain modelled may contain agents whose activity is not directly specifiable). Plans are contained within an environment.
Activity takes place across an interval defined by its begin and end time points (which may be underspecified) and involving a number of activity-related "objects" (which may be both physical or more abstract). A Plan (or plan templates, plan cases, etc.) is defined as a specification of activity associated with one or more objectives. An agent may hold objectives and/or perform activities.
Primitive activity is defined from the perspective of any agent to be an activity whose specification in the model available to that agent does not contain any sub-activities. This allows for more detailed models to be available to some agents than others.
For modelling purposes, an activity may be differentiated into actions and events. An action is an activity which has or could have (in the domain model) an actor. An event is any other activity (which could not have an actor described in the domain model). Events can therefore be thought of as activities which take place in the environment but which are not able to be affected by agents who can intervene in the environment through the performance of actions.
The terminology used to describe past, present and future activity and world state is as follows:
Past State | Present State | Possible Future State |
Past Activity | Present Activity | Possible Future Activity |
Model Overview
A set of statements called the KRSL-Plans description (version dated
20-Sep-96) was used as a starting point for the SPAR model of planning
and activity. These were created by the Plan Ontology Construction
Group within ARPI. These statements were a refinement of an earlier
version dated 2-Feb-95 (published in [Tate, 1996b]). The later version of these statements
was also used to provide ARPI participants input to the development of
OMWG's Core Plan Representation (CPR). [square brackets are used to
indicate phases or options that were not fully agreed]. The top level
statements are:
Then at a second level of detail, the statements are:
Sentences added over and above KRSL-Plans (20-Sep-97): [AT]
Sentences added from OMWG CPR: [AP]
Sentences added from NIST PSL: [AT]
Entity Types
The top level types in SPAR are Activity,
TimePoint, Object (and its special sub-type Agent) and Relationship
(and its special sub-type Constraint).
[Invite panel members comments - Are self referents desirable for Objective, ActivitySpecification, ActivityConstraint and WorldStateConstraint? See issues 0018 and 0021] [AT]
In more detail the SPAR types are as follows (leaving out the basic types needed for values of attributes of the SPAR entities for the moment):
Value Types
The basic types used to specify values of attributes of SPAR entities
are:
The following framework is adapted from the PIF 1.1 Document [Lee et. al., 1996] with the permission of Jintae Lee, University of Hawaii (jl@hawaii.edu).
A SPAR description consists of a set of entity definitions which may be described in a variety of ways - including in an object-oriented style of in an ASCII language.
Each entity definition refers to an entity instance and is typed (e.g. ACTIVITY, OBJECT, TIMEPOINT) and they form a class hierarchy. An entity definition has a particular set of attributes defined for it. Each of the attributes describes some aspect or property of the entity. For example, a PERFORMS definition has Actor and Activity attributes that specify which Object (or its specialization Agent) is performing which activity. The instance of an entity definition has all the attributes of all of its superclasses, in addition to its own attributes. For example, all the instances of ACTIVITY have the Name attribute, since ENTITY, which is a superclass of ACTIVITY, has the Name attribute.
When an attribute of one entity has a value that refers to another entity, the attribute represents a relationship between the two instances that the two entities refer to. For example, if the BeginTimePoint attribute of ACTIVITY-1 takes TIMEPOINT-32 as its value, then the BeginTimePoint attribute represents a relationship between the ACTIVITY-1 and TIMEPOINT-32 instances. The value of a given attribute in SPAR holds independent of time.
An attribute in a SPAR entity can have as its value the following, and only the following: a literal value of a SPAR basic value type; or an expression that represents such a value type. The SPAR basic value types are primitive or composite value types.
The SPAR primitive value types consist of:
The attribute value of a SPAR entity holds independent of time (i.e. no temporal scope is associated with an attribute value in SPAR). Any property of an entity which can change over time, should be represented by a RELATION that links the property to a TimePoint (perhaps indirectly).
An EXPRESSION may include variables, quantifiers, and the Boolean operators for expressing conditions or constraints. A STATEMENT (specialization of EXPRESSION) is used in the Constraint attribute of ENTITY, and in a range of ActivityConstraint attributes of ACTIVITY.
An entity variable is a sub-type of expression of the form: entity-name[.attribute-name]*, which refers to either the entity named or the entity which is the value of the named attribute of that entity (recursively).
A variable in an expression may have several different scopes. All such variables with the same name within the same scope are bound to a single entity, whereas that is not necessarily so if the variables occur in different scopes.
Plug-in Domain Grammars and Lexicons
The specification of a number of entities within the SPAR model are
dependent on the application domain within which the model is used. A
variety of decisions can be taken as to the level of modelling of the
domain, what is to be included and excluded, and the level of accuracy
to be built into the model. SPAR provides the ability to define the
domain dependent aspects via a number of syntaxes (or grammars) which
specify the restrictions on legal statements for a number of SPAR
value types (of the attributes of entities). The terminal tokens of
the syntax or grammar must be legitimate symbols understood in the
domain, or they may be symbols further defined (unambiguously) in any
one of a number of domain lexicons associated with a grammar.
SPAR provides a framework for sub-types of a number of the items defined by plug-in syntaxes. In particular those for a set of predfined object types (which are defined in ObjectSpecificationSyntax), and those for sub-types of ActivityConstraint (which are defined in ActivityConstraintSyntax). These recommended sub-types are introduced to provide a higher level of sharing of information. However, in all cases, it is possible to remian at the general level to introduce new ways to describe Objects and ActyivityConstraints.
The SPAR entities which can be defined by one or more domain specific grammars which can be plugged into SPAR are:
Three sub-types of Object are predefined in SPAR, and thus can have their own nominated constraint sub-syntaxes of ObjectConstraint:
Two role-related object constraint types are provided in SPAR. An object can act in the role or being an actor or a resource by being brought into certain nominated relationships with an activity. Hence, these two role-related object constraints are defined by sub-syntaxes of ObjectConstraint:
It is possible that the ability to specify a domain type (from a domain lexicon) for an underspecified object entity may also be required for high levels of SPAR compliancy.
See Issue 0005 on a possible Plan-usage annotation extension.
To simply exposition in early versions of SPAR and to ensure its adoption in today's simpler applications requiring SPAR, this feature will not be fully elaborated. This will mean that the enclosing "Environment" (or an override via any "ActivitySpecification" or "WorldModel") will define the legal domain syntax and lexicon for enclosed entities. However, in future versions (hopefully in an upward compatible way), any named syntax (and associated lexicons) will be able to be specified for use in the value type of any entity which allows <type>Syntax entries.
Presentations
A number of alternative presentations are envisaged for SPAR. These will
include a Reference Object Model and at least one textual Reference
Language.
Object Model
As an example of the level at which the Reference Object Model for
SPAR will be described, the OMWG Core Plan Representation
[Pease & Carrico, 1997] Object Model is
shown here.
Object Model introduction [AP]
Detail in Appendix.
OMGW CPR Meta-model Diagram with Methods
Language
Language introduction [BS]
Detail in Appendix.
See related issue 0020
Other Presentations
Other presentations planned to be available for SPAR include:
KIF [Genesereth & Fikes, 1992],
CommonKADS CML [Schreiber et. al., 1994],
CORBA IDL [Corba, ??],
LOOM [MacGregor et. al., 1997],
and Java [Java, ??].
Others have been suggested for CDIF [Ernst, 1997],
WWW Consortium's RDF [WWW, 1997],
CycL [CycL, ??], etc.
Discussion, Clarification and Issues
Overview of this section and motivate need for discussion of some
specific non-obvious uses of the SPAR model. [KM]
Subsequent discussions have led to the current version which is open for comment and for issues to be raised.
SPAR provides the framework for doing this. As in IDEF-0, SPAR activities have decompositions through the ability to give each an activity specification in terms of sub-activities and the constraints on those activities. IDEF-0 inputs and outputs can be modelled as Objects in SPAR or more sophisticated input and output models can use the WorldStateConstraints in SPAR. The mechanisms of IDEF-0 map directly to the Resources (through ResourceConstraints) and the Objects (normally of subtype Agent which play the role of Performing the Activity (through ActorConstraints). The controls of IDEF are modelled in SPAR as AuthorityConstraints.
The main area in which PIF and WPDL differed was the level of specified documentation annotations for processes and other WPDL structures. WPDL has a small number of required annotations and a long list of optional ones. These reflect the documentation attributes used in current workflow tools on the market.
It is anticipated that SPAR will provide a sample WPDL compliant AnnotationSyntax base to be used for expansion for specific uses - called WPDLAnnotationSyntax.
Acknowledgements
The SPAR Project is a part of the Defense Advanced Research Projects
Agency (DARPA) and U.S. Air Force Rome Laboratory Planning Initiative
(ARPI). The work is supported by ARPI and other
participants, and by their host organizations.
The U.S. Government is authorised to reproduce and distribute reprints for governmental purposes notwithstanding any copyright notation hereon. The views and conclusions contained herein are those of the authors and should not be interpreted as necessarily representing the official policies or endorsements, either expressed or implied, of DARPA, Rome Laboratory or the U.S. Government.
The description of value types in SPAR is adapted from the PIF 1.1 Document [Lee et. al., 1996] with the permission of Jintae Lee, University of Hawaii (jl@hawaii.edu). A section of the draft NIST PSL's core theory is included in the Formal Theory Appendix with the permission of Christopher Menzel, Texas A&M University (cmenzel@tamu.edu) and KBSI (cmenzel@kbsi.com).
Participants
Participants have been chosen to be familiar with the issues of plan
representation and to be able to reflect specific concerns for their
"constituency".
Note that an individual's initials are used in SPAR documents to track issues relating to the development of SPAR.
The list of active participants will be included in published versions of this document. [AT]
The current list of participants is available at http://www.aiai.ed.ac.uk/~arpi/spar/#part.
Allen, J.F., 1984. "Towards a General Theory of Action and Time" Artificial Intelligence 23 123-154.
Blyth A.J.C., Chudge, J., Dobson, J.E. and Strens, M.R., 1993. "ORDIT: A new methodology to assist in the process of eliciting and modelling organisational requirements" In Proceedings on the Conference on Organisational Computing Systems, November, San Jose, CA, USA. http://www.twente.research.ec.org/esp-syn/text/2301.html
Brill, D., 1993. "LOOM Reference Manual v.2.0", Information Sciences Institute, University of Southern California. http://www.isi.edu/isd/LOOM/LOOM-HOME.html
Breuker, J., van de Velde, W., 1994. The CommonKADS Library for Expertise Modelling: Reusable Components for Artificial Problem Solving, IOS Press. http://www.swi.psy.uva.nl/projects/CommonKADS/home.html.
Burstein, M.H., Schantz, R., Bienkowski, M.A., desJardins, M.E. and Smith, S.F., 1995. "The Common Prototyping Environment -- A Framework for Software Technology Integration, Evaluation and Transition" IEEE Expert 10(1) February 17-26, IEEE Comp. Soc. http://arpi.isx.com
Ernst, J., 1997. Introduction to CDIF, CASE Data Interchange Format Division Electronic Industries Association. http://www.cdif.org
EXPRESS Information Modelling Language, 1995. ISO WD 10303-11. http://www.eurpc2.demon.co.uk/part11.html
Fowler, N., Cross, S.E. and Owens, C., 1995. "The ARPA-Rome Knowledge-Based Planning and Scheduling Initiative" IEEE Expert, 10(1) February 4-9, IEEE Comp. Soc. http://arpi.isx.com
Fraser, J. and Tate, A., 1995. "The Enterprise Tool Set -- An Open Enterprise Architecture" In Proceedings of the Workshop on Intelligent Manufacturing Systems, International Joint Conference on Artificial Intelligence (IJCAI-95), Montreal, Canada. http://www.aiai.ed.ac.uk/project/enterprise/ontology.html
Fox, M.S., Chionglo, J.F. and Fadel, F.G., 1993. "A Common-Sense Model of the Enterprise" In Proceedings of the Second Industrial Engineers Research Conference (IERC) Norcross, GA, Institute for Industrial Engineers. http://www.ie.utoronto.ca/EIL/tove/toveont.html
Genesereth, M.R. and Fikes, R.E., 1992. "Knowledge Interchange Format, Version 3.0 Reference Manual", Knowledge Systems Laboratory, KSL-92-86. http://ksl-web.stanford.edu/KSL_Abstracts/KSL-92-86.html.
Gruber, T., 1993. "Ontolingua: A Translation Approach to Providing Portable Ontology Specifications" Knowledge Acquisition 5(2) 199-200. http://ksl-web.stanford.edu/KSL_Abstracts/KSL-92-71.html.
Gruninger, M., Schlenoff, C., Knutilla, A. and
Ray, S., 1997. "Using Process Requirements as the Basis for the
Creation and Evaluation of Process Ontologies for Enterprise Modeling"
ACM SIGGROUP Bulletin Special Issue on
Enterprise Modelling 3(18).
ISO, 1995. "Product Data Representation and Exchange: Part 49:
Integrated Generic Resources: Process Structure and Properties", ISO
Standard 10303-49, International Standards Organization.
http://www.nist.gov/sc4/www/stepdocs.htm
Joslin, D., 1996. "Planner/Scheduler Interface Proposal", Draft, CIRL,
University of Oregon, 17-May-96. http://www.cirl.uoregon.edu/joslin/Papers/psi.ps.
Khambhampati, S, 1997. "Refinement Planning" AI Magazine, 18(2),
pp. 67-97, Summer 1997.
Kingston, J.K., Griffiths, A. and Lydiard, T.J., 1997. "Multi-Perspective
Modelling of the Air Campaign Planning Process" In Proceedings of
the Fifteenth International Joint Conference on Artificial
Intelligence (IJCAI-97), Nagoya, Japan. http://www.aiai.ed.ac.uk/~arpi
Lee, J. and Malone, T., 1990. "Partially Shared Views: A Scheme for
Communicating between Groups Using Different Type Hierarchies" ACM
Transactions on Information Systems 8(1) 1-26. http://soa.cba.hawaii.edu/pif/
Lee, J. (ed.), Gruninger, M., Jin, Y., Malone, T., Tate,
A., Yost. G., and other members of the PIF Working Group, 1996. "Process
Interchange Format and Framework, Version 1.1", MIT Center for
Coordination Science, Working Paper No. 194. http://soa.cba.hawaii.edu/pif/
Lehrer, N. (ed.), 1993. "ARPI KRSL Reference Manual 2.0.2", ISX
Corporation.
http://isx.com/pub/ARPI/ARPI-pub/krsl/krsl-info.html
McDermott, D., 1997. "PDDL - The Plan Domain Definition Language",
Computer Science, Yale University. http://www.cs.yale.edu/HTML/YALE/CS/HyPlans/mcdermott.html
Moralee, S., 1994. "Notes from Enterprise Project Workshop on Content,
Form and Methods for Ontologies", IBM(UK) Offices, Nottingham, UK,
Dated 25-Nov-94. http://www.aiai.ed.ac.uk/~bat/ontology-may94.html.
Navarro, T., 1996. "CDIF - Integrated Meta-model - Project Management
Planning and Scheduling Subject Area", Report EIA-PN3239,
CDIF-DRAFT-PMPS-V04, CASE Data Interchange Format Division, Electronic
Industries Association. http://www.cdif.org/overview/ProjectManagement.html
Neches, R., Fikes, R., Finin, T., Gruber, T.R., Patil, R., Senator, T. and
Swartout, W.R., 1991. "Enabling Technology for Knowledge Sharing" AI
Magazine 12(3) 36-56. http://ksl-web.stanford.edu/KSL_Abstracts/KSL-93-23.html.
NIST, 1993. "Integrated Definition for Function Modeling (IDEF0)",
Federal Information Processing Standards (FIPS) Publication 183,
National Institute of Standards and Technology, December 21,
1993. http://www.idef.com
Pease, R.A. and Carrico, T.M., 1997. "Object Model Working Group (OMWG)
Core Plan Representation - Request for Comment", version 2, 24 January
1997, Defense Advanced Research Projects Agency. http://www.teknowledge.com/CPR2/
Polyak, S. and Tate, A., 1997. "Analysis of Candidate PSL Process/Plan
Representations", Artificial Intelligence Applications Institute,
AIAI-PR-66, Edinburgh, Scotland. http://www.aiai.ed.ac.uk/publications
Schlenoff, C. (ed.), Knutilla, A., and Ray, S., 1996. "Unified Process Specification Language: Functional Requirements for Modeling Processes", National Institute of Standards and Technology, Gaithersburg, Maryland. http://www.nist.gov/psl/
Schreiber, G., Weilinga, B., Akkermans, H. and Van de Velde, W., 1994. "CML: The CommonKADS Conceptual Modelling Language" In L. Steels, G. Schreiber and W. Van de Velde (eds.) A future for knowledge acquisition: Proceedings of EKAW-94, Hoegaarden, Belgium, Springer-Verlag. http://www.swi.psy.uva.nl/projects/Kactus/toolkit/cml.html
Smith, S.F. and Becker, M., 1997. "An Ontology for Constructing Scheduling Systems" In Working Notes from 1997 AAAI Spring Symposium on Ontological Engineering, Stanford, CA, AAAI Press. http://www.cs.cmu.edu/afs/cs/project/ozone/www/AAAI_Symp_On_Ontol_97/abstract.html
Swartout, W.R., Valente, A. and Gil, Y., 19??. Reference for work on JFACC Objectives and Activity Grammar. Not yet correct [BS]. http://www.isi.edu
Tate, A., 1994. "A Plan Ontology - a Working Document - October 31, 1994" In Proceedings of the Workshop on Ontology Development and Use, 2nd - 4th November, La Jolle, CA. ftp://ftp.aiai.ed.ac.uk/pub/documents/1994/94-ont-plan-ontology.ps
Tate, A., 1995. "O-Plan Task Formalism Manual", Version 2.3, July 12, 1995. Artificial Intelligence Applications Institute, University of Edinburgh. ftp://ftp.aiai.ed.ac.uk/pub/documents/ANY/oplan-tf-manual.ps
Tate, A., 1996a. "Representing Plans as a Set of Constraints -- the <I-N-OVA> Model" In Proceedings of the Third International Conference on Planning Systems (AIPS-96), Edinburgh, Scotland, May 1996, AAAI Press, pp. 221-228. http://www.aiai.ed.ac.uk/~oplan/inova.html
Tate, A. (ed.), 1996b. "KRSL-Plans", Appendix of Tate, A, "Towards a Plan Ontology" AI*IA Notizie (Quarterly Publication of the Associazione Italiana per l'Intelligenza Artificiale), Special Issue on "Aspects of Planning Research" 9(1), pp. 19-26. A shorter version of [Tate, 1994]. ftp://ftp.aiai.ed.ac.uk/pub/documents/1996/96-aiia-plan-ontology.ps
Tate, A (reporter) and the PIF Working Group, 1996. "PIF and the Workflow Management Coalition WPDL, Report of Session at the PIF Workshop", Stanford University, 11-Jul-96. http://soa.cba.hawaii.edu/pif/
Tate, A., Drabble, B. and Kirby, R.B., 1994. "O-Plan2: an Open Architecture for Command, Planning and Control" In M. Fox and M. Zweben (eds.) Intelligent Scheduling, Morgan Kaufmann. http://www.aiai.ed.ac.uk/~oplan/
Uschold, M.F., Filby, I.M. and Georges, M., 1998. "Concepts and Terminology for Knowledge Sharing" Knowledge Engineering Review, Special Issue on Ontologies, To appear, Cambridge University Press. http://www.aiai.ed.ac.uk/project/euroknow
Uschold, M.F., Moralee, S., King, M. and Ziorgios, Y., 1998. "The Enterprise Ontology" Knowledge Engineering Review, Special Issue on Ontologies, To appear, Cambridge University Press. http://www.aiai.ed.ac.uk/project/enterprise/ontology.html
Wilkins, D.E. and Myers, K.L., 1995. "A Common Knowledge Representation for Plan Generation and Reactive Execution" Journal of Logic and Computation 5(6) 731-761. http://www.ai.sri.com/~act/act-formalism.html
World Wide Web Consortium, RDF Metadata Format, Draft 3-Oct-97. http://www.w3.org/Press/RDF
Workflow Management Coalition, 1994. "Workflow Management Coalition Glossary", A Workflow Management Coalition Specification, November. http://www.aiai.ed.ac.uk/WfMC/
CORBA IDL Reference and URL. To be completed [AP].
Java Reference and URL. To be completed [AP]. http://java.sun.com
CycL Reference. To be completed [AP]. http://www.cycorp.com
Sensus Reference. To be completed [AP]. http://www.cycorp.com
Entities | Language | KIF | KADS CML | Object Model | CORBA IDL | LOOM | Java | Formal Theory | Issues | Acronyms | Revision History | Top of Document |
The SPAR model as presented here is at the conceptual modelling level typical of ontology description languages such as KIF [Genesereth & Fikes, 1992] and CommonKADS [Breuker & van de Velde, 1994]. CommonKADS Conceptual Modelling Language[Schreiber et. al., 1994] for example has the following structures which correspond to the SPAR model description level used here. Actual KIF, CommonKADS CML and other presentations for SPAR are planned to be available. See the appendices.
ENTITY |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|---|---|---|
Name | Symbol | 0..1 | Inaccessible Unique Name |
Annotation | AnnotationSyntax | 0..N | |
EntityConstraint | EntityConstraintExpression | 0..N |
Attribute Descriptions:
ACTIVITY |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|---|---|---|
ActivityPattern | ActivityPatternSyntax | 1 | |
BeginTimePoint | TimePoint | 0..1 | A notional TimePoint |
EndTimePoint | TimePoint | 0..1 | A notional TimePoint |
ActivitySpecification | ActivitySpecification | 0..1 |
Attribute Descriptions:
ACTION |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|
Attribute Descriptions:
Efficiency and Implementation Issues:
EVENT |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|
Attribute Descriptions:
Efficiency and Implementation Issues:
TIMEPOINT |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|---|---|---|
UsesCalendar | Calendar | 0..1 | Calendar nearest in scope |
MinimumTime | TimeUnit | 0..1 | -Omega |
ProjectedTime | Expression in ProjectedTimeSpecificationSyntax | 0..1 | |
MaximumTime | TimeUnit | 0..1 | +Omega |
Attribute Descriptions:
Efficiency and Implementation Issues:
OBJECT |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|
Attribute Descriptions:
Efficiency and Implementation Issues:
AGENT |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|---|---|---|
Capability | AgentCapabilitySyntax | 0..N |
Attribute Descriptions:
Efficiency and Implementation Issues:
LOCATION |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|---|---|---|
LocationSpecification | LocationSpecificationSyntax | 1 | Universe |
Attribute Descriptions:
Efficiency and Implementation Issues:
CALENDAR |
---|
Attribute Name | Value Type | No. of Values | Default |
---|---|---|---|
CalendarName | Symbol | 1 | |
UnitsOfTime | Symbol | 0..1 | Second |
BeginTime | CalendarTimeSyntax | 0..1 | "BeginOfTime" |
EndTime | CalendarTimeSyntax | 0..1 | "EndOfTime" |
Attribute Descriptions:
RELATIONSHIP |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|
Attribute Descriptions:
Efficiency and Implementation Issues:
ACTIVITYCONSTRAINT |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|---|---|---|
ConstraintSpecification | <constraint-type>ConstraintSyntax | 1 |
Attribute Descriptions:
Efficiency and Implementation Issues:
ENVIRONMENT |
---|
Attribute Name | Value Type | No. of Values | Default |
---|---|---|---|
SPARVersion | String | 0..1 | "Current Version"** |
ActivityPatternSyntax | Grammar | 0..1 | MinimumActivityPatternSyntax** |
LocationSpecificationSyntax | Grammar | 0..1 | MinimumLocationSpecificationSyntax** |
AgentCapabilitySyntax | Grammar | 0..1 | MinimumAgentCapabilitySyntax** |
ActivityConstraintSyntax | Grammar | 0..1 | MinimumActivityConstraintSyntax** |
EvaluationCriterionSyntax | Grammar | 0..1 | MinimumEvaluation CriterionSyntax** |
AnnotationSyntax | Grammar | 0..1 | MinimumAnnotationSyntax** |
ProjectedTime SpecificationSyntax | Grammar | 0..1 | MinimumProjectedTimeSpecificationSyntax** |
DefaultCalendar | Calendar | 0..1 | StandardCalendar** |
OtherCalendar | Calendar | 0..N | ** |
Attribute Descriptions:
It may be necessary to include declaration of additional SPAR add-on structures (though not grammars) if these are allowed (e.g., by a mechanism such as PIF's Partial Shared Views). If so the cardinality of the slot may be O..N rather than 0..1, or the string may be given a defined syntax to allow for optional PSV lists.
WORLDMODEL |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|---|---|---|
SubWorldModel | WorldModel | 0..N | |
HasProcess | Process | 0..N | |
WorldStateConstraint | WorldStateConstraintSyntax | 0..N |
Attribute Descriptions:
PLAN |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|---|---|---|
HasEnvironment | Environment | 0..1 | Environment nearest in scope |
HasObjectives | Objective | 1..N | |
HasActivitySpecification | ActivitySpecification | 1..N |
Attribute Descriptions:
Efficiency and Implementation Issues:
PROCESS |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|---|---|---|
HasEnvironment | Environment | 0..1 | Environment nearest in scope |
HasActivitySpecification | ActivitySpecification | 1..N |
Attribute Descriptions:
Efficiency and Implementation Issues:
OBJECTIVE |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|---|---|---|
HasEnvironment | Environment | 0..1 | Environment nearest in scope |
HasEvaluationCriteria | EvaluationCriterion | 0..N | |
HasObjectiveSpecification | ActivitySpecification | 1..N |
Attribute Descriptions:
Efficiency and Implementation Issues:
EVALUATIONCRITERION |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|---|---|---|
EvaluationCriterionSpecification | EvaluationCriterionSyntax | 0..N |
Attribute Descriptions:
Efficiency and Implementation Issues:
ACTIVITYSPECIFICATION |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|---|---|---|
HasEnvironment | Environment | 0..1 | Environment nearest in scope |
SubActivities: | Activity | 0..N | |
HasConstraints | ActivityConstraint | 0..N |
Attribute Descriptions:
Efficiency and Implementation Issues:
GRAMMAR |
---|
Attribute Name | Value Type | No. of Values | Defaults |
---|---|---|---|
BNFSyntax | Structure? | 1 |
Attribute Descriptions:
Efficiency and Implementation Issues:
Reference Object Model
As an example of the level at which the Reference Object Model will be
provided, see the current OMWG Core Plan Representation Request For
Comment document.
Reference Language BNF
BNF convention used elsewhere in the document is:
The SPAR Language Design has not yet been started. However, some notes here from the PIF 1.1 language description [Lee et. al., 1996] are included to provide some initial ideas.
A number of domain specific grammars can be plugged into SPAR. The language design for these grammars has yet to be defined. However, a set of standard and minimum grammars for the definition of entities are provided (as defaults if no specific syntax is given), and to act as a basis for the development of domain specific grammars. These resources could be made available on-line for developers.
There are some predefined entity instances and constants of the basic types:
Type | Standard Instance | Definition |
---|---|---|
ActivitySyntax | MinimumActivitySyntax | Default ActivitySyntax to be determined. |
ActivityConstraintSyntax | MinimumActivity ConstraintSyntax | A description of the <constraint-type> specific syntaxes included. By default this is the MinimumTimeConstraintSyntax and the MinimumObjectConstraintSyntax. |
TimeConstraintSyntax | MinimumTimeConstraintSyntax | Default TimeConstraintSyntax includes Before (TimePoint, TimePoint) and Duration (Timepoint, Timepoint, TimeUnit). CalendarTimeConstraint (CalendarTime, TimePoint [,Calendar]). PIF Successor (activity-1, activity-2) can be stated as Before (activity-1.EndTime, activity-2.BeginTime). |
TimeConstraintSyntax | AllenTimeConstraintSyntax | Allen temporal logic relationships [Allen, 1984] |
ObjectConstraintSyntax | MinimumObjectConstraintSyntax | Default Object ConstraintSyntax includes equal, not-equal, MinimumAgentCapability ConstraintSyntax, MinimumLocation ConstraintSyntax [, and MinimumCalendar ConstraintSyntax]. |
LocationConstraintSyntax | MinimumLocation ConstraintSyntax | Default MinimumLocation ConstraintSyntax is empty. |
CalendarConstraintSyntax | MinimumCalendarConstraintSyntax | Default MinimumCalendarConstraintSyntax includes CalendarTimeConstraint (CalendarTime, TimePoint [,Calendar]) |
ActorConstraintSyntax | MinimumActorConstraintSyntax | Default ActorConstraintSyntax includes perform |
ResourceConstraintSyntax | MinimumResourceConstraintSyntax | Default ResourceConstraintSyntax is empty |
<other-constraint-type>Syntax | Minimum <other-constraint-type>Syntax |
Defaults for other <constraint-type>Syntaxes are empty |
AgentCapabilitySyntax | MinimumAgentCapabilitySyntax | Default AgentCapabilitySyntax is empty. |
ProjectedTime SpecificationSyntax | MinimumProjectedTime SpecificationSyntax |
Default ProjectedTimeSpecificationSyntax is empty. |
EvaluationCriterionSyntax | Minimum EvaluationCriterionSyntax |
Default EvaluationCriterionSyntax is empty. |
AnnotationSyntax | MinimumAnnotationSyntax | Default AnnotationSyntax is empty. |
AnnotationSyntax | WPDLAnnotationSyntax | A Syntax for entity annotations which is compatible with the required and optional Workflow Management Coalition WPDL documentation structures [WfMC, 1994] |
AnnotationSyntax | WWWRDFAnnotationSyntax | A Syntax for entity annotations which is compatible with the metadata descriptors from the WWW Consortium RDF Metadata format. [WWW, 1997] |
Calendar | StandardCalendar | Default Calendar |
TimeUnit | Epsilon | Smaller than any other TimeUnit in any possible Calendar |
TimeUnit | Omega | Larger than any possible TimeUnit in any possible Calendar (infinity) |
Symbol | Year | To specify a time unit of one year |
Symbol | Month | To specify a time unit of one month |
Symbol | Week | To specify a time unit of one week |
Symbol | Day | To specify a time unit of one day |
Symbol | Hour | To specify a time unit of one hour |
Symbol | Minute | To specify a time unit of one minute |
Symbol | Second | To specify a time unit of one second |
Symbol | Millisecond | To specify a time unit of one millisecond |
Symbol | Nanosecond | To specify a time unit of one nanosecond |
Symbol | ... | To specify a time unit of one ... |
Symbol | Universe | To specify a Location that has no SpatialConstraints (yet) |
Not included in the current version of the SPAR Document.
Not included in the current version of the SPAR Document.
Not included in the current version of the SPAR Document.
Not included in the current version of the SPAR Document.
Not included in the current version of the SPAR Document.
Formal Theory
As an example of the level at which the formal theory and semantics of
SPAR may be expressed, a section of the draft NIST PSL's core theory
is included here. From Christopher Menzel, Texas A&M University (cmenzel@tamu.edu) and KBSI (cmenzel@kbsi.com)
Previous and Current Issues
The previous and current issues for SPAR are listed at
http://www.aiai.ed.ac.uk/~arpi/spar/#issu. Issues addressed in this
version and current issues are included in the appendices here.
Source:
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Aim to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0001 | 0.0 | 97-09-25 | C | AT | AT | AP,BS,KM,SP,TC | 0.0a | 0.0a |
An initial SPAR model version 0.0 for discussion at meeting 1 of the SPAR Core Group on 25-Sep-97 was created using the common elements from the ARPI Plan Ontology Constructor Group (POCG) work on KRSL-Plans (20-Sep-96 version), PIF 1.1, and recent discussions on NIST PSL. Details were added using experience from SRI's ACT, the Edinburgh <I-N-OVA> constraint model of activity and O-Plan TF; the CMU OZONE scheduling ontology; OMWG's CPR version 2 and recent experience of applying it to the JFACC C2 Schema requirements; and USC/ISI work on grammars to describe actions for the JFACC domain. A number of immediate points were made that needed change to create an initial model. These changes have been made in version 0.0a.
The initial diagram created on 25-Sep-97 is available at http://www.aiai.ed.ac/uk/~arpi/spar/IMG/spar-0.0-25sep97.gif
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0002 | 0.0 | 97-09-25 | C | AT | AT | AP,BS,KM,SP,TC | 0.0a | 0.0a |
The subtypes of ActivityConstraint for space/location, resource and actor/agent are ontologically unnecessary as these three are specialized types of the fundamental entities in SPAR. All refer to "objects" in the domain. However, they are considered useful to aid modellers.
Recommendation: This ontological relationship will be preserved by making spatial, resource and actor constraints be specialisations of ObjectConstraint.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0007 | 0.0a | 97-09-30 | C | AT | AT | AP | 0.2 |
To reflect the design principle of attributes of entities only relating to properties/attributes of those entities and using separate entities to represent relationships between entities, it is desirable to clearly separate EntityConstraintExpression from a Constraint relationship expression (limited to expressions in the ActivityConstraintSyntax).
One possibility if to rename EntityConstraint to be Properties. But intra-entity attribute constraints can also be specified.
Another possibility is to include both Properties and EntityConstraints for each entity to separate additional attributes of form <additional-attribute>(self)=<value> from intra-entity constraints.
Recommendation: Leave the EntityConstraint name, allow its use for both additional attributes and intra-entity constraints. Note that an implementation could for efficiency separate additional attributes from other entity constraints. Ensure that the design principle is followed, and that this attribute is not misused to state entity relationships of a more general form.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0008 | 0.0 | 97-09-25 | C | AT | AT | 0.0a | 0.0a |
A constraint for authority (or a control in IDEF-0 parlance) to perform an action is not included in SPAR 0.0. A direct mapping from IDEF process descriptions to SPAR ones would be facilitated by the explicit inclusion of authority specifications.
Recommendation: SPAR 0.0a includes AuthorityConstraint as a specialisation of ActivityConstraint.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0017 | 0.0 | 97-09-25 | C | KM | AT | AP,KM,BS | 0.0a | 0.0a |
It was suggested that we only allow activities to be stated in an activity specification rather than allowing a more general class of nodes (activities and a range of "non-activity related" entities such as dummy nodes, and control nodes for split/join, etc). It was also suggested that DummyNode may be able to be handled by constraints among Activities where there are arbitrary hierarchies of Activities.
A dummy node as used in project management systems and so on is effectively a "do nothing" which is a perfectly valid "verb ..." expression anyway. Special version of these like "start" and "finish" are already in a verb like form "start the execution", "finish the execution".
Dropping Node does make the explanation of SPAR easier - which will be a good thing for earlier versions anyway. If we find problems later with node like objects we can always come back with a node based scheme. There are some consequences for other related design decisions. It would be wise to allow an activity pattern to be just a verb with no parameters - so "start" would be a legal action, as would "split", "join", "finish". a dummy would be "do nothing".
Recommendation: The 0.0a model drops Node.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0019 | 0.0b | 97-09-25 | C | AT | AT | 0.1 | 0.0b |
Calendar should probably just be a sub-type of object rather than being directly a sub-type of entity. It is simply another "process-related object". This could allow greater uniformity of handling of SPAR for those implementations that do not require Calendars.
Recommendation: Include Calendar as a subtype of Object.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0035 | 0.0b | 97-10-15 | C | AP | AT | AP,KM | 0.0c |
SPAR versions up to 0.0b included specific entities within the SPAR entity type diagram for sub-types of ActivityConstraint (such as time, object, location, agent, resource, authority and other constraint types). This is not in line with the design rationaleor the definition of plug in syntaxes for ActivityConstraint. It would limit the flexibility intended for constraint specification in SPAR.
The sub-types are meant to provide a structure that can be shared and is commonplace in activity modelling. However, the sub-types provided for in SPAR are meant to be included as minimum requirements on some of the default syntaxes provided. The intention is that novel representations can extend these oir replace them entirely by defining new sub-types at the more generaic level of ActivityConstrait itself.
Recommendation: Do not include the sub-types of ActivityConstraint as entities. That was a mistake. Amend the diagram for SPAR type appropriately. Include more detail of the SPAR defined sub-types for ActivityConstraint in the definitio of the plug in syntax for ActivityConstraint. Include a diagram of the sub-types there.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0003 | 0.0a | 97-09-30 | C | AT | AT | AP | 0.2 |
Issues remaining in plans and process descriptions are not explicitly included. They could be available as a separate entity, an attribute of the Plan entity or could be contained in the execution record of the "meta-plan" - the plan which describes the planning process.
At least include Issues as an attribute of plan with a plug in syntax definition IssueSyntax. Note that if agreement can be reached, it would be possible to include additional structure for Issues as an Issue or IssueSpecification entity instead.
In many applications, objectives are simply stated. However, to allow for the greatest scope, it is likely that the definition of an Issue would be the same as or similar to that for Objective. Issues are likely to be composed of activities and/or world state and other constraints at a "meta-level" (or process) level. The ActivitySyntax and ActivityConstraintSyntax for a "process" level is likely to specify the issue.
Recommendation: Include a new entity Issues with a single attribute IssueSpecification defined by IssueSpecificationSyntax. Add an extra attribute to Plan for HasIssues.
Input from Panels is sought on this.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0004 | 0.0a | 97-09-30 | C | AP | BS | AP,AT | 0.2 |
Evaluation criteria can be boolean (holds/does not hold) or provide a (preference) ranking (better/worse). Suitable ways to represent such criteria in SPAR are needed. Not sure that we need anything in the object model beyond the notion of Objective, EvaluationCriterion (a function on an Objective) and an Evaluation (which is the relation of a WorldState to an EvaluationCriterion), where the Evaluation may yield an arbitrary result from boolean to partial order to total order.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0005 | 0.0a | 97-09-30 | C | AT | AT | KM,TC,AP | 0.1 |
Is there a better term for "Plan" in the ontology to reflect that it is used for storing partial-plans, fully worked out plans, case-library plans, sub-plan templates, primitive activity descriptions, etc. All relate objectives to an activity-specification.
We need some appropriate labeling of plans:
AP adds - I agree for the need to minimize creating new concepts but think that this might be necessary. For example, I believe that plans have imprecision but not uncertainty. The execution record of a plan may have uncertainty. Plan templates have constraints on slot fillers. The difference is not so much in the definition of the different types of plans themselves but rather on the information which fills out the different types of plans. How that is modeled however is an open question.
AT suggested that we retain the simple term Plan for as the name of the sole entity that associates objectives or purposes with activity specifications or descriptions. The context of use can vary even when a plan is created or maintained for some earlier identified purpose or objective. We do need to associate indexing and intended usage information with the plan description though. AT recommends that any special intended usage is maintained as a nominated "standard" annotation that can be used with the plan entity (and perhaps other entities depending on the final structure adopted in SPAR).
Recommendation: A Usage attribute with values plan, plan-template, plan-case and other standard uses to be defined. A syntax extension as part of AnnotationSyntax could make this a plug-in extendible facility.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0006 | 0.0a | 97-09-30 | C | AP | AP | AT | 0.2 |
Uncertainty needs to be represented explicitly within the model. AP suggests that we need a base structure which gives "possible worlds" or consistent hypothesis sets. We'll also need a structure that coexists with the less formal structure. The more formal model will be Bayes Nets that can update the hypotheses according to a mathematical model.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0009 | 0.0a | 97-09-25 | C | TC | AT | TC,BS,AP | 0.2 |
How Evaluation (and other planning tasks/functions) fit into the model needs to be explained. These are actions in the "planning process". As well as the more usual representation of a specific plan domain in which actions take place as directed by the plan itself, SPAR can represent the planning process (either generically or for some specific domain planning specialization). It then uses suitable planning process activity verbs (such as "evaluation", "generate", "review", "execute", "schedule") and planning domain objects (such as an "air tasking order", a "plan document", etc). Different domain grammars for activity-expression are in use concurrently in such cases. SPAR must support multiple concurrent use for different domain grammars for activity-expression to allow for process vs. product level uses, and for multiple modelling levels, and structured use of non-shared or partially-shared models.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0010 | 0.0 | 97-09-25 | C | SP | SP | AT,KM,BS,AP | 0.3 |
Plan design rationale is not allowed for directly in SPAR - other than the hook of allowing annotations. At least structured use of such annotations will be necessary.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0011 | 0.0a | 97-09-25 | C | KM | KM | SP,AT,BS | 0.3 |
Selection criteria, applicability information, indexing information and advice for retrieval or use of activity templates, cases, plans, etc are not allowed for directly in SPAR - other than the hook of allowing annotations. At least structured use of such annotations will be necessary.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0012 | 0.0a | 97-09-25 | C | KM | KM | AT | 0.2 |
Better explanation is needed of how hierarchies of activities and their parental derivation are visible in the plan representation.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0013 | 0.0a | 97-09-25 | C | KM | KM | AT | 0.3 |
Issues related to whether certain types of world state descriptions (and the conditions and effects that utilize those) used close or open world assumptions.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0014 | 0.0 | 97-09-25 | C | AP | AP | AT | 0.2 |
The issue of a world model and past, present and future state (static, dynamic and domain events/processes, etc). is underdeveloped in the work to date.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0015 | 0.0a | 97-09-25 | C | AT | BS | AT | 0.2 |
Variables can be used at entity level (by being used inexpressions in attributes, including the Properties extension attribute. Variables may also be associated with any Environment. Variables lists including variable names, restrictions and values may be stated. Should these be separate entities, declared only in plug in syntaxes that use variables (for flexibility), or included as fixed attributes of entity (EntityVariables 0..N) and the environment entity (EnvironmentVariables 0..N).
Note that not all SPAR uses will include expressions that allow variables. hence it needs to be possible to have simple presentations of SPAR that allow for no variables. It is possible that variables will only appear as an aspect of the plug in syntax for expressions.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0016 | 0.0 | 97-09-25 | C | KM | AT | KM,BS | 0.2 |
Should it be mandatory to include at least one activity in an activity specification (1..N rather than the current 0..N in SPAR version 0.0a).
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0018 | 0.0a | 97-09-25 | C | AP | AT | AP | 0.2 |
ActivitySpecification may be superfluous.
A possible suggestion is that a definition of (sub-)activities and activity constraints can be added directly as 2 fields of any entity that needs them (such as plan, process, objective, etc) or that the definition of an activity decomposition or specification could be given as two fields of the Activity entity.
SPAR currently treats Activity Specification as a conceptual entity. Some such specifications of activity involve no activities at all, but just impose constraints. Do nothing is a valid activity specification. This allows the specification to be given as the value of the specification or decomposition attribute of the various entities that require it (such as Plan, Process, Objective and Activity).
The Process entity has as its defining single attribute ActivitySpecification. It is possible to combine Process and ActivitySpecification so long as annotation/documentation and indexing facilities are provided on the conjoined entity.
We would have to accept that a "process" may involve no activities at all, just constraints of various kinds perhaps. We would also have to allow for indexing and annotations of the process/activity-spec combination that were appropriate to all uses. Process would thus become the specification of activity (purposeless) and Plan the relationship of objectives (purposes) to such processes.
Recommendation for comment by Review Panels:
Combine Process and ActivitySpecification into a single entity
called Process.
Adam Pease believes that Plans have Activities. Those Activities can be decomposed to arbitrary levels. We needn't have any Activities and any Activity that does exist need not be elaborated beyond its name, although it often will be. Objectives point to the Activities which satisfy them and vice versa. Constraints are a separate issue. Adam believes that any information in the plan can have constraints. So having a specific Objective might be predicated on the fact that Col Smith was successful in bombing the Basra airfield (an Activity). Specification of the use of a certain Resource might be predicated on the end TimePoint of an Activity being before a certain time.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0020 | 0.0a | 97-09-25 | C | AT | BS | AT | 0.2 |
There are two possible routes (at least) for the SPAR language. One would be to take the object/attribute/relation style structure and to simply flatten it. This has some merits for systems that use internal data structures (say an object model) that is close to the SPAR entity definition. The disadvantage of this approach is that reified structures are created which do not structure things in any natural way for human consumption. It also can lead to very large descriptions to say very simple things. KRSL 2.0.2 has such an approach.
An alternative is to use the the main semantic entities themselves as a basis for the language structure. Things like activity, process, plan, objective, world model, agent, etc. This has the advantage that the descriptions are much more meaningful to humans, and can be readily used in (constraint supporting) editors and the like. This approach is taken in O-Plan TF and SRI's ACT.
A possibility is to allow for both of these languages in SPAR. This would be compatible with the NIST PSL and CDIF standards notion that multiple "presentations" are possible to communicate a single underlying model. [Issue being considered by BS]
AT notes that some communities (e.g. the Workflow Management Coalition) have criticised languages that make heavy use of the Lisp notation (e.g. PIF). Others have criticised C like languages. Many alternative presentations are possible to meet the preferences of specific communities. However, a keyword based syntax much like Pascal is often used as pseudo-code as it is easily readable. The SPAR Reference Language could perhaps use such a format. It could have major semantic entities defined with a keyword (such as activity, agent, object, plan) and ended by a bracketing end-keyword. It could then have sub-fields (its attributes) defined with a minor key-word with appropriate separatotrs such as "," and ended by ";" for the attributes or sub-fields of the major semantic entity's definition.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0021 | 0.0a | 97-10-01 | C | AT | AT | AP | 0.2 |
Should Objective, ActivitySpecification, ActivityConstraint and WorldStateConstraint have an attribute Sub-XXX to themselves. This would allow very simple merging of such specifications and constraint descriptions. The semantics is simple (conjunction of all the constraints in the specifications). But there are other ways to describe this conjunction in the representation already. Is such redundancy desirable?
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0022 | 0.0a | 97-10-03 | C | AT | AT | 0.2 |
The following paragraph could add detail to the section on Terminology. A more detailed description of the same thing is available in the Enterprise Ontology if alternative text is required [Fraser and Tate, 1995].
Some means to regularise the terminology used to associate functional or truth values with some relationships is also required. The following three definitions seek to do this in a general and minimum commitment way.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0023 | 0.0a | 97-10-03 | C | AT | BS | KM,AT,AP | 0.3 |
It is possible to add temporally scoped versions of some relevant static attributes to SPAR as new RELATIONSHIPS. In this case, the original static attributes specified in SPAR still hold true for all time. ACTIVITY-STATUS is an example of a relationship between a time specification and an activity).
An example of one such RELATIONSHIP in SPAR is ACTIVITY-STATUS which is used to represent the status (e.g. COMPLETED, DELAYED, PENDING) of an ACTIVITY at different times. ACTIVITY-STATUS is one example of a dynamic property of those entities commonly used in process modeling and workflow systems and modelled in SPAR.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0024 | 0.0a | 97-10-03 | C | AT | BS | KM,AT,AP | 0.3 |
Soft constraints are yet to be explicitly provided for.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0025 | 0.0a | 97-10-04 | C | AT | AT | 0.3 |
A mechanism for creating extensions of the SPAR structure beyond the plug-in grammars should be considered. This could use the PIF [Lee et. al., 1996] Partial Shared Views (PSV [Lee and Malone, 1990]) mechanism.
A mechanism (probably web-based) to propose, accept or register such extensions and have them made available should be considered.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0026 | 0.0a | 97-10-05 | C | AT | AT | 0.2 |
An entity type called AuxiliaryConstraints could be introduced to cluster all the ActivityConstraints other than Object and TimePoint Constraints which are more fundamental to the model, and which have an influence on the other constraints through object correspondences and temporal relationships. There are specific minimum requirements on Object and TimePoint Constraints whereas the other constraints have no minimum requirements. Clustering them under a single type could make modularity of the structure more easily preserved as advances take place in the unification of approaches to handling constraints in planners and schedulers.
The terminology of Auxiliary Constraints arises from the treatment of constraints in refinement style planners [Khambhampati, 1997]
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0027 | 0.0a | 97-10-05 | C | AT | AP | 1.0 |
It could be worth ensuring that SPAR language syntax can be represented in and communicated through CDIF (http://www.cdif.org).
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0028 | 0.0a | 97-10-05 | X | OL | AP | 1.0 |
OL = Ora Lassila of the WWW Consortium
Relating to the actual (physical) distribution of plans, ontologies etc., we (the World Wide Web Consortium) have on 3-Oct-97 released the first public draft of a standard proposal for distributed WWW-based metadata [WWW, 1997]. The system could be a basis for building actual knowledge representation systems for the web.
This could be relevant to SPAR in two ways:
SPAR could provide a plug in grammar for annotations that allows for markup of a plan for publishing in WWW RDF format (WWWRDFAnnotatonSyntax).
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0029 | 0.0a | 97-10-05 | C | SK,DW | BS | AT | 0.3 |
The SPAR framework may be able to use PDDL [McDermott et. al., 1997] to provide the recommended detailed models for actions constraints (based on HTN - UMCP [Erol, Hendler, and Nau, 1994]) and for situations/state (based on ADL [Pednault, 1989]).
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0030 | 0.0a | 97-10-06 | C | AP | AP | 1.0 |
It could be an advantage to have a clear mapping to the Unified Modelling Language (UML).
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0031 | 0.0a | 97-10-06 | C | BS | BS | AT | 0.3 |
It may be an advantage to use a more expressive object representation in SPAR. There could be benefits in using more sophisticated KR systems, and a lot could be gained by closer coupling between the KR and planning communities. Candidates we should consider would include KIF, Ontolingua, Loom and PowerLoom. All of these are well-documented and widely used representations, so they would providing an existing basis to build upon. Furthermore, using any one of them would help make the SPAR effort more connected with the various ontology efforts that DARPA is supporting. We need to think through what the tradeoffs are in using a more sophisticated representation.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0032 | 0.0b | 97-10-10 | C | AP | AT | AP | 0.2 |
Then at a second level of detail, the statements are:
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0033 | 0.0b | 97-10-11 | C | AT | AT | 0.3 |
Calendar is defined in 0.0b as an entity with some attribute structure. It may be desirable to define Calendar (as for location) with a single attribute which is defined by a plug in syntax. The Standard Calendar could then provide the equivalent of the structure currently defined in the Calendar attributes.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0034 | 0.0b | 97-10-12 | C | AT | AT | 0.2 |
The entity for an Agent has specified structure in having a Capability attribute. Is this an overcommitment or is this generally useful to standardise some structure for this. A more general definition would drop the capability attribute and leave the definition of this to a pl,ug in syntax for agent specification which had no minimum requirements.
Recommendation: Retain Capability attribute to provide a minimum shared structure for agent models.
Issue No. | Version | Date | Source | Raised By | Core Handler | Others Involved | Target to Resolve | Resolved Version |
---|---|---|---|---|---|---|---|---|
0036 | 0.0a | 97-10-17 | C | KM | KM | AT | 0.2 |
KM has pointed out that there is a need to consider the nature of states-of-affairs, the more specific world model entity, and WorldStateConstraints. World State in AI planners is often narrowly interpreted as state at a specific point in time. States-of-affairs is intended to be much broader.
It remains to be established what entities are actually needed and their relationship to states-of-affairs and to more specific WorldStateConstraints.
Acronym and Reference | Meaning |
---|---|
ACP | Air Campaign Planning |
ARPI | DARPA/Rome Laboratory Planning Initiative |
CDIF | CASE Data Interchange Format |
CPR | Core Plan Representation |
DARPA | Defense Advanced Research Projects Agency |
DoD | Department of Defense |
IDEF | Integrated DEFinition |
<I-N-OVA> | Issues, Nodes, Orderings/Variables/Auxiliary Constraint Model of Activity |
JFACC | Joint Forces Air Component Commander |
JTF ATD | Joint Task Force Advanced Technology Demonstration |
KRSL | Knowledge Representation Source Language |
NIAM | Nijssen's Information Analysis Method |
OMWG | Object Model Working Group |
O-Plan | Open Planning Architecture |
PIF | Process Interchange Format |
POCG | Plan Ontology Construction Group (of ARPI) |
... | ... |
Version Number | Version Date | Document |
---|---|---|
0.0 | 25-Sep-97 | Initial model diagram from SPAR Core Group Meeting 1 |
0.0a | 06-Oct-97 | Initial SPAR document prepared by Austin Tate |
0.0b | 17-Oct-97 | Included requirements section from Steve Polyak | 0.1 | 31-Oct-97 | First published version |
ARPI Home Page | SPAR Home Page | Top of Document |