One of the fundamental online problems from computer science is the ... We consider a two-level memory system with a small fast memory cache (k pages) and.
DISCRETE ONLINE AND REAL-TIME OPTIMIZATION Thomas Winter and Uwe Zimmermann1 Abstract Discrete Optimization techniques have become a major and successful tool for modelling and solving many real world problems. In modelling real-time applications, we often have to face the inherent diculty that an essential part of the data arrives sequentially in real-time, and that decision support is requested at the same time. Online and real-time algorithms are designed to handle such diculties. We review some theoretical and practical aspects of online algorithms. Starting with theoretical concepts for performance evaluation, we survey typical results for classical optimization problems of discrete structure. Finally, we describe results on solving Discrete Optimization models for some real-time applications.
Discrete Optimization has become a major and successful tool in modelling and solving real world problems arising in computer science, in economics, and in engineering. This success is based on two essential facts: computation times have decreased dramatically by the improvement of algorithmic techniques and hardware, and the data of the considered applications are available or can be collected in electronic form. In fact, in most of these applications we make the implicit assumption that all data of the respective model are known in advance so that we may compute solutions \oine" before decisions have to be made. In our daily experience, however, we face the fact that decisions have to be made while an important part of the model data is still unknown. This is an inherent diculty of many 1
Abteilung Mathematische Optimierung, TU Braunschweig, Pockelsstrae 14, D-38106 Braunschweig
applications which forces the computation of \online" solutions. Since online solutions have to be computed in the time interval between successive decisions occurring in the application, we face a second diculty: computation time is de nitely bounded by some real-time requirement. Online problems arising from economics have been of practical and theoretical interest since the 1960s, but for a long time no theoretical background for classifying the performance of online algorithms was available. In their seminal work Sleator and Tarjan [53] studied online list search and paging problems, and developed the concept of competitiveness for the evaluation of online algorithms. By now, no such concept is known for real-time algorithms. Everyday, we face online and real-time problems, beginning with our daily trip from home to work. If we go by car, we have to decide online and in real-time which way to drive without running into trac jams or passing congested streets. An optimal path from home to work would be a path which requires the least time. Oine - with complete information about congestion over time - an optimal solution can easily be computed. In practice, we receive bits of information on some roads from time to time and we have to adapt our path online and within short real-time intervals. A dierent problem occurs when we use public transport. At rst, we have to decide which ticket to buy. From time to time, a colleague may be willing to take us home in his car for free so that we do not know beforehand how often we will actually use the ticket. What is the best choice among the dierent kinds of tickets oered in order to minimize travel cost? Here, we will review the basic known concepts and discuss some corresponding applications from computer science and from public dispatch, which have been modelled and solved by Discrete Optimization tools.
The Concept of Competitive Analysis An algorithm is called online, if it receives its input data as a sequence of requests. After the arrival of a request, it has to compute an answer without information on the future, in particular before the next request becomes available. For the evaluation of the performance of an online algorithm, we may consider the sequence of requests as the instance of an \oine" cost minimization problem and the sequence of the answers as a feasible solution. The online algorithm tries to minimize cost for the \online" version of the minimization problem, but due to the lack of complete information it will usually fail to generate an oine-optimal solution. Let CostOPT () and CostA() denote the cost of an oine-optimal solution and the solution computed by the online algorithm A. In competitive analysis, introduced by Sleator and Tarjan [53], the online algorithm is called c-competitive if for all request sequences :
CostA() c CostOPT () + b : where b is some constant. The in mum over all values of c for which the online algorithm is c-competitive is called the competitiveness factor of the algorithm. The best possible competitiveness factor is called the competitiveness factor of the online problem and re ects the inherent value of the lost complete information from a pessimistic (worst case) point of view. An online algorithm achieving the best possible competitiveness factor is called strongly competitive. Competitiveness factors describe an upper bound on the worst case performance of an online algorithm in relation to the oine-optimal solution. Cum grano salis, any request sequence yields a lower bound CostA=CostOPT for the worst case performance of an online algorithm. As in worst case analysis, we may think in a game theoretic setting where an adversary of the online algorithm tries to generate a request sequence maximizing the lower bound. If a request sequence yields the same lower bound l for all online algorithms, then l is a lower bound on the competitiveness factor of the online problem.
During the last decade, hundreds of articles have been published on online problems, online algorithms, and the corresponding competitiveness factors. Competitive analysis provides a nice theoretical concept for the performance evaluation of online algorithms. However, it has been criticized for its failure to capture the seemingly quite dierent practical performance of certain well established online algorithms. This criticism lead to many variations of the concept all of which have certain merits and certain drawbacks. Online algorithms can be viewed as approximation algorithms for the oine minimization problem. In particular, a c-competitive online algorithm is (c ? 1)-approximate. In view of applications, in the design of approximation algorithms speed is of rst priority. Therefore, many approximation algorithms are simply structured and can be performed online. In particular for NP -hard problems, we are interested in polynomial time approximation algorithms. On the other hand, time complexity is not considered in competitive analysis. There is no bound on the computation time for an answer generated by an online algorithm. However, most online applications require that answers are computed online and within some xed time interval. The length of this interval is closely connected to the time intervals in which the sequence of requests arrive. Thus, a real-time algorithm may be de ned as an online algorithm that generates answers in constant or, at least, in \suitably" low polynomial time. A concept for the evaluation of the performance of real-time algorithms, that combines approximation aspects and time complexity in a convincing manner, would be of great value for the applications but is not known, by now.
Paging and Serving One of the fundamental online problems from computer science is the paging problem. We consider a two-level memory system with a small fast memory cache (k pages) and with a large slow memory (n pages). Only in-cache pages allow direct access. A caching operation consists in replacing some in-cache page by a requested page from slow memory. An instance of the paging problem is described by the sequence of page requests. The objective is to minimize the number of caching operations used to serve these requests.
For oine paging, the complete sequence of page requests is known in advance. Then an optimal strategy is well known. If necessary, a requested page from slow memory replaces the page the next request of which occurs furthest in the future among all other in-cache pages. For online paging, only one page request is known and has to be served before the next request is issued. Well known deterministic online strategies are Least Recently Used (LRU), First-In-First-Out (FIFO), and Least Frequently Used (LFU). The names of these strategies de ne the in-cache page to be replaced when necessary. LRU and FIFO are k-competitive whereas there exists no constant c such that LFU is c-competitive. Sleator and Tarjan prove that k is a lower bound for the competitiveness factor of online paging. Thus, LRU and FIFO are both strongly competitive. Already the paging problem shows that competitive analysis might not completely capture the practical behavior of online algorithms. With increasing cache size the competitiveness factors of strongly competitive algorithms increase. In practice, however, LRU as well as LIFO perform better with increasing cache sizes. Another drawback is that competitive analysis claims optimal performance for both LRU and FIFO, whereas LRU performs much better in practice [3]. For a more detailed survey on the paging problem we refer to Irani [34]. Another fundamental, more general online problem from computer science is the k-server problem. On a set S of points in a given metric space, k mobile servers are to be located. A request de nes a point in S which has to be served by one of the servers. If there is no server at the request point one of the servers has to be moved. The objective is to minimize the total length of the moves. The paging problem is a special case of the k-server problem. Manasse et al. [48] prove that k is a lower bound on the competitiveness factor of any online algorithm for the k-server problem. Koutsoupias and Papadimitriou [45] describe an (2k ? 1)-competitive algorithm for k 3. Manasse et al. [48] conjecture the existence of a k-competitive online algorithm. For a more detailed survey we refer to Chrobak and Larmore [18].
Randomization and Adversaries All online algorithms mentioned so far are of deterministic nature. Facing a randomized online algorithm an adversary looses complete information which should result in weaker lower bounds. The performance of randomized online algorithms has rst been studied by Ben-David et al. [10]. They introduce three kinds of adversaries: the oblivious adversary and the adaptive online resp. oine adversary. All three adversaries know the structure of the online algorithm including the probability distributions used for the randomized reactions of the online algorithm. An oblivious adversary generates the request sequence in advance without knowledge of the speci c reaction (answer) of the online algorithm. The cost of the solution of the online algorithm is compared to the cost of an optimal oine solution. Both adaptive adversaries generate each request knowing the previous answers of the online algorithm. An adaptive online adversary has to serve its own requests simultaneously to the online algorithm before the next request is generated. The cost of the solution of the online algorithm and the cost of the solution of the adaptive online adversary are compared. For an adaptive oine adversary, the cost of an optimal oine solution are used for comparison. For a randomized online algorithm RA the cost CostRA are random variables. The same holds for the cost CostADV of the solution assigned to the adaptive adversaries. Therefore, the expected values of the cost are compared, i. e. a randomized online algorithm is called c-competitive if for some constant b
E [CostRA ()] c E [CostADV ()] + b : The competitiveness factor cADV RA denotes the in mum of all such c. Obviously, the oblivious adversary and the adaptive online adversary lead to smaller or equal competitiveness factors in comparison with the adaptive oine adversary. Ben-David et al. [10] closely study the relative performance and the merit of randomization. In particular, in the case of adaptive oine (resp. online) adversaries, a c-competitive randomized algorithm implies the existence of a c-competitive (resp. c2-competitive) deterministic algorithm. Deng and Mahajan [22] consider the cost of derandomization in the context of computability.
For paging, randomized online algorithms for an oblivious adversary are intensively discussed. Fiat et al. [26] prove that Randomized Marking is 2Hk -competitive. Hk denotes the k-th Harmonic number which is O(ln k). McGeoch and Sleator develop a quite complicated Hk -competitive randomized online algorithm [49] and Achlioptas, Chrobak and Noga [1] describe a simpler Hk -competitive randomized online algorithm using O(k2) time per request. Lower bounds are usually derived using a game theoretic result, observed by Yao [59] and by Borodin, Linial and Saks [16]. For a probability distribution P on the request sequences, a (deterministic) online algorithm A is called c-competitive for P , if
EP [CostA()] c EP [CostOPT ()] + b : for some constant b. Let cPA denote the in mum of all such c, then inf cOBL = sup inf cP : RA RA A A P
for oblivious adversaries OBL. Selecting a suitably bad probability distribution for which cPA l can be proved for all deterministic online algorithms A, yields a lower bound l. Fiat et al. [26] prove the lower bound Hk when the number of pages exceeds k + 1. For a more detailed survey on the paging problem we refer again to [34].
Alternative Concepts As observed above, competitive analysis does not provide a tool for the evaluation of the practical performance of online algorithms. In particular, as a worst case measure, it does not allow to focus on classes of inputs which are of practical relevance. Addressing these concerns, Koutsoupias and Papadimitriou [45] introduce two re nements of competitive analysis: the diuse adversary model and comparative analysis. A diuse adversary selects a probability distribution D for the input sequences from an underlying class of distributions . This class is known to the deterministic online algorithm A and provides valuable information in order to predict the request sequence. The
diuse adversary maximizes the competitiveness factor [CostA()] cA() = sup EED[Cost ()] D2 D
OPT
The competitiveness factor of the online problem with respect to the diuse adversary is
c() = inf c () A A where the in mum is taken over all online algorithms. A further discussion of the diuse adversary can be found in Young [60]. In order to get rid of the comparison with oine-optimal cost, in comparative analysis two classes A and B of algorithms are compared. In particular, A contains the online algorithm and B contains online strategies the respective adversary may apply. We may think of two players in a game theoretic min ? max setting. The resulting competitiveness factor of the players for the online problem is
CostA() c(A; B) = sup Ainf sup 2A Cost ( ) B2B
B
Koutsoupias and Papadimitriou prove that LRU achieves the competitiveness factor of online paging with respect to some diuse adversaries. For paging and for metrical tasks systems (cf. [14]), they use comparative analysis to show that some limited knowledge on future requests is indeed helpful. In particular, they prove that c(A0; Al ) = l +1 for paging and that c(A0; Al ) = 2l + 1 for metrical task systems, where Ai denotes the class of all online algorithms with lookahead i. For online nancial problems, we refer to a survey of El-Yaniv [24]. Most approaches for the management of money model uncertainty by stochastic processes. El-Yaniv, however, focuses on the use of competitive analysis and similar worst case measures. He discusses search problems, replacement problems, portfolio selection, and leasing problems. In particular, in online portfolio selection problems further dierent classes of adversaries, e. g. statistical adversaries, are introduced. This concept goes back to Raghavan [50] who applied it successfully to special portfolio problems (cf. also [17, 23]).
Discrete Optimization Problems In classical bin packing, n items of dierent size have to be packed into bins of xed size. The number of bins used is to be minimized. Bin packing is NP -hard. In the online version, the items form the input sequence and have to be packed online. Galambos and Woeginger [28, 58] consider online bin packing in bounded space where only a xed number of bins may be considered at the same time. Most competitiveness results for online bin packing are asymptotic results [29]. Already in 1973, Johnson [35] compares an online algorithm to the optimal oine strategy, and in 1980, Yao [59] applied an adversary argument for deriving a lower bound. The well known approximation ratios of some online applicable approximation algorithms imply 17 ), and Best Fit ( 17 ) [21, 36]. competitiveness ratios , e. g. Next t (2), First Fit ( 10 10 Yao proposes the rst online algorithm, called Revised Harmonic, with an asymptotic com1 petitiveness factor less than h1 := P t ?1 1 1:69103 for the sequence ti+1 := ti(ti ? 1) + 1, i=1 ti := 2. By now, the best known online algorithm is 1:5888-competitive (cf. Richey [51]). The current best lower bound 1:5401 is derived by Van Vliet [55, 54]. For k-bounded space bin packing, where k denotes the number of bins allowed to be open at the same time, Lee and Lee [46] show the lower bound h1. A bounded space version of Best Fit is 17 10 -competitive. Lee and Lee propose the Harmonic online algorithm, which is asymptotically strongly competitive for k to 1. Bentley et al. [11] and Coman et al. [19] discuss the average case analysis for uniformly distributed item sizes. Asymptotically, Next Fit is 34 -competitive (cf. Coman et al.), First Fit and Best Fit are 1-competitive (cf. Bentley et. al.). For a more detailed survey on average case results and wasted space, we refer to Csirik and Woeginger [21] and Coman et al. [36]. For the one dimensional bin covering problem, Csirik and Totik [20] prove the asymptotic lower bound 2, and describe the asymptotically strongly competitive Dual Next Fit algorithm. i
Online versions of many NP -hard scheduling problems have intensively been discussed.
In 1966, Graham [30] considered the minimization of the total completion time for n jobs on m identical parallel machines. In the online version, the jobs are of unknown size and arrival time and form the input sequence. Graham develops the logarithmic time algorithm List, and derives its approximation ratio 2 ? m1 . As List can be applied online, Graham's result may be interpreted as the rst competitiveness result for online scheduling. Faigle et al. [25] prove that List is the best-possible online algorithm for two and three machines. In 1997, Albers [2] describes an 1:923-competitive online algorithm (cf. [9, 40]). For suitably large m, she proves the lower bound 1:852. Bartal et al. [9] describe a strongly competitive randomized online algorithm with competitiveness factor 34 . In another online setting for scheduling, arriving jobs may be accumulated for some time in order to achieve better global scheduling. We refer to Sgall [52] for a detailed description of the dierent online scheduling problems. If preemption is allowed, a 1-competitive algorithm for m identical machines is known [52]. Hall et al. [31, 32] consider oine and online approximations for minimizing the average completion time. For several scheduling problems, they describe a 4-competitive online algorithm, called Greedy-Interval. For minimizing the total completion time, it is 3-competitive. Online transportation and (bipartite) matching problems have been investigated in [38, 42, 43]. For a comprehensive survey, we refer to Kalynasundaram and Pruhs [38]. For unweighted maximum matching in bipartite graphs with 2n vertices, Karp et al. [42] describe a randomized algorithm generating a matching of expected size m(1 ? 1e ) + o(m) where m n denotes the size of a maximum matching. For the unweighted b-matching problem, Kalyanasundaram and Pruhs achieve a similar asymptotic result (for suitably large b) for a deterministic online algorithm. For the weighted matching problem in bipartite graphs with m + n vertices, n m, Kalyanasundaram and Pruhs [37] and Khuller et al. [43] show that, in the case of arbitrary cost, competitiveness factors depend on the cost coecients. If the cost coecients satisfy the triangle inequality, the deterministic online algorithm Permutation is (2m ? 1)-
competitive whereas the natural Greedy algorithm is only (2m ? 1)-competitive. For the weighted transportation problem in bipartite graphs, where the capacity of each of the m server vertices is k, the online Greedy algorithm remains (2m ? 1)-competitive and the online Permutation algorithm is (km)-competitive. An online version of the traveling salesman (path) problem with release times is considered by Ausiello et al. [6, 7]. The salesman travels in some metric space and is not required to return to the origin. For an arbitrary metric space, the Greedy algorithm is 25 -competitive. Greedy requires superpolynomial time per request unless P = NP . A polynomial-time 3-competitive online algorithm can be developed based on the minimum spanning tree relaxation. A lower bound is 2, even for the case of the real line. For traveling salesman tours [7] a modi cation of Greedy is 2-competitive for any arbitrary metric space. Ausiello et al. show that this is best possible for deterministic online algorithms. For related open questions, we refer to the survey of Kalyanasundaram and Pruhs [38]. For online graph coloring, we refer to a comprehensive survey of Kierstead [44]. By now, the best randomized online algorithm (cf. Halldorson [33]) is O(n=ln n)-competitive for graphs with n vertices. Further discrete online optimization problems include online searching and navigation (cf. survey of Berman [12]), load balancing (cf. Azar [8]), and network routing (cf. Leonardi [47]).
Real-time Dispatch and Manufactoring In particular, online and real-time problems occur in transportation and logistics. The daily dispatch in depots is severely in uenced by online eects which require reaction within tight time bounds. The local dispatch of public transportation vehicles, e. g. trams, in storage yards is discussed in Winter and Zimmermann [57]. Trams arrive according to the local time schedule at the storage yard and, within a short time interval, have to be assigned to a location. Topologically, the storage yard consists in a number of stacks. At the same time, a round trip from the next period of the local time schedule should be planned for the arriving
tram. Such assignments must satisfy several side constraints. The trams are grouped into dierent types and only trams of a speci ed type are allowed to serve a certain round trip. Usually, caused by delays the actual arrival sequence diers from the planned time schedule and the dispatcher has to face a real-time problem. One objective on the storage yard is to minimize the number of trams to be shunted on arrival or at departure. In [56], a lower bound on the competitiveness factor of this online problem is derived which is linear in the number of arrivals. A trivial upper bound is n2 . In another model without shunting the number of type violations has to be minimized. The oine versions of both problems are modelled as integer programming problems. The rst model is a combination of two 0{1{quadratic assignment problems, the second model is a linear integer programming problem. Based on these two oine models, a real-time algorithm is developed which performs well on real-world data of several German storage yards. In particular, when the arrival sequence diers only in some intervals of bounded length from the expected arrival sequence, a local rescheduling procedure is proposed which runs in polynomial time with small competitiveness factor. A particular subproblem consists in assigning all trams from the storage yard to the early morning time schedule (cf.[13]). In practice, this NP -hard problem has to be solved in real-time. When trams fail to start, e. g. due to frozen brakes in winter, the dispatcher has to reschedule trams within the very tight time intervals from the early morning departure schedule. For real world instances, the existence of shunting-free solutions can be tested using a dynamic programming approach in polynomial time for xed size of the storage yard. For the minimization of shunting, a reactive tabu search heuristic derives very good solutions, which are usually shunting-free and thus optimal. Many online problems occur at seaport container terminals. Typically, a high percentage of the export containers, which are scheduled to leave on a particular container-ship, arrive late at the terminal when the ship is already being serviced. The export containers have to be stowed on board of the ship satisfying several operational as well as security requirements. Each container is temporarily stored on the terminal's yard, partly again
in small stacks, before it reaches its nal location in some stack on board. Special cranes are used to move containers on board whereas the land-side transport from the location on the yard to the crane area is carried out using straddle carriers. The objective is to guarantee a high productivity of the cranes in order to serve the ship in minimum time. In theory, there are several similarities to the above dispatch problem. Models and real-time algorithms for use in practice are under development. Flexible manufacturing is another eld in which real-time problems occur. For a recent survey we refer to Ascheuer et al. [5]. Ascheuer [4] considers online problems arising in a production plant where personal computers are assembled. A particular problem is the stacker crane routing in an automated storage system which can be modelled as an asymmetric traveling salesman problem. Kamin [39] examines an online optimization problem in a distribution center of a manufacturing rm for oce supplies. In this center, requests of customers are partitioned into several (sub-)requests which are to be processed in certain subsystems. Kamin considers the subsystem in which greeting cards are collected from a shelving system. Eight automatically guided vehicles carry a human collector on a xed circular course. At scheduled stops the vehicle waits until all requests at the current location are collected. At most 19 of the online arriving requests can be assigned to each vehicle. Kamin proves the lower bound 2 for the competitiveness factor when minimizing of the total number of stops. On the other hand, she describes an online heuristic which is 19-competitive. Applying online heuristics the daily processing time for real world instances is improved by four hours on the average. Depending on the number of requests processed per day, the number of vehicles can be reduced.
Short Summary Most of the surveys cited above are from the book of Fiat and Woeginger [27]. Another book on competitive analysis is written by Borodin and El-Yaniv [15]. While competitive analysis of online optimization problems is quite well developed and has
led to elaborate theoretical results, in view of its practical use many questions have to be answered in the future. Several critical points are discussed in Karlin [41]. Competitive analysis usually is overly pessimistic. Adaptive characteristics of some online algorithms, e. g. algorithms accumulating information about the actual sequence of requests, seem to explain performance advantages in some applications [41]. While the various sophisticated online optimization models more or less successfully re ect the uncertainty of information which is inherent in many applications, real-time requirements are completely ignored. In applications, real-time severely restricts the choice of algorithms. In a rst attempt one might discuss the performance of online algorithms with xed real-time requirements per request, say constant or low polynomial-time. However, in view of the applications, it would be better to have online algorithms which can adapt to varying real-time requirements. A convincing model combining both aspects, uncertainty and real-time requirements, would be very useful but is not known, by now.
References [1] Dimitris Achlioptas, Marek Chrobak, and John Noga. Competitive analysis of randomized paging algorithms. In Josep Daz and Maria Serna, editors, Algorithms|ESA '96, Fourth Annual European Symposium, volume 1136 of Lecture Notes in Computer Science, pages 419{430, Barcelona, Spain, 25{27 September 1996. Springer. [2] Susanne Albers. Better bounds for online scheduling. In Proceedings of the Twenty-Ninth Annual ACM Symposium on Theory of Computing, pages 130{139, El Paso, Texas, 4{6 May 1997. [3] Susanne Albers. Competitive online algorithms. OPTIMA { Mathematical Programming Society Newsletter, 54:1{8, June 1997. [4] Norbert Ascheuer. Hamiltonian Path Problems in the On-line Optimization of Flexible Manufacturing Systems. PhD thesis, TU Berlin, 1995. [5] Norbert Ascheuer, Martin Grotschel, Nicola Kamin, and Jorg Rambau. Combinatorial online optimization in practice. Technical Report SC 98-07, ZIB Berlin, 1998. [6] Giorgio Ausiello, Esteban Feuerstein, Stefano Leonardi, Leen Stougie, and Maurizio Talamo. Serving requests with on-line routing. In Erik M. Schmidt and Sven Skyum, editors, Algorithm Theory|SWAT '94: 4th Scandinavian Workshop on Algorithm Theory, volume
[7]
[8] [9] [10] [11] [12] [13]
[14] [15] [16] [17]
[18] [19]
824 of Lecture Notes in Computer Science, pages 37{48, Aarhus, Denmark, 6{8 July 1994. Springer-Verlag. Giorgio Ausiello, Esteban Feuerstein, Stefano Leonardi, Leen Stougie, and Maurizio Talamo. Competitive algorithms for the on-line traveling salesman. In Selim G. Akl, Frank K. H. A. Dehne, Jorg-Rudiger Sack, and Nicola Santoro, editors, Algorithms and Data Structures, 4th International Workshop, volume 955 of Lecture Notes in Computer Science, pages 206{217, Kingston, Ontario, Canada, 16{18 August 1995. Springer. Yossi Azar. On-line Load Balancing, chapter 8. In Lecture Notes in Computer Science [27], 1998. Yair Bartal, Amos Fiat, Howard Karlo, and Rakesh Vohra. New algorithms for an ancient scheduling problem. J. Comput. System Sci., 51(3):359{366, December 1995. S. Ben-David, A. Borodin, R. Karp, G. Tardos, and A. Wigderson. On the power of randomization in on-line algorithms. Algorithmica, 11:2{14, 1994. J. L. Bentley, D. S. Johnson, F. T. Leighton, C. C. McGeoch, and L. A. McGeoch. Some unexpected expected behavior results for bin packing. In Proceedings of the Sixteenth Annual ACM Symposium on Theory of Computing, pages 279{288, Washington, D.C., 1984. Piotr Berman. On-line Searching and Navigation, chapter 10. In Lecture Notes in Computer Science [27], 1998. Ulrich Blasum, Michael R. Bussieck, Winfried Hochstattler, Hans-Helmut Scheel, and Thomas Winter. Scheduling trams in the morning is hard. Technical Report TR-9602, Abteilung fur Mathematische Optimierung, TU Braunschweig, 1996. Available under http://www.math.nat.tu-bs.de/mo/research/preprints.html. A. Borodin, N. Linial, and M. E. Saks. An optimal on-line algorithm for metrical task system. J. Algorithms, 39(4):745{763, October 1992. Allan Borodin and Ran El-Yaniv. Online Computation and Competitive Analysis. Cambridge University Press, June 1998. Allan Borodin, Nathan Linial, and Michael Saks. An optimal online algorithms for metrical task systems. Volume 19 of Symposium on Theory of Computing, pages 373{382. ACM, 1987. Andrew Chou, Jeremy Copperstock, Ran El-Yaniv, Michael Klugerman, and Tom Leighton. The statistical adversary allows optimal money-making trading strategies. In Proceedings of the Sixth Annual ACM-SIAM Symposium on Discrete Algorithms, pages 467{476, San Francisco, California, 22{24 January 1995. Marek Chrobak and Laurence L. Larmore. Metrical Task Systems, the Server Problem and the Work Function Algorithm, chapter 4. In Lecture Notes in Computer Science [27], 1998. E. G. Coman, K. So, M. Hofri, and A. C. C. Yao. A stochastic model for bin packing. Inform. and Control, 44:105{115, 1980.
[20] J. Csirik and V. Totik. On-line algorithms for a dual version of bin packing. Discrete Appl. Math., 21:163{167, 1988. [21] Janos Csirik and Gerhard J. Woeginger. On-line Packing and Covering Problems, chapter 7. In Lecture Notes in Computer Science [27], 1998. [22] X. Deng and S. Mahajan. The cost of derandomization: Computability or competitiveness. SIAM J. Comput., 26(3):786{802, June 1997. [23] R. El-Yaniv, A. Fiat, R. Karp, and G. Turpin. Competitive analysis of nancial games. In 33rd Annual Symposium on Foundations of Computer Science, pages 327{333, Pittsburgh, Pennsylvania, 24{27 October 1992. IEEE. [24] Ran El-Yaniv. Competitive Solutions for On-line Financial Problems, chapter 15. In Lecture Notes in Computer Science [27], 1998. [25] Ulrich Faigle, Walter Kern, and Gyorgy Turan. On the performance of on-line algorithms for partition problems. Acta Cybernet., 9(2):107{119, 1989. [26] Amos Fiat, Richard M. Karp, Michael Luby, Lyle A. McGeoch, Daniel D. Sleator, and Neal E. Young. Competitive paging algorithms. J. Algorithms, 12(4):685{699, December 1991. [27] Amos Fiat and Gerhard J. Woeginger. Online Algorithms - The State of the Art. Lecture Notes in Computer Science. Springer, 1998. [28] Gabor Galambos and Gerhard J. Woeginger. Repacking helps in bounded space on-line bin-packing. Computing, 49(4):329{338, 1993. [29] Gabor Galambos and Gerhard J. Woeginger. On-line bin packing - a restricted survey. Z. Oper. Res. Ser. A-B, 42:24{45, 1995. [30] R.L. Graham. Bounds for certain multi-processing anomalies. Bell System Technical Journal, 45:1563{1581, 1966. [31] Leslie A. Hall, Andreas S. Schulz, David B. Shmoys, and Joel Wein. Scheduling to minimize average completion time: O-line and on-line approximation algorithms. Math. Oper. Res., 22(3):513{544, 1997. [32] Leslie A. Hall, David B. Smoys, and Joel Wein. Scheduling to minimize average completion time: O-line and on-line algorithms. In Proceedings of the 7th Annual ACM-SIAM Symposium on Discrete Algorithms, pages 142{151, 1996. [33] Magnus M. Halldorsson. Parallel and on-line graph coloring. J. Algorithms, 23(2):265{280, May 1997. [34] Sandy Irani. Competitive Analysis of Paging, chapter 3. In Lecture Notes in Computer Science [27], 1998.
[35] David S. Johnson. Near-optimal bin packing algorithms. PhD thesis, MIT, Cambridge, MA, 1973. [36] E. G. Coman jr., M. R. Garey, and D.S. Johnson. Approximation Algorithms for Bin Packing: A Survey, chapter 2, pages 46{93. PWS Publishing Company, Boston, MA, 1995. [37] Bala Kalyanasundaram and Kirk Pruhs. On-line weighted matching. J. Algorithms, 14(3):478{488, 1993. [38] Bala Kalyanasundaram and Kirk Pruhs. On-line Network Optimization Problems, chapter 12. In Lecture Notes in Computer Science [27], 1998. [39] Nicola Kamin. On-line Optimization of Order Picking in an Automated Warehouse. PhD thesis, TU Berlin, 1998. Shaker-Verlag, Aachen. [40] David R. Karger, Steven J. Phillips, and Eric Torng. A better algorithm for an ancient scheduling problem. J. Algorithms, 20(2):400{430, March 1996. [41] Anna R. Karlin. On The Performance of Competitive Algorithms in Practice, chapter 16. In Lecture Notes in Computer Science [27], 1998. [42] R. M. Karp, U. Vazirani, and V. Vazirani. An optimal algorithm for on-line bipartite matching. Volume 22 of Proceedings of the Symposium on Theory of Computing, pages 352{358, 1990. [43] Samir Khuller, Stephen G. Mitchell, and Vijay V. Vazirani. On-line algorithms for weighted bipartite matching and stable marriages. In J. Leach Albert, B. Monien, and M. Rodriguez Artalejo, editors, Automata, Languages and Programming, number 510 in Lecture Notes in Computer Science, pages 728{739. 1991. [44] Hal A. Kierstead. Coloring Graphs On-line, chapter 13. In Lecture Notes in Computer Science [27], 1998. [45] Elias Koutsoupias and Christos H. Papdimitriou. Beyond competitive analysis. In 35th Annual Symposium on Foundations of Computer Science, volume 35 of Foundations of Computer Science, pages 394{400. IEEE, November 20-22 1994. [46] C. C. Lee and D. T. Lee. A simple on-line bin-packing algorithm. J. Assoc. Comput. Mach., 32:562{572, 1985. [47] Stefano Leonardi. On-line Network Routing, chapter 11. In Lecture Notes in Computer Science [27], 1998. [48] Mark S. Manasse, Lyle A. McGeoch, and Daniel D. Sleator. Competitive algorithms for on-line problems. Volume 20 of Proceedings of the Symposium on Theory on Computing, pages 322{333, 1988. [49] Lyle A. McGeoch and Daniel D. Sleator, editors. On-line Algorithms, volume 7 of DIMACS Series in Discrete Mathematics and Theoretical Computer Science. AMS/ACM, February 1991.
[50] Prabhakar Raghavan. A statistical adversary for on-line algorithms. In Lyle A. McGeoch and Daniel D. Sleator, editors, On-line Algorithms, volume 7 of DIMACS Series in Discrete Mathematics and Theoretical Computer Science, pages 79{84. AMS/ACM, February 1991. [51] M. B. Richey. Improved bounds for harmonic-based bin packing algorithms. Discrete Appl. Math., 34:203{227, 1991. [52] Jir Sgall. On-line Scheduling, chapter 9. In Lecture Notes in Computer Science [27], 1998. [53] Daniel D. Sleator and Robert E. Tarjan. Amortized eciency of list update and paging rules. Comm. ACM, 28(2):202{208, February 1985. [54] A. Van Vliet. An improved lower bound for on-line packing algorithms. Inform. Process. Lett., 43:277{284, 1992. [55] A. Van Vliet. Lower and upper bounds for on-line bin packing algorithms. PhD thesis, Erasmus University, Rotterdam, 1995. [56] Thomas Winter. Online and Real-Time Dispatching Problems. PhD thesis, TU Braunschweig, Germany, to appear in 1998. [57] Thomas Winter and Uwe Zimmermann. Minimizing shunting costs in storage yards. Technical report, Mathematical Optimization, TU Braunschweig, 1997. [58] Gerhard J. Woeginger. Improved space for bounded-space, on-line bin-packing. SIAM J. Discrete Math., 6(4):575{581, 1993. [59] A. C. C. Yao. New algorithms for bin packing. J. Assoc. Comput. Mach., 27:207{227, 1980. [60] Neal E. Young. Bounding the diuse adversary. In Proceedings of the Ninth Annual ACMSIAM Symposium on Discrete Algorithms, pages 420{425, San Francisco, California, 25{27 January 1998.