Sinkhorn's Algorithm is an iterative numerical method used to obtain an optimal transport plan
for the Kantorovich problem with entropic regularization in the case of finitely supported positive measures
.
Problem Formulation
Entropic regularization modifies the Kantorovich problem by adding a Kullback-Leibler divergence term to the optimization goal. Specifically, the general form of the problem is now to determine

where
is the product measure of
and
, and where

whenever the Radon-Nikodym derivative
exists (i.e. when
is absolutely continuous w.r.t.
) and
otherwise. This form of the KL divergence is applicable even when
differ in total mass and it reduces to the standard definition whenever
and
have equal total mass. From this definition it immediately follows that for
an optimal coupling
must be absolutely continuous w.r.t
. As a result, the optimal plan is in some sense less singular and hence "smoothed out."
To apply Sinkhorn's algorithm to approximate
, it will be necessary to assume finite support so let
and
and denote the corresponding vector of weights by
and
. Additionally let
and denote the discrete version
by
. This let's us write the entropic Kantorovich problem as

Intuition
Sinkhorn's Algorithm