from swarm intelligence to swarm engineering...from swarm intelligence to swarm engineering alan ft...
TRANSCRIPT
From Swarm Intelligence to From Swarm Intelligence to Swarm EngineeringSwarm Engineering
Alan FT WinfieldAlan FT WinfieldIntelligent Autonomous Systems LabIntelligent Autonomous Systems Lab
www.www.iasias..uweuwe.ac..ac.ukuk
out of the lab and into the real world
This talkThis talk
Questions:Questions:How can we design swarm intelligence in a How can we design swarm intelligence in a methodologically rigorous way?methodologically rigorous way?How can we formally prove or validate swarm How can we formally prove or validate swarm engineered systems?engineered systems?
This talkThis talkThe IAS labThe IAS labCase study: a wireless connected swarmCase study: a wireless connected swarmSwarm EngineeringSwarm Engineering
The IAS LaboratoryThe IAS Laboratory
Swarm RoboticsSwarm Robotics
[Melhuish]
[Wessnitzer, Melhuish]
Collective sorting
Emergent formation
A Lighter Than Air Web ServerA Lighter Than Air Web Server
[Welsby]
The Flying FlockThe Flying Flock
[Welsby, Melhuish, Winfield]
Energy Autonomy: Energy Autonomy: SlugBotSlugBot
[Kelly, Holland ]
Energy Autonomy: Energy Autonomy: EcoBotEcoBot
[Greenman, Melhuish, Ieropoulos]
The The WhiskerbotWhiskerbot
www.www.whiskerbotwhiskerbot.org.org[Melhuish, Pipe, Pearson, Gilhespy et al]
A case study in Swarm A case study in Swarm Robotics: Robotics: hypothesishypothesis……
““That it is possible to maintain swarm integrity That it is possible to maintain swarm integrity using wireless networking aloneusing wireless networking alone””In other words:In other words:
Is it possible to use wireless networking as a Is it possible to use wireless networking as a structural componentstructural component in building multiin building multi--robot robot systems..?systems..?
We seek simple rules linking locomotion with We seek simple rules linking locomotion with communicationscommunications
To create emergent swarm coherence and To create emergent swarm coherence and Scalable control of swarm morphologyScalable control of swarm morphology
[Nembrini, PhD Thesis 2004]
A Minimalist ApproachA Minimalist Approach
Robots haveRobots haveRange limited, omniRange limited, omni--directional wireless directional wireless communicationscommunications
Situated communicationsSituated communicationsRobots can transmit their identityRobots can transmit their identityBut signal strength not availableBut signal strength not available
No global positional informationNo global positional informationNo range or bearing sensorsNo range or bearing sensorsOnly local knowledge of network topologyOnly local knowledge of network topology
Primitive behaviour: iPrimitive behaviour: i
1. Connected 2. Connection Lost
Continuous PING: send Are You There, respond with Yes I’m Here
Primitive behaviour: iiPrimitive behaviour: ii
3. Turn Back 4. Reconnected, choose New Heading
Continuous PING: send Are You There, respond with Yes I’m Here
Basic AlgorithmBasic Algorithm
Extend the basic primitive to multiple Extend the basic primitive to multiple robotsrobots……
React to the number of neighbours in range, React to the number of neighbours in range, i.e. the number of connections i.e. the number of connections KK
Swarm divisionSwarm division
But the basic algorithm cannot prevent But the basic algorithm cannot prevent swarm divisionswarm division……
Shared Neighbour AlgorithmShared Neighbour AlgorithmIf you lose a connection to robot If you lose a connection to robot NN, find how many of , find how many of your still connected neighbours have your still connected neighbours have NN in their neighbour in their neighbour lists: lists: nSharednShared
If If nSharednShared drops below drops below ββ, turn back, turn backIf If KK is rising, choose new random headingis rising, choose new random heading
Area ControlArea Control
The single parameter The single parameter ββ controls determines the controls determines the swarm coverageswarm coverage
Area control examplesArea control examples
Swarm disposition for Swarm disposition for ββ = 1, = 1, ββ = 4= 4
Directed SwarmingDirected Swarming
Consider now the problem of directing the Consider now the problem of directing the swarm (taxis) toward a beaconswarm (taxis) toward a beacon
We could introduce differential sensing into We could introduce differential sensing into one individualone individual
But this is highly dependent on signalBut this is highly dependent on signal--toto--noise rationoise ratio……and completely fails to exploit the spatial and completely fails to exploit the spatial distribution of the swarmdistribution of the swarm
Instead give each robot a simple binary Instead give each robot a simple binary sensor (illuminated or not illuminated)sensor (illuminated or not illuminated)
Emergent swarm taxisEmergent swarm taxis
For the illuminated For the illuminated (red) robots set the (red) robots set the value of value of ββ to infinityto infinity
The red robots then The red robots then shrink together to form shrink together to form a complete grapha complete graphReds become blues, Reds become blues, which become more which become more mobile, resulting inmobile, resulting in……slow translation toward slow translation toward the beaconthe beacon
beacon
Red: illuminated
Blue: occluded
Swarm taxis with obstaclesSwarm taxis with obstacles
Introduce occluding Introduce occluding obstaclesobstacles
The swarm finds it The swarm finds it way between the way between the narrow obstaclesnarrow obstacles
beacon
Encapsulation of the beaconEncapsulation of the beacon• An unexpected emergent phenomenon…
Swarm morphology controlSwarm morphology controlBy introducing a differential velocity By introducing a differential velocity between illuminated and occluded robots between illuminated and occluded robots we have emergent morphology controlwe have emergent morphology control
Emergent concentric symmetryEmergent concentric symmetry
2 cell types
3 cell types
EmergentEmergentradial radial symmetrysymmetry
Physical ImplementationPhysical ImplementationExperimental platform: the LinuxBotExperimental platform: the LinuxBot
Play: n2th2n7th2c50
What is a What is a Dependable SwarmDependable Swarm??It is a complex distributed system, designed using the It is a complex distributed system, designed using the Swarm IntelligenceSwarm Intelligence paradigm, which meets paradigm, which meets standardsstandardsof analysis, design and test that would give sufficient of analysis, design and test that would give sufficient confidence that the system could be employed in confidence that the system could be employed in critical applicationscritical applications
Q: What are these standards? Q: What are these standards? A: They don't existA: They don't exist
The purpose of our current work is to develop a The purpose of our current work is to develop a framework for the analysis, design and test of framework for the analysis, design and test of dependable swarmsdependable swarmsI propose to call this framework Swarm EngineeringI propose to call this framework Swarm Engineering
[Winfield et al, LNCS 3342, 2005]
Analysis Design Test
Assurance of DependabilityAssurance of Dependability
What makes swarm engineered systems What makes swarm engineered systems different?different?
System functionality achieved through emergenceSystem functionality achieved through emergenceSwarms are dynamical, stochastic, nonSwarms are dynamical, stochastic, non--linear linear systemssystemsTask completion Task completion becomes very hard to define.becomes very hard to define.
Designing the SwarmDesigning the Swarm
Structured Design Methodology
Use Waterfall (v-shaped) model?
Robot design
Swarm designProblematical because there are (as yet) noprincipled approaches to the design ofemergence
Ideally we need a formal, provableapproach to the design of individualswithin the swarm
Swarm design and robotdesign are tightly coupled
(Structured) Swarm Engineering(Structured) Swarm Engineering
Swarm Design
Robot Implementation
Swarm Test
Swarm Analysis
Swarm Test Specification
Requirements Specification Dependable Swarm
Top downFunctional Decomposition
Bottom upIntegration
and Test
Robot Design / Analysis Robot Test
Robot Design Specification
RTS
Single Agent Engineering
Morphology/Behaviours
Working Robots
Code
Simulation
(Dynamic) Data Flow Diagram(Dynamic) Data Flow Diagram
Robot 4
Data (Message) FlowsBetween neighbours
WirelessRange
Robot 3
Robot 5
Robot 2
Robot 1
Single Robot ProcessesSingle Robot Processes
Behaviour-basedControlProcess
UDPMessage
ServerNeighbourhoodConnectivity
Messages from Neighbours
Messages toNeighbours
Level 1 processLevel 2 process
We extend Lyapunov stability theory to We extend Lyapunov stability theory to secondsecond--order stability theoremsorder stability theorems
then use the partial subsumption relationship between then use the partial subsumption relationship between the 1the 1stst and 2and 2ndnd order Lyapunov stability theorems as the order Lyapunov stability theorems as the basis for a formal model of the subsumption basis for a formal model of the subsumption architecturearchitecture
Provably StableProvably StableBehaviourBehaviour--based Controlbased Control
Avoidance Behaviour
Network Behaviour
S
ActuatorsColony-style control architecture
W t 0 W t Wmax W t Wmax 0
W t 0
Direct Lyapunov DesignDirect Lyapunov DesignWe use the 2We use the 2ndnd order Lyapunov stability theorems as the order Lyapunov stability theorems as the basis for a design procedure for the motor schema of a basis for a design procedure for the motor schema of a behaviour modulebehaviour module
Model the Open-Loop Dynamics
Define goal state Sand its neighbourhood
For each point in the gridselect a control action
Define a piecewise mapfunction
and define a grid of pointsover the neighbourhood
select control actions that yield themost stabilising behaviour accordingto 2nd order stability theorems
in which grid points arethe central states of each i/o pair and their associatedselected actions are the function outputs
[Harper and Winfield, accepted for RAS]
Swarm modelling and analysisSwarm modelling and analysisLiveness
the property ofexhibiting desirable
behaviours
Safetythe property of not
exhibiting undesirablebehaviours
SimulationMathematical
Modelling
Single Robot
Multiple Robots
+
Hazard Analysis
Randomerrors
Systematic(design) errors
Single Robot
Multiple Robots
State Transition DiagramState Transition DiagramTurn back
Reverse
Random turn
All pathsblocked
Fwd blockedrear path clear
Obstacle left or right front
Swarm Lost
Swarm Found
Forward
Haltbac
Spin
Network BehaviourAvoidance Behaviour
ModellingModellingCurrent work is attempting to model the Current work is attempting to model the wireless connected swarm, by extending wireless connected swarm, by extending the probabilistic approach of the probabilistic approach of Martinoli Martinoli et et al.al.Take the Finite State MachineTake the Finite State Machine
then express as an ensemble of probabilistic then express as an ensemble of probabilistic FSMsFSMs::
Coherence Forward Avoid
The basic FSM
Probabilistic FSMProbabilistic FSM
Each box representsthe number of robotsin the swarm:• in a given state, and• with a given number of connectionsThe PFSM thus describes the state/ connection structure of the swarmUsing the modelling approach of Martinoli et al[IJR, 2004]
HazardsHazardsFailure Modes and Effects Analysis Failure Modes and Effects Analysis (FMEA)(FMEA)H1: Motor Failure, but all othersystems remain functional
The robot impedes the swarm fromtranslational motion (anchors theswarm)
H2: Avoid sensor failure The robot remains connected butavoid behaviour fails; the robot willoscillate between opposite edges ofthe swarm
H3: Communications failure The robot disconnects from the swarmand is eventually lost; it is treated bythe rest of the swarm as a dynamicobstacle
H4: All systems failed Robot is simply treated by rest ofswarm as a static obstacle
FSM with hazardsFSM with hazards
Coherence Forward Avoid
H1: motor failure
Pl Pa
PH1PH1 PH1
H2: Pa=0H3: Pl=1, Pr=0
Pr
H4: all systems failure
PH4
Using Temporal LogicUsing Temporal Logicto Specify Emergent Behavioursto Specify Emergent Behaviours
We are investigating the use of a Linear We are investigating the use of a Linear Time Temporal Logic to specify (and Time Temporal Logic to specify (and possibly prove) emergent propertiespossibly prove) emergent propertiesNASA have explored formal methods NASA have explored formal methods within the Autonomous within the Autonomous NanoNano--Technology Technology (ANTS) project ((ANTS) project (Rouff Rouff et al, 2004)et al, 2004)
however that work did not investigate a however that work did not investigate a temporal logictemporal logic
Swarm Swarm specificationspecification
Specify the safety andliveness properties of
each robot(in terms of lower level
behaviours)
Then specify the Swarmas the logical ‘and’ of all
the robots
Specification of Specification of Emergent Emergent PropertiesProperties
First specify the emergent properties
Now attempt to prove(or disprove) that the
swarm of robots satisfiesthe emergent behaviours
[Winfield, Sa et al, accepted for Taros 05]
Testing the SwarmTesting the Swarm
System Test(swarm)
Component Test(single robot)
Witness tests against aSystem Test Specification (STS)
Tests for Liveness
Tests for (partial) Safety
Tolerance and robustnessto random errors (and threats)
Dynamic/Static Analysis
+
Problematical because of theneed to create test harnesses
Testing the swarmTesting the swarmWe need toWe need to
establish robust measures for achievement of establish robust measures for achievement of desired (emergent) behaviours, thendesired (emergent) behaviours, thendefine (statistical) test for these measuresdefine (statistical) test for these measures
Qe – Mean quality of encapsulationRe – Mean radius of encapsulation
Vs – Mean swarmvelocity toward target
Frequency that Qe>Qthreshold in a given time period for given starting conditions
Swarm Tests in progressSwarm Tests in progress
Swarm tests can provide an Swarm tests can provide an environmentenvironment for single robot testfor single robot test
State;position;heading;sensor readings;connectivity
Actual behaviour
Expectedbehaviour
Pass/Fail
Controlled Swarm Tests
Swarm test results
Single robot simulation
Single Robot Tests
A roadmap towards swarm A roadmap towards swarm engineeringengineering
Substantial work is needed before Substantial work is needed before dependable swarms can become realitydependable swarms can become reality
We need to extend and strengthen analytical approaches to We need to extend and strengthen analytical approaches to modelling of swarm systemsmodelling of swarm systemsWe need to extend and strengthen formal approach to provably We need to extend and strengthen formal approach to provably stable intelligent controlstable intelligent control
To include safety as well as livenessTo include safety as well as livenessWe need a more principled approach to the design of emergenceWe need a more principled approach to the design of emergenceWe need to start work on 'safety' analysis at the swarm levelWe need to start work on 'safety' analysis at the swarm levelWe need to develop metrics, methodologies and practices for the We need to develop metrics, methodologies and practices for the testing of swarm engineered systemstesting of swarm engineered systems
DiscussionDiscussion
But... can or should we really think about But... can or should we really think about classical approaches to system validation classical approaches to system validation in the context of swarm engineering?in the context of swarm engineering?
some in classical safety systems believe the some in classical safety systems believe the standard approach is already breaking down standard approach is already breaking down for very complex (conventional) systemsfor very complex (conventional) systemsperhaps a new engineering paradigm calls for perhaps a new engineering paradigm calls for new approaches to dependability?new approaches to dependability?
IAS lab acknowledgementsIAS lab acknowledgementsProf Prof Owen HollandOwen HollandProfProf Andrew AdamatzkyAndrew AdamatzkyProf Chris MelhuishProf Chris MelhuishProf John Prof John GreenmanGreenmanDr Tony PipeDr Tony PipeDr Ben de Lacy CostelloDr Ben de Lacy CostelloDr Ian KellyDr Ian KellyDr Julien Dr Julien NembriniNembriniDr Jan Dr Jan WessnitzerWessnitzerDr Chris HarperDr Chris HarperIoannis IeropoulosIoannis IeropoulosJason Jason WelsbyWelsbyIan Ian HorsfieldHorsfieldIan Ian GilhespyGilhespy
And finally, back to the futureAnd finally, back to the future……
Bristol Pioneer, Dr W Grey WalterBristol Pioneer, Dr W Grey Walter
Machina Speculatrix