LONGEST PATH BY PRODUCT

5 次查看(过去 30 天)
Hello,
I have an adjacency matrix (A= [0,0,0.6,0.7,0.3;0.9,0,0,0.3,0;0,0.6,0,0.9,0;0,0,0.4,0,0.9;0,0,0,0,0]) that represents the weights of edges on a 5 node graph, and I wish to find the longest (by product not sum) between two nodes. I was considering doing an element by element inverse of the matrix (1./A) then I would go ahead and apply the Dijkstra's algorithm but using this method would give me the longest path (due to the inverse funtion) based on summation, where as I need the longest path based on multiplication.
  2 个评论
Walter Roberson
Walter Roberson 2020-1-12
log() so sum of logs and exp() to get the product

请先登录,再进行评论。

采纳的回答

Thiago Henrique Gomes Lobato
You can take the log of your inverse matrix and use the log property:
Which basically says that maximizing/minimizing the sum (of logs) is the same as maximizing/minimizing the product of the variables.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Dijkstra algorithm 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by