/Distributed-Search

A test based on far and near connections

Distributed-Search

##Introduction Most people are linked together by short chains of acquaintances creating a network of people that know one another. These short chains then branch out, causing the network to grow. In our daily lives, we are all associated with other people. The people that we are associated with know other people, that we might not know. There are two fundamental components to making this experiment work. First is that the short chains are ubiquitous, and second, individuals operating with purely local information are adept to finding these chains. The nodes for this experiment are When connecting these notes, they can only be conned by their “Manhattan distance.” This means, that nodes cannot be connected diagonally, they must be connected either vertically or horizontally. Each of the connections are bidirectional and we assume that the grid has an even number of members.

One of the challenges that we faced when dealing with this problem is that we are unaware of who the people are that propagate the message from its sender to its receiver, we must assume that the system operates by the rule that at each step, the holder of the message passes it across one of its short or long range connections. Crucially, this current holder does not know the long range connections of the nodes that have touched the message. The selection of a fifth long range note is controlled by a clustering exponent that determines the probability of a connection between two notes as a function of their distance from one another. Once a node finds its distant neighbor, that distant neighbors distant neighbor is the other node that it is the distant neighbor. For example, if the distant neighbor of X is Y, then the distant neighbor of Y is X. Because the nodes are arranged in a lattice, the current node that has the message does know the lattice distance of all five of it’s connections (neighbors and distant neighbor). Ultimately, through the numerous connections, the node knows the destination of the transmission. This is what forms the basis of forwarding the message. There is always a very short path between two nodes, and this path isn’t always taken because the nodes do not know the location of all of the other nodes in the lattice.

##Methods For this project, we created a two-dimensional lattice by using an the array data type and the Java programming language. The development environment that we used was Eclipse on a Windows computer. Each node in the array was give two neighbors that are touching it on either the top, bottom, left, or right side. The node is also given a fifth connection that is considered the distant neighbor. This fifth connection provides access to another node that isn’t from the immediate “neighborhood” of the original node. This is what allows all of the nodes in lattice to connect to one another, allowing all of the nodes in the lattice into the “network.” It’s possible for a message to be transmitted to its final destination without a node knowing the location of all of the other nodes in the lattice. The distance of the distant neighbor was randomly chosen using a formula 1 = k (1/(r^alpha)). This formula determines how close or far away the distant neighbor will be. The higher the r value, the farther away the neighbor will be. The lower the r value, the closer the neighbor will be.