【问题标题】:Minimum cost flow最小成本流
【发布时间】:2012-11-07 15:18:11
【问题描述】:

是否有在 R 中实现最小成本流算法的包?

igraphpackage 似乎只有最大流量(通过graph.maxflow() 函数),这里或rseek.org 上的其他内容似乎没有帮助。

【问题讨论】:

  • 如果您正在寻找最大流量,也许您应该展示如何使用 igraph 函数?
  • 我编辑了这个问题,表明可以通过graph.maxflow() 找到最大流量,尽管我真的不知道这会有什么帮助。从问题的结构上,我知道存在一个流,并且它有一个固定的值(这不是最小成本最大流问题,只是一个最小成本流问题)。
  • 我开始认为这类似于具有电压源和电流吸收器的电阻网络,但很明显,通常使用 igraph 包中的方法解决不同类型的问题。目前看来,0 通常是最小值。我想知道您是否可以通过特定任务获得更好的答案。
  • 嗯,最小成本流问题通常需要最小流到网络中的一个或多个汇,因此最小成本流不会是零流。我会考虑更具体...

标签: r igraph flow


【解决方案1】:

也许您可以返回所有流然后按值排序?

sna 有一个flowbet() 函数用于在之间流动。

【讨论】:

  • 嗯。最小成本流问题与最大流问题不同,所以flowbet() 似乎没有帮助。返回“所有流”并不是一个真正的选择,因为有无数的流,除非我们将流限制为整数值......即使那样我们也会遇到组合爆炸。还有其他想法吗?
【解决方案2】:

我也在为此苦苦挣扎,并发布了一个关于可重现的最小成本流问题here 的问题。虽然我没有从社区收到明确的答复,但我确实发布了我最终实施的方法。它涉及edgesdata.frame$cost$capacity 属性,然后我用它们为lpSolve 优化生成适当的约束。看看吧,希望对你有帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-11-24
    • 2016-06-15
    • 1970-01-01
    • 2018-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-16
    相关资源
    最近更新 更多