SlideShare une entreprise Scribd logo
1  sur  233
Télécharger pour lire hors ligne
Mathématiques - Informatique
Optimal Transport
From a Computer Perspective
Summer School « Geometric Measure Theory and
Calculus of Variations », Grenoble, June 2015
Bruno Lévy
ALICE Géométrie & Lumière
CENTRE INRIA Nancy Grand-Est
Part. 1. Goals and Motivations - Understanding
Part. 2. Optimal Transport Elementary intro.
Part. 3. The Semi-Discrete Case
Part. 4. Understanding Going
Part. 5. Concluding Words
OVERVIEW
OVERVIEW
Cédric Villani
Optimal Transport Old & New
Topics on Optimal Transport
Yann Brenier
The polar factorization theorem
(Brenier Transport)
OVERVIEW
June 2015
Institut Fourier
March 2015
Bonn
Febr 2015
BIRS (Canada)
Febr 2015
LJLL
Goals and Motivations
1
Part. 1 Optimal Transport
Measuring distances between functions
Part. 1 Optimal Transport
Measuring distances between functions
Part. 1 Optimal Transport
Measuring distances between functions
Part. 1 Optimal Transport
Measuring distances between function
Part. 1 Optimal Transport
Interpolating functions
Part. 1 Optimal Transport
Interpolating functions
Part. 1 Optimal Transport
Interpolating functions
Part. 1 Optimal Transport
Interpolating functions
Part. 1 Optimal Transport
Interpolating functions
Part. 1 Optimal Transport
Interpolating functions
Part. 1 Optimal Transport
Interpolating functions
Part. 1 Optimal Transport
Interpolating functions
Part. 1 Optimal Transport
Interpolating functions
Part. 1 Optimal Transport
Interpolating functions
Part. 1 Optimal Transport
Interpolating functions
Part. 1 Optimal Transport
Interpolating functions
Part. 1 Optimal Transport
?
T
Part. 1 Optimal Transport
?
T
distance between the shapes
Part. 1 Optimal Transport
while preserving mass and minimizing the effort ?
?
T
Part. 1 Optimal Transport
while preserving mass and minimizing the effort ?
?
T
Part. 1 Optimal Transport
while preserving mass and minimizing the effort ?
?
T
Part. 1 Optimal Transport
OT=
Yann Brenier:
it can be replaced with the Monge-Ampère
Part. 1 Optimal Transport
OT=
Yann Brenier:
it can be replaced with the Monge-Ampère
New ways of simulating physics with a computer
Part. 1 Optimal Transport
OT=
Yann Brenier:
Laplace operator is used in a PDE,
it can be replaced with the Monge-Ampère
New ways of simulating physics with a computer
Fast Fourier Transform
Part. 1 Optimal Transport
OT=
Yann Brenier:
Laplace operator is used in a PDE,
it can be replaced with the Monge-Ampère
New ways of simulating physics with a computer
Fast Fourier Transform Fast OT algo. ???
Part. 1 Optimal Transport
Gaspard Monge - 1784
Part. 1 Optimal Transport
Gaspard Monge geometry and light
ANR TOMMI Workshop
Part. 1 Optimal Transport
[Castro, Merigot, Thibert 2014]
Optimal transport
geometry and light
[Caffarelli, Kochengin, and Oliker 1999]
Part. 1 Optimal Transport Image Processing
Barycenters / mixing textures Video-style transfer
[Nicolas Bonneel, Julien Rabin, Gabriel
Peyre, Hanspeter Pfister]
[Nicolas Bonneel, Kalyan Sunkavalli, Sylvain
Paris, Hanspeter Pfister]
Part. 1 Optimal Transport
Optimal transport - geometry and light
[Chwartzburg, Testuz, Tagliasacchi, Pauly, SIGGRAPH 2014]
Part. 1. Motivations
Discretization of functionals involving the Monge-Ampère operator,
Benamou, Carlier, Mérigot, Oudet
arXiv:1408.4536
The variational formulation of the Fokker-Planck equation
Jordan, Kinderlehrer and Otto
SIAM J. on Mathematical Analysis
Geostrophic current
Part. 1 Optimal Transport
Optimal transport E.U.R.
The data
Part. 1 Optimal Transport
The millenium simulation project, Max Planck Institute fur Astrophysik
pc/h : parsec (= 3.2 light years)
Part. 1 Optimal Transport
Optimal transport E.U.R.
The universal swimming pool
Part. 1 Optimal Transport
Optimal transport E.U.R.
let there be light !
The millenium simulation project,
Max Planck Institute fur Astrophysik
pc/h : parsec (= 3.2 light years)
Part. 1 Optimal Transport
Optimal transport E.U.R.
let there be light !
The millenium simulation project,
Max Planck Institute fur Astrophysik
pc/h : parsec (= 3.2 light years)
In 2002: 5 hours of computation
on a super-computer for 5000 points
with a O(n3) algorithm.
Part. 1 Optimal Transport
Optimal transport E.U.R.
let there be light !
The millenium simulation project,
Max Planck Institute fur Astrophysik
pc/h : parsec (= 3.2 light years)
In 2002: 5 hours of computation
on a super-computer for 5000 points
with a O(n3) algorithm.
Can we do the computation with
1 000 000 points ?
Optimal Transport
an elementary introduction
2
Part. 2 Optimal Transport problem
(X; ) (Y; )
Two measures , such that d (x) = d (x)
X Y
Part. 2 Optimal Transport problem
A map T is a transport map between and if
(T-1(B)) = (B) for any Borel subset B of Y
(X; ) (Y; )
Part. 2 Optimal Transport problem
A map T is a transport map between and if
(T-1(B)) = (B) for any Borel subset B
B
(X; ) (Y; )
Part. 2 Optimal Transport problem
A map T is a transport map between and if
(T-1(B)) = (B) for any Borel subset B
B
T-1(B)
(X; ) (Y; )
Part. 2 Optimal Transport problem
A map T is a transport map between and if
(T-1(B)) = (B) for any Borel subset B
(or = T# the pushforward of )
(X; ) (Y; )
Part. 2 Optimal Transport problem
problem:
Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
(X; ) (Y; )
Part. 2 Optimal Transport problem
problem:
Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
Difficult to study
If has an atom (isolated Dirac),
it can only be mapped to another Dirac
(T needs to be a map)
Part. 2 Optimal Transport problem
problem:
Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
Transport from a measure concentrated on L1 onto another one concentrated on L2 and L3
Part. 2 Optimal Transport problem
problem:
Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
Transport from a measure concentrated on L1 onto another one concentrated on L2 and L3
Part. 2 Optimal Transport problem
problem:
Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
Transport from a measure concentrated on L1 onto another one concentrated on L2 and L3
Part. 2 Optimal Transport problem
problem:
Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
Transport from a measure concentrated on L1 onto another one concentrated on L2 and L3
The infimum is never realized by a map, need for a relaxation
Part. 2 Optimal Transport Kantorovich
problem:
Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
(1942):
Find a measure defined on X x Y
such that x in X d (x,y) = d (y)
and y in Y d (x,y) = d (x)
that minimizes X x Y || x y ||2 d (x,y)
Part. 2 Optimal Transport Kantorovich
problem:
Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
Find a measure defined on X x Y
such that x in X d (x,y) = d (y)
and y in Y d (x,y) = d (x)
that minimizes X x Y || x y ||2 d (x,y)
(x,y
How much sand goes from x to y
Part. 2 Optimal Transport Kantorovich
problem:
Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
Find a measure defined on X x Y
such that x in X d (x,y) = d (y)
and y in Y d (x,y) = d (x)
that minimizes X x Y || x y ||2 d (x,y)
Everything that is
transported from x
Part. 2 Optimal Transport Kantorovich
problem:
Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
Find a measure defined on X x Y
such that x in X d (x,y) = d (y)
and y in Y d (x,y) = d (x)
that minimizes X x Y || x y ||2 d (x,y)
Everything that is
transported to y
Part. 2 Optimal Transport Kantorovich
Transport plan example 1/4 : translation of a segment
Part. 2 Optimal Transport Kantorovich
Transport plan example 1/4 : translation of a segment
Part. 2 Optimal Transport Kantorovich
Transport plan example 2/4 : spitting a segment
Part. 2 Optimal Transport Kantorovich
Part. 2 Optimal Transport Kantorovich
Part. 2 Optimal Transport Kantorovich
Part. 2 Optimal Transport Kantorovich
Transport plan example 3/4 : splitting a Dirac into two Diracs
Part. 2 Optimal Transport Kantorovich
Transport plan example 3/4 : splitting a Dirac into two Diracs
(No transport map)
Part. 2 Optimal Transport Kantorovich
Transport plan example 4/4 : splitting a Dirac into two segments
Part. 2 Optimal Transport Kantorovich
Transport plan example 4/4 : splitting a Dirac into two segments
(No transport map)
Part. 2 Optimal Transport Duality
Part. 2 Optimal Transport Duality
Duality is easier to understand with a discrete version
Part. 2 Optimal Transport Duality
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
Part. 2 Optimal Transport Duality
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
=
11
12
1n
22
2n
mn
IRmn
Part. 2 Optimal Transport Duality
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
=
11
12
1n
22
2n
mn
c =
c11
c12
c1n
c22
c2n
cmn
IRmnIRmn
Part. 2 Optimal Transport Duality
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
=
11
12
1n
22
2n
mn
c =
c11
c12
c1n
c22
c2n
cmn
cij = || xi yj ||2
IRmnIRmn
Part. 2 Optimal Transport Duality
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
0
=
11
12
1n
22
2n
mn
c =
c11
c12
c1n
c22
c2n
cmn
cij = || xi yj ||2
mn X m
IRmnIRmn
Part. 2 Optimal Transport Duality
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
=
11
12
1n
22
2n
mn
c =
c11
c12
c1n
c22
c2n
cmn
cij = || xi yj ||2
mn X n
mn X m
IRmnIRmn
Part. 2 Optimal Transport Duality
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
=
11
12
1n
22
2n
mn
c =
c11
c12
c1n
c22
c2n
cmn
IRmnIRmn
mn X n
mn X m
Part. 2 Optimal Transport Duality
Consider L( , ) = <c, > - < , P1 - u> - < , P2 - v>
(DMK):
Min <c, >
P1 = u
s.t. P2 = v< u, v > denotes the dot product between u and v
Part. 2 Optimal Transport Duality
Consider L( , ) = <c, > - < , P1 - u> - < , P2 - v>
Remark: Sup[ L( , ) ] = < c, > if P1 = u and P2 = v
IRm
IRn
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
Part. 2 Optimal Transport Duality
Consider L( , ) = <c, > - < , P1 - u> - < , P2 - v>
Remark: Sup[ L( , ) ] = < c, > if P1 = u and P2 = v
IRm
IRn
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
0
Part. 2 Optimal Transport Duality
Consider L( , ) = <c, > - < , P1 - u> - < , P2 - v>
Remark: Sup[ L( , ) ] = < c, > if P1 = u and P2 = v
IRm
IRn
Consider now: Inf [ Sup[ L( , ) ] ]
IRm
IRn
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
Part. 2 Optimal Transport Duality
Consider L( , ) = <c, > - < , P1 - u> - < , P2 - v>
Remark: Sup[ L( , ) ] = < c, > if P1 = u and P2 = v
IRm
IRn
Consider now: Inf [ Sup[ L( , ) ] ] = Inf [ < c, > ]
IRm
IRn
P1 = u
P2 = v
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
Part. 2 Optimal Transport Duality
Consider L( , ) = <c, > - < , P1 - u> - < , P2 - v>
Remark: Sup[ L( , ) ] = < c, > if P1 = u and P2 = v
IRm
IRn
Consider now: Inf [ Sup[ L( , ) ] ] = Inf [ < c, > ] (DMK)
IRm
IRn
0
P1 = u
P2 = v
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
Part. 2 Optimal Transport Duality
IRm
IRn
Inf [ Sup[ <c, > - < , P1 - u> - < , P2 - v> ] ]
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
Part. 2 Optimal Transport Duality
IRm
IRn
0
Inf [ Sup[ <c, > - < , P1 - u> - < , P2 - v> ] ]
IRm
IRn
Sup[ Inf[ <c, > - < , P1 - u> - < , P2 - v> ] ]
Exchange Inf Sup
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
Part. 2 Optimal Transport Duality
IRm
IRn
Inf [ Sup[ <c, > - < , P1 - u> - < , P2 - v> ] ]
IRm
IRn
Sup[ Inf[ <c, > - < , P1 - u> - < , P2 - v> ] ]
IRm
IRn
0
Sup[ Inf[ < ,c-P1
t P2
t > + < ,u> + < , v> ] ]
Exchange Inf Sup
Expand/Reorder/Collect
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
0
Part. 2 Optimal Transport Duality
IRm
IRn
Inf [ Sup[ <c, > - < , P1 - u> - < , P2 - v> ] ]
IRm
IRn
Sup[ Inf[ <c, > - < , P1 - u> - < , P2 - v> ] ]
IRm
IRn
Sup[ Inf[ < ,c-P1
t P2
t > + < ,u> + < , v> ] ]
Exchange Inf Sup
Expand/Reorder/Collect
Interpret
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
Part. 2 Optimal Transport Duality
IRm
IRn
Sup[ Inf[ < ,c-P1
t P2
t > + < ,u> + < , v> ] ]
Interpret
Sup[ < ,u> + < , v> ]
IRm
IRn
P1
t + P2
t c
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
(DDMK)
Part. 2 Optimal Transport Duality
IRm
IRn
Sup[ Inf[ < ,c-P1
t P2
t > + < ,u> + < , v> ] ]
Interpret
Sup[ < ,u> + < , v> ]
IRm
IRn
P1
t + P2
t c i + j cij (i,j)
A
(DMK):
Min <c, >
P1 = u
s.t. P2 = v
(DDMK)
Part. 2 Optimal Transport Kantorovich dual
Find a measure defined on X x Y
such that x in X d (x,y) = d (x)
and y in Y d (x,y) = d (x)
that minimizes X x Y || x y ||2 d (x,y)
Find two functions in L1( ) and in L1( )
Such that for all x,y, (x) + y ||2
that maximize X d + Y d
Part. 2 Optimal Transport Kantorovich dual
Find a measure defined on X x Y
such that x in X d (x,y) = d (x)
and y in Y d (x,y) = d (x)
that minimizes X x Y || x y ||2 d (x,y)
Find two functions in L1( ) and in L1( )
Such that for all x,y, (x) + y ||2
that maximize X d + Y d
Your point of view:
Try to minimize transport cost
Part. 2 Optimal Transport Kantorovich dual
Find a measure defined on X x Y
such that x in X d (x,y) = d (x)
and y in Y d (x,y) = d (x)
that minimizes X x Y || x y ||2 d (x,y)
Find two functions in L1( ) and in L1( )
Such that for all x,y, (x) + y ||2
that maximize X d + Y d Try to maximize transport price
Your point of view:
Try to minimize transport cost
Part. 2 Optimal Transport Kantorovich dual
Find a measure defined on X x Y
such that x in X d (x,y) = d (x)
and y in Y d (x,y) = d (x)
that minimizes X x Y || x y ||2 d (x,y)
Find two functions in L1( ) and in L1( )
Such that for all x,y, (x) + y ||2
that maximize X (x)d + Y (y)d
What they charge for loading at x
Your point of view:
Try to minimize transport cost
Part. 2 Optimal Transport Kantorovich dual
Find a measure defined on X x Y
such that x in X d (x,y) = d (x)
and y in Y d (x,y) = d (x)
that minimizes X x Y || x y ||2 d (x,y)
Find two functions in L1( ) and in L1( )
Such that for all x,y, (x) + y ||2
that maximize X (x)d + Y (y)d
What they charge for loading at x What they charge for unloading at y
Your point of view:
Try to minimize transport cost
Part. 2 Optimal Transport Kantorovich dual
Find a measure defined on X x Y
such that x in X d (x,y) = d (x)
and y in Y d (x,y) = d (x)
that minimizes X x Y || x y ||2 d (x,y)
Find two functions in L1( ) and in L1( )
Such that for all x,y, (x) + y ||2
that maximize X (x)d + Y (y)d
What they charge for loading at x What they charge for unloading at y
Price (loading + unloading) cannot
be greater than transport cost
(else you do the job yourself)
Your point of view:
Try to minimize transport cost
Part. 2 Optimal Transport c-conjugate functions
Find two functions in L1( ) and in L1( )
Such that for all x,y, (x) + y ||2
that maximize X (x)d + Y (y)d
Part. 2 Optimal Transport c-conjugate functions
Find two functions in L1( ) and in L1( )
Such that for all x,y, (x) + y ||2
that maximize X (x)d + Y (y)d
If we got two functions and that satisfy the constraint
Then it is possible to obtain a better solution by replacing with c defined by:
For all y, c(y) = inf x in X ½|| x y ||2 - (y)
Part. 2 Optimal Transport c-conjugate functions
Find two functions in L1( ) and in L1( )
Such that for all x,y, (x) + y ||2
that maximize X (x)d + Y (y)d
If we got two functions and that satisfy the constraint
Then it is possible to obtain a better solution by replacing with c defined by:
For all y, c(y) = inf x in X ½|| x y ||2 - (y)
c is called the c-conjugate function of
If there is a function such that = c then is said to be c-concave
If is c-concave, then cc =
Part. 2 Optimal Transport c-conjugate functions
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
Part. 2 Optimal Transport c-conjugate functions
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
is called a
Part. 2 Optimal Transport c-subdifferential
What about our initial problem ?
is called a
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
Part. 2 Optimal Transport c-subdifferential
is called a
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
Part. 2 Optimal Transport c-subdifferential
Part. 2 Optimal Transport c-subdifferential
Proof: see OTON, chap. 10.
Part. 2 Optimal Transport c-subdifferential
Proof: see OTON, chap. 10.
Heuristic argument (at the beginning of the same chapter):
Part. 2 Optimal Transport c-subdifferential
Proof: see OTON, chap. 10.
Heuristic argument (at the beginning of the same chapter):
Part. 2 Optimal Transport c-subdifferential
Proof: see OTON, chap. 10.
Heuristic argument (at the beginning of the same chapter):
Part. 2 Optimal Transport c-subdifferential
Proof: see OTON, chap. 10.
Heuristic argument (at the beginning of the same chapter):
Part. 2 Optimal Transport c-subdifferential
Proof: see OTON, chap. 10.
Heuristic argument (at the beginning of the same chapter):
Part. 2 Optimal Transport c-subdifferential
Proof: see OTON, chap. 10.
Heuristic argument (at the beginning of the same chapter):
Part. 2 Optimal Transport c-subdifferential
Proof: see OTON, chap. 10.
Heuristic argument (at the beginning of the same chapter):
w
Part. 2 Optimal Transport c-subdifferential
Proof: see OTON, chap. 10.
Heuristic argument (at the beginning of the same chapter):
-w
Part. 2 Optimal Transport c-subdifferential
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
Part. 2 Optimal Transport c-subdifferential
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
{
grad (x) with (x) := (½ x2- (x))
Part. 2 Optimal Transport convexity
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
{
grad (x) with (x) := (½ x2- (x))
is convex
Part. 2 Optimal Transport convexity
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
{
grad (x) with (x) := (½ x2- (x))
is convex
Part. 2 Optimal Transport convexity
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
{
grad (x) with (x) := (½ x2- (x))
is convex
Part. 2 Optimal Transport no collision
If T(.) exists, then
T(x) = x grad (x) = grad (½ x2- (x) )
{grad (x)
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
is convex
Part. 2 Optimal Transport no collision
If T(.) exists, then
T(x) = x grad (x) = grad (½ x2- (x) )
{grad (x)
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
is convex
Part. 2 Optimal Transport no collision
If T(.) exists, then
T(x) = x grad (x) = grad (½ x2- (x) )
{grad (x)
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
is convex
Part. 2 Optimal Transport Monge-Ampere
What about our initial problem ? If T(.) exists, then one can show that:
T(x) = x grad (x) = grad (½ x2- (x) )
{
for all borel set A, A d = T(A) (|JT|) d (change of variable)
Jacobian of T (1st order derivatives)
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
grad (x) with (x) := (½ x2- (x))
Part. 2 Optimal Transport Monge-Ampere
What about our initial problem ? If T(.) exists, then one can show that:
T(x) = x grad (x) = grad (½ x2- (x) )
{
for all borel set A, A d = T(A) (|JT|) d = T(A) (H ) d
Det. of the Hessian of (2nd order derivatives)
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
grad (x) with (x) := (½ x2- (x))
Part. 2 Optimal Transport Monge-Ampere
What about our initial problem ?
T(x) = x grad (x) = grad (½ x2- (x) )
{grad (x) with (x) := (½ x2- (x))
When and have a density u and v, (H (x)). v(grad (x)) = u(x)
Monge-Ampère
equation
for all borel set A, A d = T(A) (|JT|) d = T(A) (H ) d
Find a c-concave function
that maximizes X (x)d + Y
c(y)d
Part. 2 Optimal Transport summary
Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
Part. 2 Optimal Transport summary
Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
(Kantorovich formulation, dual, c-convex functions)
Part. 2 Optimal Transport summary
Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
(Kantorovich formulation, dual, c-convex functions)
Monge-Ampère equation
(When and have a density u and v resp.)
Solve (H (x)). v(grad (x)) = u(x)
Part. 2 Optimal Transport summary
Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
(Kantorovich formulation, dual, c-convex functions)
Brenier, Mc Cann, Trudinger: The optimal transport map is then given by:
T(x) = grad (x)
Solve (H (x)). v(grad (x)) = u(x) Monge-Ampère equation
(When and have a density u and v resp.)
Part. 2 Optimal Transport Isoperimetric inequality
For a given volume,
ball is the shape that minimizes border area
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: Given f: IRn sufficiently regular
Explanation in [Dario Cordero Erauquin] course notes
Part. 2 Optimal Transport Isoperimetric inequality
n Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: Given f: IRn sufficiently regular
Explanation in [Dario Cordero Erauquin] course notes
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: Given f: IRn sufficiently regular
Explanation in [Dario Cordero Erauquin] course notes
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: Given f: IRn sufficiently regular
Consider a compact set such that Vol( ) = Vol(B2
3)
and f = the indicatrix function of
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: Given f: IRn sufficiently regular
Consider a compact set such that Vol( ) = Vol(B2
3)
and f = the indicatrix function of
Vol Vol(B2
3)1/3 Vol(B2
3)2/3
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: Given f: IRn sufficiently regular
Consider a compact set such that Vol( ) = Vol(B2
3)
and f = the indicatrix function of
Vol Vol(B2
3)1/3 Vol(B2
3)2/3
Vol = Vol 2
3)
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: a proof with OT [Gromov]
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: a proof with OT [Gromov]
We suppose w.l.o.g. that f n/(n-1) = 1
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: a proof with OT [Gromov]
There exists an optimal transport T = grad between
f n/(n-1)(x)dx and 1B2
n/Vol(B2
n)dx
We suppose w.l.o.g. that f n/(n-1) = 1
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: a proof with OT [Gromov]
There exists an optimal transport T = grad between
f n/(n-1)(x)dx and 1B2
n/Vol(B2
n)dx
We suppose w.l.o.g. that f n/(n-1) = 1
Monge-Ampère equation: Vol(B2
n) fn/(n-1)(x) = det Hess
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: a proof with OT [Gromov]
There exists an optimal transport T = grad between
f n/(n-1)(x)dx and 1B2
n/Vol(B2
n)dx
We suppose w.l.o.g. that f n/(n-1) = 1
Monge-Ampère equation: Vol(B2
n) fn/(n-1)(x) = det Hess
Arithmetico-geometric ineq: det (H) 1/n
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: a proof with OT [Gromov]
There exists an optimal transport T = grad between
f n/(n-1)(x)dx and 1B2
n/Vol(B2
n)dx
We suppose w.l.o.g. that f n/(n-1) = 1
Monge-Ampère equation: Vol(B2
n) fn/(n-1)(x) = det Hess
Arithmetico-geometric ineq: det (H) 1/n
det (Hess ) 1/n )/n
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: a proof with OT [Gromov]
There exists an optimal transport T = grad between
f n/(n-1)(x)dx and 1B2
n/Vol(B2
n)dx
We suppose w.l.o.g. that f n/(n-1) = 1
Monge-Ampère equation: Vol(B2
n) fn/(n-1)(x) = det Hess
Arithmetico-geometric ineq: det (H) 1/n
det (Hess ) 1/n )/n
det (Hess ) 1/n / n
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: a proof with OT [Gromov]
We suppose w.l.o.g. that f n/(n-1) = 1
det (Hess ) 1/n )/n
Monge-Ampère equation:
Vol(B2
n) fn/(n-1)(x) = det Hess
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: a proof with OT [Gromov]
We suppose w.l.o.g. that f n/(n-1) = 1
Vol(B2
n) = Vol(B2
n) f n/(n-1)
= f Vol(B2
n) f 1/(n-1)
det (Hess ) 1/n )/n
Monge-Ampère equation:
Vol(B2
n) fn/(n-1)(x) = det Hess
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: a proof with OT [Gromov]
We suppose w.l.o.g. that f n/(n-1) = 1
Vol(B2
n) = Vol(B2
n) f n/(n-1)
= f Vol(B2
n) f 1/(n-1)
det (Hess ) 1/n )/n
Monge-Ampère equation:
Vol(B2
n) fn/(n-1)(x) = det Hess
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: a proof with OT [Gromov]
We suppose w.l.o.g. that f n/(n-1) = 1
Vol(B2
n) = Vol(B2
n) f n/(n-1)
= f Vol(B2
n) f 1/(n-1)
= - grad f . grad
det (Hess ) 1/n )/n
Monge-Ampère equation:
Vol(B2
n) fn/(n-1)(x) = det Hess
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: a proof with OT [Gromov]
We suppose w.l.o.g. that f n/(n-1) = 1
Vol(B2
n) = Vol(B2
n) f n/(n-1)
= f Vol(B2
n) f 1/(n-1)
1/n
= - grad f . grad | grad f | (T = grad B2
n )
det (Hess ) 1/n )/n
Monge-Ampère equation:
Vol(B2
n) fn/(n-1)(x) = det Hess
Part. 2 Optimal Transport Isoperimetric inequality
Vol(B2
n)1/n ( f n/(n-1))(n-1)/n
L1 Sobolev inegality: a proof with OT [Gromov]
We suppose w.l.o.g. that f n/(n-1) = 1
Vol(B2
n) = Vol(B2
n) f n/(n-1)
= f Vol(B2
n) f 1/(n-1)
= - grad f . grad | grad f | (T = grad B2
n )
Vol(B2
n)1/n
det (Hess ) 1/n )/n
Monge-Ampère equation:
Vol(B2
n) fn/(n-1)(x) = det Hess
Semi-Discrete Optimal Transport
3
Part. 3 Optimal Transport how to program ?
Continuous
(X; ) (Y; )
Part. 3 Optimal Transport how to program ?
Continuous
Semi-discrete
(X; ) (Y; )
Part. 3 Optimal Transport how to program ?
Continuous
Semi-discrete
Discrete
(X; ) (Y; )
Part. 3 Optimal Transport how to program ?
Continuous
Semi-discrete
Discrete
(X; ) (Y; )
Part. 3 Optimal Transport semi-discrete
X
c (x)d + Y (y)d
Sup
c
(DMK)
(X; ) (Y; )
Part. 3 Optimal Transport semi-discrete
(X; ) (Y; )
j (yj) vj
X
c (x)d + Y (y)d
Sup
c
(DMK)
Part. 3 Optimal Transport semi-discrete
X
c (x)d + Y (y)d
Sup
c
(DMK)
j (yj) vj
Part. 3 Optimal Transport semi-discrete
X
c (x)d + Y (y)d
Sup
c
(DMK)
X inf yj Y [ || x yj ||2 - (yj) ] d
j (yj) vj
Part. 3 Optimal Transport semi-discrete
X
c (x)d + Y (y)d
Sup
c
(DMK)
j Lag (yj) || x yj ||2 - (yj) d
X inf yj Y [ || x yj ||2 - (yj) ] d
j (yj) vj
Part. 3 Optimal Transport semi-discrete
G( ) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj
Sup
c
(DMK)
Where: Lag (yj) = { x | || x yj ||2 (yj) < || x yj ||2 - (yj ) }
Part. 3 Optimal Transport semi-discrete
G( ) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj
Sup
c
(DMK)
Where: Lag (yj) = { x | || x yj ||2 (yj) < || x yj ||2 - (yj ) }
Laguerre diagram of the yj
(with the L2 cost || x y ||2 used here, Power diagram)
Part. 3 Optimal Transport semi-discrete
G( ) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj
Sup
c
(DMK)
Where: Lag (yj) = { x | || x yj ||2 (yj) < || x yj ||2 - (yj ) }
Laguerre diagram of the yj
(with the L2 cost || x y ||2 used here, Power diagram)
Weight of yj in the power diagram
Part. 3 Optimal Transport semi-discrete
G( ) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj
Sup
c
(DMK)
Where: Lag (yj) = { x | || x yj ||2 (yj) < || x yj ||2 - (yj ) }
Laguerre diagram of the yj
(with the L2 cost || x y ||2 used here, Power diagram)
Weight of yj in the power diagram
is determined by the
weight vector [ (y1) (y2 (ym)]
Part. 3 Optimal Transport semi-discrete
G( ) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj
Sup
c
(DMK)
Where: Lag (yj) = { x | || x yj ||2 (yj) < || x yj ||2 - (yj ) }
Laguerre diagram of the yj
(with the L2 cost || x y ||2 used here, Power diagram)
Weight of yj in the power diagram
is determined by the
weight vector [ (y1) (y2 (ym)]
For all weight vector, is c-concave
Voronoi diagram: Vor(xi) = { x | d2(x,xi) < d2(x,xj) }
Part. 3 Power Diagrams
Power diagram: Pow(xi) = { x | d2(x,xi) i < d2(x,xj) j }
Voronoi diagram: Vor(xi) = { x | d2(x,xi) < d2(x,xj) }
Part. 3 Power Diagrams
Part. 3 Power Diagrams
Part. 3 Optimal Transport
Theorem: (direct consequence of MK duality
alternative proof in [Aurenhammer, Hoffmann, Aronov 98] ):
Given a measure with density, a set of points (yj), a set of positive coefficients vj
such that vj d (x), it is possible to find the weights W = [ (y1) (y2 (ym)]
such that the map TS
W is the unique optimal transport map
between and = vj (yj)
Part. 3 Optimal Transport
Theorem: (direct consequence of MK duality
alternative proof in [Aurenhammer, Hoffmann, Aronov 98] ):
Given a measure with density, a set of points (yj), a set of positive coefficients vj
such that vj d (x), it is possible to find the weights W = [ (y1) (y2 (ym)]
such that the map TS
W is the unique optimal transport map
between and = vj (yj)
Proof: G( ) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj
Is a concave function of the weight vector [ (y1) (y2 (ym)]
Part. 3 Optimal Transport
Theorem: (direct consequence of MK duality
alternative proof in [Aurenhammer, Hoffmann, Aronov 98] ):
Given a measure with density, a set of points (yj), a set of positive coefficients vj
such that vj d (x), it is possible to find the weights W = [ (y1) (y2 (ym)]
such that the map TS
W is the unique optimal transport map
between and = vj (yj)
Proof: G( ) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj
Is a concave function of the weight vector [ (y1) (y2 (ym)]
Part. 3 Optimal Transport the AHA paper
Idea of the proof
Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x)
The (unknown) weights W = [ (y1) (y2 (ym)]
Part. 3 Optimal Transport the AHA paper
Idea of the proof
Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x)
T : an arbitrary but fixed assignment.
Part. 3 Optimal Transport the AHA paper
Idea of the proof
Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x)
T : an arbitrary but fixed assignment.
Part. 3 Optimal Transport the AHA paper
Idea of the proof
Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x)
T : an arbitrary but fixed assignment.
Part. 3 Optimal Transport the AHA paper
Idea of the proof
Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x)
T : an arbitrary but fixed assignment.
Part. 3 Optimal Transport the AHA paper
Idea of the proof
Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x)
W
fT(W)
fT(W)
Part. 3 Optimal Transport the AHA paper
Idea of the proof
Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x)
W
fT(W)
fT(W)
Part. 3 Optimal Transport the AHA paper
Idea of the proof
Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x)
fT(W) is linear in W
fT(W)
W
fT(W)
Fixed T
Part. 3 Optimal Transport the AHA paper
Idea of the proof
Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x)
fT(W) is linear in W
f TW
(W) : defined by power diagram
fT(W)
fixed W
W
Part. 3 Optimal Transport the AHA paper
Idea of the proof
Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x)
fT(W) is linear in W
f TW
(W) = minT fT(W)
fT(W)
fixed W
W
Part. 3 Optimal Transport the AHA paper
Idea of the proof
Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x)
fT(W) is linear in W
TW
(W) is concave !!
(because its graph is the lower
enveloppe of linear functions)
fT(W)
W
fT(W)
f TW
(W) = minT fT(W)
Part. 3 Optimal Transport the AHA paper
Idea of the proof
Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x)
fT(W) is linear in W
TW
(W) is concave
(because its graph is the lower
enveloppe of linear functions)
fT(W)
W
fT(W)
f TW
(W) = minT fT(W)
Consider g(W) = f TW
vj j
Part. 3 Optimal Transport the AHA paper
fT(W)
W
fT(W)
f TW
(W) = minT fT(W)
Consider g(W) = f TW
vj j
vj - pow(yj)|| x yj ||2d (x) and g is concave.j =
Idea of the proof
Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x)
fT(W) is linear in W
TW
(W) is concave
(because its graph is the lower
enveloppe of linear functions)
Part. 3 Optimal Transport the algorithm
Semi-discrete OT Summary:
X
c (x)d + Y (y)d
Sup
c
(DMK) G( ) =
Part. 3 Optimal Transport the algorithm
Semi-discrete OT Summary:
G( ) = g(W) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj is concave
X
c (x)d + Y (y)d
Sup
c
(DMK) G( ) =
Part. 3 Optimal Transport the algorithm
Semi-discrete OT Summary:
G( ) = g(W) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj is concave
vj - pow(yj)|| x yj ||2d (x) (= 0 at the maximum)G / j =
X
c (x)d + Y (y)d
Sup
c
(DMK) G( ) =
Part. 3 Optimal Transport the algorithm
Semi-discrete OT Summary:
G( ) = g(W) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj is concave
vj - pow(yj)|| x yj ||2d (x) (= 0 at the maximum)G / j =
X
c (x)d + Y (y)d
Sup
c
(DMK) G( ) =
Desired mass at yj Mass transported to yj
Part. 3 Optimal Transport the algorithm
The [AHA] paper summary:
The optimal weights minimize a convex function
The gradient of this convex function is easy to compute
Note: the weight w(s) correspond to the Kantorovich potential (x)
Monge-
The algorithm:
Input: two tetrahedral meshes M1 and M2
Output: a morphing between M1 and M2
Part. 3 Optimal Transport the algorithm
The [AHA] paper summary:
The optimal weights minimize a convex function
The gradient of this convex function is easy to compute
Note: the weight w(s) correspond to the Kantorovich potential (x)
Monge-
The algorithm:
Input: two tetrahedral meshes M1 and M2
Output: a morphing between M1 and M2
Step 1: sample M2 with N points (s1 sN)
Part. 3 Optimal Transport the algorithm
The [AHA] paper summary:
The optimal weights minimize a convex function
The gradient of this convex function is easy to compute
Note: the weight w(s) correspond to the Kantorovich potential (x)
Monge-
The algorithm:
Input: two tetrahedral meshes M1 and M2
Output: a morphing between M1 and M2
Step 1: sample M2 with N points (s1 sN)
Step 2: initialize the weights (w1 wN) = (0 0)
Part. 3 Optimal Transport the algorithm
The [AHA] paper summary:
The optimal weights minimize a convex function
The gradient of this convex function is easy to compute
Note: the weight w(s) correspond to the Kantorovich potential (x)
Monge-
The algorithm:
Input: two tetrahedral meshes M1 and M2
Output: a morphing between M1 and M2
Step 1: sample M2 with N points (s1 sN)
Step 2: initialize the weights (w1 wN
Step 3: minimize g(w1 wN) with a quasi-Newton algorithm:
Part. 3 Optimal Transport the algorithm
The [AHA] paper summary:
The optimal weights minimize a convex function
The gradient of this convex function is easy to compute
Note: the weight w(s) correspond to the Kantorovich potential (x)
Monge-
The algorithm:
Input: two tetrahedral meshes M1 and M2
Output: a morphing between M1 and M2
Step 1: sample M2 with N points (s1 sN)
Step 2: initialize the weights (w1 wN
Step 3: minimize g(w1 wN) with a quasi-Newton algorithm:
For each iterate (s1 sN)(k):
Part. 3 Optimal Transport the algorithm
The [AHA] paper summary:
The optimal weights minimize a convex function
The gradient of this convex function is easy to compute
Note: the weight w(s) correspond to the Kantorovich potential (x)
Monge-
The algorithm:
Input: two tetrahedral meshes M1 and M2
Output: a morphing between M1 and M2
Step 1: sample M2 with N points (s1 sN)
Step 2: initialize the weights (w1 wN) = (0 0)
Step 3: minimize g(w1 wN) with a quasi-Newton algorithm:
For each iterate (s1 sN)(k):
Compute Pow( (wi, si) M1 [Nivoliers, L 2014, Curves and Surfaces]
Part. 3 Optimal Transport the algorithm
Compute Pow( (wi, si) M1 [Nivoliers, L 2014, Curves and Surfaces]
Implementation in GEOGRAM (http://alice.loria.fr/software/geogram
Part. 3 Optimal Transport the algorithm
The [AHA] paper summary:
The optimal weights minimize a convex function
The gradient of this convex function is easy to compute
Note: the weight w(s) correspond to the Kantorovich potential (x)
Monge-
The algorithm:
Input: two tetrahedral meshes M1 and M2
Output: a morphing between M1 and M2
Step 1: sample M2 with N points (s1 sN)
Step 2: initialize the weights (w1 wN
Step 3: minimize g(w1 wN) with a quasi-Newton algorithm:
For each iterate (s1 sN)(k):
Compute Pow( (wi, si) M1 [L 2014, Curves and Surfaces]
Compute g and grad g
Part. 3 Optimal Transport the algorithm
The [AHA] paper summary:
The optimal weights minimize a convex function
The gradient of this convex function is easy to compute
Note: the weight w(s) correspond to the Kantorovich potential (x)
Monge-
The algorithm:
Input: two tetrahedral meshes M1 and M2
Output: a morphing between M1 and M2
Step 1: sample M2 with N points (s1 sN)
Step 2: initialize the weights (w1 wN
Step 3: minimize g(w1 wN) with a quasi-Newton algorithm:
For each iterate (s1 sN)(k):
Compute Pow( (wi, si) M1 [L 2014, Curves and Surfaces]
Compute g and grad g
+ Multilevel version [Merigot 2011] (2D), [L 2014 arXiv, M2AN 2015] (3D)
Part. 3 Optimal Transport the algorithm
The [AHA] paper summary:
The optimal weights minimize a convex function
The gradient of this convex function is easy to compute
Note: the weight w(s) correspond to the Kantorovich potential (x)
Monge-
The algorithm:
Summary:
The algorithm computes the weights wi such that the power cells associated with
the Diracs correspond to the preimages of the Diracs.
Part. 3 Optimal Transport the algorithm
The [AHA] paper summary:
The optimal weights minimize a convex function
The gradient of this convex function is easy to compute
Note: the weight w(s) correspond to the Kantorovich potential (x)
Monge-
The algorithm:
Summary:
The algorithm computes the weights wi such that the power cells associated with
the Diracs correspond to the preimages of the Diracs.
Part. 3 Optimal Transport the algorithm
The [AHA] paper summary:
The optimal weights minimize a convex function
The gradient of this convex function is easy to compute
Note: the weight w(s) correspond to the Kantorovich potential (x)
Monge-
The algorithm:
Summary:
The algorithm computes the weights wi such that the power cells associated with
the Diracs correspond to the preimages of the Diracs.
Part. 3 Optimal Transport the algorithm
The [AHA] paper summary:
The optimal weights minimize a convex function
The gradient of this convex function is easy to compute
Note: the weight w(s) correspond to the Kantorovich potential (x)
Monge-
The algorithm:
Summary:
The algorithm computes the weights wi such that the power cells associated with
the Diracs correspond to the preimages of the Diracs.
Part. 3 Optimal Transport the algorithm
The [AHA] paper summary:
The optimal weights minimize a convex function
The gradient of this convex function is easy to compute
Note: the weight w(s) correspond to the Kantorovich potential (x)
Monge-
The algorithm:
Summary:
The algorithm computes the weights wi such that the power cells associated with
the Diracs correspond to the preimages of the Diracs.
Understanding Going
4
Part. 4 Optimal Transport ???
Wait a minute:
This means that one can move (and possibly deform)
a power diagram simply by changing the weights ?
Part. 4 Optimal Transport ???
Wait a minute:
This means that one can move (and possibly deform)
a power diagram simply by changing the weights ?
Reminder: Power diagram in 2d = intersection between
Voronoi diagram in 3d and IR2
hi = sqrt(wmax wi)
Height of point i Weight of point i
Part. 4 Power Diagrams & Transport
Part. 4 Power Diagrams & Transport
Part. 4 Power Diagrams & Transport
Part. 4 Power Diagrams & Transport
Part. 4 Power Diagrams & Transport
Part. 4 Power Diagrams & Transport
Part. 4 Power Diagrams & Transport
hi
Part. 4 Power Diagrams & Transport
Part. 4 Power Diagrams & Transport
Part. 4 Power Diagrams & Transport
Part. 4 Power Diagrams & Transport
Part. 4 Optimal Transport still lost ? 2D examples
Numerical Experiment: Simple translation
Part. 4 Power Diagrams & Transport
Part. 4 Power Diagrams and Transport
Part. 4 Optimal Transport 2D examples
Numerical Experiment: Splitting a disk
Part. 4 Optimal Transport 2D examples
Numerical Experiment: A disk becomes two disks
Part. 4 Optimal Transport 3D examples
Numerical Experiment: A sphere becomes a cube
Part. 4 Optimal Transport 3D examples
Numerical Experiment: A sphere becomes two spheres
Part. 4 Optimal Transport 3D examples
Numerical Experiment: Armadillo to sphere
Part. 4 Optimal Transport 3D examples
Numerical Experiment: Other examples
Part. 4 Optimal Transport 3D examples
Numerical Experiment: Varying density
Part. 4 Optimal Transport 3D examples
Numerical Experiment: Performances
Part. 4 Optimal Transport 3D examples
Numerical Experiment: Performances
Note that a few years ago, several hours of supercomputer time were needed
for computing OT with a few thousand Dirac masses, with a combinatorial
algorithm in O(n3)
Part. 4 Optimal Transport 3D examples
Numerical Experiment: Performances
Note that a few years ago, several hours of supercomputer time were needed
for computing OT with a few thousand Dirac masses, with a combinatorial
algorithm in O(n3)
With the semi-discrete algorithm, it takes less than 10 seconds on my laptop
Part. 4 Optimal Transport 3D examples
Numerical Experiment: Performances
Note that a few years ago, several hours of supercomputer time were needed
for computing OT with a few thousand Dirac masses, with a combinatorial
algorithm in O(n3)
In the semi-discrete setting, my 3D version of multigrid algorithm
computes OT for 1 million Dirac masses in less than 1 hour on a laptop PC
Part. 4 Optimal Transport 3D examples
Numerical Experiment: Performances
Note that a few years ago, several hours of supercomputer time were needed
for computing OT with a few thousand Dirac masses, with a combinatorial
algorithm in O(n3)
In the semi-discrete setting, my 3D version of multigrid algorithm
computes OT for 1 million Dirac masses in less than 1 hour on a laptop PC
Even much faster convergence can probably be reached with a true Newton
Conclusions Open questions
* Connections with physics, Legendre transform and entropy ?
[Cuturi & Peyré] regularized discrete optimal transport why does it work ?
Hint 1: Minimum action principle subject to conservation laws
* More continuous numerical algorithms ?
[Benamou & Brenier] fluid dynamics point of view very elegant, but 4D problem !!
FEM-type adaptive discretization of the subdifferential (graph of T) ?
* Can we characterize OT in other semi-discrete settings ?
measures supported on unions of spheres
piecewise linear densities
* Connections with computational geometry ?
Singularity set [Figalli] = set of points where T is discontinuous
Voronoi diagrams
Conclusions - References
Some references (that this presentation is based on)
A Multiscale Approach to Optimal Transport,
Quentin Mérigot, Computer Graphics Forum, 2011
Variational Principles for Minkowski Type Problems, Discrete Optimal Transport,
and Discrete Monge-Ampere Equations
Xianfeng Gu, Feng Luo, Jian Sun, S.-T. Yau, ArXiv 2013
Minkowski-type theorems and least-squares clustering
AHA! (Aurenhammer, Hoffmann, and Aronov), SIAM J. on math. ana. 1998
Topics on Optimal Transportation, 2003
Optimal Transport Old and New, 2008
Cédric Villani
Conclusions - References
Other references (that I need to read and understand)
Polar factorization and monotone rearrangement of vector-valued functions
Yann Brenier, Comm. On Pure and Applied Mathematics, June 1991
A computational fluid mechanics solution of the Monge-Kantorovich mass transfer
problem, J.-D. Benamou, Y. Brenier, Numer. Math. 84 (2000), pp. 375-393
Pogorelov, Alexandrov Gradient maps, Minkovsky problem (older than AHA
paper, some overlap, in slightly different context, formalism used by Gu & Yau)
Rockafeller Convex optimization Theorem to switch inf(sup()) sup(inf())
with convex functions (used to justify Kantorovich duality)
New textbook: Filippo Santambrogio Optimal Transport for Applied
Mathematician, Calculus of Variations, PDEs and Modeling Jan 15, 2015
Online resources
All the sourcecode/documentation available from:
alice.loria.fr/software/geogram
Computes semi-discrete OT in 3D
Scales up to millions Dirac masses on a laptop
L., A numerical algorithm for semi-discrete L2 OT in 3D,
ESAIM Math. Modeling and Analysis, accepted
(draft: http://arxiv.org/abs/1409.1279 <= to be fixed: bug
in MA equation in this version, fixed in M2AN journal version)
Acknowledgements
Funding: European Research Council french
GOODSHAPE ERC-StG-205693
VORPALINE ERC-PoC-334829
ANR MORPHO, ANR BECASIM
Quentin Merigot, Yann Brenier, Boris Thibert, Emmanuel Maitre,
Jean-David Benamou, Filippo Santambrogio, Edouard Oudet, Hervé Pajot.
ANR TOMMI, ANR GEOMETRYA

Contenu connexe

Tendances

6 spatial filtering p2
6 spatial filtering p26 spatial filtering p2
6 spatial filtering p2Gichelle Amon
 
第9回 配信講義 計算科学技術特論B(2022)
 第9回 配信講義 計算科学技術特論B(2022) 第9回 配信講義 計算科学技術特論B(2022)
第9回 配信講義 計算科学技術特論B(2022)RCCSRENKEI
 
Optimal Transport in Imaging Sciences
Optimal Transport in Imaging SciencesOptimal Transport in Imaging Sciences
Optimal Transport in Imaging SciencesGabriel Peyré
 
An Introduction to Optimal Transport
An Introduction to Optimal TransportAn Introduction to Optimal Transport
An Introduction to Optimal TransportGabriel Peyré
 
超音波による⾻質評価と信号処理: 瞬時周波数の応⽤
超音波による⾻質評価と信号処理: 瞬時周波数の応⽤超音波による⾻質評価と信号処理: 瞬時周波数の応⽤
超音波による⾻質評価と信号処理: 瞬時周波数の応⽤Ryosuke Tachibana
 
はじめよう多変量解析~主成分分析編~
はじめよう多変量解析~主成分分析編~はじめよう多変量解析~主成分分析編~
はじめよう多変量解析~主成分分析編~宏喜 佐野
 
第10回 配信講義 計算科学技術特論B(2022)
第10回 配信講義 計算科学技術特論B(2022)第10回 配信講義 計算科学技術特論B(2022)
第10回 配信講義 計算科学技術特論B(2022)RCCSRENKEI
 
SLAM-베이즈필터와 칼만필터
SLAM-베이즈필터와 칼만필터SLAM-베이즈필터와 칼만필터
SLAM-베이즈필터와 칼만필터jdo
 
Go-ICP: グローバル最適(Globally optimal) なICPの解説
Go-ICP: グローバル最適(Globally optimal) なICPの解説Go-ICP: グローバル最適(Globally optimal) なICPの解説
Go-ICP: グローバル最適(Globally optimal) なICPの解説Yusuke Sekikawa
 
SuperGlue; Learning Feature Matching with Graph Neural Networks (CVPR'20)
SuperGlue;Learning Feature Matching with Graph Neural Networks (CVPR'20)SuperGlue;Learning Feature Matching with Graph Neural Networks (CVPR'20)
SuperGlue; Learning Feature Matching with Graph Neural Networks (CVPR'20)Yusuke Uchida
 
相互情報量を用いた独立性の検定
相互情報量を用いた独立性の検定相互情報量を用いた独立性の検定
相互情報量を用いた独立性の検定Joe Suzuki
 
多チャンネルバイラテラルフィルタの高速化
多チャンネルバイラテラルフィルタの高速化多チャンネルバイラテラルフィルタの高速化
多チャンネルバイラテラルフィルタの高速化Norishige Fukushima
 
画像解析の基礎知識
画像解析の基礎知識画像解析の基礎知識
画像解析の基礎知識LPIXEL
 
東京都市大学 データ解析入門 3 行列分解 2
東京都市大学 データ解析入門 3 行列分解 2東京都市大学 データ解析入門 3 行列分解 2
東京都市大学 データ解析入門 3 行列分解 2hirokazutanaka
 
ImageJチュートリアル
ImageJチュートリアルImageJチュートリアル
ImageJチュートリアルLPIXEL
 
Tokyo r12 - R言語による回帰分析入門
Tokyo r12 - R言語による回帰分析入門Tokyo r12 - R言語による回帰分析入門
Tokyo r12 - R言語による回帰分析入門Yohei Sato
 
論文紹介 No-Reward Meta Learning (RL architecture勉強会)
論文紹介 No-Reward Meta Learning (RL architecture勉強会)論文紹介 No-Reward Meta Learning (RL architecture勉強会)
論文紹介 No-Reward Meta Learning (RL architecture勉強会)Yusuke Nakata
 

Tendances (20)

6 spatial filtering p2
6 spatial filtering p26 spatial filtering p2
6 spatial filtering p2
 
第9回 配信講義 計算科学技術特論B(2022)
 第9回 配信講義 計算科学技術特論B(2022) 第9回 配信講義 計算科学技術特論B(2022)
第9回 配信講義 計算科学技術特論B(2022)
 
Optimal Transport in Imaging Sciences
Optimal Transport in Imaging SciencesOptimal Transport in Imaging Sciences
Optimal Transport in Imaging Sciences
 
An Introduction to Optimal Transport
An Introduction to Optimal TransportAn Introduction to Optimal Transport
An Introduction to Optimal Transport
 
超音波による⾻質評価と信号処理: 瞬時周波数の応⽤
超音波による⾻質評価と信号処理: 瞬時周波数の応⽤超音波による⾻質評価と信号処理: 瞬時周波数の応⽤
超音波による⾻質評価と信号処理: 瞬時周波数の応⽤
 
はじめよう多変量解析~主成分分析編~
はじめよう多変量解析~主成分分析編~はじめよう多変量解析~主成分分析編~
はじめよう多変量解析~主成分分析編~
 
第10回 配信講義 計算科学技術特論B(2022)
第10回 配信講義 計算科学技術特論B(2022)第10回 配信講義 計算科学技術特論B(2022)
第10回 配信講義 計算科学技術特論B(2022)
 
SLAM-베이즈필터와 칼만필터
SLAM-베이즈필터와 칼만필터SLAM-베이즈필터와 칼만필터
SLAM-베이즈필터와 칼만필터
 
Go-ICP: グローバル最適(Globally optimal) なICPの解説
Go-ICP: グローバル最適(Globally optimal) なICPの解説Go-ICP: グローバル最適(Globally optimal) なICPの解説
Go-ICP: グローバル最適(Globally optimal) なICPの解説
 
SuperGlue; Learning Feature Matching with Graph Neural Networks (CVPR'20)
SuperGlue;Learning Feature Matching with Graph Neural Networks (CVPR'20)SuperGlue;Learning Feature Matching with Graph Neural Networks (CVPR'20)
SuperGlue; Learning Feature Matching with Graph Neural Networks (CVPR'20)
 
相互情報量を用いた独立性の検定
相互情報量を用いた独立性の検定相互情報量を用いた独立性の検定
相互情報量を用いた独立性の検定
 
多チャンネルバイラテラルフィルタの高速化
多チャンネルバイラテラルフィルタの高速化多チャンネルバイラテラルフィルタの高速化
多チャンネルバイラテラルフィルタの高速化
 
画像解析の基礎知識
画像解析の基礎知識画像解析の基礎知識
画像解析の基礎知識
 
PRMLrevenge_3.3
PRMLrevenge_3.3PRMLrevenge_3.3
PRMLrevenge_3.3
 
Chapter9 2
Chapter9 2Chapter9 2
Chapter9 2
 
東京都市大学 データ解析入門 3 行列分解 2
東京都市大学 データ解析入門 3 行列分解 2東京都市大学 データ解析入門 3 行列分解 2
東京都市大学 データ解析入門 3 行列分解 2
 
主成分分析
主成分分析主成分分析
主成分分析
 
ImageJチュートリアル
ImageJチュートリアルImageJチュートリアル
ImageJチュートリアル
 
Tokyo r12 - R言語による回帰分析入門
Tokyo r12 - R言語による回帰分析入門Tokyo r12 - R言語による回帰分析入門
Tokyo r12 - R言語による回帰分析入門
 
論文紹介 No-Reward Meta Learning (RL architecture勉強会)
論文紹介 No-Reward Meta Learning (RL architecture勉強会)論文紹介 No-Reward Meta Learning (RL architecture勉強会)
論文紹介 No-Reward Meta Learning (RL architecture勉強会)
 

Similaire à Optimal Transport for a Computer Programmer's Point of View

Course on Optimal Transport
Course on Optimal TransportCourse on Optimal Transport
Course on Optimal TransportBruno Levy
 
“An Alternate Approach to Find an Optimal Solution of a Transportation Problem.”
“An Alternate Approach to Find an Optimal Solution of a Transportation Problem.”“An Alternate Approach to Find an Optimal Solution of a Transportation Problem.”
“An Alternate Approach to Find an Optimal Solution of a Transportation Problem.”IOSRJM
 
A comparative study of initial basic feasible solution methods
A comparative study of initial basic feasible solution methodsA comparative study of initial basic feasible solution methods
A comparative study of initial basic feasible solution methodsAlexander Decker
 
A comparative study of initial basic feasible solution methods
A comparative study of initial basic feasible solution methodsA comparative study of initial basic feasible solution methods
A comparative study of initial basic feasible solution methodsAlexander Decker
 
A New Approach to Solve Initial Basic Feasible Solution for the Transportatio...
A New Approach to Solve Initial Basic Feasible Solution for the Transportatio...A New Approach to Solve Initial Basic Feasible Solution for the Transportatio...
A New Approach to Solve Initial Basic Feasible Solution for the Transportatio...Dr. Amarjeet Singh
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integrationtutorcircle1
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integrationtutorcircle1
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integrationtutorcircle1
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integrationtutorcircle1
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integrationtutorcircle1
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integrationtutorcircle1
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integrationtutorcircle1
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integrationtutorcircle1
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integrationtutorcircle1
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integrationtutorcircle1
 
Application+of+Integration
Application+of+IntegrationApplication+of+Integration
Application+of+Integrationtutorcircle1
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integrationtutorcircle1
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integrationtutorcircle1
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integrationtutorcircle1
 

Similaire à Optimal Transport for a Computer Programmer's Point of View (20)

Course on Optimal Transport
Course on Optimal TransportCourse on Optimal Transport
Course on Optimal Transport
 
“An Alternate Approach to Find an Optimal Solution of a Transportation Problem.”
“An Alternate Approach to Find an Optimal Solution of a Transportation Problem.”“An Alternate Approach to Find an Optimal Solution of a Transportation Problem.”
“An Alternate Approach to Find an Optimal Solution of a Transportation Problem.”
 
A comparative study of initial basic feasible solution methods
A comparative study of initial basic feasible solution methodsA comparative study of initial basic feasible solution methods
A comparative study of initial basic feasible solution methods
 
A comparative study of initial basic feasible solution methods
A comparative study of initial basic feasible solution methodsA comparative study of initial basic feasible solution methods
A comparative study of initial basic feasible solution methods
 
A New Approach to Solve Initial Basic Feasible Solution for the Transportatio...
A New Approach to Solve Initial Basic Feasible Solution for the Transportatio...A New Approach to Solve Initial Basic Feasible Solution for the Transportatio...
A New Approach to Solve Initial Basic Feasible Solution for the Transportatio...
 
05_AJMS_255_20.pdf
05_AJMS_255_20.pdf05_AJMS_255_20.pdf
05_AJMS_255_20.pdf
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integration
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integration
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integration
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integration
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integration
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integration
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integration
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integration
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integration
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integration
 
Application+of+Integration
Application+of+IntegrationApplication+of+Integration
Application+of+Integration
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integration
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integration
 
Application of Integration
Application of IntegrationApplication of Integration
Application of Integration
 

Plus de Bruno Levy

On Mesh Intersection: exact computation and efficiency
On Mesh Intersection: exact computation and efficiencyOn Mesh Intersection: exact computation and efficiency
On Mesh Intersection: exact computation and efficiencyBruno Levy
 
Brenier-Monge-Ampère gravity
Brenier-Monge-Ampère gravityBrenier-Monge-Ampère gravity
Brenier-Monge-Ampère gravityBruno Levy
 
SGP 2023 graduate school - A quick journey into geometry processing
SGP 2023 graduate school - A quick journey into geometry processingSGP 2023 graduate school - A quick journey into geometry processing
SGP 2023 graduate school - A quick journey into geometry processingBruno Levy
 
03_spectral_computing.pdf
03_spectral_computing.pdf03_spectral_computing.pdf
03_spectral_computing.pdfBruno Levy
 
04_spectral_applications.pdf
04_spectral_applications.pdf04_spectral_applications.pdf
04_spectral_applications.pdfBruno Levy
 
Centroidal Voronoi Tessellations for Graphs (Eurographics 2012)
Centroidal Voronoi Tessellations for Graphs (Eurographics 2012)Centroidal Voronoi Tessellations for Graphs (Eurographics 2012)
Centroidal Voronoi Tessellations for Graphs (Eurographics 2012)Bruno Levy
 
CGI2018 keynote - fluids simulation
CGI2018 keynote - fluids simulationCGI2018 keynote - fluids simulation
CGI2018 keynote - fluids simulationBruno Levy
 
The joy of computer graphics programming
The joy of computer graphics programmingThe joy of computer graphics programming
The joy of computer graphics programmingBruno Levy
 
Simuler la physique avec un ordinateur
Simuler la physique avec un ordinateurSimuler la physique avec un ordinateur
Simuler la physique avec un ordinateurBruno Levy
 

Plus de Bruno Levy (11)

On Mesh Intersection: exact computation and efficiency
On Mesh Intersection: exact computation and efficiencyOn Mesh Intersection: exact computation and efficiency
On Mesh Intersection: exact computation and efficiency
 
Brenier-Monge-Ampère gravity
Brenier-Monge-Ampère gravityBrenier-Monge-Ampère gravity
Brenier-Monge-Ampère gravity
 
SGP 2023 graduate school - A quick journey into geometry processing
SGP 2023 graduate school - A quick journey into geometry processingSGP 2023 graduate school - A quick journey into geometry processing
SGP 2023 graduate school - A quick journey into geometry processing
 
03_spectral_computing.pdf
03_spectral_computing.pdf03_spectral_computing.pdf
03_spectral_computing.pdf
 
04_spectral_applications.pdf
04_spectral_applications.pdf04_spectral_applications.pdf
04_spectral_applications.pdf
 
Centroidal Voronoi Tessellations for Graphs (Eurographics 2012)
Centroidal Voronoi Tessellations for Graphs (Eurographics 2012)Centroidal Voronoi Tessellations for Graphs (Eurographics 2012)
Centroidal Voronoi Tessellations for Graphs (Eurographics 2012)
 
CGI2018 keynote - fluids simulation
CGI2018 keynote - fluids simulationCGI2018 keynote - fluids simulation
CGI2018 keynote - fluids simulation
 
Igrv2017
Igrv2017Igrv2017
Igrv2017
 
The joy of computer graphics programming
The joy of computer graphics programmingThe joy of computer graphics programming
The joy of computer graphics programming
 
Voronoy Story
Voronoy StoryVoronoy Story
Voronoy Story
 
Simuler la physique avec un ordinateur
Simuler la physique avec un ordinateurSimuler la physique avec un ordinateur
Simuler la physique avec un ordinateur
 

Dernier

LIGHT-PHENOMENA-BY-CABUALDIONALDOPANOGANCADIENTE-CONDEZA (1).pptx
LIGHT-PHENOMENA-BY-CABUALDIONALDOPANOGANCADIENTE-CONDEZA (1).pptxLIGHT-PHENOMENA-BY-CABUALDIONALDOPANOGANCADIENTE-CONDEZA (1).pptx
LIGHT-PHENOMENA-BY-CABUALDIONALDOPANOGANCADIENTE-CONDEZA (1).pptxmalonesandreagweneth
 
Call Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCR
Call Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCRCall Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCR
Call Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCRlizamodels9
 
Neurodevelopmental disorders according to the dsm 5 tr
Neurodevelopmental disorders according to the dsm 5 trNeurodevelopmental disorders according to the dsm 5 tr
Neurodevelopmental disorders according to the dsm 5 trssuser06f238
 
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...D. B. S. College Kanpur
 
Bioteknologi kelas 10 kumer smapsa .pptx
Bioteknologi kelas 10 kumer smapsa .pptxBioteknologi kelas 10 kumer smapsa .pptx
Bioteknologi kelas 10 kumer smapsa .pptx023NiWayanAnggiSriWa
 
Forensic limnology of diatoms by Sanjai.pptx
Forensic limnology of diatoms by Sanjai.pptxForensic limnology of diatoms by Sanjai.pptx
Forensic limnology of diatoms by Sanjai.pptxkumarsanjai28051
 
Topic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptxTopic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptxJorenAcuavera1
 
ALL ABOUT MIXTURES IN GRADE 7 CLASS PPTX
ALL ABOUT MIXTURES IN GRADE 7 CLASS PPTXALL ABOUT MIXTURES IN GRADE 7 CLASS PPTX
ALL ABOUT MIXTURES IN GRADE 7 CLASS PPTXDole Philippines School
 
Pests of soyabean_Binomics_IdentificationDr.UPR.pdf
Pests of soyabean_Binomics_IdentificationDr.UPR.pdfPests of soyabean_Binomics_IdentificationDr.UPR.pdf
Pests of soyabean_Binomics_IdentificationDr.UPR.pdfPirithiRaju
 
preservation, maintanence and improvement of industrial organism.pptx
preservation, maintanence and improvement of industrial organism.pptxpreservation, maintanence and improvement of industrial organism.pptx
preservation, maintanence and improvement of industrial organism.pptxnoordubaliya2003
 
Base editing, prime editing, Cas13 & RNA editing and organelle base editing
Base editing, prime editing, Cas13 & RNA editing and organelle base editingBase editing, prime editing, Cas13 & RNA editing and organelle base editing
Base editing, prime editing, Cas13 & RNA editing and organelle base editingNetHelix
 
User Guide: Pulsar™ Weather Station (Columbia Weather Systems)
User Guide: Pulsar™ Weather Station (Columbia Weather Systems)User Guide: Pulsar™ Weather Station (Columbia Weather Systems)
User Guide: Pulsar™ Weather Station (Columbia Weather Systems)Columbia Weather Systems
 
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.PraveenaKalaiselvan1
 
User Guide: Capricorn FLX™ Weather Station
User Guide: Capricorn FLX™ Weather StationUser Guide: Capricorn FLX™ Weather Station
User Guide: Capricorn FLX™ Weather StationColumbia Weather Systems
 
Pests of Blackgram, greengram, cowpea_Dr.UPR.pdf
Pests of Blackgram, greengram, cowpea_Dr.UPR.pdfPests of Blackgram, greengram, cowpea_Dr.UPR.pdf
Pests of Blackgram, greengram, cowpea_Dr.UPR.pdfPirithiRaju
 
《Queensland毕业文凭-昆士兰大学毕业证成绩单》
《Queensland毕业文凭-昆士兰大学毕业证成绩单》《Queensland毕业文凭-昆士兰大学毕业证成绩单》
《Queensland毕业文凭-昆士兰大学毕业证成绩单》rnrncn29
 
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Four Spheres of the Earth Presentation.ppt
Four Spheres of the Earth Presentation.pptFour Spheres of the Earth Presentation.ppt
Four Spheres of the Earth Presentation.pptJoemSTuliba
 
Pests of jatropha_Bionomics_identification_Dr.UPR.pdf
Pests of jatropha_Bionomics_identification_Dr.UPR.pdfPests of jatropha_Bionomics_identification_Dr.UPR.pdf
Pests of jatropha_Bionomics_identification_Dr.UPR.pdfPirithiRaju
 

Dernier (20)

LIGHT-PHENOMENA-BY-CABUALDIONALDOPANOGANCADIENTE-CONDEZA (1).pptx
LIGHT-PHENOMENA-BY-CABUALDIONALDOPANOGANCADIENTE-CONDEZA (1).pptxLIGHT-PHENOMENA-BY-CABUALDIONALDOPANOGANCADIENTE-CONDEZA (1).pptx
LIGHT-PHENOMENA-BY-CABUALDIONALDOPANOGANCADIENTE-CONDEZA (1).pptx
 
Call Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCR
Call Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCRCall Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCR
Call Girls In Nihal Vihar Delhi ❤️8860477959 Looking Escorts In 24/7 Delhi NCR
 
Neurodevelopmental disorders according to the dsm 5 tr
Neurodevelopmental disorders according to the dsm 5 trNeurodevelopmental disorders according to the dsm 5 tr
Neurodevelopmental disorders according to the dsm 5 tr
 
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
Fertilization: Sperm and the egg—collectively called the gametes—fuse togethe...
 
Bioteknologi kelas 10 kumer smapsa .pptx
Bioteknologi kelas 10 kumer smapsa .pptxBioteknologi kelas 10 kumer smapsa .pptx
Bioteknologi kelas 10 kumer smapsa .pptx
 
Forensic limnology of diatoms by Sanjai.pptx
Forensic limnology of diatoms by Sanjai.pptxForensic limnology of diatoms by Sanjai.pptx
Forensic limnology of diatoms by Sanjai.pptx
 
Topic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptxTopic 9- General Principles of International Law.pptx
Topic 9- General Principles of International Law.pptx
 
ALL ABOUT MIXTURES IN GRADE 7 CLASS PPTX
ALL ABOUT MIXTURES IN GRADE 7 CLASS PPTXALL ABOUT MIXTURES IN GRADE 7 CLASS PPTX
ALL ABOUT MIXTURES IN GRADE 7 CLASS PPTX
 
Pests of soyabean_Binomics_IdentificationDr.UPR.pdf
Pests of soyabean_Binomics_IdentificationDr.UPR.pdfPests of soyabean_Binomics_IdentificationDr.UPR.pdf
Pests of soyabean_Binomics_IdentificationDr.UPR.pdf
 
preservation, maintanence and improvement of industrial organism.pptx
preservation, maintanence and improvement of industrial organism.pptxpreservation, maintanence and improvement of industrial organism.pptx
preservation, maintanence and improvement of industrial organism.pptx
 
Base editing, prime editing, Cas13 & RNA editing and organelle base editing
Base editing, prime editing, Cas13 & RNA editing and organelle base editingBase editing, prime editing, Cas13 & RNA editing and organelle base editing
Base editing, prime editing, Cas13 & RNA editing and organelle base editing
 
User Guide: Pulsar™ Weather Station (Columbia Weather Systems)
User Guide: Pulsar™ Weather Station (Columbia Weather Systems)User Guide: Pulsar™ Weather Station (Columbia Weather Systems)
User Guide: Pulsar™ Weather Station (Columbia Weather Systems)
 
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
BIOETHICS IN RECOMBINANT DNA TECHNOLOGY.
 
User Guide: Capricorn FLX™ Weather Station
User Guide: Capricorn FLX™ Weather StationUser Guide: Capricorn FLX™ Weather Station
User Guide: Capricorn FLX™ Weather Station
 
Pests of Blackgram, greengram, cowpea_Dr.UPR.pdf
Pests of Blackgram, greengram, cowpea_Dr.UPR.pdfPests of Blackgram, greengram, cowpea_Dr.UPR.pdf
Pests of Blackgram, greengram, cowpea_Dr.UPR.pdf
 
《Queensland毕业文凭-昆士兰大学毕业证成绩单》
《Queensland毕业文凭-昆士兰大学毕业证成绩单》《Queensland毕业文凭-昆士兰大学毕业证成绩单》
《Queensland毕业文凭-昆士兰大学毕业证成绩单》
 
Hot Sexy call girls in Moti Nagar,🔝 9953056974 🔝 escort Service
Hot Sexy call girls in  Moti Nagar,🔝 9953056974 🔝 escort ServiceHot Sexy call girls in  Moti Nagar,🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Moti Nagar,🔝 9953056974 🔝 escort Service
 
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Munirka Delhi 💯Call Us 🔝8264348440🔝
 
Four Spheres of the Earth Presentation.ppt
Four Spheres of the Earth Presentation.pptFour Spheres of the Earth Presentation.ppt
Four Spheres of the Earth Presentation.ppt
 
Pests of jatropha_Bionomics_identification_Dr.UPR.pdf
Pests of jatropha_Bionomics_identification_Dr.UPR.pdfPests of jatropha_Bionomics_identification_Dr.UPR.pdf
Pests of jatropha_Bionomics_identification_Dr.UPR.pdf
 

Optimal Transport for a Computer Programmer's Point of View

  • 1. Mathématiques - Informatique Optimal Transport From a Computer Perspective Summer School « Geometric Measure Theory and Calculus of Variations », Grenoble, June 2015 Bruno Lévy ALICE Géométrie & Lumière CENTRE INRIA Nancy Grand-Est
  • 2. Part. 1. Goals and Motivations - Understanding Part. 2. Optimal Transport Elementary intro. Part. 3. The Semi-Discrete Case Part. 4. Understanding Going Part. 5. Concluding Words OVERVIEW
  • 3. OVERVIEW Cédric Villani Optimal Transport Old & New Topics on Optimal Transport Yann Brenier The polar factorization theorem (Brenier Transport)
  • 4. OVERVIEW June 2015 Institut Fourier March 2015 Bonn Febr 2015 BIRS (Canada) Febr 2015 LJLL
  • 6. Part. 1 Optimal Transport Measuring distances between functions
  • 7. Part. 1 Optimal Transport Measuring distances between functions
  • 8. Part. 1 Optimal Transport Measuring distances between functions
  • 9. Part. 1 Optimal Transport Measuring distances between function
  • 10. Part. 1 Optimal Transport Interpolating functions
  • 11. Part. 1 Optimal Transport Interpolating functions
  • 12. Part. 1 Optimal Transport Interpolating functions
  • 13. Part. 1 Optimal Transport Interpolating functions
  • 14. Part. 1 Optimal Transport Interpolating functions
  • 15. Part. 1 Optimal Transport Interpolating functions
  • 16. Part. 1 Optimal Transport Interpolating functions
  • 17. Part. 1 Optimal Transport Interpolating functions
  • 18. Part. 1 Optimal Transport Interpolating functions
  • 19. Part. 1 Optimal Transport Interpolating functions
  • 20. Part. 1 Optimal Transport Interpolating functions
  • 21. Part. 1 Optimal Transport Interpolating functions
  • 22. Part. 1 Optimal Transport ? T
  • 23. Part. 1 Optimal Transport ? T distance between the shapes
  • 24. Part. 1 Optimal Transport while preserving mass and minimizing the effort ? ? T
  • 25. Part. 1 Optimal Transport while preserving mass and minimizing the effort ? ? T
  • 26. Part. 1 Optimal Transport while preserving mass and minimizing the effort ? ? T
  • 27. Part. 1 Optimal Transport OT= Yann Brenier: it can be replaced with the Monge-Ampère
  • 28. Part. 1 Optimal Transport OT= Yann Brenier: it can be replaced with the Monge-Ampère New ways of simulating physics with a computer
  • 29. Part. 1 Optimal Transport OT= Yann Brenier: Laplace operator is used in a PDE, it can be replaced with the Monge-Ampère New ways of simulating physics with a computer Fast Fourier Transform
  • 30. Part. 1 Optimal Transport OT= Yann Brenier: Laplace operator is used in a PDE, it can be replaced with the Monge-Ampère New ways of simulating physics with a computer Fast Fourier Transform Fast OT algo. ???
  • 31. Part. 1 Optimal Transport Gaspard Monge - 1784
  • 32. Part. 1 Optimal Transport Gaspard Monge geometry and light ANR TOMMI Workshop
  • 33. Part. 1 Optimal Transport [Castro, Merigot, Thibert 2014] Optimal transport geometry and light [Caffarelli, Kochengin, and Oliker 1999]
  • 34. Part. 1 Optimal Transport Image Processing Barycenters / mixing textures Video-style transfer [Nicolas Bonneel, Julien Rabin, Gabriel Peyre, Hanspeter Pfister] [Nicolas Bonneel, Kalyan Sunkavalli, Sylvain Paris, Hanspeter Pfister]
  • 35. Part. 1 Optimal Transport Optimal transport - geometry and light [Chwartzburg, Testuz, Tagliasacchi, Pauly, SIGGRAPH 2014]
  • 36. Part. 1. Motivations Discretization of functionals involving the Monge-Ampère operator, Benamou, Carlier, Mérigot, Oudet arXiv:1408.4536 The variational formulation of the Fokker-Planck equation Jordan, Kinderlehrer and Otto SIAM J. on Mathematical Analysis Geostrophic current
  • 37. Part. 1 Optimal Transport Optimal transport E.U.R. The data
  • 38. Part. 1 Optimal Transport The millenium simulation project, Max Planck Institute fur Astrophysik pc/h : parsec (= 3.2 light years)
  • 39. Part. 1 Optimal Transport Optimal transport E.U.R. The universal swimming pool
  • 40. Part. 1 Optimal Transport Optimal transport E.U.R. let there be light ! The millenium simulation project, Max Planck Institute fur Astrophysik pc/h : parsec (= 3.2 light years)
  • 41. Part. 1 Optimal Transport Optimal transport E.U.R. let there be light ! The millenium simulation project, Max Planck Institute fur Astrophysik pc/h : parsec (= 3.2 light years) In 2002: 5 hours of computation on a super-computer for 5000 points with a O(n3) algorithm.
  • 42. Part. 1 Optimal Transport Optimal transport E.U.R. let there be light ! The millenium simulation project, Max Planck Institute fur Astrophysik pc/h : parsec (= 3.2 light years) In 2002: 5 hours of computation on a super-computer for 5000 points with a O(n3) algorithm. Can we do the computation with 1 000 000 points ?
  • 44. Part. 2 Optimal Transport problem (X; ) (Y; ) Two measures , such that d (x) = d (x) X Y
  • 45. Part. 2 Optimal Transport problem A map T is a transport map between and if (T-1(B)) = (B) for any Borel subset B of Y (X; ) (Y; )
  • 46. Part. 2 Optimal Transport problem A map T is a transport map between and if (T-1(B)) = (B) for any Borel subset B B (X; ) (Y; )
  • 47. Part. 2 Optimal Transport problem A map T is a transport map between and if (T-1(B)) = (B) for any Borel subset B B T-1(B) (X; ) (Y; )
  • 48. Part. 2 Optimal Transport problem A map T is a transport map between and if (T-1(B)) = (B) for any Borel subset B (or = T# the pushforward of ) (X; ) (Y; )
  • 49. Part. 2 Optimal Transport problem problem: Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x) (X; ) (Y; )
  • 50. Part. 2 Optimal Transport problem problem: Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x) Difficult to study If has an atom (isolated Dirac), it can only be mapped to another Dirac (T needs to be a map)
  • 51. Part. 2 Optimal Transport problem problem: Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x) Transport from a measure concentrated on L1 onto another one concentrated on L2 and L3
  • 52. Part. 2 Optimal Transport problem problem: Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x) Transport from a measure concentrated on L1 onto another one concentrated on L2 and L3
  • 53. Part. 2 Optimal Transport problem problem: Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x) Transport from a measure concentrated on L1 onto another one concentrated on L2 and L3
  • 54. Part. 2 Optimal Transport problem problem: Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x) Transport from a measure concentrated on L1 onto another one concentrated on L2 and L3 The infimum is never realized by a map, need for a relaxation
  • 55. Part. 2 Optimal Transport Kantorovich problem: Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x) (1942): Find a measure defined on X x Y such that x in X d (x,y) = d (y) and y in Y d (x,y) = d (x) that minimizes X x Y || x y ||2 d (x,y)
  • 56. Part. 2 Optimal Transport Kantorovich problem: Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x) Find a measure defined on X x Y such that x in X d (x,y) = d (y) and y in Y d (x,y) = d (x) that minimizes X x Y || x y ||2 d (x,y) (x,y How much sand goes from x to y
  • 57. Part. 2 Optimal Transport Kantorovich problem: Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x) Find a measure defined on X x Y such that x in X d (x,y) = d (y) and y in Y d (x,y) = d (x) that minimizes X x Y || x y ||2 d (x,y) Everything that is transported from x
  • 58. Part. 2 Optimal Transport Kantorovich problem: Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x) Find a measure defined on X x Y such that x in X d (x,y) = d (y) and y in Y d (x,y) = d (x) that minimizes X x Y || x y ||2 d (x,y) Everything that is transported to y
  • 59. Part. 2 Optimal Transport Kantorovich Transport plan example 1/4 : translation of a segment
  • 60. Part. 2 Optimal Transport Kantorovich Transport plan example 1/4 : translation of a segment
  • 61. Part. 2 Optimal Transport Kantorovich Transport plan example 2/4 : spitting a segment
  • 62. Part. 2 Optimal Transport Kantorovich
  • 63. Part. 2 Optimal Transport Kantorovich
  • 64. Part. 2 Optimal Transport Kantorovich
  • 65. Part. 2 Optimal Transport Kantorovich Transport plan example 3/4 : splitting a Dirac into two Diracs
  • 66. Part. 2 Optimal Transport Kantorovich Transport plan example 3/4 : splitting a Dirac into two Diracs (No transport map)
  • 67. Part. 2 Optimal Transport Kantorovich Transport plan example 4/4 : splitting a Dirac into two segments
  • 68. Part. 2 Optimal Transport Kantorovich Transport plan example 4/4 : splitting a Dirac into two segments (No transport map)
  • 69. Part. 2 Optimal Transport Duality
  • 70. Part. 2 Optimal Transport Duality Duality is easier to understand with a discrete version
  • 71. Part. 2 Optimal Transport Duality (DMK): Min <c, > P1 = u s.t. P2 = v
  • 72. Part. 2 Optimal Transport Duality (DMK): Min <c, > P1 = u s.t. P2 = v = 11 12 1n 22 2n mn IRmn
  • 73. Part. 2 Optimal Transport Duality (DMK): Min <c, > P1 = u s.t. P2 = v = 11 12 1n 22 2n mn c = c11 c12 c1n c22 c2n cmn IRmnIRmn
  • 74. Part. 2 Optimal Transport Duality (DMK): Min <c, > P1 = u s.t. P2 = v = 11 12 1n 22 2n mn c = c11 c12 c1n c22 c2n cmn cij = || xi yj ||2 IRmnIRmn
  • 75. Part. 2 Optimal Transport Duality (DMK): Min <c, > P1 = u s.t. P2 = v 0 = 11 12 1n 22 2n mn c = c11 c12 c1n c22 c2n cmn cij = || xi yj ||2 mn X m IRmnIRmn
  • 76. Part. 2 Optimal Transport Duality (DMK): Min <c, > P1 = u s.t. P2 = v = 11 12 1n 22 2n mn c = c11 c12 c1n c22 c2n cmn cij = || xi yj ||2 mn X n mn X m IRmnIRmn
  • 77. Part. 2 Optimal Transport Duality (DMK): Min <c, > P1 = u s.t. P2 = v = 11 12 1n 22 2n mn c = c11 c12 c1n c22 c2n cmn IRmnIRmn mn X n mn X m
  • 78. Part. 2 Optimal Transport Duality Consider L( , ) = <c, > - < , P1 - u> - < , P2 - v> (DMK): Min <c, > P1 = u s.t. P2 = v< u, v > denotes the dot product between u and v
  • 79. Part. 2 Optimal Transport Duality Consider L( , ) = <c, > - < , P1 - u> - < , P2 - v> Remark: Sup[ L( , ) ] = < c, > if P1 = u and P2 = v IRm IRn (DMK): Min <c, > P1 = u s.t. P2 = v
  • 80. Part. 2 Optimal Transport Duality Consider L( , ) = <c, > - < , P1 - u> - < , P2 - v> Remark: Sup[ L( , ) ] = < c, > if P1 = u and P2 = v IRm IRn (DMK): Min <c, > P1 = u s.t. P2 = v 0
  • 81. Part. 2 Optimal Transport Duality Consider L( , ) = <c, > - < , P1 - u> - < , P2 - v> Remark: Sup[ L( , ) ] = < c, > if P1 = u and P2 = v IRm IRn Consider now: Inf [ Sup[ L( , ) ] ] IRm IRn (DMK): Min <c, > P1 = u s.t. P2 = v
  • 82. Part. 2 Optimal Transport Duality Consider L( , ) = <c, > - < , P1 - u> - < , P2 - v> Remark: Sup[ L( , ) ] = < c, > if P1 = u and P2 = v IRm IRn Consider now: Inf [ Sup[ L( , ) ] ] = Inf [ < c, > ] IRm IRn P1 = u P2 = v (DMK): Min <c, > P1 = u s.t. P2 = v
  • 83. Part. 2 Optimal Transport Duality Consider L( , ) = <c, > - < , P1 - u> - < , P2 - v> Remark: Sup[ L( , ) ] = < c, > if P1 = u and P2 = v IRm IRn Consider now: Inf [ Sup[ L( , ) ] ] = Inf [ < c, > ] (DMK) IRm IRn 0 P1 = u P2 = v (DMK): Min <c, > P1 = u s.t. P2 = v
  • 84. Part. 2 Optimal Transport Duality IRm IRn Inf [ Sup[ <c, > - < , P1 - u> - < , P2 - v> ] ] (DMK): Min <c, > P1 = u s.t. P2 = v
  • 85. Part. 2 Optimal Transport Duality IRm IRn 0 Inf [ Sup[ <c, > - < , P1 - u> - < , P2 - v> ] ] IRm IRn Sup[ Inf[ <c, > - < , P1 - u> - < , P2 - v> ] ] Exchange Inf Sup (DMK): Min <c, > P1 = u s.t. P2 = v
  • 86. Part. 2 Optimal Transport Duality IRm IRn Inf [ Sup[ <c, > - < , P1 - u> - < , P2 - v> ] ] IRm IRn Sup[ Inf[ <c, > - < , P1 - u> - < , P2 - v> ] ] IRm IRn 0 Sup[ Inf[ < ,c-P1 t P2 t > + < ,u> + < , v> ] ] Exchange Inf Sup Expand/Reorder/Collect (DMK): Min <c, > P1 = u s.t. P2 = v 0
  • 87. Part. 2 Optimal Transport Duality IRm IRn Inf [ Sup[ <c, > - < , P1 - u> - < , P2 - v> ] ] IRm IRn Sup[ Inf[ <c, > - < , P1 - u> - < , P2 - v> ] ] IRm IRn Sup[ Inf[ < ,c-P1 t P2 t > + < ,u> + < , v> ] ] Exchange Inf Sup Expand/Reorder/Collect Interpret (DMK): Min <c, > P1 = u s.t. P2 = v
  • 88. Part. 2 Optimal Transport Duality IRm IRn Sup[ Inf[ < ,c-P1 t P2 t > + < ,u> + < , v> ] ] Interpret Sup[ < ,u> + < , v> ] IRm IRn P1 t + P2 t c (DMK): Min <c, > P1 = u s.t. P2 = v (DDMK)
  • 89. Part. 2 Optimal Transport Duality IRm IRn Sup[ Inf[ < ,c-P1 t P2 t > + < ,u> + < , v> ] ] Interpret Sup[ < ,u> + < , v> ] IRm IRn P1 t + P2 t c i + j cij (i,j) A (DMK): Min <c, > P1 = u s.t. P2 = v (DDMK)
  • 90. Part. 2 Optimal Transport Kantorovich dual Find a measure defined on X x Y such that x in X d (x,y) = d (x) and y in Y d (x,y) = d (x) that minimizes X x Y || x y ||2 d (x,y) Find two functions in L1( ) and in L1( ) Such that for all x,y, (x) + y ||2 that maximize X d + Y d
  • 91. Part. 2 Optimal Transport Kantorovich dual Find a measure defined on X x Y such that x in X d (x,y) = d (x) and y in Y d (x,y) = d (x) that minimizes X x Y || x y ||2 d (x,y) Find two functions in L1( ) and in L1( ) Such that for all x,y, (x) + y ||2 that maximize X d + Y d Your point of view: Try to minimize transport cost
  • 92. Part. 2 Optimal Transport Kantorovich dual Find a measure defined on X x Y such that x in X d (x,y) = d (x) and y in Y d (x,y) = d (x) that minimizes X x Y || x y ||2 d (x,y) Find two functions in L1( ) and in L1( ) Such that for all x,y, (x) + y ||2 that maximize X d + Y d Try to maximize transport price Your point of view: Try to minimize transport cost
  • 93. Part. 2 Optimal Transport Kantorovich dual Find a measure defined on X x Y such that x in X d (x,y) = d (x) and y in Y d (x,y) = d (x) that minimizes X x Y || x y ||2 d (x,y) Find two functions in L1( ) and in L1( ) Such that for all x,y, (x) + y ||2 that maximize X (x)d + Y (y)d What they charge for loading at x Your point of view: Try to minimize transport cost
  • 94. Part. 2 Optimal Transport Kantorovich dual Find a measure defined on X x Y such that x in X d (x,y) = d (x) and y in Y d (x,y) = d (x) that minimizes X x Y || x y ||2 d (x,y) Find two functions in L1( ) and in L1( ) Such that for all x,y, (x) + y ||2 that maximize X (x)d + Y (y)d What they charge for loading at x What they charge for unloading at y Your point of view: Try to minimize transport cost
  • 95. Part. 2 Optimal Transport Kantorovich dual Find a measure defined on X x Y such that x in X d (x,y) = d (x) and y in Y d (x,y) = d (x) that minimizes X x Y || x y ||2 d (x,y) Find two functions in L1( ) and in L1( ) Such that for all x,y, (x) + y ||2 that maximize X (x)d + Y (y)d What they charge for loading at x What they charge for unloading at y Price (loading + unloading) cannot be greater than transport cost (else you do the job yourself) Your point of view: Try to minimize transport cost
  • 96. Part. 2 Optimal Transport c-conjugate functions Find two functions in L1( ) and in L1( ) Such that for all x,y, (x) + y ||2 that maximize X (x)d + Y (y)d
  • 97. Part. 2 Optimal Transport c-conjugate functions Find two functions in L1( ) and in L1( ) Such that for all x,y, (x) + y ||2 that maximize X (x)d + Y (y)d If we got two functions and that satisfy the constraint Then it is possible to obtain a better solution by replacing with c defined by: For all y, c(y) = inf x in X ½|| x y ||2 - (y)
  • 98. Part. 2 Optimal Transport c-conjugate functions Find two functions in L1( ) and in L1( ) Such that for all x,y, (x) + y ||2 that maximize X (x)d + Y (y)d If we got two functions and that satisfy the constraint Then it is possible to obtain a better solution by replacing with c defined by: For all y, c(y) = inf x in X ½|| x y ||2 - (y) c is called the c-conjugate function of If there is a function such that = c then is said to be c-concave If is c-concave, then cc =
  • 99. Part. 2 Optimal Transport c-conjugate functions Find a c-concave function that maximizes X (x)d + Y c(y)d
  • 100. Part. 2 Optimal Transport c-conjugate functions Find a c-concave function that maximizes X (x)d + Y c(y)d is called a
  • 101. Part. 2 Optimal Transport c-subdifferential What about our initial problem ? is called a Find a c-concave function that maximizes X (x)d + Y c(y)d
  • 102. Part. 2 Optimal Transport c-subdifferential is called a Find a c-concave function that maximizes X (x)d + Y c(y)d
  • 103. Part. 2 Optimal Transport c-subdifferential
  • 104. Part. 2 Optimal Transport c-subdifferential Proof: see OTON, chap. 10.
  • 105. Part. 2 Optimal Transport c-subdifferential Proof: see OTON, chap. 10. Heuristic argument (at the beginning of the same chapter):
  • 106. Part. 2 Optimal Transport c-subdifferential Proof: see OTON, chap. 10. Heuristic argument (at the beginning of the same chapter):
  • 107. Part. 2 Optimal Transport c-subdifferential Proof: see OTON, chap. 10. Heuristic argument (at the beginning of the same chapter):
  • 108. Part. 2 Optimal Transport c-subdifferential Proof: see OTON, chap. 10. Heuristic argument (at the beginning of the same chapter):
  • 109. Part. 2 Optimal Transport c-subdifferential Proof: see OTON, chap. 10. Heuristic argument (at the beginning of the same chapter):
  • 110. Part. 2 Optimal Transport c-subdifferential Proof: see OTON, chap. 10. Heuristic argument (at the beginning of the same chapter):
  • 111. Part. 2 Optimal Transport c-subdifferential Proof: see OTON, chap. 10. Heuristic argument (at the beginning of the same chapter): w
  • 112. Part. 2 Optimal Transport c-subdifferential Proof: see OTON, chap. 10. Heuristic argument (at the beginning of the same chapter): -w
  • 113. Part. 2 Optimal Transport c-subdifferential Find a c-concave function that maximizes X (x)d + Y c(y)d
  • 114. Part. 2 Optimal Transport c-subdifferential Find a c-concave function that maximizes X (x)d + Y c(y)d { grad (x) with (x) := (½ x2- (x))
  • 115. Part. 2 Optimal Transport convexity Find a c-concave function that maximizes X (x)d + Y c(y)d { grad (x) with (x) := (½ x2- (x)) is convex
  • 116. Part. 2 Optimal Transport convexity Find a c-concave function that maximizes X (x)d + Y c(y)d { grad (x) with (x) := (½ x2- (x)) is convex
  • 117. Part. 2 Optimal Transport convexity Find a c-concave function that maximizes X (x)d + Y c(y)d { grad (x) with (x) := (½ x2- (x)) is convex
  • 118. Part. 2 Optimal Transport no collision If T(.) exists, then T(x) = x grad (x) = grad (½ x2- (x) ) {grad (x) Find a c-concave function that maximizes X (x)d + Y c(y)d is convex
  • 119. Part. 2 Optimal Transport no collision If T(.) exists, then T(x) = x grad (x) = grad (½ x2- (x) ) {grad (x) Find a c-concave function that maximizes X (x)d + Y c(y)d is convex
  • 120. Part. 2 Optimal Transport no collision If T(.) exists, then T(x) = x grad (x) = grad (½ x2- (x) ) {grad (x) Find a c-concave function that maximizes X (x)d + Y c(y)d is convex
  • 121. Part. 2 Optimal Transport Monge-Ampere What about our initial problem ? If T(.) exists, then one can show that: T(x) = x grad (x) = grad (½ x2- (x) ) { for all borel set A, A d = T(A) (|JT|) d (change of variable) Jacobian of T (1st order derivatives) Find a c-concave function that maximizes X (x)d + Y c(y)d grad (x) with (x) := (½ x2- (x))
  • 122. Part. 2 Optimal Transport Monge-Ampere What about our initial problem ? If T(.) exists, then one can show that: T(x) = x grad (x) = grad (½ x2- (x) ) { for all borel set A, A d = T(A) (|JT|) d = T(A) (H ) d Det. of the Hessian of (2nd order derivatives) Find a c-concave function that maximizes X (x)d + Y c(y)d grad (x) with (x) := (½ x2- (x))
  • 123. Part. 2 Optimal Transport Monge-Ampere What about our initial problem ? T(x) = x grad (x) = grad (½ x2- (x) ) {grad (x) with (x) := (½ x2- (x)) When and have a density u and v, (H (x)). v(grad (x)) = u(x) Monge-Ampère equation for all borel set A, A d = T(A) (|JT|) d = T(A) (H ) d Find a c-concave function that maximizes X (x)d + Y c(y)d
  • 124. Part. 2 Optimal Transport summary Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x)
  • 125. Part. 2 Optimal Transport summary Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x) (Kantorovich formulation, dual, c-convex functions)
  • 126. Part. 2 Optimal Transport summary Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x) (Kantorovich formulation, dual, c-convex functions) Monge-Ampère equation (When and have a density u and v resp.) Solve (H (x)). v(grad (x)) = u(x)
  • 127. Part. 2 Optimal Transport summary Find a transport map T that minimizes C(T) = X || x T(x) ||2 d (x) (Kantorovich formulation, dual, c-convex functions) Brenier, Mc Cann, Trudinger: The optimal transport map is then given by: T(x) = grad (x) Solve (H (x)). v(grad (x)) = u(x) Monge-Ampère equation (When and have a density u and v resp.)
  • 128. Part. 2 Optimal Transport Isoperimetric inequality For a given volume, ball is the shape that minimizes border area
  • 129. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: Given f: IRn sufficiently regular Explanation in [Dario Cordero Erauquin] course notes
  • 130. Part. 2 Optimal Transport Isoperimetric inequality n Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: Given f: IRn sufficiently regular Explanation in [Dario Cordero Erauquin] course notes
  • 131. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: Given f: IRn sufficiently regular Explanation in [Dario Cordero Erauquin] course notes
  • 132. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: Given f: IRn sufficiently regular Consider a compact set such that Vol( ) = Vol(B2 3) and f = the indicatrix function of
  • 133. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: Given f: IRn sufficiently regular Consider a compact set such that Vol( ) = Vol(B2 3) and f = the indicatrix function of Vol Vol(B2 3)1/3 Vol(B2 3)2/3
  • 134. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: Given f: IRn sufficiently regular Consider a compact set such that Vol( ) = Vol(B2 3) and f = the indicatrix function of Vol Vol(B2 3)1/3 Vol(B2 3)2/3 Vol = Vol 2 3)
  • 135. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: a proof with OT [Gromov]
  • 136. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: a proof with OT [Gromov] We suppose w.l.o.g. that f n/(n-1) = 1
  • 137. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: a proof with OT [Gromov] There exists an optimal transport T = grad between f n/(n-1)(x)dx and 1B2 n/Vol(B2 n)dx We suppose w.l.o.g. that f n/(n-1) = 1
  • 138. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: a proof with OT [Gromov] There exists an optimal transport T = grad between f n/(n-1)(x)dx and 1B2 n/Vol(B2 n)dx We suppose w.l.o.g. that f n/(n-1) = 1 Monge-Ampère equation: Vol(B2 n) fn/(n-1)(x) = det Hess
  • 139. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: a proof with OT [Gromov] There exists an optimal transport T = grad between f n/(n-1)(x)dx and 1B2 n/Vol(B2 n)dx We suppose w.l.o.g. that f n/(n-1) = 1 Monge-Ampère equation: Vol(B2 n) fn/(n-1)(x) = det Hess Arithmetico-geometric ineq: det (H) 1/n
  • 140. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: a proof with OT [Gromov] There exists an optimal transport T = grad between f n/(n-1)(x)dx and 1B2 n/Vol(B2 n)dx We suppose w.l.o.g. that f n/(n-1) = 1 Monge-Ampère equation: Vol(B2 n) fn/(n-1)(x) = det Hess Arithmetico-geometric ineq: det (H) 1/n det (Hess ) 1/n )/n
  • 141. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: a proof with OT [Gromov] There exists an optimal transport T = grad between f n/(n-1)(x)dx and 1B2 n/Vol(B2 n)dx We suppose w.l.o.g. that f n/(n-1) = 1 Monge-Ampère equation: Vol(B2 n) fn/(n-1)(x) = det Hess Arithmetico-geometric ineq: det (H) 1/n det (Hess ) 1/n )/n det (Hess ) 1/n / n
  • 142. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: a proof with OT [Gromov] We suppose w.l.o.g. that f n/(n-1) = 1 det (Hess ) 1/n )/n Monge-Ampère equation: Vol(B2 n) fn/(n-1)(x) = det Hess
  • 143. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: a proof with OT [Gromov] We suppose w.l.o.g. that f n/(n-1) = 1 Vol(B2 n) = Vol(B2 n) f n/(n-1) = f Vol(B2 n) f 1/(n-1) det (Hess ) 1/n )/n Monge-Ampère equation: Vol(B2 n) fn/(n-1)(x) = det Hess
  • 144. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: a proof with OT [Gromov] We suppose w.l.o.g. that f n/(n-1) = 1 Vol(B2 n) = Vol(B2 n) f n/(n-1) = f Vol(B2 n) f 1/(n-1) det (Hess ) 1/n )/n Monge-Ampère equation: Vol(B2 n) fn/(n-1)(x) = det Hess
  • 145. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: a proof with OT [Gromov] We suppose w.l.o.g. that f n/(n-1) = 1 Vol(B2 n) = Vol(B2 n) f n/(n-1) = f Vol(B2 n) f 1/(n-1) = - grad f . grad det (Hess ) 1/n )/n Monge-Ampère equation: Vol(B2 n) fn/(n-1)(x) = det Hess
  • 146. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: a proof with OT [Gromov] We suppose w.l.o.g. that f n/(n-1) = 1 Vol(B2 n) = Vol(B2 n) f n/(n-1) = f Vol(B2 n) f 1/(n-1) 1/n = - grad f . grad | grad f | (T = grad B2 n ) det (Hess ) 1/n )/n Monge-Ampère equation: Vol(B2 n) fn/(n-1)(x) = det Hess
  • 147. Part. 2 Optimal Transport Isoperimetric inequality Vol(B2 n)1/n ( f n/(n-1))(n-1)/n L1 Sobolev inegality: a proof with OT [Gromov] We suppose w.l.o.g. that f n/(n-1) = 1 Vol(B2 n) = Vol(B2 n) f n/(n-1) = f Vol(B2 n) f 1/(n-1) = - grad f . grad | grad f | (T = grad B2 n ) Vol(B2 n)1/n det (Hess ) 1/n )/n Monge-Ampère equation: Vol(B2 n) fn/(n-1)(x) = det Hess
  • 149. Part. 3 Optimal Transport how to program ? Continuous (X; ) (Y; )
  • 150. Part. 3 Optimal Transport how to program ? Continuous Semi-discrete (X; ) (Y; )
  • 151. Part. 3 Optimal Transport how to program ? Continuous Semi-discrete Discrete (X; ) (Y; )
  • 152. Part. 3 Optimal Transport how to program ? Continuous Semi-discrete Discrete (X; ) (Y; )
  • 153. Part. 3 Optimal Transport semi-discrete X c (x)d + Y (y)d Sup c (DMK) (X; ) (Y; )
  • 154. Part. 3 Optimal Transport semi-discrete (X; ) (Y; ) j (yj) vj X c (x)d + Y (y)d Sup c (DMK)
  • 155. Part. 3 Optimal Transport semi-discrete X c (x)d + Y (y)d Sup c (DMK) j (yj) vj
  • 156. Part. 3 Optimal Transport semi-discrete X c (x)d + Y (y)d Sup c (DMK) X inf yj Y [ || x yj ||2 - (yj) ] d j (yj) vj
  • 157. Part. 3 Optimal Transport semi-discrete X c (x)d + Y (y)d Sup c (DMK) j Lag (yj) || x yj ||2 - (yj) d X inf yj Y [ || x yj ||2 - (yj) ] d j (yj) vj
  • 158. Part. 3 Optimal Transport semi-discrete G( ) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj Sup c (DMK) Where: Lag (yj) = { x | || x yj ||2 (yj) < || x yj ||2 - (yj ) }
  • 159. Part. 3 Optimal Transport semi-discrete G( ) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj Sup c (DMK) Where: Lag (yj) = { x | || x yj ||2 (yj) < || x yj ||2 - (yj ) } Laguerre diagram of the yj (with the L2 cost || x y ||2 used here, Power diagram)
  • 160. Part. 3 Optimal Transport semi-discrete G( ) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj Sup c (DMK) Where: Lag (yj) = { x | || x yj ||2 (yj) < || x yj ||2 - (yj ) } Laguerre diagram of the yj (with the L2 cost || x y ||2 used here, Power diagram) Weight of yj in the power diagram
  • 161. Part. 3 Optimal Transport semi-discrete G( ) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj Sup c (DMK) Where: Lag (yj) = { x | || x yj ||2 (yj) < || x yj ||2 - (yj ) } Laguerre diagram of the yj (with the L2 cost || x y ||2 used here, Power diagram) Weight of yj in the power diagram is determined by the weight vector [ (y1) (y2 (ym)]
  • 162. Part. 3 Optimal Transport semi-discrete G( ) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj Sup c (DMK) Where: Lag (yj) = { x | || x yj ||2 (yj) < || x yj ||2 - (yj ) } Laguerre diagram of the yj (with the L2 cost || x y ||2 used here, Power diagram) Weight of yj in the power diagram is determined by the weight vector [ (y1) (y2 (ym)] For all weight vector, is c-concave
  • 163. Voronoi diagram: Vor(xi) = { x | d2(x,xi) < d2(x,xj) } Part. 3 Power Diagrams
  • 164. Power diagram: Pow(xi) = { x | d2(x,xi) i < d2(x,xj) j } Voronoi diagram: Vor(xi) = { x | d2(x,xi) < d2(x,xj) } Part. 3 Power Diagrams
  • 165. Part. 3 Power Diagrams
  • 166. Part. 3 Optimal Transport Theorem: (direct consequence of MK duality alternative proof in [Aurenhammer, Hoffmann, Aronov 98] ): Given a measure with density, a set of points (yj), a set of positive coefficients vj such that vj d (x), it is possible to find the weights W = [ (y1) (y2 (ym)] such that the map TS W is the unique optimal transport map between and = vj (yj)
  • 167. Part. 3 Optimal Transport Theorem: (direct consequence of MK duality alternative proof in [Aurenhammer, Hoffmann, Aronov 98] ): Given a measure with density, a set of points (yj), a set of positive coefficients vj such that vj d (x), it is possible to find the weights W = [ (y1) (y2 (ym)] such that the map TS W is the unique optimal transport map between and = vj (yj) Proof: G( ) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj Is a concave function of the weight vector [ (y1) (y2 (ym)]
  • 168. Part. 3 Optimal Transport Theorem: (direct consequence of MK duality alternative proof in [Aurenhammer, Hoffmann, Aronov 98] ): Given a measure with density, a set of points (yj), a set of positive coefficients vj such that vj d (x), it is possible to find the weights W = [ (y1) (y2 (ym)] such that the map TS W is the unique optimal transport map between and = vj (yj) Proof: G( ) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj Is a concave function of the weight vector [ (y1) (y2 (ym)]
  • 169. Part. 3 Optimal Transport the AHA paper Idea of the proof Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x) The (unknown) weights W = [ (y1) (y2 (ym)]
  • 170. Part. 3 Optimal Transport the AHA paper Idea of the proof Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x) T : an arbitrary but fixed assignment.
  • 171. Part. 3 Optimal Transport the AHA paper Idea of the proof Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x) T : an arbitrary but fixed assignment.
  • 172. Part. 3 Optimal Transport the AHA paper Idea of the proof Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x) T : an arbitrary but fixed assignment.
  • 173. Part. 3 Optimal Transport the AHA paper Idea of the proof Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x) T : an arbitrary but fixed assignment.
  • 174. Part. 3 Optimal Transport the AHA paper Idea of the proof Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x) W fT(W) fT(W)
  • 175. Part. 3 Optimal Transport the AHA paper Idea of the proof Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x) W fT(W) fT(W)
  • 176. Part. 3 Optimal Transport the AHA paper Idea of the proof Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x) fT(W) is linear in W fT(W) W fT(W) Fixed T
  • 177. Part. 3 Optimal Transport the AHA paper Idea of the proof Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x) fT(W) is linear in W f TW (W) : defined by power diagram fT(W) fixed W W
  • 178. Part. 3 Optimal Transport the AHA paper Idea of the proof Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x) fT(W) is linear in W f TW (W) = minT fT(W) fT(W) fixed W W
  • 179. Part. 3 Optimal Transport the AHA paper Idea of the proof Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x) fT(W) is linear in W TW (W) is concave !! (because its graph is the lower enveloppe of linear functions) fT(W) W fT(W) f TW (W) = minT fT(W)
  • 180. Part. 3 Optimal Transport the AHA paper Idea of the proof Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x) fT(W) is linear in W TW (W) is concave (because its graph is the lower enveloppe of linear functions) fT(W) W fT(W) f TW (W) = minT fT(W) Consider g(W) = f TW vj j
  • 181. Part. 3 Optimal Transport the AHA paper fT(W) W fT(W) f TW (W) = minT fT(W) Consider g(W) = f TW vj j vj - pow(yj)|| x yj ||2d (x) and g is concave.j = Idea of the proof Consider the function fT(W) = (|| x T(x) ||2 (T(X)))d (x) fT(W) is linear in W TW (W) is concave (because its graph is the lower enveloppe of linear functions)
  • 182. Part. 3 Optimal Transport the algorithm Semi-discrete OT Summary: X c (x)d + Y (y)d Sup c (DMK) G( ) =
  • 183. Part. 3 Optimal Transport the algorithm Semi-discrete OT Summary: G( ) = g(W) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj is concave X c (x)d + Y (y)d Sup c (DMK) G( ) =
  • 184. Part. 3 Optimal Transport the algorithm Semi-discrete OT Summary: G( ) = g(W) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj is concave vj - pow(yj)|| x yj ||2d (x) (= 0 at the maximum)G / j = X c (x)d + Y (y)d Sup c (DMK) G( ) =
  • 185. Part. 3 Optimal Transport the algorithm Semi-discrete OT Summary: G( ) = g(W) = j Lag (yj) || x yj ||2 - (yj) d + j (yj) vj is concave vj - pow(yj)|| x yj ||2d (x) (= 0 at the maximum)G / j = X c (x)d + Y (y)d Sup c (DMK) G( ) = Desired mass at yj Mass transported to yj
  • 186. Part. 3 Optimal Transport the algorithm The [AHA] paper summary: The optimal weights minimize a convex function The gradient of this convex function is easy to compute Note: the weight w(s) correspond to the Kantorovich potential (x) Monge- The algorithm: Input: two tetrahedral meshes M1 and M2 Output: a morphing between M1 and M2
  • 187. Part. 3 Optimal Transport the algorithm The [AHA] paper summary: The optimal weights minimize a convex function The gradient of this convex function is easy to compute Note: the weight w(s) correspond to the Kantorovich potential (x) Monge- The algorithm: Input: two tetrahedral meshes M1 and M2 Output: a morphing between M1 and M2 Step 1: sample M2 with N points (s1 sN)
  • 188. Part. 3 Optimal Transport the algorithm The [AHA] paper summary: The optimal weights minimize a convex function The gradient of this convex function is easy to compute Note: the weight w(s) correspond to the Kantorovich potential (x) Monge- The algorithm: Input: two tetrahedral meshes M1 and M2 Output: a morphing between M1 and M2 Step 1: sample M2 with N points (s1 sN) Step 2: initialize the weights (w1 wN) = (0 0)
  • 189. Part. 3 Optimal Transport the algorithm The [AHA] paper summary: The optimal weights minimize a convex function The gradient of this convex function is easy to compute Note: the weight w(s) correspond to the Kantorovich potential (x) Monge- The algorithm: Input: two tetrahedral meshes M1 and M2 Output: a morphing between M1 and M2 Step 1: sample M2 with N points (s1 sN) Step 2: initialize the weights (w1 wN Step 3: minimize g(w1 wN) with a quasi-Newton algorithm:
  • 190. Part. 3 Optimal Transport the algorithm The [AHA] paper summary: The optimal weights minimize a convex function The gradient of this convex function is easy to compute Note: the weight w(s) correspond to the Kantorovich potential (x) Monge- The algorithm: Input: two tetrahedral meshes M1 and M2 Output: a morphing between M1 and M2 Step 1: sample M2 with N points (s1 sN) Step 2: initialize the weights (w1 wN Step 3: minimize g(w1 wN) with a quasi-Newton algorithm: For each iterate (s1 sN)(k):
  • 191. Part. 3 Optimal Transport the algorithm The [AHA] paper summary: The optimal weights minimize a convex function The gradient of this convex function is easy to compute Note: the weight w(s) correspond to the Kantorovich potential (x) Monge- The algorithm: Input: two tetrahedral meshes M1 and M2 Output: a morphing between M1 and M2 Step 1: sample M2 with N points (s1 sN) Step 2: initialize the weights (w1 wN) = (0 0) Step 3: minimize g(w1 wN) with a quasi-Newton algorithm: For each iterate (s1 sN)(k): Compute Pow( (wi, si) M1 [Nivoliers, L 2014, Curves and Surfaces]
  • 192. Part. 3 Optimal Transport the algorithm Compute Pow( (wi, si) M1 [Nivoliers, L 2014, Curves and Surfaces] Implementation in GEOGRAM (http://alice.loria.fr/software/geogram
  • 193. Part. 3 Optimal Transport the algorithm The [AHA] paper summary: The optimal weights minimize a convex function The gradient of this convex function is easy to compute Note: the weight w(s) correspond to the Kantorovich potential (x) Monge- The algorithm: Input: two tetrahedral meshes M1 and M2 Output: a morphing between M1 and M2 Step 1: sample M2 with N points (s1 sN) Step 2: initialize the weights (w1 wN Step 3: minimize g(w1 wN) with a quasi-Newton algorithm: For each iterate (s1 sN)(k): Compute Pow( (wi, si) M1 [L 2014, Curves and Surfaces] Compute g and grad g
  • 194. Part. 3 Optimal Transport the algorithm The [AHA] paper summary: The optimal weights minimize a convex function The gradient of this convex function is easy to compute Note: the weight w(s) correspond to the Kantorovich potential (x) Monge- The algorithm: Input: two tetrahedral meshes M1 and M2 Output: a morphing between M1 and M2 Step 1: sample M2 with N points (s1 sN) Step 2: initialize the weights (w1 wN Step 3: minimize g(w1 wN) with a quasi-Newton algorithm: For each iterate (s1 sN)(k): Compute Pow( (wi, si) M1 [L 2014, Curves and Surfaces] Compute g and grad g + Multilevel version [Merigot 2011] (2D), [L 2014 arXiv, M2AN 2015] (3D)
  • 195. Part. 3 Optimal Transport the algorithm The [AHA] paper summary: The optimal weights minimize a convex function The gradient of this convex function is easy to compute Note: the weight w(s) correspond to the Kantorovich potential (x) Monge- The algorithm: Summary: The algorithm computes the weights wi such that the power cells associated with the Diracs correspond to the preimages of the Diracs.
  • 196. Part. 3 Optimal Transport the algorithm The [AHA] paper summary: The optimal weights minimize a convex function The gradient of this convex function is easy to compute Note: the weight w(s) correspond to the Kantorovich potential (x) Monge- The algorithm: Summary: The algorithm computes the weights wi such that the power cells associated with the Diracs correspond to the preimages of the Diracs.
  • 197. Part. 3 Optimal Transport the algorithm The [AHA] paper summary: The optimal weights minimize a convex function The gradient of this convex function is easy to compute Note: the weight w(s) correspond to the Kantorovich potential (x) Monge- The algorithm: Summary: The algorithm computes the weights wi such that the power cells associated with the Diracs correspond to the preimages of the Diracs.
  • 198. Part. 3 Optimal Transport the algorithm The [AHA] paper summary: The optimal weights minimize a convex function The gradient of this convex function is easy to compute Note: the weight w(s) correspond to the Kantorovich potential (x) Monge- The algorithm: Summary: The algorithm computes the weights wi such that the power cells associated with the Diracs correspond to the preimages of the Diracs.
  • 199. Part. 3 Optimal Transport the algorithm The [AHA] paper summary: The optimal weights minimize a convex function The gradient of this convex function is easy to compute Note: the weight w(s) correspond to the Kantorovich potential (x) Monge- The algorithm: Summary: The algorithm computes the weights wi such that the power cells associated with the Diracs correspond to the preimages of the Diracs.
  • 201. Part. 4 Optimal Transport ??? Wait a minute: This means that one can move (and possibly deform) a power diagram simply by changing the weights ?
  • 202. Part. 4 Optimal Transport ??? Wait a minute: This means that one can move (and possibly deform) a power diagram simply by changing the weights ? Reminder: Power diagram in 2d = intersection between Voronoi diagram in 3d and IR2 hi = sqrt(wmax wi) Height of point i Weight of point i
  • 203. Part. 4 Power Diagrams & Transport
  • 204. Part. 4 Power Diagrams & Transport
  • 205. Part. 4 Power Diagrams & Transport
  • 206. Part. 4 Power Diagrams & Transport
  • 207. Part. 4 Power Diagrams & Transport
  • 208. Part. 4 Power Diagrams & Transport
  • 209. Part. 4 Power Diagrams & Transport hi
  • 210. Part. 4 Power Diagrams & Transport
  • 211. Part. 4 Power Diagrams & Transport
  • 212. Part. 4 Power Diagrams & Transport
  • 213. Part. 4 Power Diagrams & Transport
  • 214. Part. 4 Optimal Transport still lost ? 2D examples Numerical Experiment: Simple translation
  • 215. Part. 4 Power Diagrams & Transport
  • 216. Part. 4 Power Diagrams and Transport
  • 217. Part. 4 Optimal Transport 2D examples Numerical Experiment: Splitting a disk
  • 218. Part. 4 Optimal Transport 2D examples Numerical Experiment: A disk becomes two disks
  • 219. Part. 4 Optimal Transport 3D examples Numerical Experiment: A sphere becomes a cube
  • 220. Part. 4 Optimal Transport 3D examples Numerical Experiment: A sphere becomes two spheres
  • 221. Part. 4 Optimal Transport 3D examples Numerical Experiment: Armadillo to sphere
  • 222. Part. 4 Optimal Transport 3D examples Numerical Experiment: Other examples
  • 223. Part. 4 Optimal Transport 3D examples Numerical Experiment: Varying density
  • 224. Part. 4 Optimal Transport 3D examples Numerical Experiment: Performances
  • 225. Part. 4 Optimal Transport 3D examples Numerical Experiment: Performances Note that a few years ago, several hours of supercomputer time were needed for computing OT with a few thousand Dirac masses, with a combinatorial algorithm in O(n3)
  • 226. Part. 4 Optimal Transport 3D examples Numerical Experiment: Performances Note that a few years ago, several hours of supercomputer time were needed for computing OT with a few thousand Dirac masses, with a combinatorial algorithm in O(n3) With the semi-discrete algorithm, it takes less than 10 seconds on my laptop
  • 227. Part. 4 Optimal Transport 3D examples Numerical Experiment: Performances Note that a few years ago, several hours of supercomputer time were needed for computing OT with a few thousand Dirac masses, with a combinatorial algorithm in O(n3) In the semi-discrete setting, my 3D version of multigrid algorithm computes OT for 1 million Dirac masses in less than 1 hour on a laptop PC
  • 228. Part. 4 Optimal Transport 3D examples Numerical Experiment: Performances Note that a few years ago, several hours of supercomputer time were needed for computing OT with a few thousand Dirac masses, with a combinatorial algorithm in O(n3) In the semi-discrete setting, my 3D version of multigrid algorithm computes OT for 1 million Dirac masses in less than 1 hour on a laptop PC Even much faster convergence can probably be reached with a true Newton
  • 229. Conclusions Open questions * Connections with physics, Legendre transform and entropy ? [Cuturi & Peyré] regularized discrete optimal transport why does it work ? Hint 1: Minimum action principle subject to conservation laws * More continuous numerical algorithms ? [Benamou & Brenier] fluid dynamics point of view very elegant, but 4D problem !! FEM-type adaptive discretization of the subdifferential (graph of T) ? * Can we characterize OT in other semi-discrete settings ? measures supported on unions of spheres piecewise linear densities * Connections with computational geometry ? Singularity set [Figalli] = set of points where T is discontinuous Voronoi diagrams
  • 230. Conclusions - References Some references (that this presentation is based on) A Multiscale Approach to Optimal Transport, Quentin Mérigot, Computer Graphics Forum, 2011 Variational Principles for Minkowski Type Problems, Discrete Optimal Transport, and Discrete Monge-Ampere Equations Xianfeng Gu, Feng Luo, Jian Sun, S.-T. Yau, ArXiv 2013 Minkowski-type theorems and least-squares clustering AHA! (Aurenhammer, Hoffmann, and Aronov), SIAM J. on math. ana. 1998 Topics on Optimal Transportation, 2003 Optimal Transport Old and New, 2008 Cédric Villani
  • 231. Conclusions - References Other references (that I need to read and understand) Polar factorization and monotone rearrangement of vector-valued functions Yann Brenier, Comm. On Pure and Applied Mathematics, June 1991 A computational fluid mechanics solution of the Monge-Kantorovich mass transfer problem, J.-D. Benamou, Y. Brenier, Numer. Math. 84 (2000), pp. 375-393 Pogorelov, Alexandrov Gradient maps, Minkovsky problem (older than AHA paper, some overlap, in slightly different context, formalism used by Gu & Yau) Rockafeller Convex optimization Theorem to switch inf(sup()) sup(inf()) with convex functions (used to justify Kantorovich duality) New textbook: Filippo Santambrogio Optimal Transport for Applied Mathematician, Calculus of Variations, PDEs and Modeling Jan 15, 2015
  • 232. Online resources All the sourcecode/documentation available from: alice.loria.fr/software/geogram Computes semi-discrete OT in 3D Scales up to millions Dirac masses on a laptop L., A numerical algorithm for semi-discrete L2 OT in 3D, ESAIM Math. Modeling and Analysis, accepted (draft: http://arxiv.org/abs/1409.1279 <= to be fixed: bug in MA equation in this version, fixed in M2AN journal version)
  • 233. Acknowledgements Funding: European Research Council french GOODSHAPE ERC-StG-205693 VORPALINE ERC-PoC-334829 ANR MORPHO, ANR BECASIM Quentin Merigot, Yann Brenier, Boris Thibert, Emmanuel Maitre, Jean-David Benamou, Filippo Santambrogio, Edouard Oudet, Hervé Pajot. ANR TOMMI, ANR GEOMETRYA