for AI and Robotics Plan monitoring and applications Alessandro - - PowerPoint PPT Presentation

for ai and robotics
SMART_READER_LITE
LIVE PREVIEW

for AI and Robotics Plan monitoring and applications Alessandro - - PowerPoint PPT Presentation

Statistical Filtering and Control for AI and Robotics Plan monitoring and applications Alessandro Farinelli Outline Applications Water monitoring Information gathering in MRS DCOP formulation and heuristic approach


slide-1
SLIDE 1

Statistical Filtering and Control for AI and Robotics

Alessandro Farinelli

Plan monitoring and applications

slide-2
SLIDE 2

Outline

  • Applications

– Water monitoring

  • Information gathering in MRS

– DCOP formulation and heuristic approach

  • Recognizing relevant situations

– Activity recognition for water drones

  • Plan monitoring

– Petri Nets for plan monitoring – Interacting with the humans

slide-3
SLIDE 3

Applications for Mobile Robots

Logistics (Kiwa System)

slide-4
SLIDE 4

Water Monitoring

Water as a natural capital, significant effort to ensure quality.

slide-5
SLIDE 5

The Water Framework Directive

  • EU Member States must:

– ensure surface and groundwaters achieve ‘good’ status by 2027 – assess (monitor) the quality of surface and groundwater and measures to maintain and improve their status

  • The Directive seeks to engage all stakeholders through River

Basin Planning Process – Communities become Aware, Interested, Enabled.

slide-6
SLIDE 6

Current ‘state of the art’

slide-7
SLIDE 7

Problems

  • Main focus precision for Reporting Compliance for Ministers

– This requires large numbers of samples to deliver ‘certainties’ – This monitoring is very costly (€10’s millions), because: – Sampling, transport, laboratory analysis (precision and quality)

  • Data is always historic (many days before results come),

– Little effort on Investigations and Surveillance monitoring and so fail to assess effectively ‘diffuse’ pollution - urban and rural

  • Too much reliance on statutory bodies to do all the work and their

budgets are reducing – Presumed low / uncertain data quality from 3rd party

  • rganisations are a barrier to use

– citizens not empowered, other available data not used

slide-8
SLIDE 8

Outcomes needed for 2020-2050

  • Deliver WFD in a more flexible way increasing efficiency
  • More targeted ‘monitoring’ that identifies sources & enables

effective intervention

  • Appropriate treatment of CSO, run off, multiple / small pollution

sources, delivering improvements

  • Managing and communicating data and outcomes
  • Engaging society

– Reduce barriers to new stakeholders to take up local monitoring and treatment, and data analysis – society value – Harness citizen science capability and influence local situation

slide-9
SLIDE 9

Environmental System (WP2)

Rainfall and stormwater temperature wind Smart boats Biological analyses Chemical analyses Decision rules and directives Numerical models DSS Managing authorities Stakeholders and communities

Monitoring (WP2; 3; 8) Decision system (WP2; 6) Management and control (WP2; 4; 7; 8 10);

Socio–economic drivers Costs and benefits (WP9; 11)

WAIS (WP7)

Actions Appropriate treatment (WP2; 5; 4; 9)

INTCATCH: the global picture

slide-10
SLIDE 10

Why robotic boats

  • Sensors Deployed right place right time: effective decision

making and management of local ‘diffuse’ pollution

  • Data captured by local stakeholders Citizen Science

EC day2 EC day 1

slide-11
SLIDE 11

Robotic boats for water monitoring

HydroNet ARC boats NUSwan Platypus

  • Large, expensive  small, low-cost
  • Community engagement
slide-12
SLIDE 12

Autonomous boats

in water propellers airboat

  • Low-cost
  • Autonomous
  • Long-endurance
  • Easy to deploy
slide-13
SLIDE 13

13

Non expert users, ensure good data quality

Why autonomy

boat

Go beyond line of sight

slide-14
SLIDE 14

System architecture

  • The boat can be controlled by a

wi-fi connected tablet or a radio controller

  • The user can define a path on

the tablet that the boat follows, navigating autonomously

  • Different sensors to measure

electrical conductivity, temperature, and dissolved

  • xygen
slide-15
SLIDE 15

User interface and path creation

The tablet app generates a spiral path to collect data in the area

slide-16
SLIDE 16

Data visualization: map overlay

Dense geo-localized data for the different parameters

slide-17
SLIDE 17

Research issues involved

  • Information gathering

– Where to go next to optimize data collection, coordination

  • Navigation

– Improve autonomous control, recognize relevant situations – Perception, detect obstacle on water

  • Mission level control

– Plan-specify high level actions, monitoring plan execution

  • Human robot interaction

– User friendly interfaces, Interaction with autonomy

slide-18
SLIDE 18

Coordination for info. gathering

Uncertainty contours

Joint work with R. Stranders, A. Rogers,N. Jennings.

Goal: estimate a spatial phenomena with minimum uncertainty Mobile sensors with limited sensing and communication range

slide-19
SLIDE 19

Information Gathering: model

  • Monitor a spatial phenomena
  • Model: scalar field

– Two spatial dimensions – One temporal dimension

slide-20
SLIDE 20

Modeling the spatial phenomena

Weak Strong Spatial Correlations

  • Use Gaussian Process to model the scalar field
  • GP powerful model for regression
slide-21
SLIDE 21

Rewarding information gathering

  • The value of a sample is

connected to the uncertainty reduction

  • Gaussian Process gives

prediction and confidence interval

  • Use entropy to define

the reward

1 2 3 4 5 6 7 8 2 4 6 8 10

Prediction Confidence Interval Collected Sample

Measure of uncertainty

slide-22
SLIDE 22

DCOPs for coordinaton

DCOPs: mathematical framework to represent decentralized coordination Why DCOPs ?

  • Well defined framework

– Clear formulation that captures most important aspects – Many solution techniques

  • Optimal: ABT, ADOPT, DPOP, ...
  • Approximate: DSA, MGM, Max-Sum, ...
  • Solution techniques can handle large problems

– compared for example to sequential dec. Making (MDP, POMDP)

slide-23
SLIDE 23

DCOP Formalisation

Agents Variables Variable domains Functions

slide-24
SLIDE 24
  • Objective:

– find the variable assignment such that the sum of all functions is maximised

DCOP: assumptions and objective

  • Assumptions:

– Each variable Xi is controlled by exactly one agent Ai – The agent Ai is responsible for assigning values to the variables it controls – An agent can potentially own more than one variable

 ) ( max arg

* i i x

F x

slide-25
SLIDE 25

1

x

2

x

3

x

4

x

5

x

6

x

7

x

8

x

Variables Encode Movement

DCOP for Mobile Sensors: variables, domains

slide-26
SLIDE 26

1

U

2

U

3

U

4

U

5

U

6

U

7

U

8

U

Utility Functions (encode information value)

DCOP for Mobile Sensors: utility functions

) , | ( ) (

2 1 3 3 3

x x x H x U  } , {

3 , 2 1 3

x x x x 

Local Interaction

slide-27
SLIDE 27

DCOP for Mobile Sensors: global

  • bjective

 n i i i x

x U

1

) ( max arg

Fixed movement order

n

x x ,...,

1

slide-28
SLIDE 28

DCOP Solution techniques

Solution Quality

Approximated Techniques DSA, MGM Optimal Techniques ADOPT, OptAPO, DPOP Max-Sum

  • No general guarantees on

convergence and

  • ptimality
  • Very good approximation
  • n practical problems

– Affinity Propagation – Survey Propagation

slide-29
SLIDE 29

Max-Sum: basic ideas

  • Iterative message exchange to build local functions that

depend only on agent’s variable

  • Choose action that maximises local function (z-function)

1

x

2

x

3

x

) | (

1 2 X

X H ) (

1

X H ) , | (

2 1 3

X X X H

1

x

2

x

3

x

 

) (

) ( ) (

i adj k i i k i i

x r x z

slide-30
SLIDE 30

Max-Sum: messages I

1

x

2

x

3

x

) | (

1 2 X

X H ) (

1

X H ) , | (

2 1 3

X X X H

1

x

2

x

3

x

sum up info from other nodes local maximization step

slide-31
SLIDE 31

Max-Sum messages II

  

j i adj k i i k i j i

x r x q

\ ) (

) ( ) (

       

   i j adj k k j k j j i i i j

x q U x r

j

\ ) ( \

) ( ) ( max ) ( x

x From variable i to function j From function j to variable i

slide-32
SLIDE 32

Max-Sum on acyclic graphs

1

x

2

x

3

x

) (

1 1 X

F ) , , (

3 2 1 2

X X X F

 

) ( ) ( ) , , ( max ) (

3 2 3 2 2 2 3 2 1 2 , 1 1 2

3 2

x r x r x x x F x q

x x   

  

 

1 1 1 1 1

) ( x F x q 

  • Max-sum Optimal on acyclic graphs

– Different branches are independent – q messages remove other variables by maximization – Each variable can build a correct estimation of its contribution to the global problem (z functions)

slide-33
SLIDE 33

Max-Sum on cyclic graphs

1

x

2

x

3

x

) (

1 1 X

F ) , , (

3 2 1 2

X X X F

 

) ( ) ( ) , , ( max ) (

3 2 3 2 2 2 3 2 1 2 , 1 1 2

3 2

x r x r x x x F x q

x x   

  

 

1 1 1 1 1

) ( x F x q 

) , (

3 2 3

X X F

  • Max-sum on cyclic graphs

– Same computation, but Different branches are NOT independent – Agents can still build an (incorrect) estimation of their contribution to the global problem – Extensive evidence that it works very well in practice

slide-34
SLIDE 34

Mobile Sensor Demo

  • Actions

– Move to acquire data in a given location

  • Single agent utility

– Entropy given other agent actions

  • Global Utility

– Sum of conditional entropy values

slide-35
SLIDE 35

Situation recognition for Water drones

Joint work with A. Castellini, G. Beltrame, M. Bicego, D. Bloisi, J. Blum

slide-36
SLIDE 36
  • 3 datasets
  • River/lake
  • Sampling interval: 1 sec
  • 13 features

time latitude longitude altitude speed electrical conductivity dissolved oxygen temperature battery voltage heading acceleration command to propeller 1 command to propeller 2

Matrix of raw data (RAW) (10 features) Matrix of processed data (PRO) (20 features: mean/std sliding window of 10 sec) NORM UNORM NORM UNORM

Datasets

slide-37
SLIDE 37

Upstream/downstream navigation (UDN) Manual/autonomous drive (MAD)

Time intervals manually labeled by experts Information sources:

  • georeferenced path images
  • videos
  • sensor signals

Partial labeling: uncertain intervals were left unlabeled

Data Labeling

Situations and Labeling

slide-38
SLIDE 38

Time series segmentation

GMM From 2 to 8 clusters 300 re-initializations K-means initialization Training performed by EM algorithm Full covariance matrix Max number of iterations: 100 Inference: max model probability HMM From 2 to 8 clusters Observation model: single component multivariate Gaussian distributions Initial state distribution: uniform Initial transition matrix: random stoc. Initial means: computed by k-means Training performed by EM algorithm Max number of iterations: 20 Inference: Viterbi algorithm K-means From 2 to 8 clusters Euclidean distance 300 re-initializations Affinity propagation Preference parameter from 30 to 180 with step 30 times the value of the median of the similarity matrix

slide-39
SLIDE 39

P(C1)=1/6*max(5,1,0)=5/6 P(C2)=1/6*max(1,4,1)=4/6 P(C3)=1/5*max(2,0,3)=3/6

Purity: external measure of the extent to which clusters contain a single class

Performance Evaluation (1/2)

slide-40
SLIDE 40

Performance Evaluation (2/2)

Silhouette: internal measure that contrasts the average distance to elements in the same cluster with the average distance to elements in other clusters

slide-41
SLIDE 41

Purity GMM HMM KM AP GMM HMM KM AP Silhouette UDN Purity GMM HMM KM AP GMM HMM KM AP Silhouette MAD

Model performance distributions

Design of experiments

Five dimensions of analysis: 1) GMM, HMM, KM, AP 4) NORM, UNORM 2) ESP2, ESP4, ESP5 5) # clusters 3) RAW, PRO Total: 324 models, 2 activities

slide-42
SLIDE 42

Performance of the best purity models for each method (GMM, HMM, KM, AP)

  • n upstream/downstream navigation (UDN)

Performance of the best purity models for each method (GMM, HMM, KM, AP)

  • n manual/autonomous drive (MAD)

Selection of the best model

slide-43
SLIDE 43

Segmentation achieved by the best models

slide-44
SLIDE 44
  • Avg electrical conductivity (ec)
  • Std dissolved oxygen ( )
  • Std heading ( )
  • Best matches for

downstream navigation (58% and 37% of coverage, respectively) Best matches for upstream navigation (67% and 16% of coverage, respectively) max silhouette Legend

  • Avg heading (h)
  • Avg command to propeller 1 (m1)
  • Avg command to propeller 2 (m2)
  • Std battery voltage ( )

Statistically significant differences between clusters 1 and 3 (Student’s t-test)

Method: K-means Data: PRO and UNORM # clusters: 7

Analysis of model C7

slide-45
SLIDE 45

We are working on a system for collision avoidance based on visual data only

Detecting obstacles

slide-46
SLIDE 46

Plan monitoring

several low-cost platforms, few operators  team plans

slide-47
SLIDE 47

Team Plans: Related work

Plan monitoring for Multi-Agent Systems:

  • STEAM [Tambe, Jair 1997]
  • BITE [Kaminka and Frenkel, AAAI 2005]
  • Petri Net Plan (PNP) [Ziparo et al., JAAMAS 2011]

PNP:

  • Formal model for plan execution based on Petri Nets

– Sensing during execution – Time extended actions, concurrency, interrupts – Distributed execution – Used in several robotics applications – Petri Net Plan page

slide-48
SLIDE 48

Petri Net (ex.)

  • Directed, weighted, bipartite graph
  • Provides a graphical view of the plan
  • Suited for describing concurrency and

synchronization

Place Token Weight

slide-49
SLIDE 49

UAV-UGV Cooperative landing

Joint work with A. Bertolaso, M. Raeissi, R. Muradore

slide-50
SLIDE 50

Petri Net Plan for Robotics

  • Basic Structures (Actions)

– Ordinary actions – Sensing actions

50

slide-51
SLIDE 51

Petri Net Plan

  • Complex structures by combining actions (Operations)

– Fork

51

slide-52
SLIDE 52

Petri Net Plan

  • Complex structures by combining actions (Operations)

– Join

52

slide-53
SLIDE 53

Petri Net Plan

  • Complex structures by combining actions (Operations)

– Interrupt

53

slide-54
SLIDE 54

UGV Controller Sync UAV Controller

The Petri Net Plan

slide-55
SLIDE 55

Human Interrupt for team plans

Interrupt  change plan execution without aborting Boats to visit locations Swap battery back to visit plan Human decides to interrupt  we know we can recover (no failures)

Joint work with M. Raeissi, N. Brooks, N. Marchi, P. Scerri

slide-56
SLIDE 56

Colored Petri Net for Team Plans

Hierarchical Petri Net

  • events (input/output) for information and commands

Coloured Petri Nets: tokens have a type (color)

  • token  single robotic platform

compact approach to represent team behaviors

Only boats that completed the path

slide-57
SLIDE 57

Using interrupt in Multi-Agent Plans

Proxy interrupt (Boat pull out) General interrupt (General Alarm)

slide-58
SLIDE 58

The interrupt mechanism in action

slide-59
SLIDE 59

Summary

  • Cooperative information gathering

– Coordinate robots to maximize information – DCOP is a powerful framework – Careful design of the model (e.g., reward) is key

  • Recognizing relevant situations

– High level information on drone activity is important but difficult (unsupervised, real-time, …) – Need specific approaches to have on-line, high-level control

  • Plan monitoring

– Formal language to represent high level instructions – Petri Net can represent complex interactions – Coloured Petri Net can be significantly more compact