FLSSS (7.5)

Mining Rigs for Specialized Subset Sum, Multi-Subset Sum, Multidimensional Subset Sum, Multidimensional Knapsack, Generalized Assignment Problems.


Specialized solvers for combinatorial optimization problems in the Subset Sum family. These solvers differ from the mainstream in the options of (i) subset size restriction, (ii) bounds on the subset elements, (iii) mining real-value sets with predefined subset sum errors, and (iv) finding one or more subsets in limited time. A novel algorithm for mining the one-dimensional Subset Sum induced algorithms for the multi-Subset Sum and the multidimensional Subset Sum. The latter is creatively decomposed and scheduled in a multi-threaded environment, and the framework offers strong applications to the multidimensional Knapsack and the Generalized Assignment problems. Package updates include (a) renewed implementation of the multi-Subset Sum, multidimensional Knapsack and Generalized Assignment solvers; (b) availability of bounding solution space in the multidimensional Subset Sum; (c) fundamental data structure and architectural changes for enhanced cache locality and better chance of SIMD vectorization; (d) an option of mapping real-domain problems to the integer domain with controlled precision loss, and those integers are further zipped in 64-bit buffers for SWAR and dimension reduction that often lead to substantial acceleration. See the package documentation for compressed integer arithmetic. Compilation with aggressive optimization, e.g. g++ '-Ofast', might speed up mining on some architectures. Package documentation () is outdated as the time of writing.

Maintainer: Charlie Wusuo Liu
Author(s): Charlie Wusuo Liu

License: GPL-3

Uses: Rcpp, RcppParallel

Released 11 months ago.