The R Journal: article published in 2019, volume 11:1

Optimization Routines for Enforcing One-to-One Matches in Record Linkage Problems PDF download
Diego Moretti, Luca Valentino and Tiziana Tuoto , The R Journal (2019) 11:1, pages 185-197.

Abstract Record linkage aims at quickly and accurately identifying if two records represent the same real world entity. In many applications, we are interested in restricting the linkage results to "1 to 1" links, that is a single record does not appear more than once in the output. This can be dealt with the transport algorithm. The optimization problem, however, grows quadratically in the size of the input, quickly becoming untreatable for cases with a few thousand records. This paper compares different solutions, provided by some R packages for linear programming solvers. The comparison is done in terms of memory usage and execution time. The aim is to overcome the current implementation in the toolkit RELAIS, specifically developed for record linkage problems. The results highlight improvements beyond expectations. In fact the tested solutions allow successfully executing the "1 to 1" reduction for large size datasets up to the largest sample surveys at National Statistical Institutes.

Received: 2018-10-26; online 2019-07-30, supplementary material, (180 B)
CRAN packages: lpSolve, Rglpk, ROI.plugin.clp, intpoint, slam
CRAN Task Views implied by cited CRAN packages: Optimization

CC BY 4.0
This article and supplementary materials are licensed under a Creative Commons Attribution 4.0 International license.

  author = {Diego Moretti and Luca Valentino and Tiziana Tuoto},
  title = {{Optimization Routines for Enforcing One-to-One Matches in
          Record Linkage Problems}},
  year = {2019},
  journal = {{The R Journal}},
  doi = {10.32614/RJ-2019-008},
  url = {},
  pages = {185--197},
  volume = {11},
  number = {1}