Algorithm 网络流量:在求解最大流量时,是否可以更改边缘容量?
我想知道,在解决网络流问题时,我是否可以改变边缘容量 我对商品a、B和AB有一个供需问题。a的一个需求单位将占用a的一个单位,B将占用B的一个单位,AB将占用AB的一个单位,或者a的一个单位和B的一个单位。给出每种商品的供需清单,我想弄清楚手头是否有足够的商品来满足需求 所以我的网络看起来像这样: 设sX为X的供应量。Algorithm 网络流量:在求解最大流量时,是否可以更改边缘容量?,algorithm,Algorithm,我想知道,在解决网络流问题时,我是否可以改变边缘容量 我对商品a、B和AB有一个供需问题。a的一个需求单位将占用a的一个单位,B将占用B的一个单位,AB将占用AB的一个单位,或者a的一个单位和B的一个单位。给出每种商品的供需清单,我想弄清楚手头是否有足够的商品来满足需求 所以我的网络看起来像这样: 设sX为X的供应量。 设dX为X的需求量。 所有流都从左向右流动 你可以看到,如果我推A的x单位,我就从(A+B)的容量中减去x。类似地,如果我“撤消”推送,我就可以将容量添加回(a+B)。所以我在
设dX为X的需求量。
所有流都从左向右流动
你可以看到,如果我推A的x单位,我就从(A+B)的容量中减去x。类似地,如果我“撤消”推送,我就可以将容量添加回(a+B)。所以我在算法中就这样做了。这会弄乱算法吗?这不是网络流问题。假设
sA=10,sB=10,dA=10,dB=10,dAB=10
。从图中可以提供10个As、Bs和A+Bs,从而满足需求。但事实上,你需要20个As和20个Bs来满足这个需求
我不知道一个简单的流网络如何表示一个地方的流与另一个地方的流相匹配的条件
你所描述的是一个有趣的问题,我肯定已经研究过了,但我不知道你怎么称呼它
这可以通过将其转化为线性规划问题来解决。看看你是否不熟悉线性规划问题。考虑一下你的简单情况。您可以从6个变量开始:
x
是从输入A
到输出A
的流程y
是从输入B
到输出B
的流程z
是从输入AB
到输出AB
的流程w
是从A
到A+B
的流w'
是从B
到A+B
的流w'
是从A+B
到AB
的流0≤ x
0≤ y
0≤ z
0≤ w
x+w≤ sA
y+w≤ sB
z≤ sAB
x≤ dA
y≤ dB
z+w≤ dAB
x+y+z+w
你原来问题的答案如下。给定一组可用输入和可用输出,求解上述线性规划问题以优化生产。当且仅当最佳生产级别为
dA+dB+dAB
时,您才能满足生产目标。更好的是,您将得到的解决方案将准确地告诉您如何满足生产要求。Hmmmmm,谢谢。这是管理医院血液供应和需求问题的延伸。这些字母是血型。这里的扩展是,不是AB型血可以服用O,A,B或AB,它必须服用A和B才能满足。没有这个约束,这是一个典型的网络流问题。您可以找到系统中的最大流量,并查看是否满足了所有的需求。但这里我必须添加A+B案例,这要求我在求解时更新流。我将研究你提到的解决办法。再次感谢。