Adaptive Geographical Search in Networks


Published on

Presentation of a research plan to use complex adaptive systems approaches to exploring the problem of optimizing geographical search in a wide variety of networks. Created to accompany a research proposal for EECS 594, Introduction to Adaptive Systems, at the University of Michigan.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Adaptive Geographical Search in Networks

  1. 1. Adaptive Geographical Search in Networks Andrea Wiggins EECS 549, Winter 2007
  2. 2. The Problem <ul><li>Geographical search in networks can be very inefficient </li></ul><ul><li>Need good strategies for finding the shortest (geodesic) paths </li></ul><ul><li>Network characteristics vary widely, and search strategies accordingly </li></ul><ul><li>What works for A doesn’t work for B </li></ul>
  3. 3. The Example <ul><li>Example Algorithm (from Lada Adamic, SI 614, Winter 2006) </li></ul><ul><ul><li>current node = start node </li></ul></ul><ul><ul><li>while (current node is not the target), mark current node as visited </li></ul></ul><ul><ul><li>if one or more of the neighbors of the current node has not been visited, pick the unvisited neighbor with the smallest distance to the target </li></ul></ul><ul><ul><li>otherwise, pick a visited neighbor at random </li></ul></ul><ul><ul><li>set the current node to the neighbor selected </li></ul></ul><ul><li>In each network there are 4,000 nodes placed randomly on a two dimensional square area. </li></ul><ul><li>Each node is connected to its two closest neighbors (note that it may be the closest neighbor from another node's point of view, so it may gain more than two edges from this requirement). </li></ul><ul><li>Each node additionally adds one edge to another random node with probability 1/ d r , where d is the Euclidean distance (sqrt( x 2 + y 2 )) between the two nodes, and r is the parameter that varies between the networks and takes on values 1,2, and 4. </li></ul>
  4. 4. The Results 12.4 2.2 6.2 28.6 22.9 28.0 Standard Deviation 9.7 0.9 5.1 49.4 27.2 36.6 Mean Revisits r = 4 Revisits r = 2 Revisits r = 1 Steps r = 4 Steps r = 2 Steps r = 1 10 trials
  5. 5. The Proposal <ul><li>Test many diverse search algorithms in parallel on a broad spectrum of network topologies with varied parameters </li></ul><ul><li>Adaptive agents created from elements of known successful algorithms are the search strategies being tested </li></ul><ul><li>Agents weight their own genes and recombine for new search algorithms </li></ul>
  6. 6. The Simulation <ul><li>Environments are graphs </li></ul><ul><li>New but statistically similar graph for each turn prevents local optimization </li></ul><ul><li>Agents’ task is to find a goal node from a starting node in the fewest possible steps </li></ul><ul><li>Agents are recombined according to the relative length of their traversals (fitness) </li></ul>
  7. 7. The Environments <ul><li>Use stochastically generated graphs, on a lattice, with similar network properties </li></ul><ul><li>Start with Erdös-Rényi random graphs as a control - well studied standard random graphs </li></ul><ul><li>Study other well-known models (small worlds, etc.) </li></ul><ul><li>Use network growth models from the literature to create more experiments </li></ul>
  8. 8. The Agents <ul><li>Agents are made up of weighted combinations of graph traversal rules </li></ul><ul><li>Genetic structure determines movement </li></ul><ul><li>Agents know the relative direction of the goal node (in 2D space) </li></ul><ul><li>Must have memory of traversed nodes to allow backtracking & prevent loops </li></ul><ul><ul><li>Usually achieved by coloring nodes </li></ul></ul>
  9. 9. The Interactions <ul><li>Condition of limited information: each node knows and can report whether it is the goal node, if it has been visited, its degree, and vector direction of its edges </li></ul><ul><li>Agents can ask nodes for this info, but only this info </li></ul><ul><li>Agents traverse the graph from a start node along the graph edges to find the goal node </li></ul>
  10. 10. The Rules <ul><li>At each turn, agents traverse the graph according to their genetic instructions </li></ul><ul><li>At the end of the traversal, each agent adjusts its weights to credit useful strategies </li></ul><ul><li>After adjusting weights, agents recombine with probability based on traversal length relative to other agents </li></ul>
  11. 11. The Outcomes <ul><li>Agent populations expected to converge to a few good algorithms for each graph </li></ul><ul><li>Rules and weights for successful algorithms will vary across graph types </li></ul><ul><li>Current algorithms will be discovered and surpassed </li></ul><ul><li>Future work can explore which search strategies work for graph characteristics </li></ul>
  12. 12. Thank you! <ul><li>Questions? </li></ul>