Skip to contents

T4transport 0.2.0.9002 (development)

  • Exact network-simplex computations now normalize active costs and validate rescaled duals in normalized units, preventing coordinate units from causing undetected large relative objective errors.
  • Histogram computations discard inherited solver metadata when constructing a new display. Shared histogram grids are checked without an origin-dependent tolerance. Density quadrature scales spacings before adding them.
  • Corrected scalar covariance handling in gaussmedpd() and retained successful PW initializations when another initial solve fails, with separate diagnostics for every attempted initialization.
  • Aligned Sinkhorn help with the implemented entropy convention and exposed overflow of the full regularized objective as a numerical failure.
  • Strengthened quantile-summary representation consistency and qualified stopping at degenerate coincident free supports. Added analytical, scaling, serialization, and failure-path regression coverage for the audit findings.
  • The frozen 0.2.0.9001 archive and its manuscript evidence remain historical artifacts; this development snapshot has a separate identity.

T4transport 0.2.0.9001 (development)

  • Added ot_inspect() and standard report methods for available mathematical, numerical, termination and approximation metadata across OT families. Family-native output shapes and numerical defaults are preserved.
  • Added ot_gaussian_summary() for parameter-object barycenters and medians, dispatching to existing Gaussian algorithms with explicit control mapping.
  • Extended swdist(), pwdist(), and pwbary() to accept existing finite measures/collections. Conflicting separate masses are rejected.
  • Added toolbox tutorials and reproducible geometry, interpolation, and family-reference studies; retained the distribution-summary application.
  • Reframed the guide and manuscript around a computational OT toolbox. Previous source archives, numerical records, and the manuscript are preserved.

T4transport 0.2.0.9000 (development)

Common workflows and numerical results

  • Added ot_measure(), ot_collection(), as_ot_measure(), ot_image(), and ot_density() with explicit representation metadata and separate within-measure masses and outer weights.
  • Added ot_distance(), ot_cost(), and ot_summary() with explicit cost, regularization, and feasible-set contracts. Fit/comparison objects expose solver status, stopping reason, objective components, and diagnostics.
  • Added exact finite one-dimensional transport and common-refinement barycenters, plus collision-aware W2 medians. Positive mass that cannot be represented safely causes an explicit numerical error.
  • Added fixed-support mass optimization and free-support fixed-mass relocation with checked objectives, retained initialization, and recorded multiple starts. Numerical stopping rules do not generally certify global optimality.
  • Added Gaussian parameter objects and exact Gaussian W2 comparison. Corrected Gaussian median collisions and the multivariate IRLS mean update. Univariate variance zero is supported; multivariate covariance inputs must be strictly positive definite, with no automatic ridge or PSD projection.
  • Added executable workflow and migration tutorials, contract tests, and separately recorded application/benchmark replication scripts.

Changes requiring review of existing analyses

  • Invalid masses, nonfinite inputs, dimension mismatches, unsupported controls, and misspelled arguments are rejected instead of silently repaired or ignored. Exact and entropic solver iteration limits and inner failures are exposed.
  • ECDF summaries now return callable weighted CDFs (t4transport_cdf, also a stepfun) with exact finite masses and fit attributes. They are not fabricated equally weighted samples and do not inherit ecdf. Use as_ot_measure() for support/mass extraction and quantile(..., type = 1) for finite quantiles.
  • Histogram methods interpret normalized counts as masses at bin midpoints, including for unequal-width bins. Estimated counts and mass are probabilities; density = mass / diff(breaks). No sample-size-dependent rounding is performed. Unrestricted summaries/interpolations preserve the unprojected measure separately from the histogram display. L is validated but no longer controls the finite quantile calculation.
  • fbary14C(), fbary15B(), their distance variants, and corresponding histogram/image wrappers now use objective-checked mirror descent with log-domain Sinkhorn gradients. Historical names remain compatibility entry points; they no longer identify the original accelerated or Bregman-projection iterations. The target is powered transport cost plus lambda * sum(plan * (log(plan) - 1)). Initial masses must be strictly positive; wrappers exposing nthread accept only nthread = 1.
  • imagemed() now uses the shared fixed-grid mass solver for the sum of W2 distances. The old delta and bary.* controls are rejected. This mass-space median problem is nonconvex; numerical status and collision limits are explicit.
  • imageinterp() now defaults to eps = 0. A positive floor changes the inputs and its mass perturbation is reported. The exact unprojected displacement measure and a nearest-grid projection error bound accompany the image display.
  • Image coordinates remain explicit and distinct: legacy image methods use a [0,1] endpoint grid, ot_image() uses column-as-x pixel centers, and img2measure() preserves base image() row-as-x pixel coordinates. Mixing these without a deliberate coordinate conversion changes the transport problem.
  • Gaussian summary lists preserve mean and var and add objective/history/status. General SPD median iteration stopping does not imply global optimality; unresolved exact collisions are failures rather than automatic convergence.

T4transport 0.1.9

  • The rbaryGD() function allows arbitrary step-size selection for \(\alpha \in (0,1]\) provided by a user. Default is \(\alpha=1\).

T4transport 0.1.8

CRAN release: 2026-01-11

  • Changed hdist() to histdist() for modality-specific computation.
  • imagebary() added for unregularized Wasserstein barycenter of images.
  • imagedist() added for the Wasserstein distance between two images.
  • imageinterp() added for Wasserstein interpolation between two images.
  • imagemed() added for unregularized Wasserstein median of images.

T4transport 0.1.7

CRAN release: 2025-12-22

  • Removed dependence on CVXR package.

T4transport 0.1.6

  • API references restructured.
  • Added a number of functions for histograms, including distance, barycenter, interpolation, and median.
  • Added img2measure() to extract a discrete measure from a gray-scale image matrix.
  • New family of routines for Gromov-Wasserstein geometry, gwdist() and gwbary(), added.

T4transport 0.1.5

CRAN release: 2025-11-13

  • Replaced lpSolve package’s EMD solver with Nicolas Bonneel’s highly-optimized C library.
  • Added functions for Procrustes-Wasserstein geometry: pwdist() and pwbary().

T4transport 0.1.4

  • rbarygd() for a Riemannian gradient descent to compute the free-support barycenter is added.

T4transport 0.1.3

CRAN release: 2025-05-29

  • Changed the structure of the package.
  • Applied the log-sum-exp trick for numerical stability to the entropic regularization solver.
  • rbary23L() added for simple free-support Wasserstein barycenter computation.
  • Two ad hoc median routines for images and histograms are removed.

T4transport 0.1.2

CRAN release: 2023-04-11

T4transport 0.1.1

CRAN release: 2022-09-03

  • Support for special types of data. See the reference for more details.

T4transport 0.1.0

CRAN release: 2020-10-09

  • Added a NEWS.md file to track changes to the package.
  • Initial release.