Skip to content

couplr

Optimal Pairing and Matching via Linear Assignment

v1.1.0 · Mar 3, 2026 · MIT + file LICENSE

Description

Solves optimal pairing and matching problems using linear assignment algorithms. Provides implementations of the Hungarian method (Kuhn 1955) <doi:10.1002/nav.3800020109>, Jonker-Volgenant shortest path algorithm (Jonker and Volgenant 1987) <doi:10.1007/BF02278710>, Auction algorithm (Bertsekas 1988) <doi:10.1007/BF02186476>, cost-scaling (Goldberg and Kennedy 1995) <doi:10.1007/BF01585996>, scaling algorithms (Gabow and Tarjan 1989) <doi:10.1137/0218069>, push-relabel (Goldberg and Tarjan 1988) <doi:10.1145/48014.61051>, and Sinkhorn entropy-regularized transport (Cuturi 2013) <doi:10.48550/arxiv.1306.0895>. Designed for matching plots, sites, samples, or any pairwise optimization problem. Supports rectangular matrices, forbidden assignments, data frame inputs, batch solving, k-best solutions, and pixel-level image morphing for visualization. Includes automatic preprocessing with variable health checks, multiple scaling methods (standardized, range, robust), greedy matching algorithms, and comprehensive balance diagnostics for assessing match quality using standardized differences and distribution comparisons.

Downloads

288

Last 30 days

10929th

541

Last 90 days

541

Last year

Trend: +13.8% (30d vs prior 30d)

CRAN Check Status

1 ERROR
2 NOTE
11 OK
Show all 14 flavors
Flavor Status
r-devel-linux-x86_64-debian-clang OK
r-devel-linux-x86_64-debian-gcc OK
r-devel-linux-x86_64-fedora-clang OK
r-devel-linux-x86_64-fedora-gcc OK
r-devel-macos-arm64 OK
r-devel-windows-x86_64 OK
r-oldrel-macos-arm64 NOTE
r-oldrel-macos-x86_64 NOTE
r-oldrel-windows-x86_64 ERROR
r-patched-linux-x86_64 OK
r-release-linux-x86_64 OK
r-release-macos-arm64 OK
r-release-macos-x86_64 OK
r-release-windows-x86_64 OK
Check details (14 non-OK)
OK r-devel-linux-x86_64-debian-clang

*


            
OK r-devel-linux-x86_64-debian-gcc

*


            
OK r-devel-linux-x86_64-fedora-clang

*


            
OK r-devel-linux-x86_64-fedora-gcc

*


            
OK r-devel-macos-arm64

*


            
OK r-devel-windows-x86_64

*


            
NOTE r-oldrel-macos-arm64

installed package size

  installed size is 13.3Mb
  sub-directories of 1Mb or more:
    doc    1.4Mb
    libs  10.6Mb
NOTE r-oldrel-macos-x86_64

installed package size

  installed size is 14.2Mb
  sub-directories of 1Mb or more:
    doc    1.4Mb
    libs  11.5Mb
ERROR r-oldrel-windows-x86_64

re-building of vignette outputs

Error(s) in re-building vignettes:
--- re-building 'algorithms.Rmd' using rmarkdown
--- finished re-building 'algorithms.Rmd'

--- re-building 'comparison.Rmd' using rmarkdown
--- finished re-building 'comparison.Rmd'

--- re-building 'getting-started.Rmd' using rmarkdown
--- finished re-building 'getting-started.Rmd'

--- re-building 'matching-workflows.Rmd' using rmarkdown
--- finished re-building 'matching-workflows.Rmd'

--- re-building 'pixel-morphing.Rmd' using rmarkdown
File images/ImageA_80.png not found in resource path
Error: processing vignette 'pixel-morphing.Rmd' failed with diagnostics:
pandoc document conversion failed with error 99
--- failed re-building 'pixel-morphing.Rmd'

--- re-building 'troubleshooting.Rmd' using rmarkdown
--- finished re-building 'troubleshooting.Rmd'

SUMMARY: processing the following file failed:
  'pixel-morphing.Rmd'

Error: Vignette re-building failed.
Execution halted
OK r-patched-linux-x86_64

*


            
OK r-release-linux-x86_64

*


            
OK r-release-macos-arm64

*


            
OK r-release-macos-x86_64

*


            
OK r-release-windows-x86_64

*


            

Check History

ERROR 11 OK · 2 NOTE · 0 WARNING · 1 ERROR · 0 FAILURE Mar 9, 2026
NOTE r-oldrel-macos-arm64

installed package size

  installed size is 13.3Mb
  sub-directories of 1Mb or more:
    doc    1.4Mb
    libs  10.6Mb
NOTE r-oldrel-macos-x86_64

installed package size

  installed size is 14.2Mb
  sub-directories of 1Mb or more:
    doc    1.4Mb
    libs  11.5Mb
ERROR r-oldrel-windows-x86_64

re-building of vignette outputs

Error(s) in re-building vignettes:
--- re-building 'algorithms.Rmd' using rmarkdown
--- finished re-building 'algorithms.Rmd'

--- re-building 'comparison.Rmd' using rmarkdown
--- finished re-building 'comparison.Rmd'

--- re-building 'getting-started.Rmd' using rmarkdown
--- finished re-building 'getting-started.Rmd'

--- re-building 'matching-workflows.Rmd' using rmarkdown
--- finished re-building 'matching-workflows.Rmd'

--- re-building 'pixel-morphing.Rmd' using rmarkdown
File images/ImageA

Dependency Network

Dependencies Reverse dependencies Rcpp tibble dplyr rlang purrr couplr

Version History

new 1.1.0 Mar 9, 2026