我有一个有向的,加权的路由图(大约10 ^ 5条边,每个节点4条边,很多圆圈)。
每个边缘都有相关的成本。我如何评价每个节点的“连接性”?应该可以衡量从该节点到达其他节点的成本。
如果每个节点都具有可靠性因子(包含该节点的所选路径将失败并且必须找到新路径的可能性),一切将如何改变?
感谢您的帮助
答案 0 :(得分:1)
我相信您在许多方面提出的问题都与PageRank算法的用例相符。
我不会讨论该算法的一般工作原理,因为在线上有很多博客/视频已经对其进行了详尽的解释。我个人最喜欢的短片之一是this。
现在,让我们看看该算法如何适合您的用例。让我们将节点 x 的connectedness
定义为 C(x)。我们可以将给定的语句重新定义为“从该节点到达其他节点的价格多么便宜” 到”,我们最终有可能最终在给定节点上遍历整个图,例如我们倾向于采取成本更低的优势”。。
该声明在很大程度上与PageRank算法背后的意识形态有关。我们只需要考虑如何计算工作的边际成本。
原始的PageRank算法将给定节点的页面等级均匀地划分为其所有相邻节点(在公式中表示为PR(y)/ OUT(y))。另一方面,我们需要更偏向于低成本的边缘,为此,我建议将公式修改为
(SUM-EDGES-COST(y)-EDGE-COST(x,y))*(C(y)/ SUM-EDGES-COST(y))
代替了传统的 C(x)/ OUT(x)。我们采用差异(SUM-EDGES-COST(y)-EDGE-COST(x,y)),因为在我们的方案中,较低的边缘成本意味着更多的connectedness
。另一种可能性是将softmax
函数应用于每个节点的边缘成本,作为规范化策略。
要回答关于节点 x 由 R(x)给出的具有可靠性因子的部分,我们可以将其直接乘以 C (x)。
总结一下,
应符合您给定的情况。
我在这里介绍的只是一种可能性,我可以从脑海中思考,很可能无法解决。我所希望的是,它可以以某种方式帮助您。干杯! :)