Planning Ontology

Ontology to model Automated Planning Domain

Authors: Bharath Muppasani 1, Vishal Pallagani 1, Biplav Srivastava 1, Raghava Mutharaju 2, Michael N. Huhns 1, Vignesh Narayanan 1
1. University of South Carolina, USA
2. IIIT-Delhi, Delhi, India

Resource type: Ontology, Knowledge Graph
License
https://creativecommons.org/licenses/by/4.0/legalcode
Version Iri
https://purl.org/ai4s/ontology/planning/v2.0
Version Info

2.0

URL : GitHub

Description

Automating planning and decision-making tasks is a fundamental goal of artificial intelligence (AI) research. The vast number of available planners and diverse planning domains carry essential information that can be leveraged to improve planner performance. For instance, by analyzing the performance of different planners on various problem configurations, we can identify which planners excel in particular domains and improve their efficiency. To address this issue, we propose a novel approach that employs an ontology to represent the characteristics of planning domains and the capabilities of planners. We gather data on planning domains and planners from the International Planning Competition (IPC) to construct the ontology. Our ontology for AI planning captures critical parameters relevant to planning, including the best planners for a given problem configuration, the ranking of relevant heuristics, and macros to aid in solving complex problems. The ontology represents planning resources, enabling their reuse and improving planner performance.

Introduction

Automated planning, where the objective is to find a sequence of actions that will transition an agent from the initial state of the world to a desired goal state, is an active sub-field of Artificial Intelligence (AI). The ability to generate plans and make decisions in complex domains, such as robotics, logistics, and manufacturing, has led to significant progress in the automation of planning. Currently, there are numerous planning domains, planners, search algorithms, and associated heuristics in the field of automated planning. Each planner, in conjunction with a search algorithm and heuristic, generates plans with varying degrees of quality, cost, and optimality. The empirical results available for various planning problems, ranked by planner performance and the heuristics used as available in International Planning Competition (IPC), can provide valuable information to identify various tunable parameters to improve planner performance. Traditionally, improving planner performance involves manually curating potential combinations to identify the optimal planner configuration. However, there has been limited effort to model the available information in a structured knowledge representation, such as an ontology, to facilitate efficient reasoning and further enhance planner performance.

To address the challenge of representing planning problems and associated information in a structured manner, we propose an ontology for AI planning. An ontology is a formal representation of concepts and their relationships, which enables systematic analysis of planning domains and planners. The proposed ontology captures the features of a domain and the capabilities of planners, facilitating reasoning with existing planning problems, identifying similarities, and suggesting different planner configurations. Planning ontology can also be a useful resource for the creation of new planners as it captures essential information about planning domains and planners, which can be leveraged to design more efficient planning algorithms. Furthermore, ontology can promote knowledge sharing and collaboration within the planning community.

In the field of planning, several attempts have been made to create ontologies to enhance the understanding of planners’ capabilities. For instance, Plan-Taxonomy introduced a taxonomy that aimed to explain the functionality of planners. In PLANET, authors present a comprehensive ontology called which represents plans in real-world domains and can be leveraged to construct new applications. Nonetheless, the reusability of PLANET is limited as it is not open-sourced. Consequently, researchers face difficulty in extending or replicating the ontology.

Contributions

We build an ontology for planning with the aim to identify and improve an efficient planner for a domain based on performance. For this, we leverage information obtained from the IPC. Building a planning ontology using data from IPC offers several benefits such as a comprehensive coverage of planning domains, a rich source for various benchmark evaluation metrics, and documentation for the planners. However, the ontology is not limited to the PDDL representation or domains in IPC, and can easily be extended to any. Our contributions are at the intersection of ontologies and AI planning in ontology development and showing benefits in two usecases:

  1. Ontology Development: We developed an ontology for AI planning that can be used to represent and organize knowledge related to planning problems. This ontology provides a structured way to capture the relationships between different planning concepts and enables more efficient and effective knowledge sharing and reuse.
  2. Usecase 1: Identifying Most Promising Planner for Performance: We demonstrate the ontology’s usage for identifying best-performing planner for a specific planning domain using data of IPC-2011.
  3. Usecase 2: Macro Selection for Improving Planner Performance: We demonstrate the usage of ontology to extract domain-specific macros - which are action orderings - and show that they can improve planner performance drastically.

Visualization

Classes

Parameter c

IRI http://caressesrobot.org/ontology#Parameter
Description

a class that represents what is involved in an action

In Domain Of planning-ontology:ofParameterType op
In Range Of planning-ontology:hasParameter op

State c

IRI http://purl.org/vocab/lifecycle/schema#State
Description

represents a situation or a configuration of the world in a planning problem

In Range Of
Super Class Of

Action Effect c

IRI https://purl.org/ai4s/ontology/planning#ActionEffect
Description

a class that represents what happens after an action is done

In Domain Of
In Range Of planning-ontology:hasEffect op
Restriction

Action Precondition c

IRI https://purl.org/ai4s/ontology/planning#ActionPrecondition
Description

a class that represents what needs to be true before an action can be done

In Range Of planning-ontology:hasPrecondition op

Domain Constant c

IRI https://purl.org/ai4s/ontology/planning#DomainConstant
Description

represents a fixed entity in a planning domain

In Range Of planning-ontology:hasConstant op

Domain Predicate c

IRI https://purl.org/ai4s/ontology/planning#DomainPredicate
Description

a class that represents a condition or a fact that can be true or false in a planning domain

In Range Of planning-ontology:hasPredicate op

Domain Requirement c

IRI https://purl.org/ai4s/ontology/planning#DomainRequirement
Description

A feature that a planning domain requires or supports

In Domain Of planning-ontology:solvedBy op
In Range Of

Goal State c

IRI https://purl.org/ai4s/ontology/planning#GoalState
Description

represents a desired or a target state defined in a task that a plan should achieve

Sub Class Of http://purl.org/vocab/lifecycle/schema#State c
In Range Of planning-ontology:hasGoalState op

Initial State c

IRI https://purl.org/ai4s/ontology/planning#InitialState
Description

represents the starting or the given state of a planning problem

Sub Class Of http://purl.org/vocab/lifecycle/schema#State c
In Range Of planning-ontology:hasInitialState op

Macro Action c

IRI https://purl.org/ai4s/ontology/planning#MacroAction
Description

Extracted macro action, which is a combination of multiple actions of a planning domain

Sub Class Of http://caressesrobot.org/ontology#Action c
In Range Of planning-ontology:hasExtractedAction op

Parameter Type c

IRI https://purl.org/ai4s/ontology/planning#ParameterType
Description

represents a kind of entity in a planning domain

In Domain Of
In Range Of

Planner Type c

IRI https://purl.org/ai4s/ontology/planning#PlannerType
Description

a category or classification of planners based on their characteristics or features

In Range Of planning-ontology:ofPlannerType op

Planning Problem c

IRI https://purl.org/ai4s/ontology/planning#PlanningProblem
Description

represents a task of the planning domain that requires a plan to be solved

In Domain Of
In Range Of planning-ontology:hasProblem op
Restriction

Problem Object c

IRI https://purl.org/ai4s/ontology/planning#ProblemObject
Description

represents an entity or a constant that is involved in a planning problem

In Range Of

Object Properties

adds predicate op

IRI https://purl.org/ai4s/ontology/planning#addsPredicate
Description

a property that relates an effect to a state that adds a predicate to it

Domain planning-ontology:ActionEffect c
Range http://purl.org/vocab/lifecycle/schema#State c

deletes predicate op

IRI https://purl.org/ai4s/ontology/planning#deletesPredicate
Description

a property that relates an effect to a state that deletes a predicate from it

Domain planning-ontology:ActionEffect c
Range http://purl.org/vocab/lifecycle/schema#State c

has action op

IRI https://purl.org/ai4s/ontology/planning#hasAction
Description

a property that relates a planning domain to a domain action that is available in it

Domain planning-ontology:PlanningDomain c
Range http://caressesrobot.org/ontology#Action c

has constant op

IRI https://purl.org/ai4s/ontology/planning#hasConstant
Description

a property that relates a planning domain to a domain constant that is defined in it

Domain planning-ontology:PlanningDomain c
Range planning-ontology:DomainConstant c

has effect op

IRI https://purl.org/ai4s/ontology/planning#hasEffect
Description

a property that relates an action to an action effect that results from it

Domain http://caressesrobot.org/ontology#Action c
Range planning-ontology:ActionEffect c

has extracted action op

IRI https://purl.org/ai4s/ontology/planning#hasExtractedAction
Description

a property that relates a planning domain to an action that is extracted from its plan

Domain planning-ontology:PlanningDomain c
Range planning-ontology:MacroAction c

has goal state op

IRI https://purl.org/ai4s/ontology/planning#hasGoalState
Description

a property that relates a planning problem to a goal state that is desired for it

Domain planning-ontology:PlanningProblem c
Range planning-ontology:GoalState c

has high relevance planner op

IRI https://purl.org/ai4s/ontology/planning#hasHighRelevancePlanner
Description

a property that relates a planning domain to a planner that has a high relevance score for it

Domain planning-ontology:PlanningDomain c
Range planning-ontology:Planner c

has initial state op

IRI https://purl.org/ai4s/ontology/planning#hasInitialState
Description

a property that relates a planning problem to an initial state that is given for it

Domain planning-ontology:PlanningProblem c
Range planning-ontology:InitialState c

has low relevance planner op

IRI https://purl.org/ai4s/ontology/planning#hasLowRelevancePlanner
Description

a property that relates a planning domain to a planner that has a low relevance score for it

Domain planning-ontology:PlanningDomain c
Range planning-ontology:Planner c

has medium relevance planner op

IRI https://purl.org/ai4s/ontology/planning#hasMediumRelevancePlanner
Description

a property that relates a planning domain to a planner that has a medium relevance score for it

Domain planning-ontology:PlanningDomain c
Range planning-ontology:Planner c

has object op

IRI https://purl.org/ai4s/ontology/planning#hasObject
Description

a property that relates a planning problem to a problem object that is involved in it

Domain planning-ontology:PlanningProblem c
Range planning-ontology:ProblemObject c

has pddl type instance op

IRI https://purl.org/ai4s/ontology/planning#hasPDDLTypeInstance
Description

a property that relates a type to a problem object that is an instance of it

Domain planning-ontology:ParameterType c
Range planning-ontology:ProblemObject c

has parameter op

IRI https://purl.org/ai4s/ontology/planning#hasParameter
Description

a property that relates an action to an action parameter that is involved in it

Domain http://caressesrobot.org/ontology#Action c
Range http://caressesrobot.org/ontology#Parameter c

has parameter type op

IRI https://purl.org/ai4s/ontology/planning#hasParameterType
Description

a property that relates a planning domain to a type

Domain planning-ontology:PlanningDomain c
Range planning-ontology:ParameterType c

has plan op

IRI https://purl.org/ai4s/ontology/planning#hasPlan
Description

a property that relates a planning problem to a plan that solves it

Domain planning-ontology:PlanningProblem c
Range http://www.ontologydesignpatterns.org/ont/dul/DUL.owl#Plan c

has precondition op

IRI https://purl.org/ai4s/ontology/planning#hasPrecondition
Description

a property that relates an action to an action precondition that is required for it

Domain http://caressesrobot.org/ontology#Action c
Range planning-ontology:ActionPrecondition c

has predicate op

IRI https://purl.org/ai4s/ontology/planning#hasPredicate
Description

a property that relates a planning domain to a domain predicate that is defined in it

Domain planning-ontology:PlanningDomain c
Range planning-ontology:DomainPredicate c

has problem op

IRI https://purl.org/ai4s/ontology/planning#hasProblem
Description

a property that relates a planning domain to a planning problem that is defined in it

Domain planning-ontology:PlanningDomain c
Range planning-ontology:PlanningProblem c

has requirement op

IRI https://purl.org/ai4s/ontology/planning#hasRequirement
Description

a property that relates a planning domain or problem to a domain requirement that is required or supported by it

Domain planning-ontology:PlanningDomain c
Range planning-ontology:DomainRequirement c

has tag op

IRI https://purl.org/ai4s/ontology/planning#hasTag
Description

a property that relates a type to a type tag that labels it

Domain planning-ontology:ParameterType c

is generated by op

IRI https://purl.org/ai4s/ontology/planning#isGeneratedBy
Description

a property that relates a plan to a planner that generates it

Domain http://www.ontologydesignpatterns.org/ont/dul/DUL.owl#Plan c
Range planning-ontology:Planner c

of parameter type op

IRI https://purl.org/ai4s/ontology/planning#ofParameterType
Description

a property that relates an action parameter to a type that classifies it

Domain http://caressesrobot.org/ontology#Parameter c
Range planning-ontology:ParameterType c

of planner type op

IRI https://purl.org/ai4s/ontology/planning#ofPlannerType
Description

a property that relates a planner to a planner type that categorizes it

Domain planning-ontology:Planner c
Range planning-ontology:PlannerType c

solved by op

IRI https://purl.org/ai4s/ontology/planning#solvedBy
Description

a property that relates a domain requirement to a planner that solves it

Domain planning-ontology:DomainRequirement c
Range planning-ontology:Planner c

solves requirement op

IRI https://purl.org/ai4s/ontology/planning#solvesRequirement
Description

a property that relates a planner to a domain requirement that it can handle or satisfy

Domain planning-ontology:Planner c
Range planning-ontology:DomainRequirement c

Datatype Properties

has action explanation dp

IRI https://purl.org/ai4s/ontology/planning#hasActionExplanation
Domain http://caressesrobot.org/ontology#Action c
Range xsd:string

has model reconciliation explanation dp

IRI https://purl.org/ai4s/ontology/planning#hasModelReconciliationExplanation
Domain planning-ontology:PlanningDomain c
Range xsd:string

has plan cost dp

IRI https://purl.org/ai4s/ontology/planning#hasPlanCost
Domain http://www.ontologydesignpatterns.org/ont/dul/DUL.owl#Plan c
Range xsd:nonNegativeInteger

has plan explanation dp

IRI https://purl.org/ai4s/ontology/planning#hasPlanExplanation
Domain http://www.ontologydesignpatterns.org/ont/dul/DUL.owl#Plan c
Range xsd:string

Annotation Properties

contributor ap

IRI http://purl.org/dc/terms/contributor

creator ap

IRI http://purl.org/dc/terms/creator

description ap

IRI http://purl.org/dc/terms/description

language ap

IRI http://purl.org/dc/terms/language

license ap

IRI http://purl.org/dc/terms/license

title ap

IRI http://purl.org/dc/terms/title

Authors ap

IRI https://purl.org/ai4s/ontology/planning#Authors

Namespaces

:
https://purl.org/ai4s/ontology/planning
dcterms
http://purl.org/dc/terms/
ontology
https://purl.org/ai4s/ontology/
owl
http://www.w3.org/2002/07/owl#
planning-ontology
https://purl.org/ai4s/ontology/planning#
prov
http://www.w3.org/ns/prov#
rdf
http://www.w3.org/1999/02/22-rdf-syntax-ns#
rdfs
http://www.w3.org/2000/01/rdf-schema#
xsd
http://www.w3.org/2001/XMLSchema#

Legend

c Classes
op Object Properties
dp Datatype Properties
ap Annotation Properties

made by p y LODE 3.0.6a with the OntPub profile

Table of Contents