Skip to main content
Log in

New mixed-integer linear programming model for solving the multidimensional multi-way number partitioning problem

  • Published:
Computational and Applied Mathematics Aims and scope Submit manuscript

Abstract

The multidimensional multi-way number partitioning problem considers a set of n vectors of a fixed dimension \(m\ge 2\) as an input. The goal is to find partitioning of the set into \(k \ge 2\) subsets such that sums per each coordinate in each subset are as nearly equal as possible. The problem has applications in key encryption and multiprocessor scheduling. Prior to this paper, there has been only one mixed-integer model proposed in case of general \(k \ge 2\). In this paper, we propose a new mixed-integer programming model for the general case. The obtained results indicate that our model significantly outperforms the model from literature for larger values of k.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8

Similar content being viewed by others

References

  • Coffman EG, Lueker GS (1991) Probabilistic analysis of packing and partitioning algorithms. Wiley, Amsterdam

    MATH  Google Scholar 

  • Faria AF, de Souza SR, de Sá EM (2020) A mixed-integer linear programming model to solve the multidimensional multi-way number partitioning problem. Comput Oper Res 127:105133

  • Fuksz L, Pop P, Zelina I (2013) Heuristic algorithms for solving the bi-dimensional two-way number partitioning problem. Stud Univ Babes-Bolyai Ser Inf 58(3):17–28

    MathSciNet  Google Scholar 

  • Hacibeyoglu M, Alaykiran K, Acilar AM, Tongur V, Ulker E (2018) A comparative analysis of metaheuristic approaches for multidimensional two-way number partitioning problem. Arab J Sci Eng 43(12):7499–7520

    Article  Google Scholar 

  • Hacibeyoglu M, Tongur V, Alaykiran K (2014) Solving the bi-dimensional two-way number partitioning problem with heuristic algorithms. In: 2014 IEEE 8th international conference on application of information and communication technologies (AICT), pp 1–5, IEEE

  • Hayes B (2002) Computing science: the easiest hard problem. Am Sci 90(2):113–117

    Article  Google Scholar 

  • Karp RM (1975) On the computational complexity of combinatorial problems. Networks 5(1):45–68

    Article  Google Scholar 

  • Kojić J (2010) Integer linear programming model for multidimensional two-way number partitioning problem. Comput Math Appl 60(8):2302–2308

    Article  MathSciNet  Google Scholar 

  • Korf RE (2009) Multi-way number partitioning. IJCAI 9:538–543

    Google Scholar 

  • Korf, RE, Schreiber, EL, Moffitt MD (2014) Optimal sequential multi-way number partitioning. In: ISAIM

  • Kratica J, Kojić J, Savić A (2014) Two metaheuristic approaches for solving multidimensional two-way number partitioning problem. Comput Oper Res 46:59–68

    Article  MathSciNet  Google Scholar 

  • Ercegovac DM, Potkonjak M (1999) Low-power behavioral synthesis optimization using multiple precision arithmetic. In: Proceedings of the 36th annual ACM/IEEE design automation conference, pp 568–573. Association for Computing Machinery

  • Mertens S (2006) The easiest hard problem: number partitioning. Comput Complex Stat Phys 125(2):125–139

    MathSciNet  MATH  Google Scholar 

  • Moffitt MD (2013) Search strategies for optimal multi-way number partitioning. In: 23rd International Joint Conference on Artificial Intelligence

  • Pohlert T (2014) The pairwise multiple comparison of mean ranks package (pmcmr). R package 27(2020):10

    Google Scholar 

  • Pop PC, Matei O (2013) A genetic algorithm approach for the multidimensional two-way number partitioning problem. In: International conference on learning and intelligent optimization, pp 81–86. Springer

  • Pop PC, Matei O (2013) A memetic algorithm approach for solving the multidimensional multi-way number partitioning problem. Appl Math Model 37(22):9191–9202

    Article  MathSciNet  Google Scholar 

  • Merkle R, Hellman M (1978) Hiding information and signatures in trapdoor knapsacks. IEEE Trans Inf Theory 24(5):525–530

    Article  Google Scholar 

  • Rodriguez FJ, Glover F, García-Martínez C, Martí R, Lozano M (2017) Grasp with exterior path-relinking and restricted local search for the multidimensional two-way number partitioning problem. Comput Oper Res 78:243–254

    Article  MathSciNet  Google Scholar 

  • Santucci V, Baioletti M, Di Bari G, Milani A (2019) A binary algebraic differential evolution for the multidimensional two-way number partitioning problem. In: European conference on evolutionary computation in combinatorial optimization (Part of EvoStar), pp 17–32. Springer

Download references

Acknowledgements

This research is partially supported by Ministry for Scientific and Technological Development, Higher Education and Information Society, Government of Republic of Srpska, B&H under the Project “Development of artificial intelligence methods for solving computer biology problems”. The second author was funded by the Doctoral Program Vienna Graduate School on Computational Optimization (VGSCO), Austrian Science Foundation Project No. W1260-N35.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Marko Djukanovic.

Additional information

Communicated by Joerg Fliege.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendices

Appendix A: The complete results

In this section, we provide complete results obtained by testing following MILP models:

  • the model Kojic; the model is limited to the instances with \( k = 2\);

  • the model FdSdS;

  • New model.

Results are organized in Tables 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 and 25 as follows:

  • \(k=2\)

    • Table 5: results for \(n=30,\ 40,\ 50\);

    • Table 6: results for \(n=100,\ 300,\ 500\);

    • Table 7: results for \(n=200, 400\).

  • \(k=3\)

    • Table 8: results for \(n=30,\ 40,\ 50\);

    • Table 9: results for \(n=100,\ 300,\ 500\);

    • Table 10: results for \(n=200, 400\).

  • \(k=4\)

    • Table 11: results for \(n=30,\ 40,\ 50\);

    • Table 12: results for \(n=100,\ 300,\ 500\);

    • Table 13: results for \(n=200, 400\).

  • \(k=5\)

    • Table 14: results for \(n=30,\ 40,\ 50\);

    • Table 15: results for \(n=100,\ 300,\ 500\);

    • Table 16: results for \(n=200, 400\).

  • \(k=10\)

    • Table 17: results for \(n=30,\ 40,\ 50\);

    • Table 18: results for \(n=100,\ 300,\ 500\);

    • Table 19: results for \(n=200, 400\).

  • \(k=20\)

    • Table 20: results for \(n=30,\ 40,\ 50\);

    • Table 21: results for \(n=100,\ 300,\ 500\);

    • Table 22: results for \(n=200, 400\).

  • \(k=30\)

    • Table 23: results for \(n=30,\ 40,\ 50\);

    • Table 24: results for \(n=100,\ 300,\ 500\);

    • Table 25: results for \(n=200, 400\).

Each of the tables (except Tables 5, 6, 7) is organized as follows. The first three columns represent the instance characteristics which is followed by two (or three in cases of Tables 5, 6, 7) blocks. Each block reports the results of the compared models: the model (Kojic in case of Tables 5, 6, 7), the model Faria, and New model, respectively. Each of these blocks consists of 3 columns which report objective value (r), runtime (t[s]) in seconds and obtained lower bound (LB). The minimum objective value obtained for the observed two algorithms in Tables 8-25 (or three algorithms in case of Tables 5, 6 and 7) is highlighted in bold font, and, if this value is of optimal quality, it is additionally underlined.

Table 5 Results for \(n=30,\ 40,\ 50\) and \(k=2\)
Table 6 Results for \(n=100,\ 300,\ 500\) and \(k=2\)
Table 7 Results for \(n=200,\ 400\) and \(k=2\)
Table 8 Results for \(n=30,\ 40,\ 50\) and \(k=3\)
Table 9 Results for \(n=100,\ 300,\ 500\) and \(k=3\)
Table 10 Results for \(n=200,\ 400\) and \(k=3\)
Table 11 Results for \(n=30,\ 40,\ 50\) and \(k=4\)
Table 12 Results for \(n=100,\ 300,\ 500\) and \(k=4\)
Table 13 Results for \(n=200,\ 400\) and \(k=4\)
Table 14 Results for \(n=30,\ 40,\ 50\) and \(k=5\)
Table 15 Results for \(n=100,\ 300,\ 500\) and \(k=5\)
Table 16 Results for \(n=200,\ 400\) and \(k=5\)
Table 17 Results for \(n=30,\ 40,\ 50\) and \(k=10\)
Table 18 Results for \(n=100,\ 300,\ 500\) and \(k=10\)
Table 19 Results for \(n=200,\ 400\) and \(k=10\)
Table 20 Results for \(n=30,\ 40,\ 50\) and \(k=20\)
Table 21 Results for \(n=100,\ 300,\ 500\) and \(k=20\)
Table 22 Results for \(n=200,\ 400\) and \(k=20\)
Table 23 Results for \(n=30,\ 40,\ 50\) and \(k=30\)
Table 24 Results for \(n=100,\ 300,\ 500\) and \(k=30\)
Table 25 Results for \(n=200,\ 400\) and \(k=30\)

Appendix B: Proof

In this appendix, we show that for a given set of vectors \(S\subseteq \left( {\mathbb {R}}^{+}\right) ^{m}\), and arbitrary integer \(k\in \{2,\dotsc , |S|\}\), the objective function r of the MDMWNPP does not reach a minimum value for the k–decomposition which contains an empty set. More precisely, we prove that for each such \(k-\)decomposition of set S there is a corresponding \(k-\) partition of set S with smaller value of the objective function r.

In accordance with the notation introduced in the definition of the model NEW, we use the following abbreviations: if \({\mathcal {S}}=\{S_j \mid j\in \{1,\dotsc , k\}\}\) is a \(k-\)decomposition of set S, then

$$\begin{aligned}&y_l\left( {\mathcal {S}}\right) = \max _{ j \in \{1,\ldots , k\}} \left( \sum _{v_i \in S_j} v_{il} \right) ,\forall l\in \{1,\dotsc ,m\},\\&z_l\left( {\mathcal {S}}\right) = \min _{ j \in \{1,\ldots , k\}} \left( \sum _{v_i \in S_j} v_{il} \right) ,\forall l\in \{1,\dotsc ,m\},\\&r\left( {\mathcal {S}}\right) =\max _{l\in \{1,\dotsc ,m\}}\left\{ y_l\left( {\mathcal {S}}\right) -z_l\left( {\mathcal {S}}\right) \right\} . \end{aligned}$$

Lemma 1

Let \(m,n\geqslant 2\) be a fixed integers, and \(S=\{v_i\in \left( {\mathbb {R}}^{+}\right) ^m \mid i\in \{1,2,\dotsc , n\}\}\) is a given set of vectors. For an arbitrary integer \(k\in \{2,\dotsc ,n\}\) and any \(k-\)decomposition \({\mathcal {S}}\) of set S which contains exactly one empty set exists k–partition \(\mathcal {S^{'}}\) of set S such that \(r(\mathcal {S^{'}})<r\left( {\mathcal {S}}\right) \).

Proof

Let \(k\in \{2,\dotsc ,n\}\) be an arbitrary integer and let \({\mathcal {S}}\) be an arbitrary k–decomposition of set S which contains exactly one empty set. Then \({\mathcal {S}}=\{S_1,\dotsc ,S_{k-1}\}\cup \{\emptyset \}\), for some \((k-1)\)–partition \(\{S_1,\dotsc ,S_{k-1}\}\) of set S. If we adopt convention \(\displaystyle \sum _{v_i\in \emptyset } v_{il}=0,\forall l\in \{1,\dotsc ,m\}\), then it is obvious fact that \(z_l\left( {\mathcal {S}}\right) =0\), \(\forall l\in \{1,\dotsc ,m\}\), which implies \(r\left( {\mathcal {S}}\right) =\displaystyle \max _{l\in \{1,\dotsc ,m\}} \left\{ y_l\left( {\mathcal {S}}\right) \right\} \). Since \(k\leqslant n\), we can choose index \(j_0\in \{1,\dotsc ,k-1\}\) such that set \(S_{j_0}\) contains at least two vectors. If we pick a vector \(v_{i_0}\in S_{j_0}\) for some \(i_0\in \{1,2,\dotsc ,n\}\), then we can define non-empty sets \(S_{j_0}^{'}:=\left\{ v_{i_0}\right\} \) and \(S_{j_0}^{''}:=S_{j_0}\setminus \left\{ v_{i_0}\right\} \). Using this sets, we can construct a k–partition

$$\begin{aligned} {\mathcal {S}}^{'}:=\left\{ S_j \mid j\in \{1,\dotsc ,k-1\}\setminus \{j_0\}\right\} \cup \left\{ S_{j_0}^{'},S_{j_0}^{''}\right\} \end{aligned}$$

of set S. To complete the proof, it is sufficient to show that partition \({\mathcal {S}}^{'}\) has the required property. Every member of the family \({\mathcal {S}}^{'}\) contains at least one vector and all coordinates of all vectors are positive real numbers, which implies that \(z_l\left( \mathcal {S^{'}}\right) >0\) holds for any \(l\in \{1,\dotsc ,m\}\). From this observation and definition of \(y_l\left( \mathcal {S^{'}}\right) \), we get

$$\begin{aligned} r\left( \mathcal {S^{'}}\right)&=\max _{l\in \{1,\dotsc ,m\}}\left\{ y_l\left( \mathcal {S^{'}}\right) -z_l\left( \mathcal {S^{'}}\right) \right\} < \max _{l\in \{1,\dotsc ,m\}}\left\{ y_l\left( \mathcal {S^{'}}\right) \right\} \\&=\max _{l\in \{1,\dotsc ,m\}} \left\{ \max _{j\in \{1,\dotsc ,k-1\}\setminus \{j_0\}}\left\{ \sum _{v_i\in S_j} v_{il}\right\} ,\sum _{v_i\in S_{j_0}^{'}} v_{il}, \sum _{v_i\in S_{j_0}^{''}} v_{il} \right\} \\&=\max _{l\in \{1,\dotsc ,m\}} \left\{ \max _{j\in \{1,\dotsc ,k-1\}\setminus \{j_0\}}\left\{ \sum _{v_i\in S_j} v_{il}\right\} , v_{i_0l}, \left( \sum _{v_i\in S_{j_0}} v_{il}\right) -v_{i_0l} \right\} \end{aligned}$$

For each index \(l\in \{1,\dotsc ,m \}\), we get the following inequalities

$$\begin{aligned} \max _{j\in \{1,\dotsc ,k-1\}\setminus \{j_0\}}\left\{ \sum _{v_i\in S_j} v_{il}\right\}&\leqslant \max _{j\in \{1,\dotsc ,k-1\}}\left\{ \sum _{v_i\in S_j} v_{il}\right\} =y_l\left( {\mathcal {S}}\right) ,\\ v_{i_0l}&\leqslant \sum _{v_i\in S_{j_0}} v_{il}\leqslant \max _{j\in \{1,\dotsc ,k-1\}}\left\{ \sum _{v_i\in S_j} v_{il}\right\} =y_l\left( {\mathcal {S}}\right) ,\\ \left( \sum _{v_i\in S_{j_0}} v_{il}\right) -v_{i_0l}&<\sum _{v_i\in S_{j_0}} v_{il}\leqslant \max _{j\in \{1,\dotsc ,k-1\}}\left\{ \sum _{v_i\in S_j} v_{il}\right\} =y_l\left( {\mathcal {S}}\right) . \end{aligned}$$

This means that inequality \(y_l({\mathcal {S}}^{'})\leqslant y_l\left( {\mathcal {S}}\right) \) holds for each index \(l\in \{1,\dotsc ,m\}\). From this fact and the previous observations, we conclude \(r(\mathcal {S^{'}})<r\left( {\mathcal {S}}\right) \). \(\square \)

Now, we generalize the claim from the previous lemma to the case of k-decompositions of set S with at least one empty set.

Theorem 1

Let \(m,n\geqslant 2\) be a fixed integers, and \(S=\{v_i\in \left( {\mathbb {R}}^{+}\right) ^m \mid i\in \{1,\dotsc , n\}\}\) is a given set of vectors. For an arbitrary integer \(k\in \{2,\dotsc ,n\}\) and any k–decomposition \({\mathcal {S}}\) of set S which contains at least one empty sets exists k–partition \(\mathcal {S^{'}}\) of set S such that \(r(\mathcal {S^{'}})<r\left( {\mathcal {S}}\right) \).

Proof

Let \(k\in \{2,\dotsc ,n\}\) be an arbitrary integer and let \({\mathcal {S}}\) be an arbitrary k–decomposition of set S which contains at least one empty sets. If the family \({\mathcal {S}}\) contains exactly \(q\in \{1,\dotsc ,k-1\}\) empty sets, then exists a \((k-q)\)–partition \({\mathcal {S}}_0\) of set S such that \({\mathcal {S}}={\mathcal {S}}_0\cup \{\underbrace{\emptyset ,\dotsc ,\emptyset }_{q}\}\). The family \({\mathcal {S}}_0\cup \{\emptyset \}\) is a \((k-q+1)\)-decomposition of set S and, since \(k-q<k\leqslant n\), we can use the previous lema to construct a \((k-q+1)\)–partition \({\mathcal {S}}_1\) of set S with property \(r({\mathcal {S}}_1)<r({\mathcal {S}}_0\cup \{\emptyset \})\). If \(k-q+1<k\) (i.e., if \(q>1\)), then, from the construction of the family \({\mathcal {S}}_1\), follows that the family \({\mathcal {S}}_1\cup \{\emptyset \}\) is a \((k-q+2)\)-decomposition of set S with property \(r({\mathcal {S}}_1\cup \{\emptyset \})\leqslant r({\mathcal {S}}_0\cup \{\emptyset ,\emptyset \})\), and, since \(k-q+1<n\), we can again apply the previous lemma to construct a \((k-q+2)\)-partition \({\mathcal {S}}_2\) of set S with property \(r({\mathcal {S}}_2)<r({\mathcal {S}}_1\cup \{\emptyset \})\). In this way, by successive application of the previous lemma, we construct a finite sequence \({\mathcal {S}}_1,{\mathcal {S}}_2,\dotsc ,{\mathcal {S}}_{q}\) of families with the following properties:

$$\begin{aligned} (i)\,\,&\text{ For } p\in \{1,\dotsc , q\}, \text{ the } \text{ family } {\mathcal {S}}_p \text{ is } \text{ a } (k-q+p)-\text{ partition } \text{ of } \text{ set } S.\\ (ii)\,\,&\text{ For } p\in \{1,\dotsc , q\},\,\, r({\mathcal {S}}_p)<r({\mathcal {S}}_{p-1}\cup \{\emptyset \}).\\ (iii)\,\,&\text{ For } p\in \{1,\dotsc , q-1\},\,\, r({\mathcal {S}}_p\cup \{\emptyset \})\leqslant r({\mathcal {S}}_{p-1}\cup \{\emptyset ,\emptyset \}). \end{aligned}$$

To complete the proof, it is sufficient to show that family \({\mathcal {S}}^{'}:={\mathcal {S}}_{q}\) has the required property. Indeed, the condition (i) implies that \({\mathcal {S}}^{'}\) is a k-partition of set S, while applying conditions (ii) and (iii), we conclude

$$\begin{aligned} r({\mathcal {S}}^{'})<r({\mathcal {S}}_{q-1}\cup \{\emptyset \})\leqslant r({\mathcal {S}}_{q-2}\cup \{\emptyset ,\emptyset \}) \leqslant \dotsc \leqslant r({\mathcal {S}}_0\cup \{\underbrace{\emptyset ,\dotsc ,\emptyset }_{q}\})=r({\mathcal {S}}). \end{aligned}$$

\(\square \)

The consequence of the previous theorem is that from a standpoint of minimum of objective function of the MDMWNPP it makes no difference in the definition of this problem if we require that a family \(\{S_j \mid j\in \{1,2,\dotsc ,k\}\}\) is a k–decomposition or a k–partition of set S, as long as the condition \(S\subseteq \left( {\mathbb {R}}^{+}\right) ^{m}\) is fulfilled. This resolves a potential ambiguity which may arise in the definition of the MDMWNPP, since all the published papers regarding this problem used the same starting sets of instances for which the mentioned condition is satisfied.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Nikolic, B., Djukanovic, M. & Matic, D. New mixed-integer linear programming model for solving the multidimensional multi-way number partitioning problem. Comp. Appl. Math. 41, 119 (2022). https://doi.org/10.1007/s40314-022-01825-2

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s40314-022-01825-2

Keywords

Mathematics Subject Classification

Navigation