当前位置: 首页 > article >正文

最优质量运输概述(自用)——一、蒙日问题、Kantorovich问题

最优质量运输概述(自用)——一、蒙日问题

  • 1. 蒙日问题 Monge's Problem
  • 2. Kantorovich问题

1. 蒙日问题 Monge’s Problem

如下图所示,假设有一堆沙子要从红色沙堆运送填充到蓝色沙堆。在坐标 x x x处做一个切片 Δ x \Delta x Δx,该切片对应沙堆中的一个厚度无限趋近于0的大圆盘,该圆盘位于坐标 x x x处,质量为 μ ( x ) \mu (x) μ(x)。因此 μ ( x ) \mu (x) μ(x)可以看作整个沙堆的质量分布规律,或者沿坐标 x x x的线密度,称之为测度
蒙日问题示意图
设从 x x x处搬运到 y y y处,二者映射关系为 y = T ( x ) y = T(x) y=T(x)。搬运后大圆盘 μ ( x ) \mu (x) μ(x)在蓝色沙堆中对应为 ν ( x ) \nu (x) ν(x)
最优运输问题为:如何把沙堆从 μ \mu μ运送到 ν ( x ) \nu (x) ν(x),即** μ ( x ) \mu (x) μ(x)中的哪个位置应当放在 ν ( x ) \nu (x) ν(x)中的哪个位置?**

运送的距离为: D ( x , T ( x ) ) D \left( x, T(x) \right) D(x,T(x))
则运送这一个切片的做功为: μ ( x ) D ( x , T ( x ) ) \mu (x) D \left( x, T(x) \right) μ(x)D(x,T(x))
A运送到B
上图中,把三个坐标 A i A_i Ai的质量运送到坐标 B B B处,则测度有如下关系:
μ ( A 1 ) + μ ( A 2 ) + μ ( A 3 ) = ν ( B ) \mu \left( A_1 \right) + \mu \left( A_2 \right) + \mu \left( A_3 \right) = \nu \left( B \right) μ(A1)+μ(A2)+μ(A3)=ν(B)记为
μ ( T − 1 ( B ) ) = ν ( B ) \mu \left( T^{-1} (B) \right) = \nu \left( B \right) μ(T1(B))=ν(B)
T # μ = ν T_\# \mu = \nu T#μ=ν T T T是从红色到蓝色的一个map
而蒙日问题的关键在于,试图找出所有 T # μ = ν T_\# \mu = \nu T#μ=ν中,使得如下做功最小的 T T T
∫ D ( x , T ( x ) ) μ ( d x ) (1) \int D \left( x, T(x) \right) \mu (dx) \tag{1} D(x,T(x))μ(dx)(1)

2. Kantorovich问题

Kantorovich问题
如上图所示,蓝色虚线表示前线位置,蓝色五角星为目标位置A,B,C,蓝色数字为目标位置所需军力;红色三角为目前军力驻扎位置,红色数字为目前驻扎位置的军力。
Kantorovich问题如下:将三个红色军团配置到前线的三个目标位置A,B,C,该如何配置?

为解决该问题可以列出运输矩阵:

1209090
60???
90???
150???

可以抽象为如下表格:

b A b_A bA b B b_B bB b C b_C bC
a 1 a_1 a1 p 1 A p_{1A} p1A p 1 B p_{1B} p1B p 1 C p_{1C} p1C
a 2 a_2 a2 p 2 A p_{2A} p2A p 2 B p_{2B} p2B p 2 C p_{2C} p2C
a 3 a_3 a3 p 3 A p_{3A} p3A p 3 B p_{3B} p3B p 3 C p_{3C} p3C

其中的 p i j p_{ij} pij需要满足如下约束:
∀ i ∈ { 1 , 2 , 3 } , ∑ j ∈ { A , B , C } p i j = a i , ∀ j ∈ { A , B , C } , ∑ i ∈ { 1 , 2 , 3 } p i j = b j , p i j ≥ 0 \forall i \in \{1,2,3\}, \quad \sum_{j \in \{A,B,C\}} p_{ij} = a_i, \\ \forall j \in \{A,B,C\}, \quad \sum_{i \in \{1,2,3\}} p_{ij} = b_j, \\ p_{ij} \geq 0 i{1,2,3},j{A,B,C}pij=ai,j{A,B,C},i{1,2,3}pij=bj,pij0即表格中每一行之和为对应的 a i a_i ai,每一列之和为对应的 b j b_j bj
同样地,可以写出如下距离矩阵:

A A A B B B C C C
军力1 d 1 A d_{1A} d1A d 1 B d_{1B} d1B d 1 C d_{1C} d1C
军力2 d 2 A d_{2A} d2A d 2 B d_{2B} d2B d 2 C d_{2C} d2C
军力3 d 3 A d_{3A} d3A d 3 B d_{3B} d3B d 3 C d_{3C} d3C

移动军团做的功之和,可以视作损失函数
C ( P ) = ∑ j ∈ { A , B , C } ∑ i ∈ { 1 , 2 , 3 } p i j d i j (2) C (P) = \sum_{j \in \{A,B,C\}} \sum_{i \in \{1,2,3\}} p_{ij} d_{ij} \tag{2} C(P)=j{A,B,C}i{1,2,3}pijdij(2)


http://www.kler.cn/a/427908.html

相关文章:

  • Day31-【AI思考】-深度学习方法论全解析——科学提升学习效率的终极指南
  • C#面试常考随笔7:什么是匿名⽅法?还有Lambda表达式?
  • 力扣动态规划-16【算法学习day.110】
  • 【计算机网络】设备更换地区后无法访问云服务器问题
  • 动态规划每日一练(四)
  • 数据库性能优化(sql优化)_SQL执行计划03_yxy
  • 数据结构 ——无头单链表
  • 装饰器—购物打折
  • 数据结构基础之《(11)—堆》
  • 【3D AIGC】Img-to-3D、Text-to-3D、稀疏重建(2024年文章汇总)
  • 【技术支持】关于html中移动端innerwidth的问题
  • 『MySQL 实战 45 讲』24 - MySQL是怎么保证主备一致的?
  • C++学习-类+对象+函数
  • 【oracle数据库提示oracle initialization or shutdown in process】
  • Spring完整知识点二
  • 17. Threejs案例-Three.js创建多个立方体
  • burpsuite(6)暴力破解与验证码识别绕过
  • ansible基础教程(上)
  • UE5 Compile Plugins | Rebuild from Source Manually | Unreal Engine | Tutorial
  • 如何在Ubuntu 20.04上编译安装OpenCV 4.4并启用pkg-config支持
  • 【工具变量】上市公司企业商业信用融资数据(2003-2022年)
  • LeetCode - #152 乘积最大子数组(Top 100)
  • ADB常用各模块操作命令
  • 第二部分:基础知识 5.控制流 --[JavaScript 新手村:开启编程之旅的第一步]
  • 【趋势红蓝交易】主图指标操盘技术图文展示,注意要点,通达信炒股软件指标
  • Android 按两下power键不打开相机改为打开手电筒