some interesting examples of distributing computing
DESCRIPTION
Some Interesting Examples of Distributing Computing. Michael Kilian October 21, 2011. Themes. Autonomous agents that loosely collaborate Many “processors” that come into “proximity” with other processors Incomplete information No single agent has a global view of the “world” - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/1.jpg)
Network Coding and Reliable Communications Group
Some Interesting Examples of Distributing Computing
Michael KilianOctober 21, 2011
![Page 2: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/2.jpg)
Network Coding and Reliable Communications Group
Themes• Autonomous agents that loosely collaborate– Many “processors” that come into “proximity” with other
processors• Incomplete information– No single agent has a global view of the “world”
• Unreliable communication– Agents talk to one another but may lose information, have
information corrupted, etc.• Mobile assets– Processors move around and their proximity to other agents
also changes• May create a global “answer”
![Page 3: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/3.jpg)
Network Coding and Reliable Communications Group
Use Cases to Explore
• The ants go marching one by one• The Battlefield Example• Caching content for mobile users• Nanobots
• CAVEAT: None of these examples are “real” in the sense that I have documented requirements from anyone for these
![Page 4: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/4.jpg)
Network Coding and Reliable Communications Group
Distributing Computing in Nature
Explicit communication between individuals is also exhibited.
Local communication is propagated quickly to mobilize an entire hive without the benefit of any broadcasting.
Local changes create global effect. Errors can be accommodated. Lots of examples in nature.
![Page 5: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/5.jpg)
Network Coding and Reliable Communications Group
“The Battlefield”
Local groups gather
information
Enemies may try to disrupt
communication
Local information can be sent over “noisy” lines to
mobile receivers
Multi-tiered information
provides global view
Information can be
distributed on the ground
![Page 6: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/6.jpg)
Network Coding and Reliable Communications Group
How do we Approach this System
• Network coding for distributing information in a very unreliable and noisy environment– Potential for easy encryption by encrypting
coefficients rather than all the data– How do we manage metadata?
• Network coding for “moving data” across distributed groups– If we view this as a network of pieces of
information, how do we preserve the entirety of the content?
![Page 7: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/7.jpg)
Network Coding and Reliable Communications Group
Content View
Is this realistic? Wouldn’t we simply disseminate the
information globally to start with (with network coding)
![Page 8: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/8.jpg)
Network Coding and Reliable Communications Group
Metadata
• How do we describe the information we are collecting and disseminating?
• How are logical collections created?• Especially in the face of incomplete
information?• What kinds of questions are we asking?
• Is Google (Web Crawling, content correlation, search) a computational model?
![Page 9: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/9.jpg)
Network Coding and Reliable Communications Group
“The Battlefield”
Distribute computing to the data vs. collecting data to the compute
units
![Page 10: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/10.jpg)
Network Coding and Reliable Communications Group
What Questions can we Answer?
• The condition of an object– Is someone hurt? Where are you located?
• Relationships– Is this group near that group?
• Tougher questions – Quantitative– Does this group have enough MREs to last through
the week?• Tougher questions – Temporal – When did the state of an object change?
![Page 11: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/11.jpg)
Network Coding and Reliable Communications Group
Moving Collective Information
As the receiver moves through the geography, information can track the receiver.
Not all information needs to move – move only what is required to reconstruct it (See Exact Regeneration Codes for DistributedStorage Repair Using Interference Alignment, Changho Suh and Kannan Ramchandran)
![Page 12: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/12.jpg)
Network Coding and Reliable Communications Group
Is this a Real Example?
• Sounds good when we consider a single person making the transition
• What if we consider 1000’s of receivers transiting this geography over a period of time– Now “hot” content needs to be over the entire
geography• So…use coding for the long-tail content
freeing resources for hot content– That’s counterintuitive
![Page 13: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/13.jpg)
Network Coding and Reliable Communications Group
Nanobots
![Page 14: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/14.jpg)
Network Coding and Reliable Communications Group
A G T C
Connection point for communicating with a neighbor. Not all connection points need be used.
Sensor for detecting A, G, T, C
A “bot”
Botcan store a limited amount of state (it is not really important how much state this is). It is also capable of rudimentary processing.
![Page 15: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/15.jpg)
Network Coding and Reliable Communications Group
Bot “Manifolds”
A
A
A
A
A
A
A
AGG
G
G
G
GTT
T
T
T
T
T
T
C
CCCC
C
CC
Can we design a “system” such that we determine if the sequence T C G T T exists?
![Page 16: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/16.jpg)
Network Coding and Reliable Communications Group
How do we Approach This?
• Discover neighbors• Establish roles– Bot next to the A,T,C,or G (terminal bot), Bot with
connection to n terminal bots within m “hops”• Network coding to allow very transient networks,
etc.? Is there enough compute power?• How is consensus derived? How is consensus
communicated?• Computation of the very limited!
![Page 17: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/17.jpg)
Network Coding and Reliable Communications Group
What about “Cloud?”
Processors come and go, layout is not necessarily uniform or known beforehand, connectivity is not
uniform or reliable
![Page 18: Some Interesting Examples of Distributing Computing](https://reader035.vdocuments.us/reader035/viewer/2022062501/56816385550346895dd46ec8/html5/thumbnails/18.jpg)
Network Coding and Reliable Communications Group
Thank-you