Top Banner
1 Configuring the Cloud Automated Planning as a Semantic Technology Blazej Bulka, PhD Clark & Parsia, LLC [email protected] www.clarkparsia.com Stuart Charlton Elastra [email protected] www.elastra.com 2010 Semantic Technology Conference
38
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Automated Planning as a Semantic Technology

1

Configuring the CloudAutomated Planning as a Semantic

Technology

Blazej Bulka, PhDClark & Parsia, LLC

[email protected]

Stuart CharltonElastra

[email protected]

2010 Semantic TechnologyConference

Page 2: Automated Planning as a Semantic Technology

Who we are?

Clark & Parsia is a semantic software startup

Offices in DC and Cambridge, MA

Software products for end-user and OEM use

Provides software development and integration services

Specializing in Semantic Web, web services, and advanced AI technologies for federal and enterprise customers

Elastra is a cloud computing software startup

Offices in San Francisco, CA

Co-Funded by Amazon.com, Bay Partners, and Hummer Winblad

Provides software and services for helping organizations migrate and manage their applications in private and public clouds

Elastra Cloud Server available for Amazon Web Services and VMWare

Page 3: Automated Planning as a Semantic Technology

3

Outline

Introduction to automated planning Examples of planning systems Hierarchical planning Case Study: Planning in Cloud Computing Semantic technologies in planning:

HotPlanner from Clark & Parsia Conclusion

Page 4: Automated Planning as a Semantic Technology

4

Introduction to automated planning

Page 5: Automated Planning as a Semantic Technology

5

What is automated planning?

Automated process to determine which actions need to be taken to achieve a desired goal

Current state of the world Description of actions Goals and constraints

Planning system

Required actions (plan)

Multiple applications of produced plans− Software execution− Human execution− Assistance in solving a problem

Page 6: Automated Planning as a Semantic Technology

6

Simple exampleInstalling new software package

Current state of the world: Description of installed software packages and their dependencies

Available actions:

− Retrieve list of packages available for install from a server− Retrieve package dependencies− Download software package− Install software package

Goal: Install software package X

Plan – sequence of actions specifying which packages to download and install, and in which order

Page 7: Automated Planning as a Semantic Technology

7

Domain-dependent planning

Solves one type of problem well Specialized algorithm and data representation

(the designer encoded the structure of the problem and solution in the code)

Small modifications to problem (e.g., new kinds of dependencies between software packages) = modifications to the planning system

Larger modifications to problem = rewriting significant portions of the planning system

Page 8: Automated Planning as a Semantic Technology

8

Domain-independent planning Solves problems in multiple, entirely different

domains (e.g., software management, truck routing, space mission control)

Domain (actions, state of the world, goals) have to be specified in a way understandable to the planning system

Generic planning algorithm Modifications to planning problem (small or

large) – modifications to the domain specification = No change of planning system's code

Page 9: Automated Planning as a Semantic Technology

9

What makes a plan good?

Depends on the application Typical quality metrics

− Plan length (number of actions)− Makespan (time to execute the plan)− Plan cost (every action has a cost associated

with it)− Multi-objective metrics

Page 10: Automated Planning as a Semantic Technology

10

Examples of planning systems

Page 11: Automated Planning as a Semantic Technology

11

Space Exploration:Deep Space Network

Deep Space 1 (DS1)− First ever close pictures of a comet

(Borelly in 1999)

− Part of Deep Space Network

− Proof-of-concept for later systems

Benefits− Spacecraft autonomy

− Commands = goals

− Plan verification

− Execution monitoring

Images: nmp.nasa.gov/ds1/

Page 12: Automated Planning as a Semantic Technology

12

Earth Observing-1 Mission (EO-1)

Proof-of-concept for autonomous sensor web (incl. satellites, buoys etc.)

Autonomous analysis of data

Feature detection (e.g., fire) and decide to investigate on its own

Collaboration among multiple satellites

Plan activities: transmissions, power usage, set-up, camera usage

Dramatic increase in amount of scientifically usable data (1000 x ?)

Images: eo1.gsfc.nasa.gov

Page 13: Automated Planning as a Semantic Technology

13

Mars Exploration Rovers and MAPGEN

Autonomous execution of plans prepared on Earth

Very limited planning on Mars

MAPGEN – computer planning system assisting human planners

Can produce explanations of dependencies

Successor of MAPGEN is EUROPA (Extendable Uniform Remote Operations Planning Architecture)

Images: www.nasa.gov

Page 14: Automated Planning as a Semantic Technology

14

Xerox RMP

Planning system for Rack Mounted Printing prototype

− System with multiple parallel printing engines (for performance and fault tolerance)

− Sheet path planning (and re-planning in case of failure)

Images: Do, Ruml, and Zhou (ICAPS 2008 Proceedings)

Page 15: Automated Planning as a Semantic Technology

15

Planning in games

Strategy games and first-person shooters− Killzone 2 (Game of the Year 2009 in

Shooter category) 500 plans per second

− F.E.A.R. and Condemned: Criminal Origins

Page 16: Automated Planning as a Semantic Technology

1616

Page 17: Automated Planning as a Semantic Technology

1717

Page 18: Automated Planning as a Semantic Technology

18

Siemens Tecnomatix 9CAM-oriented planning tasks

Page 19: Automated Planning as a Semantic Technology

19

Hierarchical planning

Page 20: Automated Planning as a Semantic Technology

20

Hierarchical planning

HTN (Hierarchical Task Network) planning Hierarchy of actions/goals Hint on the problem structure from the domain expert Prevents reinventing the wheel by the planning system Planner can first solve high-level goals and then refine

lower-level ones Significant improvement in performance Designed templates of desired solutions (e.g., plans

that adhere to internal policies)

Page 21: Automated Planning as a Semantic Technology

21

Example HTN Plan

Goal: Have package X

Install package X

Download package list

Satisfy dependencies

for X

Goal: Have package X

Download X

InstallX

Have package Y

Have package Z

Install package Y

Satisfy dependencies

for Y

Download Y

InstallY

Already installed

Page 22: Automated Planning as a Semantic Technology

22

Case Study: Configuring the CloudWith Elastra Enterprise Cloud Server

Page 23: Automated Planning as a Semantic Technology

Elastra Enterprise Cloud Server

• Configure, Deploy, and Scale Multi-Tier Applications» Commercial and/or open source software

• Manage Applications Across a Hybrid Cloud» VMWare, Amazon Web Services, others

• Portable & Consistent Cloud Application Management

Federated Identity & Access Control

Application-Level Automation OS-Level AutomationMonitoring & Capacity

EventCorrelation Systems

Monitoring Systems

Configuration Agents

VirtualizationManagers

Public Cloud APIs3rd Party IT Systems

Integrate

DiscoverManageIntegratePublish

Subscribe

Automated Application Deployment & Scale OutPlanning & Orchestration

PDP PEP

Page 24: Automated Planning as a Semantic Technology

24

The Elastic Modeling Languages:OWL Ontologies for Cloud Computing

Page 25: Automated Planning as a Semantic Technology

Meeting the Challenges of IT Automation:How can these two servers communicate?

Possible areas of problems:• Security

» Bad credentials• Server Configuration

» Wrong IP or Port» Bad setup to listen or call

• Network Configuration» Wrong duplex» Bad DNS or DHCP

• Firewall Configuration» Ports or protocols not open

Page 26: Automated Planning as a Semantic Technology

How do we usually automate a configuration?

• Scripts & Runbooks

• In Situation X, do this• In Situation Y, do this• In Situation Y, but exception Z, do this• ….• Problems: Context, Variability, Timing & Transitions• Scripts require you to explicitly write out each control

transition, assume you know in advance the one right way to do things

• That’s fine in the small; in the large, it gets complicated.

26

Page 27: Automated Planning as a Semantic Technology

Elastra Next Generation Automation Engine:

Elastra Plan Composer

HTN Strategies

Strategy Examples:Configure Full SystemScale-Out a SystemRecover a Database

HTN TacticsSearch for Next Tactics :Set Firewall RulesRestore FilesystemInstall & Start ServiceProvision Network

HTN AtomicActions

Search for Atomic Bindings:Configuration Agent CalloutCloud API CalloutVirtualization Manager Callout

Application& Deployment

Data

(BackgroundIndividuals)

ElasticModeling

Languages(OWL v2 Ontology)

Clark & Parsia HotPlanner

Clark & Parsia Pellet

Jena + SPARQL

27

Page 28: Automated Planning as a Semantic Technology

Elastra’s Success Results with HotPlanner

• Reduced, More Maintainable Codebase» Custom SPARQL and Java Code to interpret RDF, vs.

HotPlanner’s Domain-Specific Language for HTN» Up to a 3x reduction in code length for various modules

• Performance» Ability to generate a plan in under a minute for a 20 server, 20

component, multi-tier system design» Typical planning time: 3 to 5 seconds, up to 15 for complex» Near-equivalent to classic manual SPARQL-based analyzer

• Visibility and Modifiability of Plan» Plans are just OWL-S processes, easy to parse, render to GUI,

and/or modify before execution

28

Page 29: Automated Planning as a Semantic Technology

29

Semantic Technologies in Planning

Page 30: Automated Planning as a Semantic Technology

30

Semantic technologies in planning

Semantic technologies have not been used together with planning frequently so far

− Promising opportunity Modern semantic technologies (RDF and

OWL) are relatively new compared to planning Planning finally became usable in real-world

settings− The two areas can contribute to each other− Many places where one area's weakness is

the other's strength

Page 31: Automated Planning as a Semantic Technology

31

Expressing planning domain

Planners depend on accurate formal description of planning domain

− Language to describe the current state of the world

− Goals

− Actions Parameters (e.g., install package X) Preconditions (when an action may be executed) Effects (what changes in the world when the action is executed) Hierarchy

Ideal solution− Expressive (e.g., describing quantities)

− Keep computational complexity under control

Page 32: Automated Planning as a Semantic Technology

32

Classical planning formalisms are inadequate

Traditional formalisms− STRIPS, PDDL (Planning Domain Definition

Language)− Limited expressivity

Expressing complex domains difficult− Support for hierarchical planning is sparse

Page 33: Automated Planning as a Semantic Technology

33

Representing planning knowledge in OWL

Describing the current state of the world in RDF and OWL

− Expressive language− Designed with computational complexity in

mind (e.g., various profiles EL, RL, QL)− Can be used to infer information about the

current state of the world that is not explicitly specified

Page 34: Automated Planning as a Semantic Technology

34

Describing actions and hierarchies based on OWL-S

OWL-S is designed to specify descriptions of Web services

Can be used to specify any action in Hierarchical Planning by using owls:Process

− Composition of actions (hierarchy)− Preconditions− Effects− Parameters of actions

Page 35: Automated Planning as a Semantic Technology

35

Challenges

OWL ontologies are designed to represent static data

Planning includes reasoning about changes− Describing effects of action (some axioms

become true, other become false)− Identifying invariants that are preserved− Matching effects of one actions with

preconditions of others

Page 36: Automated Planning as a Semantic Technology

36

HotPlanner Clark & Parsia's response to these challenges Used in production systems Uses Pellet OWL reasoner for state

knowledge base management, reasoning and query answering– Can plan and optimize for multiple objectives

– Extension to OWL-S for actions

– Scheduling and planning for parallel task execution

For more information go to http://clarkparsia.com/planner

Page 37: Automated Planning as a Semantic Technology

37

Conclusions

Planning is a proven technology for task automation, decision support, autonomous systems

Semantic technologies and planning have a lot to offer to each other

Automated planning is quickly growing in use for Cloud Computing automation

Page 38: Automated Planning as a Semantic Technology

38

Thank you for your attention!Questions?