1 Introduction
Scheduling is a quintessential phenomenon in our daily life. Everyday we schedule meetings, set deadlines for projects, organize work periods, schedule games, manage time table for the lectures of various courses, allot rooms and plan maintenance operations. Each of these activities consists of a finite number of jobs. Our main objective is to finish the jobs in minimum possible time by designing an efficient schedule. When we have complete knowledge of all jobs at the outset and we make a schedule based on a sequence of available jobs on multiple machines, it is referred to as Offline Scheduling [14]. However, in practical applications, all jobs are not known at the beginning. Mostly, jobs are available on the fly and upon receiving a job, the scheduler is constrained to assign the job irrevocably to one of the machines with no information on the future incoming jobs. Such a scheduling is known as Online Scheduling [5]. Online scheduling has been well studied in the literature based on job characteristics, machine models, availability pattern of the jobs and optimality criteria [6].
Motivation. Offline machine() scheduling for makespan minimization objective was shown to be by a polynomial time reduction from the wellknown Partition problem in [710]. Further, in online scheduling, the unavailability of all jobs at the beginning poses a nontrivial challenge in designing and analyzing the scheduling algorithms. However, online algorithm [11, 12] provides a framework for processing a sequence of inputs which are given in an online fashion and the performance of such an algorithm is measured widely by competitive analysis method [13]. For a basic understanding, we present briefly about online algorithm and competitive analysis as follows.
1.1 Online Algorithm and Competitive Analysis
Online algorithms receive a sequence of inputs one by one and process each input irrevocably upon its availability to produce a partial output prior to the arrival of the next input. The partial output is produced by considering current and past inputs. Let us consider a sequence of inputs of finite size . At any time step , the input sequence is received by an online algorithm, where . Each input is processed as soon as it is received with no information on future input sequence . Therefore, partial outputs are produced in an incremental way on the fly before the final output is obtained. In contrast, an offline algorithm receives the whole input sequence at the beginning and processes them simultaneously to produce the output .
Competitive analysis method [8] measures the worstcase performance of any online algorithm by its competitive ratio(CR), defined as the smallest positive integer , such that for all valid sequences of the inputs in set = , the following inequality holds
,
where is the makespan obtained by online algorithm for any sequence of and is the optimum makespan incurred by the optimal offline algorithm for . The Upper Bound(UB) on the CR obtained by guarantees the maximum value of CR, for which the inequality holds for all legal sequences of . The Lower Bound(LB) on the CR of any online problem ensures that there exists an instance of such that incurs makespan , where is referred to as LB for . The performance of is considered to be optimal or tight for any online problem , when the UB on the CR achieved by for is also shown to be the LB on the CR of . Sometimes, the performance of is referred to as tight if = for all valid input sequences of . The objective of an online algorithm is to obtain a CR closer to the LB of the online problem or to obtain a CR nearer to .
1.2 Online Scheduling Problem
We formally state the online scheduling problem with inputs, output, objective and constraints as follows.

Inputs. A list = of machines, a sequence = of jobs are given, where each is characterized by its processing time , where .

Output. Generation of a schedule, where completion time of the job that finishes last in the schedule i.e. makespan() is the output parameter.

Objective. Minimization of the .

Constraints. Jobs along with their processing times are revealed to the scheduler one by one in order; a newly available job must be scheduled irrevocably before the arrival of the next job; a job can not be forcefully preempted while it is in execution, but the preemptive variant of online scheduling supports the preemption of an ongoing job prior to its completion.
1.3 Practical Applications
Online Scheduling has been intrinsically and widely used in modern scientific and technical computations. In many real life scenarios, online scheduling has been found either as an independent problem or a segment of a larger problem. Major application domains of online scheduling are mentioned in Table 1.
Domain(S)  Overview of Applications 

Computers[6, 12, 14]  Interactive Parallel Processing, High Performance Computing, Computer based Simulation and Modeling, Robotics, Distributed Data Management 
Networks[15]  Routing, Client Request Management 
Production and Manufacturing[1617]  Production control System, Manufacturing Process Management 
Transportation[1819]  Traffic control and signaling 
We now briefly discuss about some important applications as follows.
1.3.1 Interactive MultiProcessing
An interactive multiprocessing system receives jobs on the fly. Upon receiving a job, it has to immediately respond by allocating resource(s) such as memory or processing unit(s) to the job with no knowledge of the future jobs. In practice, an interactive multiprocessing system may be the operating system running on a parallel processing enabled computer, router of the communication networks, web server, robot navigation and motion planning system.
1.3.2 Production and Manufacturing
Orders from clients arrive on the fly to a production system. The resources such as human beings, machinery equipment(s) and manufacturing unit(s) have to be allocated immediately upon receiving each client order with no knowledge on the future orders. Online arrival of the orders have high impact on the renting and purchasing of the high cost machines in the manufacturing units.
1.3.3 Traffic Management
It is not known in advance the number of vehicles running on the road and passing through the traffic squares at any instance of time. For an effective transportation system, online scheduling can be very useful for managing traffic signals in various squares of a street or city.
1.4 Scope of Our Survey
This survey provides a comprehensive overview on the state of the art contributions for Online Scheduling problem. In particular, the survey focuses on online machine scheduling with respect to machine models such as identical and uniform related; job characteristics such as preemptive and nonpreemptive; optimality criterion such as makespan(please, see section 2 to understand basic terminologies and notations related to the scope of our study). The survey presents critical ideas, novel techniques along with important results obtained by seminal randomized and deterministic online scheduling algorithms to develop basic understanding from a beginner’s perspective without discussing much detail on the proof techniques. To make the survey less exhaustive, some of the well studied areas such as online scheduling in real time systems, flow shop environment, unrelated machine, scheduling under machine availability or eligibility constraint, flow time objective and energy efficient scheduling are not covered.
1.5 Uniqueness of Our Survey
According to our knowledge, the existing literature lacks an exhaustive overview of the state of the art contributions of deterministic and randomized online scheduling algorithms. We present a summary of wellknown surveys [6, 2031] on online scheduling in Table 2.
Year  Author(s)  Scope/Main Contributions 

1977  Gonzalez [20]  Study of scheduling in uniprocessor, multiprocessor and job shop environment. 
1979  Graham et al. [6]  Classification of scheduling problem in standard framework of . Overview of deterministic strategies for scheduling in various machine models such as single, uniform related and unrelated machines, flow and open shop scheduling. 
1989  Cheng et al. [21]  Job shop scheduling with deadline assignment. 
1998  Sgall [22]  Scheduling strategies for variants of online scheduling by considering release time, preemption and precedence constraints, speeds of machines and shop scheduling. 
1998  Chen et al. [23]  Methodologies, complexity analysis in nonpreemptive and preemptive online scheduling for unit length jobs. Study of shop scheduling, family scheduling, resource constraint scheduling and scheduling with communication delays. 
2004  Pruhs et al. [24]  Flow time minimization in single and parallel machines. 
2006  Brucker [25]  Shop scheduling, scheduling with deadline, batch scheduling and multipurpose machine scheduling. 
2008  Leung et al. [26]  Offline and online scheduling with processing set restrictions in nonpreemptive, preemptive settings for makespan minimization. 
2009  Albers [27]  Energy efficient online scheduling. Specific results in load balancing, makespan and flow time minimization. 
2012  Sgall [28]  Open problems in online scheduling for the maximization of the throughput. 
2013  Lee et al. [29]  Online machine scheduling under machine eligibility constraint. 
2018  Epstein [30]  Semionline scheduling for makespan minimization in identical and uniform related machines. 
2019  Beaumont et al. [31]  Scheduling in a parallel computing system with heterogeneous resources. Design of a framework to compare the performances of related algorithms based on achieved makespans and time complexities. 
This survey studies the fundamental aspects of online computation by a historical chronological overview on the seminal contributions for preemptive and nonpreemptive online scheduling in identical and uniform related machines. Fourteen wellknown online scheduling algorithms are presented. Deterministic and randomized online scheduling algorithms for makespan minimization are chronologically described for developing a basic understanding. Major research issues, open problems and two of the emerging recent trends are briefly presented as a motivation for future research work.
2 Preliminaries
We present basic terminologies, notations and definitions which are used in our survey in Table 3. Based on the scope of our literature survey, we make a classification of the online scheduling problem by three parameters such as parallel machine models, job characteristics and optimality criterion. We now briefly discuss about the parameters as follows.
Terms  Notations  Definitions/Descriptions 

Job[1]  Program under execution which consists of a finite number of instructions. A job is also referred to as a collection of at least one smallest indivisible sub task called thread. We use terms job and task in the same sense.  
Processing Time[13]  Total time of execution of a job on a machine . For identical machines processing time of is denoted by .  
Release Time[2, 25]  Time at which any job becomes available for processing.  
Completion Time[3, 25]  The time at which any job finishes its execution  
Deadline[3, 25]  Time by which job must be completed.  
Machine[1]  An automated system capable of processing some tasks by following a set of rules. We use terms machine and processor in the same sense.  
Load [11]  Sum of processing times of the jobs that have been assigned to machine .  
Speed [2, 3]  The number of instructions processed by the machine in unit time  
Speed Ratio  The ratio between the speeds of two machines. For machines with speeds and respectively. We have speed ratio: = 
2.1 Parallel Machine Models
In parallel machine system, all threads of a job execute simultaneously in a set of machines such that . Here, we consider parallel processing of multiple jobs, by assuming that each job consists of a single thread of execution. We consider parallel machine models such as identical and uniform related machines in our survey, which are presented as follows.

Identical Machines: Here, all machines have equal speeds of processing a job such that , and .

Uniform Related Machines or Uniform Machines: Here, the speeds of the machines may differ from one another. For a uniform machine with speed , the execution time of job is .
2.2 Job Characteristics
Job characteristics describe about the nature of the jobs and various constraints related to job scheduling. We consider the following job characteristics.

Preemption. It allows splitting of a job into pieces, where each piece is executed on same or different machines in nonoverlapping time intervals.

Nonpreemption. It ensures that once a job with processing time begins to execute on machine at time , then continues the execution on till time with no interruption.

Precedence Relation. It defines dependencies among the jobs by the partial order ’’ rule on the set of jobs [5]. A partial order can be defined on two jobs and as , which means execution of never starts before the completion of . The dependencies among different jobs can be illustrated with a precedence graph , where each vertex represents a job and labeled with its processing time . A directed arc between two vertices in i.e represents , where is referred to as predecessor of . If there exists a cycle in the precedence graph, then scheduling is not possible for the jobs. When there is no precedence relation defined on the jobs, then they are said to be independent.
2.3 Optimality Criterion
We consider makespan as the optimal criterion. Makespan is defined as completion time of the job that finishes last in a schedule. Formally, . The objective is to obtain minimum . Another way of interpreting makespan is in terms of load balancing(). Here, the makespan is defined as the largest load incurred on any machine . Formally, . Here, the objective is to obtain minimum .
3 WellKnown Online Scheduling Algorithms
We present ten deterministic and four randomized online scheduling algorithms for identical and uniform related machines as follows.
3.1 Deterministic Algorithms
Deterministic algorithms[1112, 32] obtain same output while processing a given input a number of times by following each time the same sequence of steps. Here, the output and running time depend on input(s) only. We now present ten wellknown deterministic online scheduling algorithms as follows.

Algorithm List Scheduling(LS) was proposed by Graham [5] for nonpreemptive online scheduling on identical machines. Algorithm LS assigns an incoming job to the machine , which is least loaded among the machines.

Algorithm Largest Processing Time(LPT) was proposed by Graham [33] for nonpreemptive offline scheduling on identical machines. LPT first orders a list of jobs in nonincreasing sizes. Then, it assigns job one by one from the ordered list to the machine, which has least load after each assignment of a job. LPT is an offline algorithm, however it has been used significantly as an intermediate step in many online scheduling algorithms.

Algorithm Refined List Scheduling(RLS) was proposed by Galambos and Woeginger [34] for nonpreemptive online scheduling on identical machines. Upon the arrival of any job(say ), algorithm RLS first orders the machines in nondecreasing loads. is assigned to if and is assigned to if , where . There after, RLS assigns next incoming jobs () to till the following inequality holds: , where . Then, the machines are reordered again.

Algorithm ASSIGN2: Aspnes et al. [15] proposed the algorithm ASSIGN2 for nonpreemptive online scheduling of uniform related machines. ASSIGN2 works in phases by guessing the cost of OPT at each phase. Upon receiving the first job , the cost of OPT is initialized to the load incurred by on the fastest machine. The cost of OPT remains same till the completion of a phase. Each incoming job is assigned to the machine , which has slowest speed among all machines and . Subsequently, the load of is updated and the machines are ordered in nondecreasing speeds. The algorithm ends a phase, when it does not find an appropriate . A new phase is started by initializing the loads of all machines to and by doubling the previous value of OPT. Then, is assigned to the slowest machine for which .

Algorithm Chen Vliet Woeginger(CVW) was proposed by Chen et. al. [35] for preemptive online scheduling of identical machines. Originally, there was no particular name given to the algorithm. We name the algorithm as CVW by extracting the first letter of the author’s names. For each incoming job , algorithm CVW computes the cost of OPT, which is . Then, job is assigned to any , where , if the new load of machine is at most () times of OPT. Otherwise, sequence the machines in nondecreasing loads and assign ( portion of job to machine and the rest part of job to machine .

mMachine Algorithm was proposed by Bartal et al. [36] for nonpreemptive online scheduling of identical machines. The algorithm first orders the machines in nondecreasing loads such that has least load and has highest load. When the first job is available, it is assigned to and the machines are ordered in nondecreasing loads. Then, logically group machines in to two, where first machines constitute first group and rest machines form the second group. Each incoming job is assigned to machine, if after the assignment of is at most times of the average load incurred on first machines. Otherwise, is assigned to , which has minimum load over all machines. Note that, after each assignment of a job, the machines are ordered in nondecreasing sequence of their loads. In the former case, machines from to are to be ordered and in the later case all machines from to are to be ordered.

Algorithm Compare Height to Average of Shorter Machines (CHASM) was proposed by Karger et al. [37] for nonpreemptive online scheduling in identical machines. CHASM always aims to maintain a light load on the first machines by keeping the next machines with heavy load. Algorithm CHASM works in the following way: upon the arrival of a new job , it first orders machines in nondecreasing sequence of their loads and assigns to the least loaded machine if , where . Otherwise, assign to the most lightly loaded machine .

Algorithm H was proposed by Wen and Du [38] for preemptive online scheduling of uniform related machines. Algorithm H works in the following way: let the current loads of machines and be and respectively. Upon receiving a new job , Algorithm H first splits in to two parts. The largest part of which is of size at most is assigned to the fastest machine , where . The remaining part of , which is of size at most is assigned to the machine , where . Here, is the cost of OPT before the assignment of . We have .

Algorithm was proposed by Albers [39] for nonpreemptive online scheduling on identical machines. Algorithm always maintains machines, which are numbered in nondecreasing order of their loads after the assignment of each incoming job such that be the machine with minimum load and be the machine with maximum load. A new job is assigned to machine if one of the following inequalities holds.
(a) (b) and . Otherwise, is assigned to machine . Here, we have the values of , , and . If is scheduled on , then we have and . If is scheduled on , then we have and is the load of most loaded machine before the assignment of . 
Algorithm MR was proposed by Fleischer and Wahl [40] for nonpreemptive online scheduling of identical machines. Algorithm MR schedules a sequence of jobs in the following way: initially, sort all machines in nondecreasing order of their loads such that and are the least loaded and most loaded machines respectively. When ever a new job arrives, assign to the machine if and . Otherwise, schedule on machine . After each assignment of a new job, the load of the corresponding machine is updated and all machines are resorted. Here, we have , , , which is the average load of least loaded machines before the assignment of and be the average load incurred on machines after assigning .
3.2 Randomized Algorithms
A randomized algorithm [41] flips coin while processing a given input. The algorithm produces a different output or follows a different order of execution steps at each run. Here, the output and running time depend on the input(s) and random bits. We now present some wellknown randomized online scheduling algorithms as follows.

Algorithm Rand2 was proposed by Bartal et al. [36] for nonpreemptive online scheduling on identical machines. Algorithm Rand2 maintains two logical schedules for each incoming job . In the first schedule, is assigned to the least loaded machine and in the second schedule is allocated on the most loaded machine. Overall expected discrepancies and are computed for both the schedules respectively, where discrepancy is the difference in loads of the two machines at any instance of time. Then a value for is chosen, where such that , where is the total load incurred by jobs . If such a value of exists, then
is actually scheduled on the least loaded machine with probability
and is assigned to the most loaded machine with probability . If there exists no such a value of , then schedule job explicitly on the least loaded machine. 
Algorithm Linear Invariant(LI) was proposed by Seiden [42] for nonpreemptive online scheduling on identical machines, where . Algorithm LI schedules each incoming job on machine with probability and on machine with probability , where . Here, and are the loads of current least loaded machine and most loaded machine respectively, when all jobs , where are scheduled each time on the second least loaded machine . We have and as the loads of current and respectively, when all are assigned each time to the least loaded machine . We have values of equals to 1.80, 2.04, 2.12, 2.11 and 2.10 for =3,4,5,6,7 respectively. It is observed that after each assignment of a job, machines are reindexed in nondecreasing order of their loads.

Algorithm BIAS was proposed by Epstein et al. [43] for nonpreemptive online scheduling on uniformrelated machines, where speed of machine is and speed of machine is . Algorithm BIAS schedules an incoming job on the fastest machine with probability , otherwise assigns to the slowest machine .

Algorithm RAND was proposed by Albers [44] for nonpreemptive online scheduling on identical machines. Algorithm RAND is basically a combination of two deterministic algorithms and . Any input job stream is scheduled by algorithm with probability and by algorithm with probability .
Algorithm : Machines are always indexed in the nondecreasing order of their loads. A new job is scheduled on machine if the schedule is critical and . Otherwise, is assigned to the least loaded machine . Here, be the load of the machine , which is the current least loaded machine after scheduling jobs from to by algorithm , where . be the total processing time incurred by the jobs from to . A schedule becomes critical if , where . The values of other parameters are initially set as follows: , , .
Algorithm : Upon receiving a new job , algorithm first runs algorithm . If the schedule obtained after assigning by algorithm is balanced, meaning the machines are now equally loaded, then algorithm sets the value of to , where . Otherwise, the value of is set to . Now, algorithm assigns to the machine if the schedule is critical and . Otherwise, is scheduled on the least loaded machine . Initialize the values of other parameters as follows: , , , and . Note that: after each assignment of a new job, the machines are renumbered according to the nondecreasing order of their loads.
4 Historical Overview of Online Scheduling
The theory of sequencing and scheduling have been emerging as an interesting area of research over the past few decades. In early fifties, the main focus of research was on offline single machine scheduling. After a decade, the curiosity was transferred to define potential advantages of multiprocessing systems. As an outstanding outcome, the systems witnessed increase in throughput. Still, the quest was for designing application specific scheduling models and to obtain optimum schedule for processing of multiple jobs. This resulted in the emergence of a number of scheduling setups. One of such setups is the online scheduling, which basically deals with the online arrival of a sequence of jobs. Online Scheduling setup was first proposed and validated by Graham in 1966 [5], however it has gained significant research interests after the introduction of competitive analysis in 1985 [13]. We now present an overview of the early contributions on online scheduling from year 1966 to 1984 as follows.
Graham [5] initiated the study of nonpreemptive online scheduling on identical machines in the objective to explore several multiprocessing timing anomalies. He considered a sequence of jobs and ordered them through a static list, where the ordering of the jobs is decided upon receiving all jobs. Here, the jobs are ordered only once and the ordering remains same throughout the scheduling of all jobs. Graham proposed the famous LS algorithm, which always scans the list until an eligible job is found. A job is called eligible, if execution of has not been started and processing of all its predecessors have been completed. Algorithm LS adopts a greedy strategy by immediately scheduling the first eligible job of the list to the lowest loaded machine prior to make another scan of the list. Algorithm LS achieves a performance ratio of , which is the ratio between the largest makespan obtained over all possible ordering of the jobs to the optimum makespan(), where =. In [33], Graham proposed LPT algorithm, which orders a sequence of jobs in a dynamic list, where the ordering of the jobs may change during the scheduling process. Algorithm LPT always places the eligible job with largest size among the available jobs in the top of the list and schedules it by algorithm LS. Algorithm LPT achieves a performance ratio of . These two studies of Graham showed a new direction in scheduling, which is based on the arrival pattern of the jobs. The scenario of selecting the eligible job from the top of the list without looking at the entire task list was later formed the concept of arrival of jobs one by one.
Coffman and Graham [45] followed the work of Graham [5,33] and designed two nonenumerative algorithms with worst case complexities of and respectively for makespan minimization of a job schedule. They considered a list of jobs, where all jobs have equal execution time. The main objective of both algorithms is to obtain a list such that makespan of is minimal over all list . A novel computational model was introduced, which partitions a given problem into two equal sized jobs. The applicability of the model was shown in preemptive scheduling, where a job can be splitted and shared among multiple machines.
Sahni [46] studied scheduling of independent jobs on identical machines for minimizing the makespan. He designed an offline algorithm by dynamic programming approach, which has the worst case complexity of , where characterizes the cost of OPT. Furthermore, he proposed three approximation algorithms for scheduling problems such as single machine scheduling with deadline, scheduling on identical machines for minimizing completion time and scheduling on identical machines to minimize weighted mean flow time. Here, all proposed algorithms obtain costs which are not far than a value from the optimum cost, where . The worst case complexities of both algorithms were proved to be .
Sahni and Cho [47] proposed a nearly online algorithm for preemptive scheduling of independent jobs on uniform related machines. They specified each job with release time . The worst case time complexity of the algorithm was proved to be . The algorithm ensures at most preemption in executing all jobs. Here, they assumed that there are at most distinct release times of the jobs and designed an algorithm which has phases. At any phase , where , a selected number of jobs are scheduled through a deterministic procedure. In fact, those jobs are chosen which have nonzero remaining processing times and are available on or before time . In the last phase, the jobs are scheduled in the interval , where is assumed to be the common deadline for all jobs.
Hariri and Potts [48] proposed a branch and bound algorithm to obtain a processing order of the jobs, which minimizes the sum of weighted completion times in a single machine offline scheduling environment. They considered a list of jobs, where each job is specified by its release time and weight. They computed earliest time of completion for each job. They obtained a lower bound by assuming Langragean relaxation for the release time constraints. Here, Langragean multipliers are chosen in such a way that the generated job sequence yields optimum cost for the relaxed problem. Later, they provided a method to derive better release time constraints than the original ones to increase the lower bound. Blazewicz et al.[49] studied parallel machine scheduling of a sequence of unit size jobs under various resource constraints schemes.
Initial two decades(19661985) were focused mostly on exploring variants of the Graham’s List Scheduling setup in optimizing the makespan. Greedy, Dynamic programming, branch and bound algorithmic design strategies were introduced for the multiprocessor scheduling problem. A more systematic study on online machine scheduling was started after the development of competitive analysis. Hence forth, two of the major aspects of online algorithm design such as deterministic and randomized strategies were studied extensively. We present the state of the art on deterministic and randomized online scheduling in the coming sections.
5 Deterministic Online Scheduling: State of The Art
This section presents important results with insights and research challenges in the design of deterministic online algorithms for preemptive and nonpreemptive online scheduling with makespan minimization for identical and uniform related machines.
5.1 Nonpreemptive, Identical Machines
Upper Bound Results. Graham’s LS [5] algorithm was provably the first deterministic online algorithm for machine scheduling problem. The objective of algorithm LS is to assign jobs to the machines such that at the end of scheduling, all machines incur nearly equal load. However, equal load sharing policy fails to obtain optimum makespan in all cases. One such case is the availability of the largest job as the last job i.e. job of the sequence while the assignment of first jobs have incurred nearly equal load on all machines. In this case, algorithm LS obtains a makespan() which is nearly twice of the value of the optimum makespan(). Let us consider a list of jobs, where a sequence of jobs each of size unit arrive one by one and a job of size unit is available at the end of the sequence. We now have , where ==. Therefore, we have . An equal UB was shown by Graham to obtain ()competitiveness of algorithm LS. It was a nontrivial challenge to design improved competitive online algorithm with CR asymptotically lesser than . After a quest of over two and half decades, the first improvement over algorithm LS was presented by Galambos and Woeginger [34]. They proposed algorithm RLS and proved a UB of  , where for .
Bartal et al. [36] proposed the mMachine Algorithm and achieved UB for . The algorithm assigns incoming jobs to the machines in such a way that there exists always a set of machines with light load and rest machines with heavy load. So, whenever a job arrives, it can be assigned to the lightly loaded machine of the set of heavily loaded machines or to the smallest loaded machine among all machines. The objective is to obtain a makespan which is smaller than twice the value of the optimum makespan.
Karger et al. [37] proposed the algorithm CHASM and obtained an improved UB for all . Algorithm CHASM out performs algorithm LS for . An improvement over CHASM was proposed by Albers [39]. She designed the Algorithm and proved a UB of for a general case of machine. Fleischer and Wahl [38] proposed the algorithm MR, which obtains a UB of for . Algorithm MR is currently the best deterministic pure online algorithm for nonpreemptive online scheduling on identical machines for makespan minimization, where .
Lower Bound Results.
Faigle et. al. [50] proved that LS is optimal online scheduling algorithm for . The LB for machine case was shown by considering online availability of a sequence of three jobs with =, = and =. Similarly, for , they showed LB by considering online arrival of a sequence of seven jobs, where the jobs are of sizes () respectively. Further, they proved LB for by considering a sequence of jobs, where first jobs are of size unit each, next jobs are of size unit each and the last job is of size unit.
Bartal et al. [51] obtained LB for by analyzing a special class of input job sequence. They considered a sequence of jobs, where first jobs are of size unit each, second jobs are of size unit each, third jobs are of size unit each, next jobs are of size unit each, next jobs each with size unit and last () jobs are of size unit each, where are positive real values. Albers [39] obtained a better LB of for . She considered a special class of job sequence, where jobs are available in four rounds. In each round a specific number of equal size jobs arrive. The main idea is to schedule the jobs roundwise such that the makespan incurred at each round is not more than times of the value of . Gormley et al. [52] improved the LB to for by considering an adversary strategy. The adversary strategy was presented as a game tree. Here, the game tree has two kinds of nodes, the adversary request nodes and the online move nodes. Each adversary request node is a nonleaf node. The children of adversary request nodes are online move nodes, which are generated at each move as per the current request. Each online move node is either a leaf or has a single adversary request node as a child.
Rudin III [53] proved that no deterministic online algorithm can achieve a competitive ratio smaller than . Later, he along with Chandrasekaran [54] obtained LB for . For the general case of machine, they showed LB , where is a positive constant. They used the job master strategy to produce successive layers of jobs, where each layer contains jobs. The layers are considered in such a way that if any two of the jobs in the same layer are scheduled on the same machine, then the makespan of the corresponding machine will become at least times of the value of the . Therefore, irrespective of the scheduling algorithm, by the completion of a series of layers, it can be known that either there has been assignment of one job to each machine at each layer or a competitive ratio of at least has already been achieved. We now present the summary of the important competitive analysis results achieved by deterministic online algorithms for nonpreemptive scheduling on identical machines in Table 4.
Year  Author(s)  Result(s)  Bound 

1966  Graham[5]  , =  UB. 
1993  Galambos, Woeginger[34]  ,  UB. 
1995  Bartal et al.[36]  ,  UB. 
1996  Karger et al.[37]  ,  UB. 
1999  Albers[39]  ,  UB. 
2000  Fleischer, Wahl[40]  ,  UB. 
1989  Faigle et al. [50]  ,  LB. 
1994  Bartal et al. [51]  ,  LB. 
1999  Albers[39]  ,  LB. 
2000  Gormley et al. [52]  ,  LB. 
2001  Rudin III [53]  ,  LB. 
2003  Rudin III, Chandrasekaran [54]  ,  LB. 
Research Challenges:

Minimizing or diminishing the gap between current best LB and UB of [1.853, 1.9201] on the CR.

Classification, characterization of input job sequences and ranking of online scheduling algorithms based on real world inputs.

The design of deterministic algorithms for online scheduling on identical machines have been witnessed various strategies such as greedy, input characterization, game tree, layering and job master. However, it will be interesting to develop a unified deterministic strategy for scheduling an arbitrary sequence of large jobs.

Finding the exact competitiveness achievable by deterministic online algorithms.
5.2 Nonpreemptive, Uniform Related Machines
Offline scheduling in nonidentical machines was introduced in late seventies by Hrowitz and Sahni [55]. However, the study of online scheduling in uniform related machines was initiated in year 1993 by Aspnes et al. [15]. They proposed the deterministic algorithm ASSIGN2 and achieved a UB of . Algorithm ASSIGN2 works on the idea of assigning each incoming job to the lowest speed machine(say ) as long as (assuming as the load of before the assignment of ). As the value of is not known, algorithm ASSIGN2 follows a doubling strategy. Initially, a smaller value is chosen for and later the value of will be set to twice of its previous value, when the scheduling of job on makes . Berman et al. [56] obtained UB for large . Further, they proved LBs and for and respectively. They proposed an algorithm, which works in phases. In each phase, a sequence of jobs are scheduled. The makespan obtained in each phase is represented through one of the nodes of a graph. They verified the achieved competitive ratios through a computer based search in the graph.
Ebenlendr and Sgall [57] proved LB for the setting, where the speeds of the machines and the processing times of the jobs are in a geometric sequence. They proposed a new lower bound inequality, which is based on the total number of jobs scheduled and the number of jobs assigned per machine. The LB was derived as follows: the behavior of the algorithm is first examined in any of the machines to obtain the UB on the number of jobs that can be scheduled on that machine. Basically, this UB is a ratio of number of jobs and machine speed. They considered such UBs on every machines, which is at least as in each step of the algorithm only one job can be scheduled. Finally, they obtained the LB by assuming the common ratio of the geometric sequence to be 1.
Jez et al. [58] obtained LBs and for respectively. They considered the case, where the processing times of the jobs are in a geometric sequence. They worked on the following idea: choose the speeds of the machines so that two fastest machines can only be utilized by any online algorithm for obtaining the LBs by analyzing the possible orders of scheduling the jobs on these machines. They achieved better LBs of and for respectively. Here, they considered five fastest machines and applied a computer based search strategy to eliminate few of the possible patterns of scheduling the jobs. We now present the summary of all important results on the competitive ratios for nonpreemptive scheduling on uniform related machines in Table 5 followed by some nontrivial research challenges.
Year  Author(s)  Result(s)  Bound 

1993  Aspnes et al. [15]  UB  
2000  Berman et al. [56]  UB  
2000  Berman et al. [56]  , , ,  LB 
2012  Ebenlendr and Sgall [57]  LB  
2013  Jez et al. [58]  , , , , ,  LB 
Research Challenges:

Minimizing or diminishing the gap between current LB and UB of [2.56, 5.82] on the CR.

Development of an alternative to doubling strategy for the improvement of the existing competitive bounds.

Design of efficient competitive online deterministic algorithms with a new parameter or function based on the size of the jobs.

To obtain a tight bound for large .
5.3 Preemptive, Identical, Uniform Related Machines
Here, we survey important results obtained by deterministic algorithms for preemptive online scheduling in identical and uniform related machines as follows.
Identical Machines. Less attention has been paid to the online preemptive scheduling on identical machines. To the best of our knowledge, the only deterministic online algorithm CVW was proposed by Chen et al. [35] for makespan minimization in identical machines. They obtained LB for , which tends to for . The overall idea of the algorithm is to maintain the load of the least loaded machine as small as possible so that whenever a large size job arrive it can be assigned to the least loaded machine. The objective is to obtain a bound, which is asymptotically lesser than .
Uniform Related Machines. Wen and Du [59] achieved UB for , where and are the speeds of machine and respectively. Epstein [60] studied a special case, where the speeds of the machines are defined by the following inequality: , for . He obtained an UB for each sequence of speeds as , where .
Ebenlendr and Sgall [61] obtained UB by using the doubling strategy for guessing the value of . They showed that algorithm LS of Graham [5] achieves UB and LB for preemptive online scheduling on uniform related machines. Recently, Ebenlendr et al. [62] obtained a UB, which lies between the values and . They proved that the result is optimal even among all randomized algorithms and any fixed combinations of speed of the machines. We now present some nontrivial research challenges as follows.
Research Challenges:

Determination of competitive bounds i.e. UB for identical machines case and LB for uniform related machines case.

Design of strategies that avoid or minimize idle periods of uniform related machines while scheduling the jobs online.

How to guess the value of the optimum makespan()? In general, as the choices for go up, the number of cases in the analysis of any online algorithm grow exponentially.

Design of nearly optimum online algorithms with best competitive ratios.
6 Randomized Online Scheduling: State of the Art
This section is devoted to an overview of the state of the art contributions in design of randomized algorithms for online scheduling with makespan minimization. Important results achieved for nonpreemptive online scheduling in identical and uniform related machines are discussed followed by an overview of the seminal works in preemptive online scheduling.
6.1 Nonpreemptive, Identical Machines
Design of randomized algorithms for online scheduling has received notable research interests after the seminal work of Bartal et al. [36]. They proposed the algorithm Rand2 for nonpreemptive online scheduling on identical machines. The objective of algorithm RAND2 is to maintain an expected load difference of between two machines at any instance of time, where is the sum of processing time of the jobs that have already received. Algorithm Rand2 achieves LBs of and for respectively.
Chen et al. [63] proved that any randomized algorithm for online scheduling on identical machines with an objective to minimize the makespan must be at least competitive for all . The bound tends to as . The overall idea of the algorithm is presented as follows: upon receiving a new job , the algorithm first computes probabilities , where . Then, schedule job on machine with probability , .
Sgall [64] proved that any randomized algorithm A must be at least competitive. He showed that the LB tends to as . He defined an interesting ordering of the machines by considering last jobs of any job sequence. The idea is to order the machines in such a way that the index of the machine remains unchanged after the assignment of each new job to it. Initially, when no job is scheduled on any of the machines, then a new job is scheduled arbitrarily on any one of the machines. The objective of such ordering is to maintain the ratio of the loads of machines as , where . This implies and =. Therefore, .
Seiden [65] proposed the algorithm LI by generalizing the 2machine algorithm of Bartal et al. [36]. Algorithm LI schedules an incoming job either on the least loaded machine or the second least loaded machine with certain probability. The objective is to keep the load of one of the machines as low as possible to schedule on it the largest job that likely to arrive in future. Algorithm LI achieves competitive ratios of , , , and for , , , , respectively.
Albers [44] envisioned a strategy for designing of randomized algorithms by combining simple deterministic policies. She developed the algorithm RAND, which is a combination of two deterministic algorithms and . She obtained an upper bound of for all . Upon the arrival of a job, algorithm RAND invokes , with probability , then schedules the whole job sequence by the chosen algorithm. Algorithm RAND aims at maintaining two schedules at any instance of time unlike algorithm RAND2 and algorithm LI, those maintain separate schedules upon each job arrival. Here, Albers proved that none of the known deterministic online strategies can beat the performance of algorithm RAND.
Tichy [66] obtained LBs of 1.425, 1.495 and 1.504 for machines respectively. Here, a set of algorithms are considered which schedule an incoming job either on the machine with minimum load or on the least loaded machine, where is a positive integer. In [67], he showed the problem for three identical machines case. He considered a critical job sequence which is characterized by some integer parameters and proved by contradiction that no randomized algorithm can obtain a lower bound less than or equal to . We now present the summary of important results on the competitive ratios obtained by randomized algorithms for identical machines in Table 6.
Year  Author(s)  Result(s)  Bound 

1995  Bartal et al. [36]  , =2 and , =3  LB 
1994  Chen et al. [63]  ,  LB 
1997  Sgall [64]  LB  
2000  Seiden [65]  , =3, , =4 , =5, , =6, , =7  UB 
2002  Albers [44]  UB  
2002  Tichy [66]  , , , , ,  LB 
2004  Tichy [67]  ,  LB 
Research Challenges:

Tighten the gap between the current best lower and upper bounds of and respectively on the competitive ratio for general case of machines.

Development of more refined strategies with stronger invariants to construct improved bounds for the problem.

Design of a unified strategy to schedule a sequence of very large size jobs.

Development of a new framework to measure the performance of any online scheduling algorithm based on the input characterization approach of Seiden [63] for any job sequence and a general case of machines.
6.2 Nonpreemptive, Uniform Related Machines
Indyk [68] initiated the study of randomized algorithms for nonpreemptive online scheduling on uniform related machines. He obtained an upper bound of by extending the work of Aspnes et al. [15].
Epstein et al. [43] proposed the algorithm BIAS for online scheduling in two uniform related machines with speeds 1 and respectively. They obtained a lower bound of for the speed interval . They showed that randomization does not improve the bounds for the speeds .
Berman et al. [69] proposed a competitive algorithm by refining the doubling strategy of Aspnes et al. [15]. Also, they achieved a lower bound of . The algorithm works in the following way: an initial guess for a smaller value of the overall optimum load is made along with the initialization of variables , and . Here, is referred to as the capacity of machine which is the amount of work machine can do under load . We have for any , where is the speed of machine . The variable is initialized to . Upon receiving a job, first the value of is checked. The value of is updated if OnlyFor(, , for some .(Here, is referred to as a sequence of jobs and OnlyFor(, , ) defines the sum of sizes of those jobs for which for some ). Then, the value of is updated to . The values of and are updated as follows: and . Here, the value of is chosen uniformly at random from the interval . For a negative , we have and for a positive , we have with any integer variable . The main idea of the algorithm is to increase the value of at each phase by a factor instead of doubling its value as soon as the current value of seems to be very small. Hence, the jobs arriving upfront can be scheduled on the relatively faster machines and the jobs coming later in the sequence can be judiciously assigned to the slower machines. Therefore, the loads of the faster machines can be increased, which in turn minimizes the overall makespan of the schedule.
Epstein and Sgall [70] obtained an improved lower bound of by characterizing the input parameters such as number of jobs, processing times of the jobs, number of machines and their speeds. For an infinite number of machines, where a machine has speed for any variable ¡1, they obtained a lower bound of . Here, they considered an infinite job sequence, where the processing time for any job such that the sum of processing times of all jobs is always . For a general case of machines, they obtained a simple lower bound of by considering largest jobs each with processing time and machines with speed , where such that total processing time of the jobs is always . Then, by judiciously modifying the values of input parameters, they obtained improved lower bounds of and for number of machines respectively. We now present the summary of important competitive results in nonpreemptive online scheduling on uniform related machines by randomized algorithms in Table 7.
Year  Author(s)  Result(s)  Bound 

1997  Indyk [68]  UB  
2000  Berman et al. [69]  UB  
2000  Berman et al. [69]  LB  
2000  Epstein, Sgall [70]  LB  
2001  Epstein et al. [43]  LB 
Research Challenges:

Close or diminish the gap of [2, 4.311] for the current best lower and upper bounds on the competitive ratio.

Design of competitive randomized online algorithms with a new function and parameter based on the speeds of the machines.

Can a randomized algorithm beat the performance of the current best deterministic strategy in obtaining the lower bound?
6.3 Preemptive, Identical, Uniform Related Machines
Here, we present an overview of the state of the art literature in design of randomized algorithms for preemptive online scheduling in identical and uniform related machines as follows.
Identical Machines. Seiden [65] proposed the first randomized algorithm for preemptive online scheduling on identical machines by slightly modifying the original algorithm of Chen et al.[63]. Seiden considered the notion of job splitting as the preemptive characteristic of the scheduling algorithm. The algorithm schedules a sequence of jobs on identical machines in the following way: whenever a job is received, a time slot is assigned for job on each machine starting from the most loaded machine to the least loaded machine . The time slot for in machine is defined as a function() of the following two parameters: sum of the processing times of all jobs(T) and largest processing time(). Formally, the time slot in can be . The time slot for job on rest of the machines() are allocated in the following way: . The objective is to keep machines lightly loaded and machines heavily loaded. Here, the bounds on the competitive ratios were shown as a function of real constants and were verified through computer programs written by tool Mathematica. However, a general bound for the algorithm was not derived.
Uniform Related Machines. Ebenlendr and Sgall [61] obtained an upper bound of for preemptive online scheduling on uniform related machines by using the doubling strategy. They made a conjecture on the improvement over doubling strategy that the initial value for optimal makespan(
) can be guessed by considering an exponential distribution.
Epstein and Sgall [70] obtained lower bounds on the competitive ratio for the worst case combination of speeds for any fixed . These bounds approach to when and all hold for randomized algorithms.
7 Recent Trends
Online scheduling poses a nontrivial research challenge for designing optimal algorithms due to unavailability of complete input information at the outset. Recent studies have guaranteed a performance improvement over the online deterministic and randomized strategies by relaxing one or more stringent constraints of the pure online scheduling setting. The relaxation includes availability of additional computational power or extra piece of information(EPI) to an online scheduling algorithm. This section highlights some of the relaxed variants of the online scheduling model and reports important competitive analysis results as follows.
7.1 Resource Augmentation
Resource augmentation model was pioneered by Kalyansundaram and Pruhs [71]. Here, an online scheduling algorithm is given some additional resources such as high speed machines(speed augmentation) or memory space (memory augmentation) as compared to its optimum offline(OPT) counterpart. We now discuss on speed augmentation and memory augmentation as follows.
7.1.1 Speed Augmentation
This model gives as input a set of relatively high speed machines to an online algorithm for scheduling a sequence of jobs and compare its performance with OPT that schedules jobs on relatively slower machines. For instance, an online scheduling algorithm is given a set of machines with speeds , , where algorithm OPT operates machines with speed =, . Berman and Coulston [72] studied preemptive online scheduling on a single machine with speed augmentation for minimizing , where is the release time of job and is the completion time of . They considered that an online algorithm is given a machine with speed times faster than the machine given to the optimal offline algorithm. They proposed the algorithm Balance, which always schedules least executed job. They achieved a UB of . Algorithm Balance was shown to be competitive for . Lam and To [73] studied preemptive online scheduling with hard deadlines. They explored a tradeoff between increment of speed and number of machines. They proved that any online algorithm that schedules jobs by earliest deadline(EDF) is optimal for =, if the algorithm is given machines with speeds times faster than its optimal offline counterpart. It was shown that EDF rule achieves optimality with times faster machines and additional machines. Some recent works on online scheduling with speed augmentation can be found in [7476].
7.1.2 Memory Augmentation
Buffer. A buffer is given, which is capable of keeping at most jobs, where . Availability of allows an online algorithm either to keep an incoming job temporarily on the buffer or to schedule one of the available jobs directly on a machine. An online algorithm now can see at most jobs at any time step prior to make a scheduling decision. Some of the interesting studies for online scheduling in identical machines with buffer of varying sizes are due to [7779, 81]. In [82], the authors considered online hierarchical scheduling with in identical machines, where the machines are of different capabilities in the sense that machine can process any job and machine can process only some designated jobs. An available job is given with its and , if =, then can only be processed by machine , if =, then can be processed by either of the machines. We now represent important competitive analysis results achieved for online scheduling in identical machines with buffer in Table 8.
Year, Author(s)  Machine(s),  Competitive Ratio(s) 

1997, Kellerer et al. [77]  identical,  Tight 
1997, Zhang [78]  identical, =  Tight 
2004, Dosa, He [79]  identical, =  Tight 
2012, Lan et al. [81]  identical, =  Tight 
2013, Chen et al. [82]  identical, hierarchical, =  Tight 
Parallel Schedules. Upon receiving a job , , an online algorithm makes two copies of and virtually schedules each of the copies by two independent procedures. Therefore, two parallel schedules are constructed at any time step. After constructing two virtual schedules for the entire job sequence, one of the schedules is chosen that has incurred minimum for actual assignment of all jobs. Here, an extra space is given to maintain solutions for parallel schedules. In 1997, Keller et al. [77] first studied nonpreemptive online scheduling on identical machine with parallel schedules and obtained a tight bound of . In 2012, Albers and Hellwig [83] investigated the general case of identical machine and achieved UB . An open issue is to obtain a tight bound for identical machine setting. It will be interesting further to explore uniform machine setting with parallel schedules.
7.2 Semionline Scheduling
The study of online scheduling with Extra Piece of Information(EPI) pioneered the concept of semionline scheduling. Kellerer et al. [77] first envisioned that availability of additional information on future inputs is quite natural in contrast to the constraint of no information at all. For an instance, the number of jobs that are going to be submitted to a multiuser time shared system is not known a priori. However, the minimum and maximum time required to process each job can be known in advance by previous history. This revitalized the area of online scheduling to explore practically significant new EPIs. We now report important results, achieved by some wellknown semionline policies with a classification of EPIs as follows.
7.2.1 Sum
An online algorithm is given a priori, the sum of the processing times of all jobs. Kellerer et al. [77] first introduced Sum as an EPI for nonpreemptive online scheduling on identical machine and achieved a tight bound of on the CR. Recent contributions in this setting are due to [80, 84, 8692]. Important results achieved for online scheduling with known Sum is reported in Table 9.
Year, Author(s)  Machine(s)  Competitive Ratio(s) 

1997, Kellerer et al. [77]  identical  Tight 
1998, Gilrich et al. [84]  identical  UB 
2004, Angelleli et al. [86]  identical  LB and UB respectively, 
2005, Cheng et al. [87]  identical  LB and UB respectively, 
2007, Angelleli et al. [88]  identical  LB and UB respectively 
2008, Angelleli et al. [80]  uniform  Tight for =, Tight for 
2009, Ng et al. [89]  uniform  UB 
2010, Angelleli et al. [90]  uniform  LB for = 
2011, Dosa et al. [91]  uniform  Tight 
2015, Keller et al. [92]  identical  Tight 
7.2.2 Optimum Makespan
An online algorithm is given with the value of the optimum makespan(Opt) for an online sequence of jobs prior to their scheduling and availability. Epstein [93] first considered Opt as an EPI for online scheduling on uniform machine and obtained UB . Earlier, Azar and Regev [94] introduced Opt as an EPI in bin stretching problem and achieved UB . The latest results have been contributed in [89, 91, 95, 96]. Important results achieved for online scheduling with known Optis reported in Table 10.
Year, Author(s)  Machine(s)  Competitive Ratio(s) 

1998, Azar, Regev [94]  identical  UB 
2003, Epstein [93]  uniform  UB 
2009, Ng et al. [89]  uniform  Tight 
2011, Dosa et al. [91]  uniform  LB for 
2015, Dosa et al. [95]  uniform  LB for , LB for 
2017, Dosa et al. [96]  uniform  Tight for =, Tight for 
7.2.3 Max
A job with largest processing time(Max) is known at the outset. He and Zhang [97] introduced Max as known EPI in online scheduling on identical machines and obtained a LB of . Further studies for online scheduling with known Max are due to [98101]. Important results achieved for online scheduling with known Max is reported in Table 11.
Year, Author(s)  Machine(s)  Competitive Ratio(s) 

1999, He, Zhang [97]  identical  Tight 
2002, Cai [98]  identical  UB 
2004, He, Jiang [99]  uniform  LB for preemptive scheduling 
2008, Wu et al. [100]  identical  Tight 
2013, Lee, Lim [101]  identical  Tight for = and Tight for = 
7.2.4 Tightly Grouped Processing Time(TGRP)
Processing times of an online sequence of jobs are not known a priori. However, maximum and minimum time required to process each job is given to an online algorithm at the outset. For instance, it is given that size of each job , () is in between , where and . He and Zhang [97] initiated study of online scheduling on identical machine with and achieved LB . Further advancements in this setting are the outcomes of the following contributions [99, 102]. Later, we shall report some of the results, where minimum processing time for each job or maximum processing time for each job were considered in combine with some other EPIs. Recently [103], online hierarchical scheduling on uniform machine with has been studied and a LB of has been shown, where . Important results achieved in the literature for online scheduling with TGRP is reported in Table 12.
Year, Author(s)  Machine(s)  Competitive Ratio(s) 

1999, He, Zhang [97]  identical  LB 
2004, He, Jiang [99]  uniform  Tight for and 
Comments
There are no comments yet.