SemiDiscreteOT 1.0
Semi-Discrete Optimal Transport Library
Loading...
Searching...
No Matches
Efficient Numerical Strategies for Entropy-Regularized Semidiscrete Optimal Transport

SemiDiscreteOT Logo
License: LGPL v3 C++17 Build Status Documentation arXiv DOI

Overview

SemiDiscreteOT is a high-performance C++ library for solving regularized semi-discrete optimal transport problems. It provides efficient numerical strategies for computing optimal transport plans between continuous and discrete probability measures, with a focus on large-scale applications.

The methods implemented in this library are detailed in the publication: **"Efficient Numerical Strategies for Entropy-Regularized Semi-Discrete Optimal Transport"** by Moaad Khamlich, Francesco Romor, and Gianluigi Rozza (2025).

Features

  • Efficient Solvers: Fast and scalable algorithms for regularized semi-discrete optimal transport.
  • Performance Optimizations: Includes distance-based truncation based on R-tree spatial queries.
  • Multilevel Acceleration: Supports multilevel techniques for both source and target measures to handle large-scale problems.
  • Flexible: Integrates with Deal.II for finite element computations and supports both structured and unstructured meshes.

Dependencies

  • Deal.II (9.5.0 or later)
  • Geogram
  • VTK
  • CMake (3.13.0 or later)
  • A C++17 compatible compiler

Quick Start

  1. Clone the repository: bash git clone https://github.com/SemiDiscreteOT/SemiDiscreteOT.git cd SemiDiscreteOT
  2. Build the library: bash mkdir build && cd build cmake .. make
  3. Run an example: Check out the examples directory for detailed use cases.

Documentation

API Documentation

Online Documentation: https://semidiscreteot.github.io/SemiDiscreteOT/ (Auto-generated with Doxygen)

Build Documentation Locally

doxygen Doxyfile
xdg-open docs/doxygen/html/index.html

How to Cite

If you use SemiDiscreteOT in your research, please cite the following publication:

@misc{khamlich2025efficientnumericalstrategiesentropyregularized,
title={Efficient Numerical Strategies for Entropy-Regularized Semi-Discrete Optimal Transport},
author={Moaad Khamlich and Francesco Romor and Gianluigi Rozza},
year={2025},
eprint={2507.23602},
archivePrefix={arXiv},
primaryClass={math.NA},
url={https://arxiv.org/abs/2507.23602},
}

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the GNU Lesser General Public License v3.0 (LGPL-3.0) - see the [LICENSE](LICENSE) file for details. For more information about LGPL-3.0, visit the GNU website.

Authors