cyber-physical software agents vincenzo liberatore
Post on 13-Jan-2016
225 Views
Preview:
TRANSCRIPT
Cyber-Physical Cyber-Physical Software AgentsSoftware Agents
Vincenzo Liberatore
V. Liberatore Cyberphysical software 2
Cyberphysical SystemsCyberphysical Systems Computing in the
physical world Components
– Sensors, actuators– Controllers– Networks
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]
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
V. Liberatore Cyberphysical software 5
Programming Programming Cyberphysical SystemsCyberphysical Systems
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
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
V. Liberatore Cyberphysical software 8
Vision (2): SupervisionVision (2): Supervision
Coarse-grained high-level – Directions– Troubleshooting– Reprogramming
Tele-operationAutonomoussystems
Supervision
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
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
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
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
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
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
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
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
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
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
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
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
V. Liberatore Cyberphysical software 26
Agent teamsAgent teams
On-board controllers
Thin-legacy layer
GUI, interface
Virtual Robots: The Core
V. Liberatore Cyberphysical software 27
Hierarchical organizationHierarchical organization
Chain of command
Relationship:Virtual inclusion
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
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
V. Liberatore Cyberphysical software 30
Hierarchical organizationHierarchical organization
Upstream communication
Relationship:Virtual inclusion
V. Liberatore Cyberphysical software 31
ExperienceExperience
Task-space: Fluid dynamics
Methods
Robot id
Parameter (range)
Go!!!
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
V. Liberatore Cyberphysical software 33
ExampleExample
RPCS
Agent-basedsoftware
MoveTo
Open/Close
Virtual Supervisor
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
V. Liberatore Cyberphysical software 35
Related ResearchRelated Research
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)
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
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
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
V. Liberatore Cyberphysical software 40
To Learn MoreTo Learn More
http://home.case.edu/~vxl11/NetBots/
vl@case.edu
top related