1 / 50

Large-scale adaptive systems

Large-scale adaptive systems. Lecture 5: Top-down (and Bottom-up) Approaches. Dr. Stefan Dulman s.o.dulman@tudelft.nl. Review previous lecture. Mechanisms Plain diffusion – aggregation Replication – searching Stigmergy – routing Chemotaxis – load balancing. Related work.

robert
Download Presentation

Large-scale adaptive systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Large-scale adaptive systems Lecture 5: Top-down (and Bottom-up) Approaches Dr. Stefan Dulman s.o.dulman@tudelft.nl

  2. Review previous lecture • Mechanisms • Plain diffusion – aggregation • Replication – searching • Stigmergy – routing • Chemotaxis – load balancing

  3. Related work • This lecture is based on: • R. Nagpal: Global-to-Local Programming: Design and Analysis for Amorphous ComputersIEEE Conf. Self-Adaptive, Self-Organizing Systems 2007http://www.eecs.harvard.edu/ssr/publications/ • A. Pruteanu: ASH: Tackling Node Mobility in Large-Scale NetworksIEEE Conf. Self-Adaptive, Self-Organizing Systems 2010http://www.es.ewi.tudelft.nl/papers/2010-Pruteanu-ash.pdf

  4. Design methodologies • Top-down and bottom-up approaches • “Traditional” engineering • Steps • Definition of requirements • Choice of architecture (design) • Selection of major building blocks • Implementation • Verification • Testing against the requirements • Iterative improvements at block level ? • Engineering methodology: waterfall approach • Examples • OSI - layered based approach Steve McConnell: Rapid Development: Taming Wild Software Schedules

  5. Criticism • Lots… • Many alternatives also identified • “V” model • Improved version of waterfall model • Allows iterative process (in principle) • Solution: agile software development? Fred Brooks: The Mythical Man-Month: Essays on Software Engineering

  6. Alternative approaches • Violate the main assumption: • We are not able to specify at design time the requirements • Requirements will change over time • User experiences learning curves and wishes change with time • Alternative path • Think of the ecosystem: user-technology • User desires change over time (learning, new problems, etc.) • Technology changes over time (new SW/HW platforms) • Goal is that system survives while minimizing resource consumption • Time, energy, money, etc. • Traditional “control” no longer available • Both user and technology need to adapt • Design focus changes from optimality to stability

  7. Alternative approaches • ”Standard” design approach not available yet  • Inspiration from nature • Self-adaptive systems (insects to human society) • Ecosystems • Various trials • Amorphous computing (MIT 2000) • Autonomic computing (IBM 2001) • Programmable matter (CMU 2005) • Ultra-large-scale systems (CMU 2006) • Many more expected • Shrinking of technology • Increased number of mobile devices

  8. Alternative approaches • Key characteristics • Adaptation of the system components • Evolution of the system components • Heterogeneous system • Different (versions of components) • Analogy with buildings-city • Design focus • Old: specifications and verifications against them • New: setting up policies and ease evolution • Goal is to obtain a stable system • Shift from micro to macro management

  9. Possible inspiration • Have we seen this before? • Yes: the management of the common pool resources • Common pool resources used by a distributed community • Often leads to disasters • Actions getting maximum reward on short term to individuals • The whole society suffers afterwards • Example: global warming • Solutions? • Election of a leader • But strong authority is usually disliked  • Privatization of the common resources • But not all will be equal  • Local policies leading to global stability? Garrett Hardin: The Tragedy of the Commons

  10. Common pool resource management • ElinorOstrom – Nobel Prize in Economic Sciences (2009) • 8 “Design principles” for local resource usage leads to stable system • Clearly defined boundaries (effective exclusion of external unentitled parties); • Rules for appropriation/provision of resources are adapted to local conditions; • Mechanism allows most players to take part in the decision-making process; • Effective monitoring by monitors (part of or accountable to the players); • Scale of graduated sanctions for appropriators who violate community rules; • Mechanisms of conflict resolution are cheap and of easy access; • Self-determination of community recognized by higher-level authorities; • For larger common-pool resources: organization as multiple layers ofnested enterprises Do you have a strong CV? Check this link out: http://www.indiana.edu/~workshop/people/lostromcv.htm

  11. Lecture contents • Introduction: design methodologies • Alternatives to traditional design • Example #1 • Amorphous computing – global-2-local compiler • Example #2 • ASH Clustering scheme • Summary

  12. Global-to-local challenge How to program robust global behavior from the interaction of large numbers of unreliable resource-constrained devices (agents)? How to program complex desired global goals from local interactions amongst communities of simple agents?

  13. Example: amorphous computer Source: RadhikaNagpal - Programmable Self-Assembly: Constructing Global Shape Using Biologically-Inspired Local Interactions and Origami Mathematics, PhD Thesis, MIT, 2001

  14. A programmable material

  15. Tools Only gradients based on local communication

  16. Example of applications • 2D shapes • Gradients • More complex shapes: transistors on chip • Previous efforts: Growing point language (GPL) • Programmable sheet of cells • 3d “origami” shapes • Real applications: folding solar cells of satellites, clothes of the future, “intelligent materials”

  17. Working prototype Hawkes, E., et al.: Programmable matter by folding, Proc. of the National Academy of Sciences, 2010

  18. Solution overview • Components • Global description of desired goal • Known, simple global emergent behavior – gradients • Link between the two levels • Advantages • Automatic “compilation” of code to be executed locally • Topology not explicitly as part of solution • Solution is general enough to work on other platforms as well Global specs. Local emergent behavior

  19. Origami shape language • Basic primitives • 6 axioms (only 4 needed)

  20. Global level – OSL

  21. Local level • Sheet of distributed (static) processors • Each processor communicates with its neighbors • Known simple emergent behavior: gradient • What happens if we start gradient at two different points? • Each node will get two hopcount numbers • Nodes with the identical hopcount numbers are on a line! • One can use the simple emergent behavior to create more complex behaviors – axioms A1-A4 • Optimal design? • Most likely not, but: robust, simple to implement and understand

  22. Axioms implementation

  23. The “cup” program

  24. Other examples

  25. Additional issues • PhD thesis also covers • Analysis of robustness • Distribution of errors for gradient mechanisms • Influence of imperfections on the axioms • Tolerance to random death of cells • Analysis of the area of deployment • Shape is heavily influenced by the area of deployment

  26. Follow up research • Extensions of the G2L compiler to model biology processes • D. Yamins: A Theory of Local-to-Global Algorithms for One-Dimensional Spatial Multi-Agent SystemsDoctoral thesis, Harvard University, Feb 2008 • Explores at length convergence and optimization issues • Simulators • MIT-Proto – initial effort on producing an accessible G2L • Targets “down-to-earth” networks: swarms, mobile mesh nets, etc.

  27. Claytronics

  28. Claytronics++

  29. Lecture contents • Introduction: design methodologies • Alternatives to traditional design • Example #1 • Amorphous computing – global-2-local compiler • Example #2 • ASH Clustering scheme • Summary

  30. Ad-hoc communications for large crowds

  31. Ad-hoc communications for large crowds

  32. Future T&L Warehouses

  33. Future T&L Warehouses

  34. Problems induced by node mobility Unreliable Links High Control Traffic • Lower Throughput • Higher Latency Low QOS Low User Experience

  35. Solution: Virtual Partition of The Network • Emulates a fixed infrastructure in an ad hoc environment • Abstraction provides the illusion of a reliable, static infrastructure • Applications: • routing • location / tracking services • mobile robot coordination • functional partitioning

  36. In context… • G2L for mobile networks is difficult because of the lack of reliable gradient/hopcount • Are there other mechanisms = “simple” emergent behavior? • Is there a trade-off between resolution and stability? • ASH is a first step to extending G2L to mobile systems • Exploration of stable behaviors

  37. ASH algorithm NO position, speed, orientation information of nodes Builds a Self-Organizing Quasi-static Overlay Local rules and global feedback via gossiping

  38. ASH

  39. ASH algorithm Diffusion through Gossiping Node ‘i’ randomly picks a node ‘j’ from the same domain and sends it and to itself During the communication round, the node receives updates from a set of neighbors including itself The node updates its values at time t+1 The sum remains constant at each moment in time (balloons not leaking) Pressure given by m/w

  40. ASH algorithm start Initialization Update domain ID If leader, do mass correction Diffusion Round++ NO Round == MAX YES stop

  41. ASH algorithm Local Decision Rules Majority voting Pressures Node K Domain ‘j’ Domain ‘i’ Example: θi,k = 0.5·15/18+0.5·15/100= 0.4916 θj,k = 0.5·3/18+0.5·85/100= 0.5083 Node K switches from domain I to domain J

  42. ASH algorithm • Partition the network into domains • We want: • ASH-Cluster algorithm • What’s Needed: • Cluster-head + gradient for routing

  43. ASH Clustering Algorithm • Cluster head • Software agent that sitsin center of domains • Gradient • Routing • 1. Nodes <–> cluster-heads • 2. Inter <–> cluster-heads

  44. Coping with an imperfect world • Pressure loss is generated by: • Node failures • Packet loss • “Strange topologies” + high • speed • Nodes monitor the pressure loss via a distributed mechanism • Cluster head injects pressure periodically if needed • Pressure loss detection is equivalent to the churn detection problem • Any distributed churn detection algorithm should do it • We propose in the paper NetSize, a gossip-based version

  45. Analysis - metrics The motion metric is equal to the distance traveled by the centroid of the positions of the nodes of a domain The variation metric is equal to the difference: where is the mean value of the distances between the centroid of a domain and all the nodes in the domain, at time step ‘t’

  46. Influence of mobility ASH is self-repairing - Domain speed << node speed

  47. Domain selection stability ASH is self-stabilizing

  48. Results Influence of the network density ASH does NOT need high node density Scalable: higher density is better

  49. ASH-Summary • ASH builds a quasi-static domains on top of a mobile network • ASH includes a feed-back mechanism -> leads to self-* properties • Efficient • Gossip alike communication complexity • Future work • Evaluation on real-life traffic mobility traces • Deployment on real hardware

  50. Lecture contents • Introduction: design methodologies • Alternatives to traditional design • Example #1 • Amorphous computing – global-2-local compiler • Example #2 • ASH Clustering scheme • Summary

More Related