最优质量运输概述(自用)——一、蒙日问题、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
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)
μ(T−1(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问题
如上图所示,蓝色虚线表示前线位置,蓝色五角星为目标位置A,B,C,蓝色数字为目标位置所需军力;红色三角为目前军力驻扎位置,红色数字为目前驻扎位置的军力。
Kantorovich问题如下:将三个红色军团配置到前线的三个目标位置A,B,C,该如何配置?
为解决该问题可以列出运输矩阵:
120 | 90 | 90 | |
---|---|---|---|
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,pij≥0即表格中每一行之和为对应的
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)