aggregate programming part 3 applica2on examples
play

Aggregate Programming Part 3: Applica2on Examples Jacob - PowerPoint PPT Presentation

Aggregate Programming Part 3: Applica2on Examples Jacob Beal SFM16: QUANTICOL June 2016 Aggregate Programming Stack Crowd&Management& Applica'on* dangerousDensity crowdTracking


  1. Aggregate ¡Programming ¡ Part ¡3: ¡Applica2on ¡Examples ¡ Jacob ¡Beal ¡ SFM16: ¡QUANTICOL ¡ June ¡2016 ¡

  2. Aggregate Programming Stack Crowd&Management& Applica'on* dangerousDensity crowdTracking Code* crowdWarning safeDispersal Collec,ve&Behavior& collectivePerception collectiveSummary managementRegions … Developer* APIs* Percep,on& Ac,on& State& distanceTo timer summarize broadcast lowpass average partition recentTrue regionMax … … … Resilient* built&ins) G T if Coordina'on* C Operators* Field*Calculus* built&ins) nbr rep if Constructs* sensors& actuators& Device* communica,on& state& restric,on& local&func,ons& Capabili'es*

  3. Crowd Safety Services def ¡dangerousDensity(p, ¡r) ¡{ ¡ ¡ ¡let ¡mr ¡= ¡managementRegions(r*2, ¡() ¡-­‑> ¡{ ¡nbrRange ¡}); ¡ ¡ ¡let ¡danger ¡= ¡average(mr, ¡densityEst(p, ¡r)) ¡> ¡2.17 ¡&& ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡summarize(mr, ¡sum, ¡1 ¡/ ¡p, ¡0) ¡> ¡300; ¡ ¡ ¡if(danger) ¡{ ¡high ¡} ¡else ¡{ ¡low ¡} ¡ } ¡ def ¡crowdTracking(p, ¡r, ¡t) ¡{ ¡ ¡ ¡let ¡crowdRgn ¡= ¡recentTrue(densityEst(p, ¡r)>1.08, ¡t); ¡ ¡ ¡ ¡if(crowdRgn) ¡{ ¡dangerousDensity(p, ¡r) ¡} ¡else ¡{ ¡none ¡}; ¡ } ¡ def ¡crowdWarning(p, ¡r, ¡warn, ¡t) ¡{ ¡ ¡ ¡distanceTo(crowdTracking(p,r,t) ¡== ¡high) ¡< ¡warn ¡ } ¡ Dissemina`on ¡of ¡new ¡versions ¡ Pre-­‑emp`ve ¡modula`on ¡of ¡priori`es ¡

  4. Dependency-Directed Recovery Drama2cally ¡be9er ¡recovery ¡2me ¡ Portal' 70 Fixed − Order Non-­‑dependent ¡ Erdos − Renyi Iden2fy ¡& ¡shut ¡down ¡ Layered 60 services ¡s2ll ¡run ¡ Clustered affected ¡services ¡ Restart time (seconds) 50 Gateway#A# Gateway#B# 40 App'Server' 30 Exchange' Legacy'Unix' 20 10 App#2# App#1# 0 2 4 6 8 10 12 14 16 18 20 22 Core'Logic' # of services Fewer ¡services ¡disrupted ¡ 100 Erdos − Renyi 90 Percent of query originators affected Layered Clustered Database' 80 Core#3# Core#1# 70 60 Core#2# 50 40 30 20 10 0 [Clark, ¡Beal, ¡& ¡Pal, ¡SASO ¡‘15] ¡ 2 4 6 8 10 12 14 16 18 20 22 # of services

  5. DDR Algorithm • Is it safe for the service to run? i.e. are its dependencies satisfied? • If the service is running and not safe – Stop service • If the service is not running and safe – Start service 5 ¡

  6. Opportunistic Airborne Sensor Sharing GIS-­‑integrated ¡adap2ve ¡mission ¡planning ¡ Highly ¡effec2ve ¡sharing ¡ 1 Fraction Covered 0.95 0.9 0.85 0.8 Air Cell Dams Fire Heli Hosp Mil Pow UAV set excluded Low ¡computa2onal ¡cost ¡ Variable UAVs 60 Variable Targets Seconds 40 20 0 1 2 3 4 5 6 7 8 Number of sets [Beal, ¡Usbeck, ¡Loyall ¡& ¡Metzler, ¡ in ¡prep ] ¡

  7. Distributed Rewind and Replay

  8. Tactical Cloud Services

  9. Swarm Command & Control 81#$"9:7;$")<$2)/" 5$*2)*$+ • Build on top of continuous -$"%16%7 space model with: – Modulation by autonomic 012/"/#)* management layers -$)"2%"$"*% – Basis set of “maneuvers” 012/"/#)* 3$.%24 0 th ¡moment ¡ 1 st ¡moment ¡ 2 nd ¡moment ¡ -$")./+& … ¡ Separate ¡ Connect ¡ !"#$""%& '%()*+%, [Beal, ¡2012] ¡

  10. Agent-Based Simulations [Beal ¡et ¡al., ¡2012] ¡

  11. Engineering Biological Systems (def simple-sensor-actuator () (let ((x ( test-sensor ))) ( debug-1 x) ( debug-2 ( not x)))) If detect explosives: emit signal If signal > threshold: glow red Uninduced ¡ Uninduced ¡ Induced ¡ Induced ¡ [Beal ¡et ¡al., ¡2012] ¡ Mammalian ¡Target ¡ E. ¡coli ¡Target ¡

  12. Summary: Aggregate Methodology Crowd&Management& Applica'on* dangerousDensity crowdTracking Code* crowdWarning safeDispersal Collec,ve&Behavior& collectivePerception Self5Org.'System' collectiveSummary Specifica.on' managementRegions "Building Block" Decompose(into( Building(Blocks( Library … Developer* Subs3tu3on( Minimal'Resilient' rela3ons( Implementa.on' APIs* Percep,on& Ac,on& State& Substitution Op3mize(by( Library subs3tu3on( distanceTo timer summarize Op.mized' Implementa.on' broadcast lowpass average partition recentTrue regionMax … … … Resilient* built&ins) G T if Coordina'on* C Operators* Field*Calculus* restrict built&ins) nbr rep if Protelis)Program) Constructs* Enterprise& Protelis'Parser' Server& Protelis' Other& Managers& Interpreter' sensors& actuators& Service' Device* Manager' Daemon' Environment' communica,on& state& restric,on& Variables' local&func,ons& Status,' Start/Stop' Capabili'es* Sockets' Signals' Protelis'Device' Networked' Other& Daemon'Device' Services& Service'

  13. Summary • Major technological trends are all driving towards a world filled with distributed systems • Aggregate programming aims at rapid and reliable engineering of complex distributed systems • Field calculus provides a universal theoretical foundation for aggregate programming • Resilient systems design can be simplified by an emerging self-organization toolbox • Functional composition allows modulation, predictable convergence

  14. Lots of open problems … • Many field calculus results may be more generally applicable to all distributed systems • Extent of basis set needed for various domains • What implicit propeties are needed/possible for building block algebras and libraries? • Extension to mobile devices, ongoing changes • Prediction of approximation quality – “Nyquist” • Open environments and security But we’ve already enough for many applications...

  15. Bibliography • Beal J, Dulman S, Usbeck K, Viroli M, Correll N. Organizing the Aggregate: Languages for Spatial Computing. In: Mernik M, editor. Formal and Practical Aspects of Domain-Specific Languages: Recent Developments. IGI Global; 2013. p. 436–501. • Viroli M, Damiani F, Beal J. A Calculus of Computational Fields. In: Canal C, Villari M, editors. Advances in Service-Oriented and Cloud Computing. vol. 393 of Communications in Computer and Information Sci. Springer Berlin Heidelberg; 2013. p. 114–128. • Beal J, Bachrach J. Infrastructure for Engineered Emergence in Sensor/Actuator Networks. IEEE Intelligent Systems. 2006 March/April;21:10–19. • Beal J, Viroli M, Damiani F. Towards a Unified Model of Spatial Computing. In: 7th Spatial Computing Workshop (SCW 2014). AAMAS 2014, Paris, France; 2014. • Fernandez-Marquez J, Marzo Serugendo G, Montagna S, Viroli M, Arcos J. Description and composition of bio-inspired design patterns: a complete overview. Natural Computing. 2013;12(1): 43–67. • Viroli M, Damiani F. A Calculus of Self-stabilising Computational Fields. In: 16th Conference on Coordination Languages and Models (Coordination 2014); 2014. p. 163–178. • Beal J, Viroli M. Building blocks for aggregate programming of self-organising applications. In: Workshop on Foundations of Complex Adaptive Systems (FOCAS); 2014. • Beal J. A Basis Set of Operators for Space-Time Computations. In: Spatial Computing Workshop; 2010. • Jacob Beal, Mirko Viroli, Danilo Pianini, and Ferruccio Damiani. Scale-independent computations in situated networks. under review.

  16. Acknowledgements • Shane Clark • Mirko Viroli • Partha Pal • Danilo Pianini • Kyle Usbeck • Ferruccio Damiani • Soura Dasgupta • Raghu Mudumbai • Amy Kumar

Recommend


More recommend