Download presentation
Presentation is loading. Please wait.
Published byStanley Cain Modified over 9 years ago
1
Cyber-Physical Software Agents Vincenzo Liberatore
2
V. LiberatoreCyberphysical software2 Cyberphysical Systems Computing in the physical world Components – Sensors, actuators – Controllers – Networks
3
V. LiberatoreCyberphysical software3 Cyberphysical Systems: 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]
4
V. LiberatoreCyberphysical software4 Cyberphysical 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
5
V. LiberatoreCyberphysical software5 Programming Cyberphysical Systems
6
V. LiberatoreCyberphysical software6 Objectives 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
7
V. LiberatoreCyberphysical software7 Vision (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
8
V. LiberatoreCyberphysical software8 Vision (2): Supervision Coarse-grained high-level – Directions – Troubleshooting – Reprogramming Tele-operation Autonomous systems Supervision
9
V. LiberatoreCyberphysical software9 Advantages of Supervisory Control Utilize autonomous capabilities of robot – Less work for the Supervisor Makes control with delay feasible – Higher Level commands translated into many smaller ones Still the same safe robots
10
V. LiberatoreCyberphysical software10 Achieving Generic Control Want 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 controls Works on robots that communicate IP, regardless of OS and programming
11
V. LiberatoreCyberphysical software11 Vision (3): Manipulation Contact operations Energy exchanged between robot and environment Physical change in environment state Typically subject to constraints to prevent damage
12
V. LiberatoreCyberphysical software12 This 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
13
V. LiberatoreCyberphysical software13 Agent 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
14
V. LiberatoreCyberphysical software14 Dynamically Load Functionality Currently, robot must be fully represented Supervisor 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
15
V. LiberatoreCyberphysical software15 Dynamically Load Functionality Believes that the robot it is controlling implements both foo() and bar(). bar() function loaded that calls foo() Exposes a function foo() Reports foo() upstream Supervisor GUI
16
V. LiberatoreCyberphysical software16 Dynamically Load Functionality Powerful 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
17
V. LiberatoreCyberphysical software17 Dynamically Load Functionality Invokes a bar() command Invokes foo() Invokes more_foo() Invokes yet_foo_again() twice Executes yet_foo_again() twice
18
V. LiberatoreCyberphysical software18 Behind the Scenes Virtual Robots are mobile objects Take on attributes of robot(s) it controls – Additionally, any loaded functionality Mobile Agents: will move to new hosts – Allows for precision control by process in close proximity when needed – Constantly re-evaluating environment and finding better resources for its supervisor
19
V. LiberatoreCyberphysical software19 Resource 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
20
V. LiberatoreCyberphysical software20 Jini 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
21
V. LiberatoreCyberphysical software21 Middleware 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
22
V. LiberatoreCyberphysical software22 Agent 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
23
V. LiberatoreCyberphysical software23 Approach Outline Local robot control: virtual attractors – Interface for higher-level distributed sw components Reason about robot behavior – Encapsulate intelligence needed to Cope with –Long delays –Imprecise modeling and unstructured environments Establish predictable robot behavior and safety Distributed control – Agent-based
24
V. LiberatoreCyberphysical software24 Compliant Control Attracto r Platform origin Virtual tool tip External force Orientational springs and dampers Translational springs and dampers Actual tool tip
25
V. LiberatoreCyberphysical software25 What happens if flawed instructions are issued? COMPLIANCE DESIRED POSITION COMPLIANCE
26
V. LiberatoreCyberphysical software26 Agent teams On-board controllers Thin-legacy layer GUI, interface Virtual Robots: The Core
27
V. LiberatoreCyberphysical software27 Hierarchical organization Chain of command Relationship: Virtual inclusion
28
V. LiberatoreCyberphysical software28 Virtual Containment Analogy – A robotic platoon “contains” individual robot – Not necessarily in terms of ontology Application – Task-oriented teams – Layering
29
V. LiberatoreCyberphysical software29 Upstream 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
30
V. LiberatoreCyberphysical software30 Hierarchical organization Upstream communication Relationship: Virtual inclusion
31
V. LiberatoreCyberphysical software31 Experience Task-space: Fluid dynamics Methods Robot idParameter (range)Go!!!
32
V. LiberatoreCyberphysical software32Demo 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
33
V. LiberatoreCyberphysical software33 Example RPCS Agent-based software MoveTo Open/Close Virtual Supervisor
34
V. LiberatoreCyberphysical software34 Other 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
35
V. LiberatoreCyberphysical software35 Related Research
36
V. LiberatoreCyberphysical software36 Play-Back Buffers Playback – Smooths out network non-determinism Playback buffers integrated with – Sampling (adaptive T) – Control (expiration times, performance metrics) Packet losses – Reverts to open loop plant (contingency control)
37
V. LiberatoreCyberphysical software37 Bandwidth 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
38
V. LiberatoreCyberphysical software38 Problem Formulation Define a utility fn U(r) that is – Monotonically increasing – Strictly concave – Defined for r ≥ r min Optimization formulation
39
V. LiberatoreCyberphysical software39 Conclusions 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
40
V. LiberatoreCyberphysical software40 To Learn More http://home.case.edu/~vxl11/NetBots/ vl@case.edu
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.