Branch-and-cut for a real-life highly constrained soccer tournament scheduling problem

Similar documents
Scheduling workover rigs for onshore oil production

Transportation Timetabling

An efficient and robust approach to generate high quality solutions for the Traveling Tournament Problem

MULTI-STAGE TRANSMISSION EXPANSION PLANNING CONSIDERING MULTIPLE DISPATCHES AND CONTINGENCY CRITERION

SPORTS SCHEDULING. An Introduction to Integer Optimization x The Analytics Edge

Neighborhood based heuristics for a Two-level Hierarchical Location Problem with modular node capacities

SPORTS SCHEDULING: PROBLEMS AND APPLICATIONS

Solution of the Airline ToD Problem using Severely Limited Subsequence

Arithmetic Sequences Read 8.2 Examples 1-4

Complete and Incomplete Algorithms for the Queen Graph Coloring Problem

Chapter 12. Cross-Layer Optimization for Multi- Hop Cognitive Radio Networks

A new mixed integer linear programming formulation for one problem of exploration of online social networks

Online Supplement for An integer programming approach for fault-tolerant connected dominating sets

Two-stage column generation and applications in container terminal management

Optimal Multicast Routing in Ad Hoc Networks

Generalized Game Trees

Control of the Contract of a Public Transport Service

The Path Restoration Version of the Spare Capacity Allocation Problem with Modularity Restrictions: Models, Algorithms, and an Empirical Analysis

A TREE-SEARCH BASED HEURISTIC FOR A COMPLEX STACKING PROBLEM WITH CONTINUOUS PRODUCTION AND RETRIEVAL

Stanford University CS261: Optimization Handout 9 Luca Trevisan February 1, 2011

Optimizing Client Association in 60 GHz Wireless Access Networks

Gateways Placement in Backbone Wireless Mesh Networks

A GRASP HEURISTIC FOR THE COOPERATIVE COMMUNICATION PROBLEM IN AD HOC NETWORKS

Aircraft routing for on-demand air transportation with service upgrade and maintenance events: compact model and case study

SOLITAIRE CLOBBER AS AN OPTIMIZATION PROBLEM ON WORDS

Ideas beyond Number. Activity worksheets

Multiples and Divisibility

Generating College Conference Basketball Schedules by a SAT Solver

SCHEDULING Giovanni De Micheli Stanford University

A Genetic Algorithm for Solving Beehive Hidato Puzzles

Using Nested Column Generation & Generic Programming to solve Staff Scheduling Problems:

Solutions to Exercises on Page 86

Alexandre Fréchette, Neil Newman, Kevin Leyton-Brown

COUNTING TECHNIQUES. Prepared by Engr. JP Timola Reference: Discrete Math by Kenneth H. Rosen

CS510 \ Lecture Ariel Stolerman

Games and Adversarial Search II

A GRASP heuristic for the Cooperative Communication Problem in Ad Hoc Networks

Grade 6 Math Circles. Divisibility

Enumeration of Two Particular Sets of Minimal Permutations

On the Combination of Constraint Programming and Stochastic Search: The Sudoku Case

Applying Topological Constraint Optimization Techniques to Periodic Train Scheduling

Optimal Dispatching of Welding Robots

The Wireless Network Jamming Problem Subject to Protocol Interference

Reading 14 : Counting

A tournament problem

Scheduling. Radek Mařík. April 28, 2015 FEE CTU, K Radek Mařík Scheduling April 28, / 48

CS188 Spring 2014 Section 3: Games

Computing Explanations for the Unary Resource Constraint

CS Computer Architecture Spring Lecture 04: Understanding Performance

Using hybrid optimization algorithms for very-large graph problems and for small real-time problems

Railway disruption management

TRAINS ON TIME. Optimizing and Scheduling of railway timetables. Soumya Dutta. IIT Bombay. Students Reading Group. July 27, 2016

Allocation, Scheduling and Voltage Scaling on Energy Aware MPSoCs

STRATEGY AND COMPLEXITY OF THE GAME OF SQUARES

Introduction to Computational Manifolds and Applications

COUNTING AND PROBABILITY

Introduction to Computational Manifolds and Applications

Ad Hoc Networks 8 (2010) Contents lists available at ScienceDirect. Ad Hoc Networks. journal homepage:

ECE313 Summer Problem Set 4. Reading: RVs, mean, variance, and coniditional probability

Game Theory and Randomized Algorithms

An Analytical Study in Connectivity of Neighborhoods for Single Round Robin Tournaments

UNIVERSITY of PENNSYLVANIA CIS 391/521: Fundamentals of AI Midterm 1, Spring 2010

Locally Informed Global Search for Sums of Combinatorial Games

A Column Generation Method for Spatial TDMA Scheduling in Ad Hoc Networks

Integer Programming Based Algorithms for Peg Solitaire Problems

Localization (Position Estimation) Problem in WSN

Problem Set 2. Counting

1 = 3 2 = 3 ( ) = = = 33( ) 98 = = =

In how many ways can we paint 6 rooms, choosing from 15 available colors? What if we want all rooms painted with different colors?

Programming an Othello AI Michael An (man4), Evan Liang (liange)

Lectures: Feb 27 + Mar 1 + Mar 3, 2017

Department of Applied Mathematics Faculty of EEMCS. University of Twente. Memorandum No. 1760

Allocation, Scheduling and Voltage Scaling on Energy Aware MPSoCs

Decision Mathematics D1 Advanced/Advanced Subsidiary. Friday 17 May 2013 Morning Time: 1 hour 30 minutes

MAT3707. Tutorial letter 202/1/2017 DISCRETE MATHEMATICS: COMBINATORICS. Semester 1. Department of Mathematical Sciences MAT3707/202/1/2017

Math 3012 Applied Combinatorics Lecture 2

B1 Problem Statement Unit Pricing

37 Game Theory. Bebe b1 b2 b3. a Abe a a A Two-Person Zero-Sum Game

Meet # 1 October, Intermediate Mathematics League of Eastern Massachusetts

Topic 1: defining games and strategies. SF2972: Game theory. Not allowed: Extensive form game: formal definition

Part VII: VRP - advanced topics

SHORT ANSWER. Write the word or phrase that best completes each statement or answers the question.

Final Practice Problems: Dynamic Programming and Max Flow Problems (I) Dynamic Programming Practice Problems

Summer Assignment for students entering Pre IB Algebra II

Chapter 2 Distributed Consensus Estimation of Wireless Sensor Networks

Edge-Constrained Tile Mosaics

Subsequence Generation for the Airline Crew Pairing Problem

5. Suppose the points of a scatterplot lie close to the line 3x + 2y = 6. The slope of this line is: A) 3. B) 2/3. C) 3/2. D) 3/2.

arxiv: v1 [cs.dm] 29 Feb 2012

Near Optimal Joint Channel and Power Allocation Algorithms in Multicell Networks

Tic-tac-toe. Lars-Henrik Eriksson. Functional Programming 1. Original presentation by Tjark Weber. Lars-Henrik Eriksson (UU) Tic-tac-toe 1 / 23

Performance Analysis of a 1-bit Feedback Beamforming Algorithm

LL assigns tasks to stations and decides on the position of the stations and conveyors.

March 5, What is the area (in square units) of the region in the first quadrant defined by 18 x + y 20?

Simultaneous optimization of channel and power allocation for wireless cities

Rating and Generating Sudoku Puzzles Based On Constraint Satisfaction Problems

The Pigeonhole Principle

Lecture5: Lossless Compression Techniques

W CDMA Network Design

game tree complete all possible moves

Transcription:

Branch-and-cut for a real-life highly constrained soccer tournament scheduling problem Guillermo Durán 1, Thiago F. Noronha 2, Celso C. Ribeiro 3, Sebastián Souyris 1, and Andrés Weintraub 1 1 Department of Industrial Engineering, University of Chile, Republica 701, Santiago, Chile. 2 Department of Computer Science, Catholic University of Rio de Janeiro, Rua Marquês de São Vicente 225, Rio de Janeiro, RJ 22453-900, Brazil. 3 Department of Computer Science, Universidade Federal Fluminense, Rua Passo da Pátria 156, Niterói, RJ 24210-240, Brazil. gduran@dii.uchile.cl, {tfn,celso}@inf.puc-rio.br, {ssouyris, aweintra}@dii.uchile.cl 1 Introduction There are 20 teams in the Chilean soccer first division. They take part in two yearly tournaments: opening and closing. If a team X plays against a team Y at home in the opening tournament, then it must play away against Y in the closing tournament. Each tournament is organized in two phases: qualifying and playoffs. The qualifying phase follows the structure of a single round robin tournament. The teams are evenly distributed over four groups with five teams each. The groups are formed according to the performance of each team in the last tournament. The first four teams are distributed on the four groups. The teams from 5th to 8th place are randomly distributed in different groups. The same happens with the teams from 9th to 12th place. This procedure is repeated until all teams are assigned to a group. At the end of the qualifying phase, the teams that end up in the two first positions of each group qualify for the playoffs. The National Association of Professional Football (ANFP) is in charge of soccer in Chile. One of its major tasks is that of scheduling the games of the opening and closing tournaments. Good schedules are of major importance for the success of the tournaments, making them more balanced, profitable, and attractive. All schedules were randomly prepared until 2004. Weintraub et al [1] addressed the main drawbacks of such schedules and tackled the problem by integer programming [7]. Their model is applied since 2005 opening tournament. However, the computation times are very high and the solutions produced by the model still lacked quality. In this work, we improve the original integer programming formulation. Valid inequalities are derived and appended to the model. A new branch-and-cut strategy is used to speedup convergence. The main constraints and the objective function are described in Section 2. The solution approach and the branching strategy are summarized in Section 3. Preliminary results on a real-life instance are reported in the last section.

2 Problem statement We first give some definitions. A HAP (which stands for a home-away pattern) defines a sequence of home and away games for a given team. Popular teams are those with more fans. Traditional teams are the oldest teams. Strong teams are those better qualified in the last tournaments. Tourist teams are those with their home cities at tourist cities such as Viña del Mar, Valparaiso, or La Serena. A classic is a game between two traditional teams. The constraints of the problem are the following: Each team plays against every other team exactly once. Every team plays exactly once in each round. Each team plays at least nine games at home and nine games away. A team may never have two consecutive breaks [6]. A team may play at most three games at home in any five consecutive rounds. Some teams have complementary HAPs (whenever one of them plays at home the other plays away, and vice-versa). There may be at most four games at the city of Santiago in any round. There may be no breaks in some pre-defined rounds (rounds 1, 16, and 18). Pairs of excluding teams: if a team plays against one of them at home, then it should play away against the other (and vice-versa). Classics should not be played before round 7 or after round 16. A team should have at least one game between two consecutive games with popular teams. A team may not have two consecutive games against strong teams. Each traditional team plays exactly one classic at home. Tourist teams should play at least once against a traditional team during the summer rounds. Traditional teams cannot play twice in the same week in the same tourist region. Chile has a very particular geography, being a very long and narrow country: a team from the Central region cannot play in the same week against a team from the South and another from the North. Since only the teams in the two first positions of each group qualify for the playoffs, games between teams in the same group are more attractive. Therefore, these games should as much as possible take place at the end of the tournament. The objective function consists in maximizing the number of games between teams in the same group in the last rounds of the tournament. It is computed as the sum of the indices of the rounds where the games between teams of the same group take place. 3 Solution approach and branching strategy The problem is formulated by integer programming and solved by a branch-andcut algorithm. Two variables were used in the original model [1]: x ijk = 1 if

team i plays at home against team j in round k, x ijk = 0 otherwise; y ik = 1 if team i has a break at round k + 1 (i.e., team i plays two consecutive home games or two consecutive away games in rounds k and k + 1), y ik = 0 otherwise. The new formulation follows the same strategy proposed by Trick [4] and is based on the introduction of a new binary variable: z ik = 1 if team i plays at home in round k, z ik = 0 otherwise. All HAP constraints are rewritten in terms of this new variable. This formulation is more easily solvable. Furthermore, the new variable plays a major role in the branching strategy. Each round is a perfect matching in the complete graph whose nodes are the participating teams [3, 5]. Cuts associated with violated matching constraints in the linear relaxation are progressively added to the enumeration tree. As the number of violated matching constraints may be very large, only the most violated ones are added. The branching strategy plays a major role in the success of a branch-and-cut algorithm. Branching on the x ijk variables is not efficient, since most of them are null in integral solutions. Our branching strategy is based on the z ik variables. Branching on the x ijk variables starts only after all the z ik variables are integral. This strategy implicitly decomposes the solution in two phases. In the first phase the HAPs for each team are computed, while in the second the dates of the games are established. Once the variables z ik are fixed, the branch-and-cut algorithm needs just a few branches on variables x ijk to find a feasible solution. 4 Preliminary results Two algorithms based on the previous formulation have been proposed and evaluated: the B&C-ANFP branch-and-cut algorithm and the B&B-ANFP branch-andbound algorithm without cuts. Both of them were implemented using the library Concert Technology 1.2 and the solver CPLEX 8.0 [2]. The computational experiments were performed on a 3 GHz Pentium IV machine with 1 Gbyte of RAM memory. We illustrate the results obtained for the 2005 edition of the opening tournament, comparing them with those reported in [1]. Computation times for solving the linear programming relaxation by different algorithms available with the CPLEX 8.0 package are given in Table 1. The problem is very degenerated and requires the use of perturbations, leading to large computation times. The interior point algorithm was the best solution strategy. We also can see in Table 1 that the new formulation considerably reduced the computation time of the interior points algorithm, making possible an efficient implementation of the cutting plane algorithm. Results obtained with algorithms B&B-ANFP and B&C-ANFP are given in Table 2. For each algorithm, we report the value of the objective function, the number of nodes in the enumeration tree, and the integrality gap after some elapsed times. In the beginning, algorithm B&B-ANFP finds good solutions faster than B&C-ANFP. However, the former was not able to find the optimal solution within a 4-hour time limit. On the contrary, the cuts used by algorithm B&C-ANFP were able to improve the linear relaxation bound, which was already equal to

Table 1. Computation times for solving the linear relaxation. Strategy time (s) Primal simplex 27 Dual simplex 21 Interior points (original formulation) 12 Interior points (variables z ik ) 4 the optimal value at the root of the enumeration tree. The number of nodes is much smaller for algorithm B&C-ANFP, that found the exact optimal solution in less than two hours of computation time. Table 2. Comparison between algorithms B&B-ANFP and B&C-ANFP. Elapsed B&B-ANFP B&C-ANFP time objective nodes gap (%) objective nodes gap (%) 10 minutes 617 140 3.6 474 120 25.9 30 minutes 622 600 2.9 615 330 3.9 1 hour 631 1120 1.4 633 570 1.1 2 hours 633 2190 1.1 640 1560 0.0 4 hours 639 4860 0.2 In Table 3, we compare the results obtained by algorithm B&C-ANFP with those obtained by the strategy proposed in [1]. We give the value of the objective function and the relative integrality gap after 30 minutes and after two hours of computation time (on a 2.4 GHz Pentium IV computer for [1]) for both algorithms. Algorithm B&C-ANFP not only found a better solution (615) very quickly (30 minutes), but also found a much better and optimal solution value (640) after the same time that the approach in [1] took to find a solution value 10.0% away from the optimal. Table 3. Comparison between algorithms B&C-ANFP and Weintraub et al [1]. Algorithm time objective gap (%) B&C-ANFP 30 minutes 615 3.9 2 hours 640 0.0 Weintraub et al [1] 2 hours 576 10.0

References 1. G. Durán, M. Guajardo, J. Miranda, D. Sauré, S. Souyris, A. Weintraub, A. Carmash, and F. Chaigneau. Programación matemática aplicada al fixture de la primera divisón del fútbol chileno. Revista Ingeniería de Sistemas, 5:29 46, 2005. 2. ILOG. ILOG CPLEX 8.0 User Manual, 2002. 3. M.W. Padberg and M.R. Rao. Odd minimum cut-sets and b-matchings. Mathematics of Operation Research, 7:67 80, 1982. 4. M.A. Trick. A schedule-and-break approach to sports scheduling. Lecture Notes in Computer Science, 2079:242 253, 2001. 5. M.A. Trick. Integer and constraint programming approaches for round robin tournament scheduling. Lecture Notes in Computer Science, 2740:63 77, 2003. 6. S. Urrutia and C.C. Ribeiro. Maximizing breaks and bounding solutions to the mirrored traveling tournament problem. Discrete Applied Mathematics, to appear. 7. L.A. Wolsey. Integer programming. Wiley, 1998.