1
$\begingroup$

What are some approaches to optimize a directed graph (v,e), where the vertices are nodes participating in the transmission of a message to a subset of the vertices using the gossip protocol, and where each outgoing edge represents the transmission of any incoming message to the edge's destination vertex. Each edge has a weight, which is the latency for sending a message from the src vertex to the destination vertex. I am looking at a choice in optimization, optimizing for the minimum amount of message exchanges, or optimizing for the minimum time it takes for a message to flow to all destination vertices (as approximated by summing the latencies of the edges traversed).

I suspect this is a well-researched problem, and will need further constraints to make it practical for implementation, but I'm hoping the community here can give me a good jump start on my research to implement this for the software application I am writing.

  • 0
    You may solve the time problem with the [Floyd Warshall algorithm](https://en.wikipedia.org/wiki/Floyd%E2%80%93Warshall_algorithm).2017-01-03
  • 0
    Hey @Bill Barnhill, I have a few questions. Is there a single source vertex and a single destination vertex or are there multiple sources / destinations? If there are multiple sources / destinations, do you care how much of the message each source vertex sends or how much each destination vertex receives? Knowing this would help to write a better answer for you.2017-01-04
  • 0
    Note that setting all of the latencies (edge weights) equal to some positive constant would solve the problem of minimum amount of message exchanges.2017-01-04
  • 0
    Also, do you have constraints on the edges? For instance, is there a limit to how much of a message can pass through an edge?2017-01-04
  • 0
    Regarding constraints on the edges @Chris Harshaw - right now I am only exploring situations where the message is transferred in an all or nothing approach, so no partial message transfers. Also the latencies are determined by real world measurements, so cannot be set equal outside of a test environment.2017-01-04
  • 0
    Regarding since source vertex and single destination vertex - I am looking at modeling a Peer to Peer system communicating with a gossip protocol, where each peer can communicate with a limited number of neighbors, and any peer can send a message to any other peer in the system. The source has to send all the message and the destination has to receive all the message. The messages will have a reliability mechanism in place and the system will use NAKs.2017-01-04
  • 0
    @LinAlg Not sure how to use a shortest path algorithm to optimize the graph. Your comment may be bringing to light a bad title for my question. If I was to come up with a measure of how well the graph was optimized in the way I mean, it would be to measure the min,max,mean, and std. deviation of the measures across all source vertices of the time it takes for a message from a source vertex to get to all destinations in the system. I was actually thinking Ford-Fulkerson method might be applicable, but wasn't sure how to apply it.2017-01-04

0 Answers 0