Optimal Multi-Way Number Partitioning

Ethan L. Schreiber, Richard E. Korf, Michael D. Moffitt

Journal of the ACM · 2018 · 68 citations · 53 references

DOIFull text

Open access

Concepts

TL;DR

The NP‑hard number‑partitioning problem seeks to divide a multiset of positive integers into k subsets so that the largest subset sum is minimized, a classic scheduling problem for identical machines, and is one of Karp’s 21 NP‑complete problems and the only one based on numbers among Garey and Johnson’s core set. This article explores algorithms for solving multi‑way number‑partitioning problems optimally. We examine prior work and introduce three algorithmic families—sequential number partitioning (branch‑and‑bound), binary‑search improved bin completion (bin‑packing), and cached iterative weakening (iterative weakening)—to address the problem. Experimental results show that for large random instances, SNP and CIW outperform previous state‑of‑the‑art methods by up to seven orders of magnitude in runtime, with each algorithm excelling depending on n and k.

Abstract

The NP-hard number-partitioning problem is to separate a multiset S of n positive integers into k subsets such that the largest sum of the integers assigned to any subset is minimized. The classic application is scheduling a set of n jobs with different runtimes on k identical machines such that the makespan, the elapsed time to complete the schedule, is minimized. The two-way number-partitioning decision problem is one of the original 21 problems that Richard Karp proved NP-complete. It is also one of Garey and Johnson’s six fundamental NP-complete problems and the only one based on numbers. This article explores algorithms for solving multi-way number-partitioning problems optimally. We explore previous algorithms as well as our own algorithms, which fall into three categories: sequential number partitioning (SNP), a branch-and-bound algorithm; binary-search improved bin completion (BSIBC), a bin-packing algorithm; and cached iterative weakening (CIW), an iterative weakening algorithm. We show experimentally that, for large random numbers, SNP and CIW are state-of-the-art algorithms depending on the values of n and k . Both algorithms outperform the previous state of the art by up to seven orders of magnitude in terms of runtime.

References

53