I’m a Bulgarian prince (from the land of Bulgaria). When I was eighteen I embarked on a long journey around the world of Mathematics. Formally speaking, I am Petar Maymounkov – a PhD student at CSAIL, MIT, in Prof. Frans Kaashoek’s research group Parallel and Distributed Operating Systems (PDOS). My writing here will be broadly-based, hopefully of continued interest to the occasional passerby. If you are very eager to hear something concrete, well, there will be:
Math and computer science — open problems, studies, impressions of talks and conferences, small unpublishable results. Life(with)style — yoga, climbing, travel, cooking recipes. Politics and economics — I have occasional reflections on these topics, albeit refracted through the computational lens. Fun — expect puzzles, I’ve been collecting those for ages; interviewers cannot keep up.
Most importantly, however, I want you to write too! One last thing, I insist you know that I designed the look and function of this blog. It is optimized for your reading pleasure and my artistic fulfillment.
What are “Population Algorithms”?
This is my own term. At conception time, I didn’t realized that it had a nice metaphorical ring to it. I use it as a shorthand for a class of computational questions of the sort:
What (combinatorial) problems can be solved in a network of computers with enforced connectivity constraints (usually social) where each node runs the same software and can only talk to its neighbors in an asynchronous fashion.
Population problems are best seen through an example. My favorite problem is the one of self-organizing a dynamic compact routing scheme: A population algorithm is expected to result in assigning a name and a compact routing table at each vertex, so that eventually routing based on local information (the routing table) can forward messages to any desired destination. Such an algorithm runs continuously in the background, updating for dynamic changes in graph connectivity.The grand motivation for population algorithms is the desire to re-implement the WWW (or a version thereof) so it does not rely on centralized facilities like DNS or Google. In addition to this, a “population implementation” of the WWW could bring some extra features like a degree of server-side and client-side anonymity as well as resilience against censorship by governments-in-the-middle.The fascinating nature of population algorithms (which relates to diffusion processes and sketching of data) naturally calls for beautiful areas of Mathematics and Computer Science like graph spectra, metric embeddings, sparse approximations and functional analysis, which makes it fascinating to think about in the abstract.









Desire to speak? ↓