The implementation of the distributed shortest paths algorithm

Abstract

Nowadays we use multi-core processors and broadband internet, which is usually available. If we want efficient use of available resources, we should use distributed algorithms. Distributed algorithms are used in systems with more computer units or more processor cores and for computing a result we use all available hardware. For efficient use of resources we need distributed software, which runs on all computers at the same time. In thesis I had written and solved the problem of shortest paths tree with distributed algorithm. The distributed algorithm is designed in a way, that every graph node belong its own process unit. And every node has information only about its neighbours and not information about complete graph. In my program I have divided process units into nodes regarding to the main problem, that the graph includes nodes and edges. I have created program called Node. The program Node runs in his own process unit and connects to other Nodes. Nodes are connected into network. The network represents the graph in which we search the shortest paths tree. The technology that I used for messaging between the Nodes is the Java RMI.