Skip to main content
Log in

The sport teams grouping problem

  • PATAT 2016
  • Published:
Annals of Operations Research Aims and scope Submit manuscript

Abstract

The sport teams grouping problem (STGP) concerns the assignment of sport teams to round-robin tournaments. The objective is to minimize the total travel distance of the participating teams while simultaneously respecting fairness constraints. The STGP is an NP-Hard combinatorial optimization problem highly relevant in practice. This paper investigates the performance of some complimentary optimization approaches to the STGP. Three integer programming formulations are presented and thoroughly analyzed: two compact formulations and another with an exponential number of variables, for which a branch-and-price algorithm is proposed. Additionally, a meta-heuristic method is applied to quickly generate feasible high-quality solutions for a set of real-world instances. By combining the different approaches’ results, solutions within 1.7% of the optimum values were produced for all feasible instances. Additionally, to support further research, the considered STGP instances and corresponding solutions files were shared online.

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.

Fig. 1

Similar content being viewed by others

Notes

  1. https://movetex.be.

  2. Instance and solution files are available at http://benchmark.gent.cs.kuleuven.be/stgp.

References

  • Achterberg, T., Koch, T., & Martin, A. (2005). Branching rules revisited. Operations Research Letters, 33(1), 42–54.

    Article  Google Scholar 

  • Alarcón, F., Durán, G., Guajardo, M., Miranda, J., Muñoz, H., Ramírez, L., et al. (2017). Operations research transforms the scheduling of chilean soccer leagues and south american world cup qualifiers. Interfaces, 47(1), 52–69.

    Article  Google Scholar 

  • Ales, Z., Knippel, A., & Pauchet, A. (2016). Polyhedral combinatorics of the k-partitioning problem with representative variables. Discrete Applied Mathematics, 211(c), 1–14.

    Article  Google Scholar 

  • Anagnostopoulos, A., Michel, L., Van Hentenryck, P., & Vergados, Y. (2006). A simulated annealing approach to the traveling tournament problem. Journal of Scheduling, 9(2), 177–193.

    Article  Google Scholar 

  • Barnhart, C., Johnson, E. L., Nemhauser, G. L., Savelsbergh, M. W. P., & Vance, P. H. (1998). Branch-and-price: Column generation for solving huge integer programs. Operations Research, 46, 316–329.

    Article  Google Scholar 

  • Briskorn, D., Drexl, A., & Spieksma, F. C. R. (2010). Round robin tournaments and three index assignments. 4OR, 8(4), 365–374.

    Article  Google Scholar 

  • Carvalho, M. A. M. D., & Lorena, L. A. N. (2012). New models for the mirrored traveling tournament problem. Computers and Industrial Engineering, 63(4), 1089–1095.

    Article  Google Scholar 

  • Christiaens, J., & Vanden Berghe, G. (2016). A fresh ruin & recreate implementation for the capacitated vehicle routing problem. Technical report, KU Leuven, Belgium.

  • Dantzig, G. B., & Wolfe, P. (1960). Decomposition principle for linear programs. Operations Research, 8(1), 101–111.

    Article  Google Scholar 

  • Di Gaspero, L., & Schaerf, A. (2007). A composite-neighborhood tabu search approach to the traveling tournament problem. Journal of Heuristics, 13(2), 189–207.

    Article  Google Scholar 

  • Easton, K., Nemhauser, G., & Trick, M. (2001). The traveling tournament problem description and benchmarks. In T. Walsh (Ed.), Principles and Practice of Constraint Programming—CP 2001: 7th International Conference, CP 2001 Paphos, Cyprus, 2001 Proceedings (pp. 580–584). Berlin, Heidelberg: Springer.

  • Goossens, D., & Spieksma, F. (2009). Scheduling the belgian soccer league. Interfaces, 39(2), 109–118.

    Article  Google Scholar 

  • Goossens, D., & Spieksma, F. (2014). Indoor football scheduling. In E. Özcan, E. Burke, & B. McCollum (Eds.), Proceedings of the 10th International Conference on the Practice and Theory of Automated Timetabling (pp. 167–178), PATAT.

  • Goossens, D. R., & Spieksma, F. C. R. (2012). Soccer schedules in europe: An overview. Journal of Scheduling, 15(5), 641–651.

    Article  Google Scholar 

  • Januario, T., Urrutia, S., Ribeiro, C. C., & De Werra, D. (2016). Edge coloring: A natural model for sports scheduling. European Journal of Operational Research, 254(1), 1–8.

    Article  Google Scholar 

  • Ji, X., & Mitchell, J. E. (2007). Branch-and-price-and-cut on the clique partitioning problem with minimum clique size requirement. Discrete Optimization, 4, 87–102.

    Article  Google Scholar 

  • Kendall, G., Knust, S., Ribeiro, C. C., & Urrutia, S. (2010). Scheduling in sports: An annotated bibliography. Computers and Operations Research, 37(1), 1–19.

    Article  Google Scholar 

  • Knust, S. (2010). Scheduling non-professional table-tennis leagues. European Journal of Operational Research, 200(2), 358–367.

    Article  Google Scholar 

  • Labbé, M., & Özsoy, F. A. (2010). Size-constrained graph partitioning polytopes. Discrete Mathematics, 310(24), 3473–3493.

    Article  Google Scholar 

  • Lübbecke, M. E., & Desrosiers, J. (2005). Selected topics in column generation. Operations Research, 53(6), 1007–1023.

    Article  Google Scholar 

  • Mehrotra, A., & Trick, M. A. (1998). Cliques and clustering: A combinatorial approach. Operations Research Letters, 22(1), 1–12.

    Article  Google Scholar 

  • Nemhauser, G. L., & Trick, M. A. (1998). Scheduling a major college basketball conference. Operations Research, 46(1), 1–8.

    Article  Google Scholar 

  • Ribeiro, C. C. (2012). Sports scheduling: Problems and applications. International Transactions in Operational Research, 19, 201–226.

    Article  Google Scholar 

  • Schönberger, J., Mattfeld, D., & Kopfer, H. (2000). Automated timetable generation for rounds of a table-tennis league. In Proceedings of the 2000 Congress on Evolutionary Computation (pp. 277–284).

  • Schönberger, J., Mattfeld, D., & Kopfer, H. (2004). Memetic algorithm timetabling for non-commercial sport leagues. European Journal of Operational Research, 153(1), 102–116.

    Article  Google Scholar 

  • Sørensen, M. M. (2004). New facets and a branch-and-cut algorithm for the weighted clique problem. European Journal of Operational Research, 154(1), 57–70.

    Article  Google Scholar 

  • Toffolo, T. A. M., Wauters, T., Van Malderen, S., & Vanden Berghe, G. (2016). Branch-and-bound with decomposition-based lower bounds for the traveling umpire problem. European Journal of Operational Research, 250(3), 737–744.

    Article  Google Scholar 

  • Trick, M.A., & Yildiz, H. (2007). Bender’s cuts guided large neighborhood search for the traveling umpire problem. In P. Van Hentenryck & L. Wolsey (Eds.), Number 4510 in Lecture Notes in Computer Science (pp. 332–345), Springer.

  • Trick, M. A., & Yildiz, H. (2011). Benders’ cuts guided large neighborhood search for the traveling umpire problem. Naval Research Logistics (NRL), 58(8), 771–781.

    Article  Google Scholar 

  • Trick, M. A., Yildiz, H., & Yunes, T. (2012). Scheduling major league baseball umpires and the traveling umpire problem. Interfaces, 42(3), 232–244.

    Article  Google Scholar 

  • Uthus, D. C., Riddle, P. J., & Guesgen, H. W. (2011). Solving the traveling tournament problem with iterative-deepening. Journal of Scheduling, 15(5), 601–614.

    Article  Google Scholar 

  • Vanderbeck, F., & Wolsey, L. (2010). Reformulation and decomposition of integer. In M. Jünger, T. M. Liebling, D. Naddef, G. L. Nemhauser, W. R. Pulleyblank, G. Reinelt, G. Rinaldi, & L. A. Wolsey (Eds.), 50 years of integer programming 1958–2008 (pp. 431–502). Berlin: Springer.

    Chapter  Google Scholar 

  • Xue, L., Luo, Z., & Lim, A. (2015). Two exact algorithms for the traveling umpire problem. European Journal of Operational Research, 243(3), 932–943.

    Article  Google Scholar 

Download references

Acknowledgements

Work supported by the Belgian Science Policy Office (BELSPO) in the Inter-university Attraction Pole COMEX (http://comex.ulb.ac.be) and by the Leuven Mobility Research Centre (L-Mob). Editorial support provided by Luke Connolly, KU Leuven. Additionally, we would like to thank Movetex, in particular Dieter De Naeyer and Ken De Norre–De Groof, for the insightful discussions concerning the problem and for making the real-world instances available.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Túlio A. M. Toffolo.

Appendix A

Appendix A

This appendix presents the proofs for Theorems 1 and 2, previously presented in Sect. 3.4.

Theorem1 The linear relaxation of \(\mathcal {F}_3\) is stronger than the linear relaxation of \(\mathcal {F}_1\).

Proof

Theorem 1 is proven true if conditions C1 and C2 are satisfied:

  1. C1:

    for each STGP instance I, \(z_{\mathcal {F}_3}(I) \ge z_{\mathcal {F}_1}(I)\),

  2. C2:

    there exists a STGP instance I where \(z_{\mathcal {F}_3}(I) > z_{\mathcal {F}_1}(I)\).

The validity of C2 is relatively simple to show; in fact, many of the instances considered in Sect. 7 satisfy this condition. C1 remains to be proven true. Consider \(\lambda ^*_{\omega }\) a feasible solution of the linear relaxation of \(\mathcal {F}_3\) on some instance I while also assuming \(L \leftarrow \varOmega \) such that each \(\omega \in \varOmega \) has an equivalent \(\ell \in L\), meaning \(\omega = \ell \). Given this solution and the set \(L = \varOmega \), x-, y- and z-values can be constructed:

$$\begin{aligned} \text {for each } i \in T \text { and } \ell \in L: \;\;&x_{i, \ell } = x_{i, \omega } \leftarrow \lambda ^*_{\omega } \end{aligned}$$
(29)
$$\begin{aligned} \text {for each } (i,j) \in A^2: \;\;&y_{i,j} \leftarrow \sum _{\omega : (i,j) \in \omega } {\lambda ^*_\omega }. \end{aligned}$$
(30)
$$\begin{aligned} \text {for each } \ell \in L: \;\;&z_{\ell } = z_{\omega } \leftarrow \lambda ^*_{\omega } \end{aligned}$$
(31)

Next, it is shown how the resulting solution is a feasible solution of the linear relaxation of \(\mathcal {F}_1\), indicating that it satisfies (2)–(6). Constraints (2) are always satisfied, since each team \(i \in T\) is assigned to exactly one league [see Constraints (18)]:

$$\begin{aligned} \sum _{\ell \in L} x_{i, \ell } = \sum _{\omega \in \varOmega } x_{i, \omega } = \sum _{\omega : i \in \omega } \lambda ^*_{\omega } = 1 \end{aligned}$$
(32)

Since the leagues (cliques) \(\omega \in \varOmega \) are feasible, \(m^- \le |\omega | \le m^+ \; \forall \omega \in \varOmega \), inequalities in (3) follow:

$$\begin{aligned} \sum _{i \in T} x_{i, \ell } = \sum _{i \in T} x_{i, \omega } = |\omega | \lambda ^*_{\omega } = |\omega | z_{\omega } = |\omega | z_{\ell } \end{aligned}$$
(33)

Given that all leagues \(\omega \in \varOmega \) are feasible it also follows that the number of teams from a club in any \(\omega \) is less than or equal to \(c^+\). Therefore, Constraints (4) are also satisfied since for all leagues \(\ell \in L\) and clubs \(c \in C\):

$$\begin{aligned} \sum _{i \in T_c} x_{i, \ell } \le c^+ \lambda ^*_{\omega } = c^+ z_{\ell } \end{aligned}$$
(34)

Constraints (5) also hold. If teams i and j are in the same league, they are therefore together in a league \(\omega \in \varOmega \). Thus, for all \((i,j) \in A^2\) and leagues \(\ell \in L\) (or \(\omega \in \varOmega \)) containing both i and j:

$$\begin{aligned} x_{i, \ell } + x_{j, \ell } = 2\lambda ^*_{\omega } \le y_{i,j} + 1 \end{aligned}$$
(35)

Observe that Constraints (5) are also satisfied when teams i and j are not in the same league \(\ell \) since this implies \(x_{i, \ell } + x_{j, \ell } \le 1\).

Finally, if teams i and j are not allowed in a league, leagues \(\omega \in \varOmega \) will contain at most one of them (since all leagues \(\omega \) are feasible). Hence, Constraints (6) also hold for all \((i,j) \in F^2\) and \(\ell \in L\):

$$\begin{aligned} x_{i, \ell } + x_{j, \ell } \le \lambda ^*_{\omega } \le 1 \end{aligned}$$
(36)

It is thus proven that every solution I of the linear relaxation of \(\mathcal {F}_3\) satisfy (2)–(6). Since both \(\mathcal {F}_1\) and \(\mathcal {F}_3\) have the same objective function, Theorem 1 is proven. \(\square \)

Theorem2 The linear relaxation of \(\mathcal {F}_3\) is stronger than the linear relaxation of \(\mathcal {F}_2\).

Proof

Theorem 2 is proven if conditions C3 and C4 are satisfied:

  1. C3:

    for each STGP instance I, \(z_{\mathcal {F}_3}(I) \ge z_{\mathcal {F}_2}(I)\),

  2. C4:

    there exists a STGP instance I where \(z_{\mathcal {F}_3}(I) > z_{\mathcal {F}_2}(I)\).

C4 is proven true by the experiments reported in Sect. 7. It is, however, required to mathematically prove that C3 is true. Consider again that \(\lambda ^*_{\omega }\) is a feasible solution of the linear relaxation of \(\mathcal {F}_3\) for an instance I; y-values may be easily constructed:

$$\begin{aligned} \text {for each } (i,j) \in A^2: \;\;&y_{i,j} \leftarrow \sum _{\omega : (i,j) \in \omega } {\lambda ^*_\omega }. \end{aligned}$$
(37)

Let \(\bar{e}^k_{i,j}\) be the sum of \(\lambda ^*_\omega \) for all \(\omega \in \varOmega \) which include both i and j but not k, and \(e_{i,j,k}\) be the sum of \(\lambda ^*_\omega \) for all \(\omega \in \varOmega \) which include i, j and k. More compactly:

$$\begin{aligned} \bar{e}_{i,j}^k= & {} \sum _{\omega \in \varOmega : \{i,j\} \in \omega \wedge k \notin \omega } {\lambda ^*_\omega } \end{aligned}$$
(38)
$$\begin{aligned} e_{i,j,k}= & {} \sum _{\omega \in \varOmega : \{i,j,k\} \in \omega } {\lambda ^*_\omega } \end{aligned}$$
(39)

Clearly, for each \(k \in T\), \(y_{i,j} = \bar{e}_{i,j}^k + e_{i,j,k}\). Equivalently, \(y_{i,k} = \bar{e}^j_{i,k} + e_{i,j,k}\) and \(y_{j,k} = \bar{e}^i_{j,k} + e_{i,j,k}\). Therefore, for each \((i,j,k) \in A^3\):

$$\begin{aligned}&y_{i,j}+y_{i,k}-y_{j,k} = \bar{e}^k_{i,j} + e_{i,j,k}+ \bar{e}^j_{i,k} + e_{i,j,k} -\bar{e}^i_{j,k} - e_{i,j,k} \le \nonumber \\&\quad \bar{e}^k_{i,j} + \bar{e}^j_{i,k} + e_{i,j,k} = \sum _{\omega \in \varOmega : i \in \omega } {\lambda ^*_\omega } = 1. \end{aligned}$$
(40)

The first equality in (40) follows by definition; the first inequality from the non-negativity of all y-variables; the second equality from the fact that terms \(\bar{e}_{i,j}^k, \bar{e}^j_{i,k}\), and \(e_{i,j,k}\) correspond to disjoint sets of cliques whose union are all cliques containing i; and the final equality follows from (18). Therefore, y satisfies (12).

Furthermore, observe that \(e_{i,j,k} = 0 \ \forall (i,j,k) \in F^3\). This follows from i, j and k not being permitted in the same league, and therefore there exists no league \(\omega \in \varOmega \) containing these three teams. Thus, modifying (40) shows that y also satisfies (13).

Consider Constraint (14). Observe that for each \(i \in T\):

$$\begin{aligned} \sum _{j \in A_i} y_{i,j} = \sum _{j \in A_i} \sum _{\omega :(i,j) \in \omega } \lambda ^*_{\omega } = \sum _j \sum _{\omega :(i,j) \in \omega } \lambda ^*_{\omega } = \sum _{\omega :i \in \omega } (|\omega |-1)\lambda ^*_{\omega }. \end{aligned}$$
(41)

Indeed, the first equality follows from (30); the second equality from how clique containing i cannot contain some team \(j \notin A_i\); and the final equality results from counting how many times the value \(\lambda ^*_{\omega }\) is present in this term.

Next, given that each clique \(\omega \) is feasible, \(m^- \le |\omega | \le m^+\). Combining this with (41) results in:

$$\begin{aligned} \sum _{j \in A_i} y_{i,j}= & {} \sum _{\omega :i \in \omega } (|\omega |-1)\lambda ^*_{\omega } \le \sum _{\omega :i \in \omega } (m^+-1)\lambda ^*_{\omega } \nonumber \\= & {} (m^+-1) \sum _{\omega : i \in \omega } \lambda ^*_{\omega } = m^+-1\end{aligned}$$
(42)
$$\begin{aligned} \sum _{j \in A_i} y_{i,j}= & {} \sum _{\omega :i \in \omega } (|\omega |-1)\lambda ^*_{\omega } \le \sum _{\omega :i \in \omega } (m^+-1)\lambda ^*_{\omega } \nonumber \\= & {} (m^+-1) \sum _{\omega : i \in \omega } \lambda ^*_{\omega } = m^+-1. \end{aligned}$$
(43)

It follows that y satisfies (14).

Finally, consider (15). Observe that for each team \(i \in T\):

$$\begin{aligned} \sum _{j \in A_i \cap T_i} y_{i,j} = \sum _{j \in A_i \cap T_i} \sum _{\omega :(i,j) \in \omega } \lambda ^*_{\omega } \le (c^+-1) \sum _{\omega :i \in \omega } \lambda ^*_{\omega } = c^+-1. \end{aligned}$$
(44)

Again, the first equality follows from (37) and the inequality from how each clique \(\omega \) contains at most \(c^+\) nodes from the same club as team i. Hence the value \(\lambda _{\omega }\) occurs at most \(c^+-1\) times in each clique \(\omega \).

It is therefore proven that y satisfies (15).

Finally, note that both formulations have an equal objective function, and hence Theorem 2 is proven.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Toffolo, T.A.M., Christiaens, J., Spieksma, F.C.R. et al. The sport teams grouping problem. Ann Oper Res 275, 223–243 (2019). https://doi.org/10.1007/s10479-017-2595-z

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10479-017-2595-z

Keywords

Navigation