FLSSS: 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) restricting subset size, (ii) bounding 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 multi-threaded framework for the latter offers exact algorithms to the multidimensional Knapsack and the Generalized Assignment problems. Historical 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 user-controlled precision loss, and those integers are further zipped non-uniformly in 64-bit buffers. Arithmetic on compressed integers is done by bit-manipulation and the design has virtually zero speed lag relative to normal integer arithmetic. Reduction in dimensionality from the compression may yield substantial acceleration; (e) distributed computing infrastructure for multidimensional subset sum. Compilation with g++ '-Ofast' is recommended. See package vignette (<arXiv:1612.04484v3>) for details. Functions prefixed with 'aux' (auxiliary) are or will be implementations of existing foundational or cutting-edge algorithms for solving optimization problems of interest.
Please use the canonical form
to link to this page.