最优传输系列-第六篇(3.4.2)

最优传输系列是基于Computational Optimal Transport开源书的读书笔记

3.4.2 The North-West Corner Rule

既然3.4里已经说明只有可行多面体的顶点才可能是最优解,3.4.1说明一个顶点解一定不存在环线,3.4.2里也就很顺理成章地介绍了能够得到顶点的算法,向得到完整最优化算法更进一步。

西北角算法是一种启发式算法(heuristic),能够在 n + m n+m n+m步计算后给出一个 U ( a , b ) U(a,b) U(a,b)的顶点

这里注意 U ( a , b ) U(a,b) U(a,b)是所有可行的原始Kantorovich问题解 P P P的集合–这也意味着西北角算法所帮助枚举的是原始Kantorovich问题,而不是它的对偶问题

算法简单地用文字表达就是,对于每个 P [ i ] [ j ] P[i][j] P[i][j],如果a[i]中剩余的出发质量小于b[j]中剩余的到达质量,那么就让a[i]饱和,b[j]还没有饱和,所以i++,j不变。如果a[i]中的剩余大于b[j]中的剩余,则饱和b[j],j++。如果两者相等,则刚好同时饱和,i和j都增加。

西北角算法伪代码:
North West Corner
注:P[i][:]这一行的和必须等于a[i],P[:][j]这一列的和等于b[j],这是最基本的质量守恒。 row_remain是a[i]总质量减去已经传输的质量,column_remain则是b[j]的剩余流量。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值