Presentation is loading. Please wait.

Presentation is loading. Please wait.

Planning systems and its’ applications in software engineering Saša Tošić, M. Ivanović Risan, 2007.

Similar presentations


Presentation on theme: "Planning systems and its’ applications in software engineering Saša Tošić, M. Ivanović Risan, 2007."— Presentation transcript:

1 Planning systems and its’ applications in software engineering Saša Tošić, M. Ivanović Risan, 2007

2 Contents What are planning systems Agent planning package Planning systems and SE Example

3 What are planning systems? Action-based systems that generates plans Plan is a sequence of parameterized actions which transforms initial states into a goal state Planning formalisms and languages: Strips, ADL, PDDL … PDDL (planning domain definition language): standard planning language

4 Example Initial State Planning sequence Plan: A(x, y), B(x, y), C(x, y) Goal State Temporary states A(x, y)C(x, y)B(x,y)

5 What do we need? Planning instance Planning Domain Actions Predicates Functions Types Constants Planning problem Initial state of a system Goal (set of tasks to be achieved)

6 Actions in planning systems Name Parameters Preconditions Effects Duration (default 1) Cost, probability, …

7 APP – Agent planning package Developed at University in Novi Sad Helps to create intelligent agents Domain independent planning system for PDDL2.1 Written in Java in form of a Java package Enables plan creation and execution

8 APP – Agent planning package APP can handle several planning instances Generated plans are part of a planning instance

9 APP – Agent planning package Modules Data manipulation Plan searching Plan execution and monitoring Plan validation and verification

10 APP – Agent planning package Types of a plan SingleAction Serial plan Parallel plan Alternative plan Multiple plans Plans can be mixed

11 Modeling and model checking We can create a model of our software and check it Modeling Initial state must be modeled ( using objects, constants, predicates, functions…) One action in planning domain is one or more actions in our software

12 Model checking Planning systems can check if actions are modeled well Model checking How we can do something in our software? What is the plan for that goal? How we can detect errors? No plan (it is not possible to do it) Invalid plan

13 Example Initial State Planning sequence Plan: A(x, y), B(x, y), C(x, y) Goal State Temporary states A(x, y)C(x, y)B(x,y)

14 Example (action A :parameters (?x ?y – objects) :precondition (and (point ?x)) :effects (connected ?x ?y)) (action B :parameters (?x ?y – objects) :precondition (selected ?x ?y) :effects (connected ?x ?y))

15 Example (action C :parameters (?x ?y – objects) :precondition (connected ?x ?y) :effects (doneC)) Initial state: (point x) (point y) Goal: (doneC)

16 Example Plan generated by APP: no plan is found Reason: (action A :parameters (?x ?y – objects) :precondition (and (point ?x) (point ?y)) :effects (connected ?x ?y))

17 Example Plan generated by APP: A(x, y), C(x, y) Reason: (action A :parameters (?x ?y – objects) :precondition (and (point ?x) (point ?y)) :effects (selected ?x ?y))

18 Example Plan generated by APP: A(x, y), B(x, y), C(x, y) APP can automatically create plans for large number of goals

19 Conclusion Powerful tool for model checking Detects different kinds of errors Simulation of plan execution can help to detect errors

20 The End Thank you for your attention


Download ppt "Planning systems and its’ applications in software engineering Saša Tošić, M. Ivanović Risan, 2007."

Similar presentations


Ads by Google