Balanced number partitioning

Balanced number partitioning is a variant of multiway number partitioning in which there are constraints on the number of items allocated to each set. The input to the problem is a set of n items of different sizes, and two integers m, k. The output is a partition of the items into m subsets, such that the number of items in each subset is at most k. Subject to this, it is required that the sums of sizes in the m subsets are as similar as possible.

An example application is identical-machines scheduling where each machine has a job-queue that can hold at most k jobs. The problem has applications also in manufacturing of VLSI chips, and in assigning tools to machines in flexible manufacturing systems.

In the standard three-field notation for optimal job scheduling problems, the problem of minimizing the largest sum is sometimes denoted by "P | # ≤ k | Cmax". The middle field "# ≤ k" denotes that the number of jobs in each machine should be at most k. This is in contrast to the unconstrained version, which is denoted by "".

Two-way balanced partitioning

A common special case called two-way balanced partitioning is when there should be two subsets (m = 2). The two subsets should contain floor(n/2) and ceiling(n/2) items. It is a variant of the partition problem. It is NP-hard to decide whether there exists a partition in which the sums in the two subsets are equal; see problem [SP12]. There are many algorithms that aim to find a balanced partition in which the sum is as nearly-equal as possible.

Balanced triplet partitioning

Another special case called 3-partitioning is when the number of items in each subset should be at most 3 (k = 3). Deciding whether there exists such a partition with equal sums is exactly the 3-partition problem, which is known to be strongly NP-hard. There are approximation algorithms that aim to find a partition in which the sum is as nearly-equal as possible.

Balanced partitioning with larger cardinalities

A more general case, called k-partitioning, is when the number of items in each subset should be at most k, where k can be any positive integer..

Relations between balanced and unconstrained problems

There are some general relations between approximations to the balanced partition problem and the standard (unconstrained) partition problem.

Different cardinality constraints

The cardinality constraints can be generalized by allowing a different constraint on each subset. This variant is introduced in the "open problems" section of, who call the ki-partitioning problem. He, Tan, Zhu and Yao present an algorithm called HARMONIC2 for maximizing the smallest sum with different cardinality constraints. They prove that its worst-case ratio is at least .

Categorized cardinality constraints

Another generalization of cardinality constraints is as follows. The input items are partitioned into k categories. For each category h, there is a capacity constraint kh. Each of the m subsets may contain at most kh items from category h. In other words: all m subsets should be independent set of a particular partition matroid. Two special cases of this problem have been studied.

Kernel partitioning

In the kernel balanced-partitioning problem, some m pre-specified items are kernels, and each of the m subsets must contain a single kernel (and an unlimited number of non-kernels). Here, there are two categories: the kernel category with capacity 1, and the non-kernel category with unlimited capacity.

One-per-category partitioning

In another variant of this problem, there are some k categories of size m, and each subset should contain exactly one item from each category. That is, kh = 1 for each category h.

See also

Matroid-constrained number partitioning is a generalization in which a fixed matroid is given as a parameter, and each of the m subsets should be an independent set or a base of this matroid.

References

  1. 1 2 Zhang, Jilian; Mouratidis, Kyriakos; Pang, HweeHwa (2011-06-28). "Heuristic Algorithms for Balanced Multi-Way Number Partitioning". Twenty-Second International Joint Conference on Artificial Intelligence.
  2. 1 2 3 Tsai, Li-Hui (1992-02-01). "Asymptotic Analysis of an Algorithm for Balanced Parallel Processor Scheduling". SIAM Journal on Computing. 21 (1): 59–64. doi:10.1137/0221007. ISSN 0097-5397.
  3. 1 2 3 Dell'Amico, Mauro; Martello, Silvano (2001). "Bounds for the cardinality constrained P∥Cmax problem". Journal of Scheduling. 4 (3): 123–138. doi:10.1002/jos.68. hdl:11380/15976. ISSN 1099-1425.
  4. ↑ Garey, Michael; Johnson, David (1979). Computers and Intractability; A Guide to the Theory of NP-Completeness. pp. 96–105. ISBN 978-0-7167-1045-5.
  5. ↑ Coffman, E. G.; Frederickson, G. N.; Lueker, G. S. (1984-05-01). "A Note on Expected Makespans for Largest-First Sequences of Independent Tasks on Two Processors". Mathematics of Operations Research. 9 (2): 260–266. doi:10.1287/moor.9.2.260. ISSN 0364-765X.
  6. ↑ Lueker, George S (1987-12-01). "A note on the average-case behavior of a simple differencing method for partitioning". Operations Research Letters. 6 (6): 285–287. doi:10.1016/0167-6377(87)90044-7. ISSN 0167-6377.
  7. ↑ Yakir, Benjamin (1996-02-01). "The Differencing Algorithm LDM for Partitioning: A Proof of a Conjecture of Karmarkar and Karp". Mathematics of Operations Research. 21 (1): 85–99. doi:10.1287/moor.21.1.85. ISSN 0364-765X.
  8. ↑ Mertens, Stephan (1999-03-11). "A complete anytime algorithm for balanced number partitioning". arXiv:cs/9903011.
  9. 1 2 Kellerer, Hans; Woeginger, Gerhard (1993-09-07). "A tight bound for 3-partitioning". Discrete Applied Mathematics. 45 (3): 249–259. doi:10.1016/0166-218X(93)90013-E. ISSN 0166-218X.
  10. 1 2 Chen, Shi Ping; He, Yong; Lin, Guohui (2002-03-01). "3-Partitioning Problems for Maximizing the Minimum Load". Journal of Combinatorial Optimization. 6 (1): 67–80. doi:10.1023/A:1013370208101. ISSN 1573-2886. S2CID 9053629.
  11. 1 2 Kellerer, Hans; Kotov, Vladimir (1999-02-01). "A 7/6–Approximation Algorithm For 3-Partitioning And Its Application To Multiprocessor Scheduling". INFOR: Information Systems and Operational Research. 37 (1): 48–56. doi:10.1080/03155986.1999.11732368. ISSN 0315-5986.
  12. 1 2 3 4 5 6 Babel, Luitpold; Kellerer, Hans; Kotov, Vladimir (1998-02-01). "The k-partitioning problem". Mathematical Methods of Operations Research. 47 (1): 59–82. doi:10.1007/BF01193837. ISSN 1432-5217. S2CID 5594197.
  13. ↑ Michiels, Wil; Korst, Jan; Aarts, Emile; van Leeuwen, Jan (2003), Performance Ratios for the Differencing Method Applied to the Balanced Number Partitioning Problem, Lecture Notes in Computer Science, vol. 2607, Berlin, Heidelberg: Springer Berlin Heidelberg, pp. 583–595, doi:10.1007/3-540-36494-3_51, ISBN 978-3-540-00623-7, retrieved 2021-10-15
  14. 1 2 3 Michiels, W.; Aarts, E.; Korst, J.; van Leeuwen, J.; Spieksma, F. C. R. (2012-02-01). "Computer-assisted proof of performance ratios for the Differencing Method". Discrete Optimization. 9 (1): 1–16. doi:10.1016/j.disopt.2011.10.001. ISSN 1572-5286.
  15. ↑ Hochbaum, Dorit S.; Shmoys, David B. (1987-01-01). "Using dual approximation algorithms for scheduling problems theoretical and practical results". Journal of the ACM. 34 (1): 144–162. doi:10.1145/7531.7535. ISSN 0004-5411. S2CID 9739129.
  16. 1 2 He, Yong; Tan, Zhiyi; Zhu, Jing; Yao, Enyu (2003-11-01). "κ-Partitioning problems for maximizing the minimum load". Computers & Mathematics with Applications. 46 (10): 1671–1681. doi:10.1016/S0898-1221(03)90201-X. ISSN 0898-1221.
  17. 1 2 Chen, S. -P.; He, Y.; Yao, E. -Y. (1996-09-01). "Three-partitioning containing kernels: Complexity and heuristic". Computing. 57 (3): 255–271. doi:10.1007/bf02247409. ISSN 0010-485X. S2CID 21935917.
  18. ↑ Wu, Biao; Yao, Enyue (2007-04-20). "m-Partitioning problems with partition matroid constraint". Theoretical Computer Science. 374 (1): 41–48. doi:10.1016/j.tcs.2006.11.016. ISSN 0304-3975.
  19. ↑ Wu, Biao; Yao, En-yu (2008-03-01). "Lower bounds and modified LPT algorithm for m-partitioning problems with partition matroid constraint". Applied Mathematics-A Journal of Chinese Universities. 23 (1): 1–8. doi:10.1007/s11766-008-0101-8. ISSN 1993-0445. S2CID 16565038.
  20. ↑ Li, Weidong; Li, Jianping (2013-04-06). "Approximation algorithms for $$m$$-partitioning problems with partition matroid constraint". Optimization Letters. 8 (3): 1093–1099. doi:10.1007/s11590-013-0637-2. ISSN 1862-4472. S2CID 3385030.
  21. ↑ Dell’Olmo, Paolo; Hansen, Pierre; Pallottino, Stefano; Storchi, Giovanni (2005-09-01). "On uniform k-partition problems". Discrete Applied Mathematics. 150 (1): 121–139. doi:10.1016/j.dam.2005.02.013. ISSN 0166-218X.