cyber-physical software agents vincenzo liberatore

35
Cyber-Physical Cyber-Physical Software Agents Software Agents Vincenzo Liberatore

Upload: stanley-cain

Post on 13-Jan-2016

225 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Cyber-Physical Software Agents Vincenzo Liberatore

Cyber-Physical Cyber-Physical Software AgentsSoftware Agents

Vincenzo Liberatore

Page 2: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 2

Cyberphysical SystemsCyberphysical Systems Computing in the

physical world Components

– Sensors, actuators– Controllers– Networks

Page 3: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 3

Cyberphysical Cyberphysical Systems: ExamplesSystems: Examples

Enables Industrial automation

[BL04] Distributed instrumentation

[ACRKNL03] Unmanned vehicles

[LNB03] Home robotics [NNL02] Distributed virtual

environments [LCCK05] Power distribution [P05] Building structure control

[SLT05]

Page 4: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 4

Cyberphysical SystemsCyberphysical Systems

Merge cyber- and physical- worlds– Networked control and tele-epistemology

[G01]Sensor networks

– Not necessarily wireless or energy constrained

– One component of sense-actuator networks

Page 5: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 5

Programming Programming Cyberphysical SystemsCyberphysical Systems

Page 6: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 6

Objectives and ChallengesObjectives and Challenges

Objectives– Remote supervision and programming– Adaptive and evolvable– Security and safety

Challenges: decouple control from– Long-haul network delay, losses– Lack of network Quality-of-Service provisioning– Precise environment modeling

Page 7: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 7

Vision (1): Agent-basedVision (1): Agent-based Basic properties

– Autonomous, mobile – Adaptable, flexible, reactive– Knowledgeable, goal-oriented, learning– Collaborative – Persistent

Agents for cyber-physical systems– Aggregation into task-oriented teams– Evolvable

Re-programmability, reconfiguration, extensibility

Page 8: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 8

Vision (2): SupervisionVision (2): Supervision

Coarse-grained high-level – Directions– Troubleshooting– Reprogramming

Tele-operationAutonomoussystems

Supervision

Page 9: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 9

Advantages of Advantages of Supervisory ControlSupervisory Control

Utilize autonomous capabilities of robot– Less work for the Supervisor

Makes control with delay feasible– Higher Level commands translated into

many smaller onesStill the same safe robots

Page 10: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 10

Achieving Generic ControlAchieving Generic ControlWant the same program to powerfully

represent unknown, high level commands– Completely generic GUI– Adapts to commands and attributes of

robot Utilizes a small code stub on the robot

– Uses modern day windows controlsWorks on robots that communicate IP,

regardless of OS and programming

Page 11: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 12

This talkThis talk

Progress– Agent-oriented platform

Agent-Communication Dynamically load functionality Mobility Virtual containment Resource Discovery Experience

Future work– Application-oriented middleware

E.g., Scheduling of mobility– AI (knowledge, planning, learning)– Security

Page 12: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 13

Agent CommunicationAgent Communication

Supervisor invokes robotic functionality– Passes parameters using dynamic GUI

Robot communicates with Supervisor – Returns values for display– Notifies supervisor of properties– Able to ask supervisor for assistance

Priority may cause emergency handling

Page 13: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 14

Dynamically Load FunctionalityDynamically Load FunctionalityCurrently, robot must be fully representedSupervisor interacts with Virtual Robot

– Middleman we can inject code into– Interfaces provide access to robotic attributes

Ability to add new behavior that uses existent functionality and properties– Added to proxy means that they appear as

robotic functionality to supervisor

Page 14: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 15

Dynamically Load Dynamically Load FunctionalityFunctionality

Believes that the robot it is controlling implements both foo() and bar().

bar() function loaded that callsfoo()

Exposes a function foo()

Reports foo() upstream

Supervisor GUI

Page 15: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 16

Dynamically Load FunctionalityDynamically Load FunctionalityPowerful ability to “reprogram” robot

– Doesn’t require actual robotic modification– Send across canned functionality– Reprogram to deal with unknown environment

May wrap up functionality again and again, abstracting away the lower layers

Applies to multiple-robot scenarios– Dynamically reorganize groups of robots

Page 16: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 17

Dynamically Load FunctionalityDynamically Load FunctionalityInvokes a bar() command

Invokes foo()

Invokes more_foo()

Invokes yet_foo_again() twice

Executes yet_foo_again() twice

Page 17: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 19

Resource DiscoveryResource Discovery Plug-and-play

– Add new resources on the fly

– Example: USB Plug in a USB camera

on a USB port But now we want: on a

network, with arbitrary units

Example– Locate a robot on the

network

Page 18: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 20

JiniJini Operations

– Discover, Join, Look-up, Use Programming

– Include a library– Use functions

Fault-tolerance– Leases

Join only last for a certain time period

Renew the lease– Multiple look-up servers– JavaSpaces

Distributed shared memory URL: www.jini.org

Courtesy of Sun Microsystems

Page 19: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 21

MiddlewareMiddleware Between application and transport

– Libraries to provide advanced functionality– Hide communication

Applications– Resource Discovery– Remote Procedure Calls– Security– Interoperability (e.g., since Real-Time Corba)– Scheduling, resource management, performance analysis– Multicast

Software development– Simpler, faster– State-of-the-art functionality

Middleware over IP– Wealth of libraries for IP– Critical advantage of the Internet Protocol

Page 20: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 22

Agent MobilityAgent Mobility

Mobility– Software component stops execution on host A– Resume execution from same state on host B

Benefits– Adapt to changes of physical topology

E.g., if a unit moves and triggers functionality hand-off

– Anticipate planned disconnections– Dynamic re-programmability by agent dispatching

Page 21: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 26

Agent teamsAgent teams

On-board controllers

Thin-legacy layer

GUI, interface

Virtual Robots: The Core

Page 22: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 27

Hierarchical organizationHierarchical organization

Chain of command

Relationship:Virtual inclusion

Page 23: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 28

Virtual ContainmentVirtual Containment

Analogy– A robotic platoon “contains” individual robot– Not necessarily in terms of ontology

Application– Task-oriented teams– Layering

Page 24: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 29

Upstream CommunicationUpstream Communication

Report state upstream– Sensory data collection

Appeals for assistance– Minimal demands of directions from human

or intelligent systems High-level directions Triggered only by difficult or unexpected events

– Improves safety and reliability

Page 25: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 30

Hierarchical organizationHierarchical organization

Upstream communication

Relationship:Virtual inclusion

Page 26: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 31

ExperienceExperience

Task-space: Fluid dynamics

Methods

Robot id

Parameter (range)

Go!!!

Page 27: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 32

DemoDemo

Objective– Close lever

Operations– Remote command– Robotic manipulator

Procedure– Break complex

command (CloseLever) into progressively simpler instructions

Close lever

MoveTo(x,y,z)

GoTo(x,y,z)

multiple invocations of

multiple invocations of

Page 28: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 33

ExampleExample

RPCS

Agent-basedsoftware

MoveTo

Open/Close

Virtual Supervisor

Page 29: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 34

Other topicsOther topics

Security – Encrypt communication– Authentication and Authorization – Standard Java libraires

Fault-tolerance– Look-up with soft-state– Checkpoint in JavaSpaces

Advanced functionality with little incremental cost– Demonstrate importance of software re-use with

state-of-the-art middleware

Page 30: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 35

Related ResearchRelated Research

Page 31: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 36

Play-Back BuffersPlay-Back BuffersPlayback

– Smooths out network non-determinismPlayback buffers integrated with

– Sampling (adaptive T)– Control (expiration times, performance

metrics)Packet losses

– Reverts to open loop plant (contingency control)

Page 32: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 37

Bandwidth AllocationBandwidth Allocation Definition

– Multiple sense-and-respond flows

– Contention for network bandwidth

Desiderata– Stability and performance of

control systems Must account for physics

– Efficiency and fairness– Fully distributed,

asynchronous, and scalable– Dynamic and self-

reconfigurable

Page 33: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 38

Problem FormulationProblem FormulationDefine a utility fn U(r) that is

– Monotonically increasing– Strictly concave

– Defined for r ≥ rmin

Optimization formulation

( )

min,

max ( )

s.t. , 1,...,

and

i ii

i li l

i i

U r

r C l L

r r

S

Page 34: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 39

ConclusionsConclusions

Remote supervision of robotic manipulation Compliant control

– Local encapsulation– Gentle, compliant, tolerant to network vagaries

Agent-based software– Hierarchical

Demonstration Future work: middleware, AI, security

Page 35: Cyber-Physical Software Agents Vincenzo Liberatore

V. Liberatore Cyberphysical software 40

To Learn MoreTo Learn More

http://home.case.edu/~vxl11/NetBots/

[email protected]