Handbook of scheduling algorithms, models, and performance analysis

1.2K 27 0
Handbook of scheduling  algorithms, models, and performance analysis

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Handbook of SCHEDULING Algorithms, Models, and Performance Analysis CHAPMAN & HALL/CRC COMPUTER and INFORMATION SCIENCE SERIES Series Editor: Sartaj Sahni P UB LI S HED TI TLES HANDBOOK OF SCHEDULING: ALGORITHMS, MODELS, AND PERFORMANCE ANALYSIS Joseph Y-T Leung FO RTHC OMI NG TI TLES HANDBOOK OF COMPUTATIONAL MOLECULAR BIOLOGY Srinivas Aluru HANDBOOK OF ALGORITHMS FOR WIRELESS AND MOBILE NETWORKS AND COMPUTING Azzedine Boukerche DISTRIBUTED SENSOR NETWORKS S Sitharama Iyengar and Richard R Brooks SPECULATIVE EXECUTION IN HIGH PERFORMANCE COMPUTER ARCHITECTURES David Kaeli and Pen-Chung Yew HANDBOOK OF DATA STRUCTURES AND APPLICATIONS Dinesh P Mehta and Sartaj Sahni HANDBOOK OF BIOINSPIRED ALGORITHMS AND APPLICATIONS Stephan Olariu and Albert Y Zomaya HANDBOOK OF DATA MINING Sanjay Ranka THE PRACTICAL HANDBOOK OF INTERNET COMPUTING Munindar P Singh SCALABLE AND SECURE INTERNET SERVICE AND ARCHITECTURE Cheng Zhong Xu CHAPMAN & HALL/CRC COMPUTER and INFORMATION SCIENCE SERIES Handbook of SCHEDULING Algorithms, Models, and Performance Analysis Edited by Joseph Y-T Leung CHAPMAN & HALL/CRC A CRC Press Company Boca Raton London New York Washington, D.C C3979_discl.fm Page Friday, March 19, 2004 2:37 PM Library of Congress Cataloging-in-Publication Data Catalog record is available from the Library of Congress This book contains information obtained from authentic and highly regarded sources Reprinted material is quoted with permission, and sources are indicated A wide variety of references are listed Reasonable efforts have been made to publish reliable data and information, but the author and the publisher cannot assume responsibility for the validity of all materials or for the consequences of their use Neither this book nor any part may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, micro lming, and recording, or by an y information storage or retrieval system, without prior permission in writing from the publisher All rights reserved Authorization to photocopy items for internal or personal use, or the personal or internal use of speci c clients, may be granted by CRC Press LLC, provided that $1.50 per page photocopied is paid directly to Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923 USA The fee code for users of the Transactional Reporting Service is ISBN 1-58488-397-9/04/$0.00+$1.50 The fee is subject to change without notice For organizations that have been granted a photocopy license by the CCC, a separate system of payment has been arranged The consent of CRC Press LLC does not extend to copying for general distribution, for promotion, for creating new works, or for resale Speci c permission must be obtained in writing f rom CRC Press LLC for such copying Direct all inquiries to CRC Press LLC, 2000 N.W Corporate Blvd., Boca Raton, Florida 33431 Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used only for identi cation and e xplanation, without intent to infringe Visit the CRC Press Web site at www.crcpress.com © 2004 by CRC Press LLC No claim to original U.S Government works International Standard Book Number 1-58488-397-9 Printed in the United States of America Printed on acid-free paper Dedication To my wife Maria v Preface Scheduling is a form of decision-making that plays an important role in many disciplines It is concerned with the allocation of scarce resources to activities with the objective of optimizing one or more performance measures Depending on the situation, resources and activities can take on many different forms Resources may be nurses in a hospital, bus drivers, machines in an assembly plant, CPUs, mechanics in an automobile repair shop, etc Activities may be operations in a manufacturing process, duties of nurses in a hospital, executions of computer programs, car repairs in an automobile repair shop, and so on There are also many different performance measures to optimize One objective may be the minimization of the mean flow time, while another objective may be the minimization of the number of jobs completed after their due dates Scheduling has been studied intensively for more than 50 years, by researchers in management, industrial engineering, operations research, and computer science There is now an astounding body of knowledge in this field This book is the first handbook on scheduling It is intended to provide a comprehensive coverage of the most advanced and timely topics in scheduling A major goal of this project is to bring together researchers in the above disciplines in order to facilitate cross fertilization The authors and topics chosen cut across all these disciplines I would like to thank Sartaj Sahni for inviting me to edit this handbook I am grateful to all the authors and co-authors (more than 90 in total) who took time from their busy schedules to contribute to this handbook Without their efforts, this handbook would not have been possible Edmund Burke and Michael Pinedo have given me valuable advice in picking topics and authors Helena Redshaw and Jessica Vakili at CRC Press have done a superb job in managing the project I would like to thank Ed Coffman for teaching me scheduling theory when I was a graduate student at Penn State My wife, Maria, gave me encouragement and strong support for this project This work was supported in part by the Federal Aviation Administration (FAA) and in part by the National Science Foundation (NSF) Findings contained herein are not necessarily those of the FAA or NSF vii The Editor Joseph Y-T Leung, Ph.D., is Distinguished Professor of Computer Science in New Jersey Institute of Technology He received his B.A in Mathematics from Southern Illinois University at Carbondale and his Ph.D in Computer Science from the Pennsylvania State University Since receiving his Ph.D., he has taught at Virginia Tech, Northwestern University, University of Texas at Dallas, University of Nebraska at Lincoln, and New Jersey Institute of Technology He has been chairman at University of Nebraska at Lincoln and New Jersey Institute of Technology Dr Leung is a member of ACM and a senior member of IEEE His research interests include scheduling theory, computational complexity, discrete optimization, real-time systems, and operating systems His research has been supported by NSF, ONR, FAA, and Texas Instruments ix Contributors Richa Agarwal Georgia Institute of Technology Department of Industrial & Systems Engineering Atlanta, Georgia Sanjay L Ahire University of Dayton Department of MIS, OM, and DS Dayton, Ohio Ravindra K Ahuja University of Florida Department of Industrial & Systems Engineering Gainesville, Florida Yalc‚ in Akc‚ ay Koc¸ University Istanbul, Turkey James Anderson University of North Carolina Department of Computer Science Chapel Hill, North Carolina Hakan Aydin George Mason University Department of Computer Science Fairfax, Virginia Anantaram Balakrishnan University of Texas Austin, Texas Philippe Baptiste CNRS, Ecole Polytechnique Palaiseau, France Sanjoy Baruah University of North Carolina Department of Computer Science Chapel Hill, North Carolina Jacek Bla˙zewicz Poznan´ University of Technology Institute of Computing Science ´ Poland Poznan, N Brauner IMAG Grenoble, France R P Brazile University of North Texas Department of Computer Science & Engineering Denton, Texas Peter Brucker University of Osnabrăuck Department of Mathematics Osnabrăuck, Germany Edmund K Burke University of Nottingham School of Computer Science Nottingham, United Kingdom Marco Caccamo University of Illinois Department of Computer Science Urbana, Illinois Xiaoqiang Cai Chinese University of Hong Kong Department of Systems Engineering & Engineering Management Shatin, Hong Kong Jacques Carlier Compi`egne University of Technology Compi`egne, France John Carpenter University of North Carolina Department of Computer Science Chapel Hill, North Carolina Xiuli Chao North Carolina State University Department of Industrial Engineering Raleigh, North Carolina Chandra Chekuri Bell Laboratories Murray Hill, New Jersey Bo Chen University of Warwick Warwick Business School Coventry, United Kingdom Deji Chen Fisher-Rosemount Systems, Inc Austin, Texas xi Artur Czumaj New Jersey Institute of Technology Department of Computer Science Newark, New Jersey Patrick De Causmaecker KaHo Sint-Lieven Department of Industrial Engineering Gent, Belgium Sudarshan K Dhall University of Oklahoma School of Computer Science Norman, Oklahoma Teofilo F Gonzalez University of California Department of Computer Science Santa Barbara, California Joăel Goossens Universite Libre de Brussels Department of Data Processing Brussels, Belgium Valery S Gordon National Academy of Sciences of Belarus United Institute of Informatics Problems Minsk, Belarus Maciej Drozdowski Poznan´ University of Technology Institute of Computing Science ´ Poland Poznan, Michael F Gorman University of Dayton Department of MIS, OM, and DS Dayton, Ohio Pierre-Franỗois Dutot CNRS Lab Informatique et Distribution Montbonnot, France Kevin I-J Ho Chun Shan Medical University Department of Information Management Taiwan, China Kelly Easton Kansas State University School of Industrial & Manufacturing Systems Engineering Manhattan, Kansas Dorit Hochbaum University of California Haas School of Business, and Department of Industrial Engineering & Operations Research Berkeley, California G Finke IMAG Grenoble, France Shelby Funk University of North Carolina Department of Computer Science Chapel Hill, North Carolina Karsten Gentner University of Karlsruhe Institute of Economic Theory and Operations Research Karlsruhe, Germany xii Philip Holman University of North Carolina Department of Computer Science Chapel Hill, North Carolina H Hoogeveen Utrecht University Department of Computer Science Utrecht, Netherlands Antoine Jouglet CNRS Compi`egne, France ´ Joanna Jozefowska Poznan´ University of Technology Institute of Computing Science ´ Poland Poznan, Philip Kaminsky University of California Department of Industrial Engineering & Operations Research Berkeley, California John J Kanet University of Dayton Department of MIS, OM and DS Dayton, Ohio Hans Kellerer University of Graz Institute for Statistics & Operations Research Graz, Austria Sanjeev Khanna University of Pennsylvania Department of Computer & Information Science Philadelphia, Pennsylvania Young Man Kim Kookmin University School of Computer Science Seoul, South Korea Gilad Koren Bar-Ilan University Computer Science Department Ramat-Gan, Israel Wieslaw Kubiak Memorial University of Newfoundland Faculty of Business Administration St John’s, Canada 52-5 Sports Scheduling For decomposition schemes such as the one just described, the run time of the algorithm depends not only on the speed with which it generates pattern sets but the number of pattern sets generated and the ratio of feasible to infeasible pattern sets that pass through to the game generation subproblem (Here feasible describes a pattern set that gives a round robin tournament and infeasible a pattern set that does not yield a round robin tournament.) Clearly, if there were a known set of necessary and sufficient conditions for feasible pattern sets, this would favorably affect the ratio of feasible to infeasible pattern sets, the number of pattern sets generated, and quite possibly the run time of the pattern set generation algorithm While the sufficient conditions for general pattern set feasibility are unknown at this point, we have a collection of necessary conditions that have proven useful in practice For example, in a feasible pattern set for an SRRT, every pair of patterns must differ in at least one slot This means that any given pattern can appear at most once in a pattern set The condition for DRRTs is a bit stronger: in a feasible pattern set for a DRRT, for every pair of patterns i, j such that ≤ i < j ≤ n, there must be at least one slot in which i is home and j is away and at least one slot in which j is at home and i is away A second necessary condition requires every slot in the pattern set to include an equal number of home and away games For SRRTPs in which the number of breaks is restricted to at most one for each team, a feasible pattern set must have the complementary property [8] In other words, it must be possible to group the set of n = 2m patterns into m disjoint pairs of complementary patterns This result sounds surprising at first, but it is really quite obvious Notice that for the condition of equal number of Hs and As to hold, the breaks in this type of pattern set must occur in pairs of one AA break and one HH break Since no pattern can have more than one break, these pairs must be complementary Miyashiro, Iwasaki, and Matsui [9] recently published a more complex necessary condition for feasible pattern sets that can be checked in polynomial time for a pattern set with the minimum number of breaks Let P represent the patterns in a given pattern set; let Q be a subset of P ; let S represent the complete set of slots Let |HQs | be the number of home games in slot s summed over the patterns in Q Similarly, let |AsQ | be the number of away games in slot s summed over the patterns in Q Then, for a given pattern set to be feasible, it must have min{|HQs |, |AsQ |} ≥ s ∈S |Q| for all Q ⊂ P Miyashiro et al show that this sum is the same for the complement of the subset Q Along with certain properties of pattern sets with the minimum number of breaks, this allows Miyashiro et al to give an O(n4 ) algorithm for checking this condition for any minimum break pattern set 52.3 Balanced Tournament Designs The Balanced Tournament Design Problem may be formally stated as follows: Input: A set of n teams T = {1, , n} and a number of facilities F Output: A mapping of the games in the set G = {g ij : i, j ∈ T, i < j }, to the slots available at each facility described by the set S = {s f k , f = 1, , F , k = 1, , n − if n even and k = 1, , n if n odd} such that no more than one game involving team i is assigned to a particular slot and the difference between the number of appearances of team i at two separate facilities is no more than A common version of the BTDP has 2m teams and m facilities We will denote this problem by BTDP(2m) It is known that there exist solutions to this problem for all m = The first constructions for n ≡ or n ≡ 1(mod3) teams were provided by Haselgrove and Leech [10], and the full result was established by Schellenberg, van Rees, and Vanstone [11] a short time later Lamken and Vanstone [12] published a simplified proof in 1985 Blest and Fitzgerald [13] show a simple construction for a BTD with 2m + teams and m facilities 52-6 Handbook of Scheduling: Algorithms, Models, and Performance Analysis n Facility n−1 Facility m+2 Facility m m+1 FIGURE 52.3 Bracelet for algorithm BTDP-NO Algorithm BTDP-NO Arrange the teams through 2m+1 in an elongated pentagon or “bracelet” as shown in Figure 52.3 Indicate a facility associated with each row containing two teams as shown For each slot k = 1, , 2m + 1, give the team at the top of the pentagon the bye For each row with two teams i, j associated with facility f assign g ij to s k f Then shift the teams around the pentagon one position in a clockwise direction Of course, it is easy to see that this algorithm uses the same principle as the circle method described above Blest and Fitzgerald also give a construction for n ≡ (mod 4) 52.4 Bipartite Tournaments The BTP may be formally stated as follows: Input: Two teams with n players T1 = {x1 , , xn } and T2 = {y1 , , yn } Output: A mapping of the games in the set G = {g ij : i ∈ T1 , j ∈ T2 }, to the slots in the set S = {s k , k = 1, , n} such that exactly one game including t is mapped to any given slot for all t ∈ T1 ∪ T2 Bipartite tournaments are equivalent to latin squares To see this, first notice that we can write the opponents for xi in the i th column of an n by n matrix and obtain a latin square Conversely, notice that any n × n latin square will uniquely determine a bipartite tournament We could also write down a latin square by letting entry l ij = the slot in which xi plays y j for i, j ∈ 1, , n [1] We have discussed several latin square results that can be applied to SRRTs Similarly, these results can be applied to BTs Latin square methods can also be used to solve several special cases of the BTP Anderson describes three possibilities [1] For example, if the n games in each slot are played at n different facilities, it may be desirable to construct a balanced BT in which each team plays exactly once at each facility The solution to this problem is the join of two mutually orthogonal latin squares (MOLS) on {1, , n} in which the rows correspond to slots and the columns correspond to facilities The join includes ordered pairs (i, j ), which correspond to the games xi vs y j If this type of tournament exists, then the MOLS can be read directly from it; therefore, it exists if and only if n = 2, because there are no MOLS for these parameters Another balanced BTP arises in chess The player using the white pieces has an advantage because white gets to move first; therefore, the fairest possible tournament would have each player using white and black equally often Additionally, in each slot, both teams should have exactly one half of their players using white and the other half using black In this case, we must assume n even Again, the join of two MOLS A, B gives a solution to this problem The entries in A give the slots in which games are assigned and the Sports Scheduling 52-7 entries in B indicate which team plays white Specifically, aij = k means that xi plays y j in slot k, bi, j even means that xi plays white in the game against y j , bi, j odd means that xi plays black in the game against y j This method cannot be used for n = 6, but a schedule does exist, and Anderson gives its construction in [1] The third example of a constrained BTP involves the carry-over effect A team may gain an advantage if its current opponent has just played a very difficult game in the previous slot In order to fairly distribute these advantages, no two players xi and x j may play the same sequence of opponents y p followed immediately by yq A solution to this problem is a complete latin square A latin square A = aij is complete if the pairs (aij , j +1 ) are all distinct and the pairs (aij , +1 j ) are all distinct The entry ak, j = i corresponds to xi playing y j in slot k Simply finding a complete latin square is not enough because the rows not represent the players in T2 in order However, Anderson [1] gives a construction for a complete latin square that does yield a bipartite tournament of this type Russell [14] showed that if the number of teams is a power of 2, then it is possible to evenly apply the carry-over effect For other sizes, he formulated an integer program to minimize the variance of carry-over effect that found optimal values for six-team schedules, and heuristic values for slightly larger leagues 52.5 Graph Algorithms The graph theoretical model for a single round robin tournament (SRRT) among 2m teams is the complete graph K 2m The edge [i, j ] represents the game between team i and team j Then any SRRT can be presented as a 1-factorization (F , , F 2m−1 ) of K 2m where each 1-factor includes the games scheduled in one slot A 1-factorization of K 2m may also be understood as a coloring of K 2m or a decomposition of K 2m into perfect matchings To completely define the tournament schedule, the 1-factorization must be oriented The arc (i, j ) represents the game team i at team j , and the arc ( j, i ) represents the game team j at team i A 1-factorization of K 2m together with an orientation is called an oriented coloring of the graph K 2m To model a DRRT, K 2m is replaced by the oriented graph G 2m in which each pair of nodes i, j is joined by two arcs: ai, j and a j,i Then a schedule is represented by a decomposition of the arc set that is equivalent to the union of two oriented colorings of K 2m 52.5.1 Minimum Breaks Problem De Werra, who has done much work in sports scheduling, has largely focused on the SRRTP requiring minimization of the number of breaks (SRRTP-MB) Thus, many of the results described in the current section concern this particular case of the SRRTP In an oriented coloring of K 2m , there are at least 2m − breaks [3] To see this, note that there are only two possible patterns for a round robin tournament with 2m teams that have no breaks, one beginning with a home game and one beginning with an away game As discussed above, no pattern may be repeated in a feasible pattern set; thus, all but two patterns must have breaks De Werra’s algorithm for assigning venues for the games scheduled by the circle method (described above) generates a schedule with exactly 2m − breaks This result for the SRRTP-MB can be extended to the DRRTP requiring a minimization of the number of breaks (DRRTP-MB) Any decomposition of G 2m has at least 6m − breaks [3] Although nearly every team in an SRRT on an even number of teams must have a break, this is not the case for SRRTs on an odd number of teams The inclusion of byes in the pattern set increases the number of possible patterns with no breaks In fact, for each slot s , there are two patterns with a bye in s and no breaks We need only one of these patterns to form a pattern set, and thus it is possible to form an SRRT with no breaks Formally, the complete graph on an odd number of nodes K 2m+1 has an oriented factorization with no breaks [3] 52-8 Handbook of Scheduling: Algorithms, Models, and Performance Analysis Later De Werra [8] generalized these results: Let G be a d-regular factorizable graph on 2m nodes; in every oriented coloring of G , there are at least 2(m − α(G )) breaks where α(G ) is the maximum size of an independent set in G Also, any d-regular graph G has an oriented coloring with no breaks if and only if G is bipartite De Werra [15] also expanded on the circle method by showing how the canonical factorization it gives can be permuted to obtain a set of m canonically feasible factorizations, meaning that each member of the set is a permutation of the original and has 2m − breaks We have discussed the fact that an SRRT with at most one break per team is composed of pairs of teams with complementary patterns It is also clear that there are at most two breaks per slot Therefore, we can completely characterize the pattern set of an SRRT with 2m − breaks, up to a permutation of the rows, with a sequence {b1 , , bm−1 }, ≤ b1 < b2 < · · · < bm−1 ≤ 2m − that describes the slots in which breaks occur Similarly, we can completely characterize the pattern set of an equitable SRRT, i.e., one with exactly one break for each team, up to a permutation of the rows, with a sequence {b1 , , bm } Of course, not all sequences B yield canonically feasible schedules De Werra showed that a sequence B = {b1 , , bm−1 } is canonically feasible if and only if b1 ≤ 3; bi +1 − bi ≤ 2(i = 1, , m − 2); b n−1 ≥ 2m − For equitable schedules, a sequence B = {b1 , , bm } is canonically feasible if and only if b1 = 2; bi +1 − bi ≤ 2(i = 1, , m − 1); bm = 2m − From this characterization, it directly follows that there are m canonically feasible sequences for schedules with 2m − breaks and m − canonically feasible sequences for equitable schedules There are numerous special cases of the SRRTP-MB We will consider two here: an SRRTP-MB in which no team may play consecutive away games in the same geographical location, and a SRRTP-MB in which 2m teams are divided into p divisions of q teams each with constraints on the positioning of in-division and out-of-division games 52.5.2 Geographical Location Some sports leagues include pairs of teams that play in the same geographic location A well-known example of this is major league baseball (MLB) in the United States There are four pairs of MLB teams that play in the same small geographic area: the Chicago Cubs and the Chicago White Sox, the New York Yankees and the New York Mets, the San Francisco Giants and the Oakland A’s play on either side of the Bay Bridge in Northern California, and the Los Angeles Dodgers and the Anaheim Angels play within an hour of each other in Southern California An important constraint in the MLB scheduling problem requires complementary patterns for these pairs of teams This scheme is designed to maximize the attendance at the home games in the regions De Werra [15] observed that if fans are attending home games at both teams in the region in consecutive slots, they not want to see the same visiting team We have discussed the fact that an SRRT with at most one break per team is composed of pairs of teams with complementary patterns Assuming that two teams located in the same geographic area are associated with one of these pairs, Algorithm SRRTP-V can be modified to give an oriented factorization for the schedule generated by Algorithm SRRT-C with the property that no team plays consecutive away games at two teams with complementary patterns Rather than scheduling 2m at 2m − and 2m − at 2m, schedule 2m − at 2m and 2m at 2m − Then the complementary pairs are 1, 2m − 1, 2, 3, , 2m − 4, 2m − 3, 2m − 2, 2m, and it is easy to check that no team visits these teams in consecutive slots 52.5.3 Divisions There are many examples of sports leagues that organize themselves in divisions Again, MLB provides a good example of this The 30 MLB teams are divided into the National League and the American League Within each league, the teams are further subdivided into east, central, and west divisions Here we first consider the problem of a league that has two divisions of 2m teams, organized geographically In other Sports Scheduling 52-9 words, teams within a division are grouped relatively close together, but two teams in different divisions might be located a long distance from one another For this reason, the league requires teams to play divisional games on the weekdays and games between divisions on the weekends Since each team must play 2m weekend games and 2m−1 weekday games, a schedule with two games per week, one on a weekday and one on a weekend, begins and ends with a weekend game De Werra showed how to construct two oriented factorizations of the complete graph with 2m nodes, the union of which covers the weekday slots and a third oriented factorization of the bipartite graph K XY where | X | = | Y | = 2m to cover the weekend slots These are then merged to give the full schedule For the exact construction, see [15] In total, this schedule has 4m − breaks De Werra noted that this solution depends upon having an equal, even number of teams in each division Without either one of these conditions, there is no known factorization for the weekdays This result represents a significant departure from the results above in that it does not depend on a rearrangement of the canonical factorization In fact, the canonical factorization cannot be used in this case because the union of three canonical factorizations contains a triangle [3] This result can be generalized to apply to 2m teams divided into p divisions of q teams each Obviously, q must be even, and since q = is trivial, q ≥ Assuming that p = 2i with i ≥ 1, De Werra [16] showed that there exists an oriented factorization such that each team has at most three breaks, no team has consecutive breaks, in each division and each slot half the teams have home games, and the total number of breaks is (5/2) pq − 2( p + q ) A closely-related problem requires all games between divisions to be played first and all divisional games to be played at the end of the schedule Clearly, the factorization described above could be permuted to provide a solution for this problem De Werra [16] showed that this arrangement also has (5/2) pq −2( p+q ) breaks Note that this is not necessarily the minimum number of breaks De Werra also proved a lower bound of pq − q − p breaks for this problem, which is attained for p = 2, but is not generally not attained for p > 52.5.4 Minimum Irregularities Problem While simply minimizing the breaks in a schedule is desirable in some practical scheduling problems, there is a variation of SRRTP-MB that is sometimes more applicable: the SRRTP in which the number of slots with breaks is minimized (SRRTP-MS) Using MLB as an example again, all teams are required to change pattern across the all-star break In other words, no break is allowed for the slot immediately following the all-star break To construct schedules with a minimum number of irregular slots, K 2m must be partitioned into a minimum number of bipartite factors This minimum is log2 m [17] De Werra [18] showed that for a league of 2m teams, there exists an SRRT with a minimum number of irregular slots and at most m/2 log2 m breaks 52.5.5 Practical Applications Several papers in the literature [19–22] describe using a canonical factorization as the basis for solving a practical scheduling problem Schreuder [22] solved the DRRTP for the Dutch Professional Football League by first selecting an SRRT canonical schedule with minimum breaks and mirroring it to create a DRRT schedule, and secondly assigning actual teams to the patterns Schreuder is considered to have pioneered this two-phase decomposition which was later used by Russell and Leung [20], Schaerf [21], and Bartsch, Drexl, and Kroger [19], and incorporated into Nemhauser and Trick’s three-phase method [23] Russell and Leung [20] solved the scheduling problem for the Texas Baseball League which can be represented by three consecutive DRRTPs Their method follows Schreuder’s: the first phase involves generating a series of three canonical DRRT timetables, and in the second phase, enumeration is used to find the minimum cost assignment of teams to the patterns in the timetable 52-10 Handbook of Scheduling: Algorithms, Models, and Performance Analysis Bartsch, Drexl, and Kroger (BDK) [19] solved the scheduling problems of two European soccer leagues, one from Germany and the other from Austria The former requires a DRRT schedule made up of two separate SRRTS with complementary pattern sets, and the latter requires four separate SRRTs of which the second and third have complementary patterns as the first and fourth For the German league, in the first phase of the algorithm, a canonical minimum break schedule is selected, and rounds swapped in order to generate a timetable that yields a feasible schedule In phase two, teams are assigned to patterns with a smart enumeration or truncated branch-and-bound algorithm The German league’s noncompact schedule requires a third phase in which the games in each round are assigned to days of the week This is accomplished in a greedy fashion with a limited neighborhood search when an infeasibility is encountered The solution method for the compact schedule of the Austrian league follows the method of Nemhauser and Trick which will be discussed in the section on integer programming 52.6 Integer Programming An IP for the SRRTP is easy to formulate Here we let the binary variables xi j k = if i plays j in slot k, and otherwise, for i < j ∈ {1, , n} and k ∈ {1, , n − 1} (We assume n is even for simplicity.) Since there is no objective in the basic SRRTP, the IP is the feasibility problem of finding xi j k that satisfies the following constraints xi j k = ∀i ∈ 1, , n, k ∈ 1, , n − j : j >i xi j k = 1∀i , j ∈ 1, , n, i < j k xi j k binary ∀i, j ∈ {1, , n}, i < j, k ∈ 1, , n − The first constraint guarantees that every team plays exactly once in each slot The second ensures that each team plays every opponent exactly once Trick [24] called this formulation the basic-IP formulation He also suggested a strong-IP formulation that includes odd-set constraints to strengthen the one-factor constraint which provides exactly one game for each team in each slot For the SRRTP, the odd-set constraints take the form xi j k ≥ i ∈S, j ∈S / where S is a subset of teams, | S | is odd and k is a particular slot in {1, , n − 1} The odd-set constraints are too numerous to add them all to the model, but small sets can be selected for addition to the model in a branch-and-cut IP algorithm While simple to express, this IP may not be simple to solve when problem-specific constraints are added Trick benchmarked the Base-IP formulation for several constrained SRRTPs and DRRTPs We will discuss his results in the section comparing IP and CP below Rather than solving a single IP, Nemhauser and Trick [23] broke the DRRTP for the Atlantic Coast Conference (ACC) basketball teams into three phases: (i) generate pattern sets, (ii) generate timetables, and (iii) assign actual teams to patterns Here we use the term timetable to denote a schedule with games between patterns rather than actual teams Phases and are similar to the steps Schreuder used in solving the Dutch professional football league problem [22] In the Nemhauser and Trick approach, the first two subproblems are solved using IP; in the third phase, all possible solutions are enumerated The ACC DRRTP includes a number of problem-specific constraints falling into two broad categories: pattern set constraints and team-specific constraints Pattern set constraints include infeasible pattern sequences such as three consecutive home or away games, and equally distributed home weekend, away weekend, home weekday and away weekday games Team-specific constraints include fixed home and away patterns, fixed games and opponent ordering constraints These types of constraints are typical of the practical sports scheduling problems in the literature The objective in the ACC problem is to maximize 52-11 Sports Scheduling good weekend slots, i.e., weekend slots with popular match-ups, later in the season In order to maximize the number of slots between games i at j and j at i and, possibly more importantly, to simplify the problem, Nemhauser and Trick adopted a partial mirroring scheme To generate pattern sets, Nemhauser and Trick first enumerated all feasible patterns Then they used the following IP to generate pattern sets Let P be the set of patterns, and S be the set of slots The binary variable xi is if pattern i is selected and otherwise The coefficient h ik is if pattern i has a home in slot k and otherwise Similarly, the coefficient aik is if pattern i has an away in slot k and otherwise The objective coefficient bi indicates the extent to which pattern i has any bad pattern sequences like AA in the first two slots Minimize xi j k i ∈P j >i k subject to h ik xi = ∀k ∈ S aik xi = ∀k ∈ S i ∈P i ∈P xi binary ∀i ∈ P In a technical note (http://mat.gsia.cmu.edu/accmod.html), Nemhauser and Trick suggested strengthening this IP by adding a constraint to ensure that each pair of patterns has at least one slot with H-A and one with A-H After optimizing the IP, a cut is added to prevent the current solution from being regenerated Then the IP is reoptimized This process continues until all pattern sets with an objective value less than are found Given a pattern set and the partial-mirroring scheme, the timetables are generated using a model very similar to the base-IP for the SRRTP described above The final phase, assigning actual teams to patterns, is accomplished using total enumeration 52.7 Constraint Programming Constraint programming is a combinatorial approach to solving hard optimization problems that grew out of logic programming For a summary of constraint programming approaches, see, for instance, the monograph by Dechter [25] Henz chose to use CP models to solve the ACC problem specified by Nemhauser and Trick (see [23] for the original problem description and [26] for the CP approach) Henz’s CP approach for generating pattern sets is very similar to the IP approach described above In the pattern generation model, the binary variables are used to represent the home, away, or bye assignments in each slot Henz reported that the most effective search strategy seemed to be first enumerating the variables associated with the first slot and progressing to those associated with the last slot In combining patterns into pattern sets, Henz used a CP formulation very similar to Nemhauser and Trick’s strengthened IP A CP algorithm naturally searches for all feasible solutions, so there is no need to add cuts and restart an optimization process as with IP To generate complete schedules from pattern sets, Henz used an approach outlined by Cain [27] in 1977: first assign teams to patterns, then match teams in games This represents a reversal of the order in which these steps were taken by Nemhauser and Trick A single CP model is able to accomplish these two steps, although the set of variables matching teams and patterns is completely instantiated before any choices are made for the variables that pair teams into games Using a CP model rather than enumeration and reversing the order of the phases resulted in a great deal of run time savings Henz’s total run time was on the order of minutes, a substantial improvement over the 24-hour run time reported by Nemhauser and Trick 52-12 Handbook of Scheduling: Algorithms, Models, and Performance Analysis In a more recent paper, Henz, Măuller, and Thiel [28] examined the empirical performance of several different propagation algorithms on the two constraints in a number of theoretical SRRTPs and DRRTPs on n teams, n even The SRRT formulation of Henz, Măuller, and Thiel is given below (using the OPL modeling language) int n = ; range Teams [1 n]; range Slots [1 n-1]; var Teams opponent[Teams,Slots]; solve { forall (i in Teams, k in Slots) opponent[i,t]i; forall (i in Teams) alldifferent(all (k in Slots) opponent[i,k]); forall (k in Slots) onefactor(all (i in Teams) opponent[i,k]); }; An assignment opponent[i,k]=j is interpreted as i plays j in slot k The all-different constraint ensures that every team plays exactly once in each slot The one-factor constraint guarantees that each team plays every opponent exactly once An important consideration in the implementation of a CP algorithm is the trade-off between the strength of a propagation scheme and the computational time required to affect the propagation For the all-different constraint, two propagation algorithms were considered: representation of the constraint with n(n − 1) inequality constraints of the form opponent[i,k] opponent[j,k] arc-consistent propagation with respect to the constraint itself A CSP like the CP model for the SRRTP is arc-consistent with respect to a constraint if for each affected variable and each value in its domain, there is at least one instantiation of all the other affected variables which satisfies the constraint So arc-consistent propagation with respect to a constraint is propagation that makes the CSP arc-consistent with respect to that constraint For the one-factor constraint, three propagation algorithms were considered: Arc-consistent propagation with respect to the constraints opponent[i,k] i and opponent[opponent[i,k],k]=i The propagation described in (1), plus arc-consistent propagation with respect to the redundant constraint alldifferent(all (i in Teams) opponent[i,k]) Arc-consistent propagation with respect to the constraint itself Henz, Măuller, and Thiel tested these propagation algorithms on the basic SRRTP, both the SRRTP and DRRTP with randomly generated forbidden game assignments (so many, in fact, that the problems have few or no solutions), an SRRTP with an objective of minimizing carry-over, a mirrored DRRTP with the objective of minimizing breaks, a DRRTP with fixed pattern set, and the ACC problem In general, Henz, Măuller, and Thiel found that the relatively unconstrained problems were better solved by the arc-constraint Sports Scheduling 52-13 propagation of the constraints themselves but that the computational effort was not justified in the case of the more constrained problems In addition to Henz and his colleagues, Schaerf has also focused on applying CP methods to tournament scheduling problems In [21], Schaerf solved a DRRTP with added constraints typical of practical sports scheduling problems His method follows Schreuder’s two-phase decomposition framework, using a canonical factorization for the timetable and then solving a CP to assign the actual teams to positions in the timetable Added constraints include team complementarity, stadium availability, forbidden patterns for sets of teams, and constraints on the positioning of top games Schaerf selected a canonical factorization with minimum breaks and used the venue assignment algorithm proposed by De Werra [3] for improving the fairness across patterns in a DRRT In the team assignment CP, teams are assigned patterns in a ranked manner: teams involved in the top games are assigned first followed by the rest of the teams according to the degree that they are involved in the hard and soft constraints The last teams to be assigned patterns are the free teams, i.e., the teams involved in neither hard nor soft constraints Schaerf tested versions of his DRRT with different subsets of constraints softened, i.e., moved from the constraint set to the objective He reported that his team assignment CP solved all versions of the problem for n ≤ 20 but was only effective on large problem with n = 30 or 40 when almost all of the constraints were hard 52.8 Comparing IP and CP Obviously, the ACC problem provides some grounds for comparing the two methods; however, the comparison rings rather false for two reasons: (i) column generation/enumeration may be a better IP approach, and (ii) some of the run time savings found by Henz can be attributed to the reversal of phases and As a keynote address at Practice and Theory of Automated Timetabling-2002 (PATAT 2002), Trick [24] presented a paper benchmarking the two methods on various types of SRRTPs and DRRTPs Trick tested the SRRTPs and DRRTPs with randomly generated forbidden game assignments created by Henz, Măuller, and Thiel [28] He compared the performance of the Basic-IP and the standard CP formulation shown in Section 52.7 In the CP algorithm, arc-consistent propagation is used for the all-different constraint (Henz, Măuller, and Thiel Scheme 2) while the one-factor constraint is propagated using the redundant all-different constraint (again, Henz, Măuller, and Thiel Scheme 2) Trick found that basic-IP is competitive with the CP and is quicker to prove infeasibility for the larger n (in these cases, branching was not necessary) Trick also tested a divisional SRRTP in which the n teams are divided into two divisions and it is desirable to first play games between divisions then finish with divisional play This is easy to for n divisible by but cannot be done in a compact schedule for n ≡ (mod 4) Using n ≡ (mod 4), Trick fixed the first n/2 − slots with games between the divisions and put the remaining two intra-divisional games in slot n/2 Completing this SRRT with n − slots is infeasible; however, the basic-IP and the CP algorithm described above could not prove this for n > 10 in 30 of computational time Strong-IP was able to prove infeasibility without branching for all the problems tested, up to n = 22 The third test included a randomly generated linear objective function No additional constraints were included in the SRRTP Not surprisingly, the IP performed better on these instances; Trick suggested that in order for the CP to compete in these tests, a specialized search strategy would be necessary Finally, Trick tested a DRRTP with pattern set constraints First limiting the number of consecutive home or away games, he found that the constraint program was more effective in generating solutions for these instance, although the IP was able to produce a solution in a reasonable amount of time Upon the addition of a constraint preventing singleton series, however, the CP was unable to produce solutions for most instances within 30 The IP produced solutions in all cases, though slowly The addition of fixed games stymied all algorithms 52-14 Handbook of Scheduling: Algorithms, Models, and Performance Analysis 52.9 Combining IP and CP The traveling tournament problem (TTP) was introduced by Michael Trick at the Spring, 1999 INFORMS meeting The TTP was created as a simple problem (easy to state, minimal data requirements) embodying the difficult nature of any scheduling problem that combines travel and pattern set issues The TTP was formally introduced in a paper by Easton, Nemhauser, and Trick [29] and is defined as follows: Input: A set of teams T = {1, , n}; D an n × n integer distance matrix with elements dij ; l , u integer parameters Output: A double round robin tournament on the teams in T such that the length of every home stand and road trip is between l and u inclusive the total distance traveled by the teams is minimized For u = n −1, the maximum value for u, a team may visit every opponent without returning home This is equivalent to a traveling salesman tour For small u, a team must return home often, and consequently, its travel distance increases For u = 1, the objective is constant, and the problem is solely one of feasibility The benchmark instances on the web page http://mat.gsia.cmu.edu/TOURN/ have l = and u = 3, which represents a common constraint in practice These will be the parameters assumed for the remainder of this section Additionally, the benchmark instances include a constraint on repeaters, i.e., i may not play at j and host j at home in consecutive slots There is an obvious lower bound for the TTP that factors into many of its solution methodologies A team’s optimal tour minimizes the travel distance for that team exclusive of the other teams in the schedule The sum over n teams of the distances associated with their optimal tours provides a simple but strong lower bound on the TTP We will refer to this bound as the independent lower bound (ILB) Solutions have been generated using various methods The two most successful general approaches include hybrid IP–CP algorithms and heuristics such as SA and TS Here we discuss two of the former approaches; we discuss an SA approach in the following section Easton, Nemhauser, and Trick [30] published a solution methodology for the TTP based on a parallel branch-and-price (column generation) algorithm in which individual team tours are the columns Specifically, a column is given by a vector specifying whether the slot is home or away and if it is away, by the opponent in that slot A constraint programming model is used to solve the pricing problem Additionally, a CP model for a full problem is used as a primal heuristic, run on one processor during the execution of the parallel algorithm The master IP simply selects one tour for each team in the tournament Rather than branching on a single tour, however, Easton, Nemhauser, and Trick used higher order branching variables: the patterns indexed by team and slot In other words, at any given node in which the master LP value is less than the current best solution, the solution space is divided into schedules in which team t is home in slot s and schedules in which team t is away in slot s In order to select a branching variable, Easton, Nemhauser, and Trick used a strategy known as strong branching in which a small set of candidate variables are selected and tested with a limited number of simplex iterations along each branch A column pool is maintained so that it is not necessary to run the pricing problem every time the master prices out When the pricing subproblem is called, it is run once for each team, generating all possible negative reduced cost tours within a given time increment The final component of the Easton, Nemhauser, and Trick solution methodology is a primal heuristic that makes use of an expanded version of the constraint program for the pricing problem, i.e., the primal heuristic works on the whole schedule, as opposed to just one tour Simply running this CP does not produce good solutions quickly; however, by fixing certain elements it is able to generate solutions within an n-dependant percent of the ILB in a reasonable amount of time Specifically, n/2 teams are selected to play one of their optimal tours For a given set of fixed teams, the primal heuristic is run for a specific time interval, outputing improved solutions as they are obtained 52-15 Sports Scheduling Easton, Nemhauser, and Trick were able to solve to optimality multiple instances of the TTP with up to n = teams within a reasonable amount of time Benoist, Laburthe, and Rottembourg [31] also published a hybrid IP-CP solution methodology for the TTP In this approach, CP is the basic algorithm and a specialized TSP code is used to solve the subproblems The basic formulation is similar to that given above: columns are individual team tours In this case, however, the specific visiting teams are included The effect of this interpretation is that each tour carries more information, but the total number of possible tours to consider is substantially increased Benoist, Laburthe, and Rottembourg found that this is the stronger formulation in terms of their framework The main CP model includes a representation of the DRRT constraints plus the two TTP specific constraints In addition, a global constraint is used to compute a lower bound by Lagrangian relaxation Benoist, Laburthe, and Rottembourg compared three strategies in their computational tests using different degrees of lower bounding within the main CP Their most sophisticated algorithm was able to achieve optimality for n = and n = Its best solutions for n = and n = 10 were 3.4 and 17 percent over the ILB, respectively A hybrid IP–CP algorithm is a natural choice for the TTP since it has feasibility elements (the home and away pattern) and optimality elements (the travel distance) Prior to introducing the TTP, however, Trick [32] proposed a combined algorithm for the minimum break problem In his approach, Trick decomposed the SRRTP-MB into two phases: (i) matching teams in games, and (ii) assigning venues A CP model was used to accomplish the first task Game assignment was easy for large n in the absence of any specialized constraints Additionally, the problem remained easy with the addition of fixed match-ups Adding a carry-over constraint had an adverse effect on run time to the extent that the algorithm took on the order of a day to find a solution for instances with n = 10 The second phase was more difficult to solve than the first Trick used an IP model The variables were start[i]=1 if team i starts at home and otherwise; to_home[i,k]=1 if team i goes home after slot k and otherwise; to_away[i,k]=1 if team i goes away after slot k and otherwise Auxiliary variables were defined to represent whether a team is home or away in slot k For example, at_home[i,k]=home[i]+sum_{k’

Ngày đăng: 02/03/2020, 13:49

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan