module

assignment

module unitrack.assignment

Linear-assignment problem (LAP) solvers over a cost matrix.

For new code prefer :func:`auto_assignment` / :class:`AutoLAP`. Both route to the empirically-fastest backend for the given input; the CPU LAPJV path currently beats every CUDA solver across the benchmarked size range (see ``assets/benchmarks/`` for the data).

Members

module

  • associateAssociate — bridges a CostExpression to a hard assignment.
  • clip_associateClipAssociator abstract base — extension point for clip-global solvers.
  • lapCUDA LAP solvers backed by :mod:`torchmatch.assignment`.
  • lapjvCPU LAP solvers backed by :mod:`torchmatch.assignment`.

type

  • AssignmentBase class for linear-assignment-problem solvers.
  • AssociateMaterialise a :class:`~unitrack.data.CostExpression` and run an :class:`Assignment`.
  • AuctionBertsekas auction solver for the linear assignment problem.
  • AutoLAP:class:`Assignment` wrapper around the auto-dispatched LAP solver.
  • ClipAssociatorAbstract base for clip-global matchers.
  • GreedyGreedy nearest-neighbour linear-assignment solver.
  • HungarianHungarian-algorithm LAP solver wrapping the SciPy implementation.
  • JonkerJonker-Volgenant LAP solver backed by the rectangular LAPJV CPU backend.
  • LAPJVS:class:`Assignment` wrapper for the square Jonker-Volgenant solver.
  • LAPJVX:class:`Assignment` wrapper for the rectangular Jonker-Volgenant solver.
  • PreferBackend preference for :func:`auto_assignment` and :class:`AutoLAP`.
  • SoftAssignmentDifferentiable linear-assignment solver using Sinkhorn iterations.

function

Source: unitrack/assignment/__init__.py:1