ebook img

Surveys in Combinatorial Optimization PDF

385 Pages·1987·6.875 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Surveys in Combinatorial Optimization

NORTH-HOLLAND MATHEMATICS STUDIES 132 Annals of Discrete Mathematics (31) General Editor: Peter L. HAMMER Rutgers University, New Brunswick, NJ, U.S .A. Advisory Editors C. BERGE, Universite de Paris, France M. A. HARRISON, University of California, Berkeley, CA, U.S.A. V: KLEE, University of Washington, Seattle, WA, U.S.A. J. -H. VAN LINT, California Institute of Technology,P asadena, CA, U.S.A. G. -C.R OTA, Massachusetts Institute of Technology,C ambridge, MA, U.S .A. NORTH-HOLLAND -AMSTERDAM NEW YORK 'OXFORD 'TOKYO SURVEYS IN COM BI NATORIAL OPTIMIZATION Edited by Silvano MARTELLO DEIS - University of Bologna Italy Gilbert LAPORTE Ecole des H. E. C. Montreal, Quebec, Canada Michel MINOUX CNET Paris, France Celso RlBElRO Catholic University of Rio de Janeiro Brazil 1987 NORTH-HOLLAND -AMSTERDAM .NEW YORK 'OXFORD ,TOKYO Elsevier Science Publishers E.V., 1987 All rights reserved. No part of this publication may be reproduced, stored in a retrievalsystem, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording or otherwise, without the priorpermission of the copyright owner. ISBN: 0 444 70136 2 Publishers: ELSEVIER SCIENCE PUBLISHERS B.V. P.O. Box 1991 1000 BZ Amsterdam The Netherlands Sole distributors forthe U.S.A. andCanada: ELSEVIER SCIENCE PUBLISHING COMPANY, INC. 52Vanderbilt Avenue NewYork, N.Y. 10017 U.S.A. ilrr:~r\ (4( ',tllgrcr\( 'ai;illigiiig-iii-Pl,blicatinll h a Surveys in corbinatorinl optimizntion. (iiorth-IIolland mathematics fitdies ; 13 ) (Anrmls of discrete rrnti~entitics ; 31) "2ased on a series of tutorial lectures i4vt-n at the School on Con'ciiatorial Qtirnizat.icr1, held at the Federal "rivrrsity cf riio de Janeiro, nrezil, July L-19, 190i"-- CIP fwd. 1. Coirb-liiatorial oFtici;x.ticn. 1. Martello, Silvano. 11. Series. 111. Gerics: Aiinals rif discrete nathematics ; 31. C$4OU.5.S..5 lC,~'j 519 ;I -. 41. ICBK 0-444-701j PRINTED IN THE NETHERLANDS V FOREWORD This book is based on a series of tutorial lectures given at the School on Combi- natorial Optimization. held at the Federal University of Rio de Janeiro, Brazil, July 8 - 19, 198.5. Over 100 participants benefitted from the high quality of the tutorial lectures and technical sessions. This event was the first of its kind held in Latin America and undoubtedly contributed to the diffusion of knowledge in the field of Com- binato rial Opt im iza tion. I would like to take this opportunity to acknowledge with pleasure the efforts and assistance provided by Professors Ruy Eduardo Campello, Gerd Finke, Peter Hammer, Gilbert Laporte, Silvuno Martello, Michel Minoux and Celso Ribeiro in the organization of the School. I am also very grateful to CNPq Conselho - Nacional de Desenvolvimento Cientifico e Tecnoldgico and to FINEP Financia- - dora de Estudos e Projetos of the Brazilian Ministry of Science and Technology, who provided financial support for this stimulating meeting. Nelson Maculan, chairman Rio de Janeiro, 1985 Vii PREFACE Ever since the field of Mathematical Programming was born with the discovery of the Simplex method by G.B. Dantzig in the late 1940s, researchers have devoted considerable attention to optimization problems in which the variables are constrained to take only integer values, or values from a finite or discrete set of numbers. After the first significant contributions of R.E. Gomory to the field of Integer Programming, discrete optimization problems were to attract growing interest, partly because of the fact that a large number of practical applications of Opera- tions Research techniques involved integrality constraints, and partly because of the theoretical challenge. During the same period, Graph Theory had been developing, providing a natural and effective conceptual framework for expressing and sometimes solving combi- natorial problems commonly encountered in applications, thus giving rise to network flow theory, matroid theory and complexity theory. What is nowadays referred to as Combinatorial Optimization therefore derives from the combination and cross-fertilization of various research streams, all developed somewhat independently over the past two or three decades (such as Graph Theory, Integer Programming, Combinatorics and Discrete Mathematics). The present volume is an attempt to provide a synthetic overview of a number of important directions in which Combinatorial Optimization is currently deve- loping, in the for& of a collection of survey papers providing detailed accounts of recent progress over the past few years. A number of these papers focus more specifically on theoretical aspects and fundamental tools of Combinatorial Optimization: ((Boolean Programming)) and ((Probabilistic Analysis of Algorithms)). From the computational point of view, a good account of recent work on the use of vector processing and parallel computers for implementing algorithms will be found in the paper on ((Parallel Computer Models and Combinatorial Algorithms)). In addition, substantial space has been allocated to a number of well-known problems, which have some relation with applications, but which are addressed here as prototypes of hard-to-solve combinatorial problems, and which, as such, have traditionally acted as stimulants for research in the field: we refer, in parti- cular, to the papers on ((The Linear Assignment Problem ((The Quadratic >), Assignment Problem)), ((The Knapsack Problem)) and ((The Steiner Problem in Graphs)). Besides these, it also seemed important that the wide applicability of the techniques and algorithmic tools developed in the field of Combinatorial Optimi- Viii Prefoce zation be illustrated with a number of more complicated models chosen for their technical, industrial or economic importance. Accordingly, the reader will find a number of applications oriented papers devoted to combinatorial problems arising in such practical contexts as: communication networks (((Network Synthe- sis and Dynamic Network Optimization))), location and routing (((Single Facility Location Problems on Networks)) and ((The Vehicle Routing Problem))), manufac- turing and planning in production systems (((Scheduling Problems))). All the survey papers included herein have been written by well-known specia- lists in the field, with particular emphasis on pedagogical quality (in this respect, special mention should be given to the bibliography which contains almost 1000 titles) and, as far as possible, completeness. The Editors wish to thank the participants of the School on Combinatorial Optimization for their valuable comments and criticisms on preliminary versions of the papers. The financial support of the Federal University of Rio de Janeiro, the National Research Council of Italy and the ficole des Hautes etudes Commer- ciales de MontrCal is gratefully acknowledged. We hope that this volume will be considered as a milestone in the rich and fast evolving field of Combinatorial Optimization. Silvano Martello Gilbert Laporte Michel Minoux Celso Ribeiro Annals of Discrete Mathematics 31 (1987) 1 - 60 0 Elsevier Science Publishers B.V. (North-Holland) SELECTED TOPICS IN SCHEDULING THEORY Jacek BZAZEWICZ 1. Introduction This study is concerned with deterministic problems of scheduling tasks on machines (processors), which is one of the most rapidly expanding areas of combinatorial optimization. In general terms, these problems may be stated as follows. A given set of tasks is to be processed on a set of available processors, so that all processing conditions are satisfied and a certain objective function is minimized (or maximized). It is assumed, in contrast to stochastic scheduling problems, that all task parameters are known a priori in a deterministic way. This assumption, as will be pointed out later, is well justified in many practical situations. On the other hand, it permits the solving of scheduling problems having a different practical interpretation from that of the stochastic approach. (For a recent survey of stochastic scheduling problems see [117, 1181). This interpretation is at least a valuable complement to the stochastic analysis and is often imposed by certain applications as, for example, in computer control systems working in a hard -real -time environment and in many industrial applica- tions. In the following we will emphasize the applications of this model in com- puter systems (scheduling on parallel processors, task preemptions). However, we will also point out some other interpretations, since tasks and machines may also represent ships and dockyards, classes and teachers, patients and hospital equipment, or dinners and cooks. To illustrate some notions let us consider the following example. Let us assume that our goal is to perform five tasks on three parallel identical processors in the shortest possible time. Let the processing times of the tasks be 3, 5, 2, 1, 2, respectively, and suppose that the tasks are to be processed without preemptions, i.e. each task once started must be processed until com- pletion without any break on the same processor. A solution (an optimal schedu- le) is given in Fig. 1. I, where a Gantt chart is used to present the assignment of the processore to the tasks in time. We see that the minimum processing time for these five tasks is 5 units and the presented schedule is not the only possible solution. In this case, the solution has been obtained easily. However, this is not generally the case and, to construct an optimal schedule, one has to use special algorithms depending on the problem in question. 1 2 J. BIaiewicz Processors ~ PI T2 I p2 T2 Idle time p3 TI c I I In this paper we would like to present some important topics in scheduling theory. First, and interpretation of its assumptions and results, especially in computer systems, is described and some other applications are given. Then a general approach to the analysis of scheduling problems is presented in detail and illustrated with an example. In the next two sections, the most important results, in our opinion, concerning the classical scheduling problems with parallel machines and in job systems, are summarized. These include "-hardness results and optimization as well as approximation algorithms with their accuracy evalua- tion (mean or in the worst case). Because of the limited space we have not been able to describe all the existing results. Our choice has been motivated first by the importance of a particular result, e.g. in the case of algorithms, their power to solve more than one particular scheduling problem. This is, for example, the case with the level algorithm, network flow or linear programming approaches. Secondly, our choice has been influenced by the relevance of the results present- ed to a computer scheduling problem. Hence, not much attention has been paid to enumerative methods. However, in all the considered situations we refer to the existing surveys which cover the above issues in a very detailed way. New directions in scheduling theory are then presented, among which special attention is paid to scheduling under resource constraints and scheduling in microprocessor systems. An Appendix for the notations of scheduling problems can be found at the end of this study. 2. Basic Notions 2.1. Problem formulation In general, we will be concerned with two sets: a set of n tasks ."7 = = { T,, T,, . . . , T,,} and a set of m processors 9={P I,P z, . . . , P,}. There are two general rules to be followed in classical scheduling theory. Each task is to be processed by at most one processor at a time and each processor is capable of processing at most one task at a time. In Section 6 we will show some new applica- tions in which the first constraint will be removed. We will now characterize the processors. They may be either parallel, perform- Selected topics in scheduling theory 3 ing the same functions, or dedicated, i.e. specialized for the execution of certain tasks. Three types of parallel processors are distinguished depending on their speeds. If all processors from set 9h ave equal task-processing speeds, then we call them identical processors. If the processors differ in their speeds, but the speed of each processor is constant and does not depend on the tasks of cTt,h en they are called uniform. Finally, if the speeds of the processors depend on the partic- lar task which is processed, then they are called unrelated. In the case of dedicated processors, there are three modes of processing: flow shop, open shop and job shop systems. In a flow shop system each task from set cym ust be processed by all the processors in the same order. In an open slzop system each task must also be processed by all processors, but the order of processing is not given. In a job shop system the subset of processors which are to process a task and the order of the processing are arbitrary, but must be specified a priori. We will now describe the task set in detail. In the case of parallel processors each task can be processed by any given processor. When tasks are to be processed 5 on dedicated processors, then each E y i s d ivided into operations Oil, Oiz, . . . , Ojkj, each of which may require a different processor. Moreover, in a flow shop system, the number of operations per task is equal to m and their order of pro- <, cessing is such that Oil is processed on processor Ojz on 4,a nd so on. Moreover, the processing of Oj,i-, must always precede the processing of Oii, j = 1, 2, . . . , n, i = 2,. . . , m. In the case of an open shop system, each task is also divided into m operations with the same allocation of the operations to processors, but the order of processing operations is not specified. In ajob shop system, the number of operations per task, their assignment to processors and the order of their processing, are arbitrary but must be given in advance. Task E ,?is characterized by the following data. 1. A vector of processing times - fi = [pjl,p jz,. . . ,pi,], where pii is the q. time needed by processor P, to complete In the case of identical processors we have pji = pi, i = 1, 2, . . . , m. If the processors in 9 are uniform then pji = = pi/bi, i = 1, 2, . . . , m, where pi is a standard processing time (usually on the 4.. slowest processor) and bi is a processing speed factor of processor 2. An arrival time (a ready time) - ri, which is the time at which 1; is ready for processing. If for all tasks from .Fthe arrival times are equal, then it is assum- ed that rj = 0,j = 1, 2, . . . , n. 3. A due-date -di. If the processing of must be completed at time di, then dj is called the deadline. q. 4. A weight (priority) - wj,w hich expresses the relative urgency of Below, some definitions concerning task preemptions and precedence con- straints among tasks are given. The mode of processing is called preemptive if each task (each operation in the case of dedicated processors) may be preempted at any time and restarted later at no cost, perhaps on another processor. If the preemption of any task is not 4 .I. Blaiewicz allowed we will call the scheduling nonpreemptive. In set Fprecedence constraints among tasks may be defined. 7; < 7; means T q that the processing of must be completed before can be started. In other words, set cyis ordered by a binary relations <. The tasks in set Fare called dependent if at least two tasks in cTa re ordered by this relation. Otherwise, the tasks are called independent. A task set ordered by the precedence relation is usually represented as a directed graph (a digraph) in which nodes correspond to tasks and arcs to precedence constraints. An example of a dependent task set is shown in Fig. 2.1 (nodes are denoted by ?/pi). Let us notice that in the case of dedicated processors (except in the open shop system) operations that constitute a task are always dependent, but tasks can be either independent or dependent. It is also possible to represent precedence constraints as a task-on-arc graph, which is also called an activity network representation. Usually, the first approach is used, but sometimes the second presentation may be useful and we q will mention these cases in what follows. Task will be called available at moment t if ri S t and all its predecessors (with respect to the precednece con- traints) have been completed at time t. Now we will give the definitions concerning schedules and optimality criteria. A schedule is an assignment of processors from set 9 to tasks from set 9 in time such that the following conditions are satisfied: - at every moment each processor is assigned to at .most one task and each task is processed by at most one processor; - task q is processed in time interval [ri, DO); - all tasks are completed; - for each pair T,7 ;, such that q. < Ti, the processing of ';. is started after the completion of T, ; - in the case of nonpreemptive scheduling no task is preempted (the schedule is called nonpreemptive), otherwise the number of preemptions of each task is Fig. 2.1. An example of a task set.

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.