CASD 2015
Modeling Adversarial Sensor Networks Using Generalized Stochastic Petri Nets Conference on Applied Statistics in Defense October 19-23, 2015 Fairfax, VA Terril N. Hurst Kris W. Kukla Jonathan T. Zink Daniel M. Rosser James S. Kimmet Copyright © 2015 Raytheon Company. All rights reserved. Customer Success Is Our Mission is a registered trademark of Raytheon Company.
Background Raytheon uses Bayesian networks (Bayes nets or BNs) to reason probabilistically regarding multi-level system performance requirements (e.g., Pdetect Pacquire Ptrack Pintercept ) Using BNs has increased the rigor of allocating, designing to, and verifying compliance with requirements However, modeling Adversarial Sensor Networks (ASNs) requires accounting for time-dependent, reactive aspects of highly distributed, multi-actor systems Thus, Petri nets (PNs) were introduced to model ASNs Petri-net modeling is a formal alternative to dynamic Bayesian networks or discrete-event simulation CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
2 of 25
Objectives of this presentation Introduce Petri Nets (PNs) for the formal description, modeling and analysis of adversarial sensor networks (ASNs) Demonstrate building a generalized stochastic Petri Net (GSPN) model of a hypothetical ASN and solving its associated Markov chain Use the 7-step DASE protocol (Design & Analysis of Simulation Experiments) to compare performance of two hypothetical algorithm concepts modeled as GSPNs
CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
3 of 25
Adversarial Sensor Networks (ASNs) Past usage of the term “distributed system” most commonly referred to cooperatively networked computers Due to the pervasive employment of distributed computing resources, the term has evolved to a broader usage, as suggested by the terms “agents” or “actors.” Examples of agents & distributed systems include: • Workers in a flexible manufacturing system (early Petri net application) • Aircraft or cyber-agents in an adversarial engagement • Sensor networks for the above, consisting of multiple sensors that are physically dispersed and/or have multiple sensing modes (e.g., electro-optical, RF, layered cybersensor) Effectively modeling ASNs requires representing their inherently distributed nature CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
4 of 25
Why it becomes important to quantify the properties of distributed systems [Collins2014] • Single actor is State-transition represented by state model of restaurant transition model • Must model other individual actors indirectly (e.g., “No table available,” “Cashier busy”) • “Multiple actors” quickly proliferates states (e.g., “Customer waits for one other,” “two other,” etc.) • Deadlock or inability to reach a state may occur due to unmodeled factors • Need a more powerful way to represent adversarial scenarios CASD 2015
• Tokens represent concurrent actors or other entities (e.g., logical condition) • Transitions fire when each input place has a token; can generate multiple output tokens • Multiple interacting actors can be represented in obvious way • Conflict & cooperation can be easily represented • Mathematical formalism allows determination of deadlocks, reachable states, etc.
Petri-net model
Admitting distributed nature of a system expands modeling power
GSPNs for Modeling Adversarial Sensor Networks
5 of 25
Properties of distributed systems Concurrency: Multiple agents proceed independently of each other Synchronization: Agents’ actions become correlated in time Mutual exclusion: Access by an agent to a resource is blocked by another agent’s use of the resource Conflict: Action by one agent precludes action by another agent Deadlock: No action is possible, due to all agents waiting for each other to act (see Dijkstra’s classic “dining philosophers” example: https://en.wikipedia.org/wiki/Dining_philosophers_problem) Unreachable states: System can never attain certain expected states
It is difficult to model these properties with either dynamic Bayesian networks (requires a copy of graph per time step) or ad-hoc discrete-event simulation CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
6 of 25
Brief History & Uses of Petri Nets [Marsan1995, Reisig2013, Haas2002] Named for Carl Adam Petri, who, in 1962, demonstrated the PN formalism as a way of analyzing the invariant properties and correctness of finite-state automata Several innovative extensions of basic PNs ensued—with varying tradeoffs in rigor vs. expressive power (see bibliography). Example PN extensions: • Stochastic PNs (SPNs; random-variable based timed transitions) • Generalized Stochastic Petri Nets (GSPNs; immediate transitions & inhibitor arcs) Besides being a much-needed front-end for generating Markovprocess models for automated performance analysis, PNs can be used for other purposes • Formal specification (e.g., algorithm / software requirements, CONOPS) • Verification of correctness of design & implementation • Rapid prototyping of simulations and software test-case development • Documentation (e.g., Algorithm Description Documents) CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
7 of 25
A GSPN example employing pollingsystem models (Ch. 9, Marsan1995) Polling-system PNs were used to design protocols for PC LANs, other networks & TCP/IP (the Internet) A server visits one queue at a time in a prescribed order (e.g., cyclic, random) In this case, when visited, each queue contains at most one client If empty, the server “walks” to the next queue This idea is the startingpoint for modeling an ASN CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
8 of 25
Analogous elements in Polling & ASN models GSPN Element Token
Polling
Network I/O Server(s) Blue Agent Client Jobs Red Agent Logical & Indicator Flags—e.g., “Red Here” Sensing Client Buffers (Queues) States/Modes
Place
Transition
ASN
Serving, Waiting, and Walking States
Waiting, Updating & Walking States
Buffer Choice, Interarrival & Service Times
Sensor Choice, Inter-arrival, Walk & Update Times
CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
Building PNs of solvable size is a combination of • art (e.g., when & how to invoke symmetry (for lumping states) • compromise (e.g., using exponential vs. general PDFs) for a specific, intended use “All models are wrong, but some are useful.” –G.E.P. Box
9 of 25
ASN example requires modifying the Polling GSPN Unlike a basic polling system, ASN “clients” (Red agents) do not wait in each queue to be served.” When able, they continue to the next queue, unaware of Blue “service” attempts
The GSPN must be changed to allow possible movement of Red agents without being “served” by Blue agents (see next slides)
CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
10 of 25
DASE study, to practice GSPN modeling: Hypothetical ASN Algorithm Comparison [Hurst2011] Used the 7-step DASE protocol to compare 2 Blue-polling alternatives: Cyclic vs. Random place-visits 1. Establish Basis (sponsor, req’ts, SMEs, credible sim/tools, …, time! ) 2. State this experiment’s quantifiably specific Objective & Category (1 - 4) 3. Define measured Response(s) & practically Discernible Difference(s) 4. Define the experiment’s Factor Space: (control/uncertain factors) 5. Screen Control Factors and/or inadmissible Control-Factor treatments 6. Sample for empirical modeling (“the main DOE”) 7. Analyze & present Results—in the following order: a) Look at the data (scatterplots, time series, etc.) b) Aggregate the data (e.g., histograms, box plots, etc.) c) Only after 7a & 7b, compute & test summary statistics and/or model coefficients and model residuals d) Determine whether follow-on experiments will be required for decision-making
CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
11 of 25
1 – Basis: comparing Blue-Polling types A. Simulation / tools: PIPE2 v. 4.3.0 (Petri Nets), MATLAB Blue Cyclic polling Blue Random polling
80 tangible states (“markings”)
56 tangible states (“markings”)
B. Time to run/analyze the experiment: ~ 2 days
The example includes 4 symmetric locations, but they could have been uniquely defined as groups of size > 1 CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
12 of 25
1 – Subnet, Red’s random sensor locations 4 client-location options
Physical location
Logical location
• RD0: Red agent’s Home place • iK1-4: Red agent’s free-choice immediate transitions, ~U(1, 4) • RX1-4: Red’s wait-for-next places • RV1-4: Red’s available-for-beingserved indicator (logical) places • TA1-4: Red’s (exponential) returnto-Home transition times • iX1-4: RV1-4-to-bit-bucket transitions, inhibited until token leaves RX1-4
This subnet is connected either to the Blue Cyclic or the Blue Random subnet (next slides) CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
13 of 25
1 – Subnet, Blue’s Cyclic locations 4 server-location options • RV1-4: Red-available-for-being-served places (inhibitor arcs not shown) • iX1-4: RV1-4-to-bit-bucket transitions, inhibited until token leaves RX1-4 • iM1-4: Blue’s “Match Found” transitions • BV1-4: Blue server-available places • TD1-4: Blue (exponential) wait times • BW1-4: Blue “Walking” places • TW1-4: Blue (exponential) walk times • BU1-4: Blue “Updating” places • TU1-4: Blue (exponential) update-interval times
Red subnet connects here Logical locations
This subnet connects to the Red Random subnet (earlier slide) CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
14 of 25
1 – PN for Random Blue & Red choices 4 location options • RV1-4: Red-available-forbeing-served places (inhibitor arcs not shown) • iX1-4: RV1-4-to-bit-bucket transitions, inhibited until token leaves RX1-4 • iM1-4: Blue’s “Match Found” transitions • BV1-4: Blue serveravailable places • TD1-4: Blue’s abstracted wait time • BW: Blue’s abstracted “Walking” place • TBW: Blue’s abstracted walk time • BU1-4: Blue “Updating” places • TU1-4: Blue (exponential) update-interval times CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
15 of 25
2 – Experiment’s Specific Objective Determine the mean Blue update-rate (tokens per unit time) sensitivity to the Blue & Red mean transition times, which are assumed to be exponentially distributed PDF f ( X= 0) = a 1 1 E[X= µ= ; E X 2 = σ 2= 2 ] a a a
1/a CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
16 of 25
3 – Experiment’s Responses and Discernible Differences δ Primary: Mean Blue-update rate (tokens per unit time); δ = 3% of coded mean response range Secondary: None Response values were computed using the state-transition matrix Q and the steady-state transition-probabilities vector η, linearly solved in the Markov chain (ηQ = 0; Σηi = 1) that was derived for the cyclic and random GSPNs
CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
17 of 25
4,5 – Experiment’s Control-Factors Set XC
XC Name
#
Unit
Type (num/cat)
Low, Hi (num) or Categories (cat)
1
Red wait interval (random locations)
coded
numerical
-1, +1
2
Blue wait interval
coded
numerical
-1, +1
3
Blue update interval
coded
numerical
-1, +1
4
Blue polling discipline
-
categorical
cyclic, random
This factor turned out not to be a performance predictor, given the control-factor ranges chosen CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
18 of 25
6 – Sampling for building response models Experimental designs chosen for modeling: • Face-Centered Central Composite Design (CCD); 3 levels per factor; #XC treatments = 15 (center-point is #15) PIPE runtime was ~2 seconds per treatment
coded-XC experimental design
XC2 XC3 -1 -1 -1 1 1 -1 1 1 -1 -1 -1 1 1 -1 1 1 0 0 0 0 -1 0 1 0 0 -1 0 1 0 0
#4
#2 #14 #6 #11
#9
#8 #15
#12
XC3
CASD 2015
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
XC1 -1 -1 -1 -1 1 1 1 1 -1 1 0 0 0 0 0
#3 #10
#1
XC
#13
1
#5
GSPNs for Modeling Adversarial Sensor Networks
#7
XC2 19 of 25
XC1 XC2
7 – Sample-sequence plot(s)
XC3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-1 -1 -1 -1 1 1 1 1 -1 1 0 0 0 0 0
-1 -1 1 1 -1 -1 1 1 0 0 -1 1 0 0 0
-1 1 -1 1 -1 1 -1 1 0 0 0 0 -1 1 0
Similar, as-expected trends in the two polling alternatives CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
20 of 25
7 – Cyclic & Random (coded) models & model residuals are very similar YCYC = −0.120 − 0.096 Rwait − 0.755 Bupdate +
2 + 0.093Rwait Bupdate 0.325 Bupdate
2 2 YRAND = −0.233 − 0.096 Rwait − 0.694 Bupdate + 0.083Rwait + 0.293Bupdate + 0.093Rwait Bupdate
Both model residuals fall well within ± 4% discernible difference CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
21 of 25
7 – Response surfaces are very similar
BlueCyc
BlueRnd
Blue Update Interval is the dominant performance predictor CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
22 of 25
7 – Study’s conclusions, recommended actions, and/or follow-on studies
Performance (Mean Update Rate) was very similar for cyclic vs. random Blue polling Blue-wait interval was not a performance predictor within the experiment’s control-factor ranges Next step: Choose cyclic approach and continue algorithm development, possibly analyzing with a more detailed GSPN
CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
23 of 25
Conclusions & Summary As the language is mastered & modeling skill improves, we can use GSPNs to bound performance possibilities of algorithms within distributed systems, accounting for effects of • Concurrency & Synchronization • Mutual Exclusion & Conflict • Deadlock & Unreachable States
GSPNs are also being investigated for other uses • • • •
Formal specification Verification of correctness Rapid prototyping of simulations and software test-case development Documentation (e.g., Algorithm Description Documents)
In each case, limitations due to the underlying assumptions of GSPNs are being explored CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
24 of 25
Bibliography 1. Boon, M.A.A., R.D. van der Mei, E.M.M.Winands, “Applications of Polling Systems,” 2014, http://arxiv.org/pdf/1408.0136.pdf 2. Bolch, G. S.Greiner, H.deMeer, K.S. Trivedi, Queueing Networks and Markov Chains (Wiley), 1998. 3. Collins, D.H. and A.V.Huzurbazar (2015), “Petri Net Models of Adversarial Scenarios in Safety and Security,” technical report LA-UR-15-24028, Los Alamos National Laboratory, Los Alamos, NM. 4. Collins, B.D., T.N. Hurst, and J.M. Ard, “Designed Simulation Experiments, Part 1: Roots, Myths, and Limitations of Conventional DOE, Proceedings, AIAA Conference on Modeling & Simulation Technologies (2011), AIAA 2011-6624. 5. Haas, P.J., Stochastic Petri Nets: Modelling, Stability, Simulation, (Springer), 2002. 6. Huang, H., J.Hartman and T.Hurst, “Efficient and Robust Query Processing for Mobile Wireless Sensor Networks,” International Journal of Sensor Networks (IJSNet),Vol 2 No.1/2, pp 99-107, 2007. 7. Huang, H., J.Hartman and T.Hurst, “Data-Centric Routing in Sensor Networks using Biased Walk,” Proceedings, Third Annual IEEE Communications Society Conference on Sensor, Mesh and Ad Hoc Communications and Networks (SECON 2006), Reston, VA, USA, Sept 2006. 8. Hurst, T.N., C.S. Joseph, C.F. Pouchet and B.D. Collins, “Designed Simulation Experiments, Part 2: DOE for the Digital Age,” Proceedings, AIAA Conference on Modeling & Simulation Technologies (2011), AIAA 2011-6625. 9. Marsan, M.A., G.Balbo, G.Conte, S.Donatelli and G.Franceschinis, Modelling with Generalized Stochastic Petri Nets (Wiley), 1995; out-of-print, but freely available in PDF format: http://www.di.unito.it/~greatspn/GSPN-Wiley/ 10. McGeoch, C.C., A Guide to Experimental Algorithmics (Cambridge), 2012. 11. Reisig, W., Understanding Petri Nets: Modeling Techniques, Analysis Methods, Case Studies (Springer), 2013. 12. Reisig, W., A Primer in Petri Net Design (Springer-Verlag), 1992.
CASD 2015
GSPNs for Modeling Adversarial Sensor Networks
25 of 25