{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "\n",
    "# 1D Wasserstein barycenter demo\n",
    "\n",
    "This example illustrates the computation of regularized Wasserstein Barycenter\n",
    "as proposed in [3].\n",
    "\n",
    "\n",
    "[3] Benamou, J. D., Carlier, G., Cuturi, M., Nenna, L., & Peyré, G. (2015).\n",
    "Iterative Bregman projections for regularized transportation problems\n",
    "SIAM Journal on Scientific Computing, 37(2), A1111-A1138.\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Author: Remi Flamary <remi.flamary@unice.fr>\n",
    "#\n",
    "# License: MIT License\n",
    "\n",
    "# sphinx_gallery_thumbnail_number = 1\n",
    "\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import ot\n",
    "\n",
    "# necessary for 3d plot even if not used\n",
    "from mpl_toolkits.mplot3d import Axes3D  # noqa\n",
    "from matplotlib.collections import PolyCollection"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Generate data\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "n = 100  # nb bins\n",
    "\n",
    "# bin positions\n",
    "x = np.arange(n, dtype=np.float64)\n",
    "\n",
    "# Gaussian distributions\n",
    "a1 = ot.datasets.make_1D_gauss(n, m=20, s=5)  # m= mean, s= std\n",
    "a2 = ot.datasets.make_1D_gauss(n, m=60, s=8)\n",
    "\n",
    "# creating matrix A containing all distributions\n",
    "A = np.vstack((a1, a2)).T\n",
    "n_distributions = A.shape[1]\n",
    "\n",
    "# loss matrix + normalization\n",
    "M = ot.utils.dist0(n)\n",
    "M /= M.max()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Barycenter computation\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "alpha = 0.5  # 0<=alpha<=1\n",
    "weights = np.array([1 - alpha, alpha])\n",
    "\n",
    "# l2bary\n",
    "bary_l2 = A.dot(weights)\n",
    "\n",
    "# wasserstein\n",
    "reg = 1e-3\n",
    "bary_wass = ot.bregman.barycenter(A, M, reg, weights)\n",
    "\n",
    "f, (ax1, ax2) = plt.subplots(2, 1, tight_layout=True, num=1)\n",
    "ax1.plot(x, A, color=\"black\")\n",
    "ax1.set_title(\"Distributions\")\n",
    "ax1.plot(x, bary_l2, \"r\", label=\"l2\")\n",
    "ax1.plot(x, bary_wass, \"g\", label=\"Wasserstein\")\n",
    "\n",
    "ax2.plot(x, bary_l2, \"r\", label=\"l2\")\n",
    "ax2.plot(x, bary_wass, \"g\", label=\"Wasserstein\")\n",
    "ax2.set_title(\"Barycenters\")\n",
    "\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Barycentric interpolation\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "n_alpha = 11\n",
    "alpha_list = np.linspace(0, 1, n_alpha)\n",
    "\n",
    "\n",
    "B_l2 = np.zeros((n, n_alpha))\n",
    "\n",
    "B_wass = np.copy(B_l2)\n",
    "\n",
    "for i in range(n_alpha):\n",
    "    alpha = alpha_list[i]\n",
    "    weights = np.array([1 - alpha, alpha])\n",
    "    B_l2[:, i] = A.dot(weights)\n",
    "    B_wass[:, i] = ot.bregman.barycenter(A, M, reg, weights)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "plt.figure(2)\n",
    "\n",
    "cmap = plt.get_cmap(\"viridis\")\n",
    "verts = []\n",
    "zs = alpha_list\n",
    "for i, z in enumerate(zs):\n",
    "    ys = B_l2[:, i]\n",
    "    verts.append(list(zip(x, ys)))\n",
    "\n",
    "ax = plt.gcf().add_subplot(projection=\"3d\")\n",
    "\n",
    "poly = PolyCollection(verts, facecolors=[cmap(a) for a in alpha_list])\n",
    "poly.set_alpha(0.7)\n",
    "ax.add_collection3d(poly, zs=zs, zdir=\"y\")\n",
    "ax.set_xlabel(\"x\")\n",
    "ax.set_xlim3d(0, n)\n",
    "ax.set_ylabel(\"$\\\\alpha$\")\n",
    "ax.set_ylim3d(0, 1)\n",
    "ax.set_zlabel(\"\")\n",
    "ax.set_zlim3d(0, B_l2.max() * 1.01)\n",
    "plt.title(\"Barycenter interpolation with l2\")\n",
    "plt.tight_layout()\n",
    "\n",
    "plt.figure(3)\n",
    "cmap = plt.get_cmap(\"viridis\")\n",
    "verts = []\n",
    "zs = alpha_list\n",
    "for i, z in enumerate(zs):\n",
    "    ys = B_wass[:, i]\n",
    "    verts.append(list(zip(x, ys)))\n",
    "\n",
    "ax = plt.gcf().add_subplot(projection=\"3d\")\n",
    "\n",
    "poly = PolyCollection(verts, facecolors=[cmap(a) for a in alpha_list])\n",
    "poly.set_alpha(0.7)\n",
    "ax.add_collection3d(poly, zs=zs, zdir=\"y\")\n",
    "ax.set_xlabel(\"x\")\n",
    "ax.set_xlim3d(0, n)\n",
    "ax.set_ylabel(\"$\\\\alpha$\")\n",
    "ax.set_ylim3d(0, 1)\n",
    "ax.set_zlabel(\"\")\n",
    "ax.set_zlim3d(0, B_l2.max() * 1.01)\n",
    "plt.title(\"Barycenter interpolation with Wasserstein\")\n",
    "plt.tight_layout()\n",
    "\n",
    "plt.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.11.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
