我正在使用一个科学软件包,该软件包大量使用igraph的最短路径算法来计算路径长度。但是,对于我们感兴趣的图形,返回的矩阵非常占用内存,可以轻松缩放至Gb的10。而且,不需要双精度计算-在大多数情况下,单精度甚至整数精度就足够了。
我有两个问题:
在文档中找不到我可以做的任何参数或设置,在https://igraph.org/r/doc/distances.html或低级函数文档中都找不到。
谢谢!
答案 0 :(得分:0)
一些提示可能会有所帮助:
仅当大多数顶点对彼此不可访问时,才使用稀疏矩阵会有所帮助。这将意味着该图具有许多小组件。如果是这样,请将图形分解成多个组件,然后分别对每个组件运行最短路径长度计算。
您是否需要将整个矩阵存储在内存中以进行下一步计算?还是可以部分使用矩阵? igraph使得可以从所有来源而不是仅某些来源计算最短路径。流程是一对一(或为了更好的性能:一小组一小组)而不是一次全部来源。由于最短的路径查找器是如何工作的,igraph还支持仅计算到达特定目标的路径,因此按目标进行计算效率不高。