A new hierarchical approach to requirement analysis of problems in automated planning

https://doi.org/10.1016/j.engappai.2019.02.019Get rights and content

Abstract

The use of Knowledge Engineering (KE) processes to analyze and configure domains in automated planning is becoming more appealing since it was noticed that this issue could make a difference to solve real problems. The contrast between a generic domain independent approach, taken as canonical in AI, and alternative processes that include knowledge engineering – eventually adding specific knowledge – has been discussed by Computer and Engineering communities. A big impact has been noticed mainly in the early phase of requirement analysis when KE approach is normally introduced. Requirement analysis is responsible for carrying out the Knowledge modeling of both problem and work domains, which is a key issue to guide different planner algorithms to come out with efficient solutions. Also, there is the scalability issue that appear in most real problems. To face that, hierarchical methods played an important hole in the history of planning and inspired several solutions since the proposal of NONLIN in the 70’s. Since then, the idea of associating hierarchical relational nets with partial ordered actions has prevailed when large systems were considered. However, there is still a gap between the hierarchical approach and the state of art of requirements analysis to allow features anticipated by KE approach to really appear in the requirements of a planning process. This paper proposes a pathway to solve this gap starting with requirements elicitation represented first in the conventional semi-formal (diagrammatic) language – UML – that is translated to Hierarchical Petri Nets (HPNs) by a new enhanced algorithm. The proposed process was installed in a software tool – developed by one of the authors – that analyzes the performance of the KE planning model: itSIMPLE (Integrated Tools Software Interface for Modeling Planning Environment). This tool was initially designed to use classic Place/Transition nets and an old version of UML (2.1). It is now enhanced to use UML 2.4 and a hierarchical Petri Net extension, also developed by the authors. Realistic examples illustrate the process which is now being applied to larger problems related to the manufacturing of car sequencing domain, one of challenge of ROADEF 2005 (French Operations Research & Decision Support Society). Finally, we consider the possibility to introduce another approach to the KE process by using KAOS (Keep All Object Satisfied) to make the planning design more accurate.

Introduction

Planning defines a specific type of state-transition problem where the goal is to find an admissible sequence of actions to bring the system from a given initial state to a target final state. Some approaches in the literature aim to improve the performance of intelligent automated planners by trying to optimize search algorithms for a general solution (Edelkamp and Jabbar, 2006). In addition, most existing work on AI planning use a domain independent approach where specific knowledge and restrictions of the target problem are not modeled and analyzed in the planning domain. However, even domain independent approaches lead to very smart solution frameworks – normally based on STRIPS – and in practice, can be adapted to solve real problems. In this work, a domain-independent general approach is still used as inspiration for planners algorithms, but before planners start the search for a sequence of actions that lead to the final state the whole planning domain is modeled and analyzed based on requirements (Vaquero et al., 2013b).

After extensive development combining domain independent and domain specific approaches some authors started to apply planning techniques to real world problems – as real logistic systems – with a great amount of variables, where a sole domain independent approach would be computationally prohibitive (Vaquero et al., 2012). That opened some space to alternative approaches that use also specific knowledge and a direct approach to the knowledge engineering process by building and modeling the problem domain. Such approach could lead to good results treating challenge problems and give some feedback on how to solve fully automated domain-independent problems.

Therefore, the automated planning area carries a dual challenge:

  • The dominant approach to solve AI planning problems is mainly domain independent. On the other hand, important solutions to real problems that could be inserted in intelligent automated devices – robots, autonomous domotic system, off-line logistic systems, etc. – would demand specific knowledge to achieve good performance.

  • Formal techniques, especially those for the domain independent approach, lead to solutions that can be applied in several demanding fields like logistics, diagnostic systems, navigation, space robots, satellite systems, etc. Therefore, there is also an emerging demand to use formal techniques to treat domain specific knowledge as well. This combination can provide good solutions and may contribute to a better understanding of the methods used in AI planning in Engineering applications.

Indeed, complex domains are hard to deal with when no abstraction is provided. In such domains, a hierarchical decomposition of the problem, based on a topological structure, can lead to better performance. The use of formal approaches to domain analysis such as Petri Net can then be justified.

For a case study we will take the challenge launched in ROADEF 2005 (Solnon et al., 2008), which brings a problem domain synthesized from automotive industry where a significant improvement in performance is achieved when hierarchical models are introduced. The advantage of hierarchical approach relies in the possibility to see abstract integration analysis – for assembling, painting, etc – without a sacrifice of the formalism. Details can be added (or reused) by the insertion of hierarchical components.

Another important domain is called Logistics which is also proposed in ROADEF, where a topological abstraction of the real world is the key issue to define problem requirements. In Logistics, several packages must be transported by planes from their initial location to various destinations. It is part of the input knowledge a map of cities connected by airline routes. Transportation inside cities can be done by trucks located on each city. Details about the cities are abstracted and treated as a set of connected streets — some of which are temporarily blocked or permanently unavailable. Inside a city, a truck can go from any point to any destination at no cost — in a simplified mode1  (Botea et al., 2003).

We will use both domains to illustrate requirement analysis using a formal procedure. In fact, this process starts by eliciting and representing requirements in UML 2.4 – a semi-formal presentation – before the formal modeling based on classic Petri Nets (Murata, 1989). This approach was embedded in a knowledge based tool called itSIMPLE (Integrated Tool and Knowledge Interface to the Modeling of Planning Environments) (Vaquero et al., 2013b, Vaquero et al., 2013a, Vaquero et al., 2007). The new approach presented in this paper update the representation of elicited requirements to UML 2.4 (originally UML 2.1 was used) and introduces the discussion about which would be the proper set of diagrams to be used besides analyzing pors and contras of this process. Formal requirements analysis is based on unified Petri Nets, that is, on nets that follows ISO/IEC 15.909 standard, which implies in having in the same environment a classic Place/Transition, High-Level and Asymmetric net and user extensions such as the hierarchical approach presented here. A transfer language based on XML is part of the standard – PNML (Petri Net Markup Language) (Weber and Kindler, 2003) – and is used to link UML specification and domain model.

In the original itSIMPLE system requirements are analyzed with hierarchical nets should be translated to a transfer language understood by planners. If the analysis is done in classic Petri Nets this transfer language is the Planning Domain Definition Language — PDDL (Kovacs, 2011, Strobel and Kirsch, 2014), but to hierarchical approach the specification should be adapted to SHOP2 Nau et al. (2013) to obtain practical results.

The paper organization is described as: Section 2 introduces automated planning approaches. Section 3 will focus on the knowledge engineering approach, particularly in state of art of requirements analysis, using semi-formal and formal methods to requirement analysis, to move from a potentially inconsistent set of requirements to a stable and consistent formal set in Petri Nets. Section 4 will show some aspects about the design process used in automated planning, followed by a brief description of itSIMPLE environment. The proposed approach is introduced in Section 5, based on dynamic analysis of hierarchical planning domains. Formal analysis in Petri Nets depend on a new algorithm proposed in Section 6. A case study is presented in Section 7, based on a manufacturing problem extracted from ROADEF 2005 challenge, that illustrate the use of hierarchy. Finally, Section 8 presents a further possibility to enhance the requirements analysis by using Goal Oriented Requirements Engineering instead of UML. Moving to objective requirements can improve reliability since the planning designer does not have to worry with the equilibrium between functional and non-functional requirements.

Section snippets

Automated planning approach

According to Ghallab et al. (2004) Automated Planning is a sub-area of Artificial Intelligence which studies planning processes over a computational environment. Here, planning process focus on choosing and ordering a sequence of actions to achieve an objective goal, a key issue for service systems and intelligent machines.

From an initial state s0, a goal state sk can be reached by a repeated execution of admissible actions belonging to a set A. Therefore, a planning problem P={s0,sk,A} can be

Requirement analysis approaches: Formal and semi-formal methods

The Knowledge Engineering approach for automated planning has been discussed since the 90’s (McCluskey and Porteous, 1993). Later, a new proposal was presented and software tools were developed by McCluskey (2002). However, by that time KE problems were dissociated from AI planning life cycle, specifically in what concerns the previous earlier phase of requirements modeling analysis. A totally integrated proposal was presented by Vaquero (2011).

O-Plan was a precursor tool in the acquisition and

itSIMPLE: Integrated Tools and Software Interface for Modeling Planning Environment

The interest in solving real world problems using AI Planning techniques has been growing significantly in the last few years (Orlandini et al., 2013). In general, planning community has focused in achieving planners efficiency, but neglecting, or giving few attention to KE analysis (Zimmerman and Kambhampati, 2003, Upal, 2005) which is important to deal with complex real problems.

To conduct KE analysis of an AI planning problem it is necessary to determine all features of the system in which

Automation and dynamic analysis

Classic itSIMPLE has been revised to enhance its capability to model real problems in automation, which addresses machine intelligence. That implies in improving KE discipline and enhance scale by introducing a hierarchical approach and dynamic analysis using Hierarchical Petri Nets. A minimum set of UML diagrams is identified to turn elicitation and its representation a regular process and bring some light in the supposed redundancy of information among UML diagrams.

Originally, itSIMPLE used

Translation algorithm from UML to Petri nets

Our proposal includes the use of UML 2.4, especially the use of Behavioral Statechart diagram for modeling the whole system in a hierarchical way. The hierarchical approach over the initial model leads to use an hierarchical approach translated directly to High level Petri nets to perform the requirement analysis as suggested by Dana Nau and partners (Nau et al., 2013). However, it became clear that the modeling process could fit better a direct abstract process based on hierarchical extension

CaSe study: ROADEF 2005 - Car sequencing domain

Requirements for the Car Sequencing problem were extracted from a set of challenges called ROADEF 20054 provided by companies to the academy. For Car Sequencing problem customer orders are sent to car factories in real-time and the factory must assign the production to ordered cars according to delivery dates, constraints and production line capabilities. A car sequence must be established daily and its

Improving the knowledge engineering process by using goal oriented requirements

In the original itSIMPLE environment requirements were specified using basically state and object diagrams — sometimes also using activity diagrams. There was not direct relation between activity diagrams and actions, what was inserted in the current proposal.

UML was initially maintained as the representation for requirements because the expectation was that upgrading from version 1.0 to 2.1 would cover the lacks in the knowledge engineering approach observed using itSIMPLE. Other expectations

Conclusion

Knowledge Engineering for AI applications gain more attention in the academia due the possibility of contributing with new methods and approaches to face real applications, as for instance, games (Millington and Funge, 2016) or traffic problems (Hobbs, 2016). There is also a demand to apply AI planning methods to manufacturing (Tonaco-Basbaum et al., 2016, Parkinson et al., 2016, Simpson et al., 2014, OMG, 2013) which seems to be very promising to industrial automation, specially if implies the

References (59)

  • DobingB. et al.

    Understanding the adoption of use case narratives in the unified modeling language

  • D’SouzaD.F. et al.

    Objects, Components and Frameworks with UML: The Catalysis Approach

    (1999)
  • GhallabM. et al.
  • González-FerrerA. et al.

    JABBAH: a java application framework for the translation between business process models and HTN

  • GuerraE. et al.

    A framework for the verification of uml models. examples using petri nets

    JISBD 03: VIII Jornadas de Ingeniería del Software y Bases de Datos

    (2003)
  • HobbsF.D.

    Traffic Planning and Engineering

    (2016)
  • IlghamiO.

    Documentation for JSHOP2, Tech. Rep

    (2006)
  • KovacsD.L.

    BNF Definition of pddl 3.1

    Proceedings of ICAPS

    (2011)
  • LamsweerdeA.V.

    Elaborating security requirements by construction of intentional anti-models

  • LamsweerdeA.v.

    Requirements Engineering: From System Goals to UML Models to Software Specifications, Vol. I

    (2009)
  • LamsweerdeA.V.

    Requirements Engineering: From System Goals to UML Models to Software Specifications

    (2009)
  • LiuX.F. et al.

    An analytic framework for specifying and analyzing imprecise requirements

  • McCluskeyT.L.

    Knowledge engineering: Issues for the AI planning community

  • McCluskeyT.L.

    Pddlbel: A language with a purpose?

  • McCluskeyT. et al.
  • MillingtonI. et al.

    Artificial Intelligence for Games

    (2016)
  • MurataT.

    Petri nets: Properties, analysis and applications

    Proc. IEEE

    (1989)
  • MyersK.L. et al.

    The Act Formalism, Version 2.2. SRI International Artificial Intelligence Center Technical Report

    (1997)
  • NauD.S. et al.

    Shop2: An htn planning system

    J. Artif. Intell. Res. (JAIR)

    (2013)
  • Cited by (8)

    View all citing articles on Scopus

    No author associated with this paper has disclosed any potential or pertinent conflicts which may be perceived to have impending conflict with this work. For full disclosure statements refer to https://doi.org/10.1016/j.engappai.2019.02.019..

    View full text