Minimizing the sum of completion times
The problem 1, , aims to minimize the sum of completion times. It can be solved optimally by the Shortest Processing Time First rule (SPT): the jobs are scheduled by ascending order of their processing time . The problem 1, , aims to minimize the ''weighted'' sum of completion times. It can be solved optimally by the Weighted Shortest Processing Time First rule (WSPT): the jobs are scheduled by ascending order of the ratio . The problem 1, chains, is a generalization of the above problem for jobs with dependencies in the form of chains. It can also be solved optimally by a suitable generalization of WSPT.Minimizing the cost of lateness
The problem 1, , aims to minimize the maximum ''lateness''. For each job ''j'', there is a due date . If it is completed after its due date, it suffers '' lateness'' defined as . 1, , can be solved optimally by the Earliest Due Date First rule (EDD): the jobs are scheduled by ascending order of their deadline . The problem 1, prec, generalizes the 1, , in two ways: first, it allows arbitrary precedence constraints on the jobs; second, it allows each job to have an arbitrary cost function ''hj'', which is a function of its completion time (lateness is a special case of a cost function). The maximum cost can be minimized by a greedy algorithm known as Lawler's algorithm. The problem 1, , generalizes 1, , by allowing each job to have a different ''release time'' by which it becomes available for processing. The presence of release times means that, in some cases, it may be optimal to leave the machine idle, in order to wait for an important job that is not released yet. Minimizing maximum lateness in this setting is NP-hard. But in practice, it can be solved using a branch-and-bound algorithm.Maximizing the profit of earliness
In settings with deadlines, it is possible that, if the job is completed by the deadline, there is a profit ''pj''. Otherwise, there is no profit. The goal is to maximize the profit. Single-machine scheduling with deadlines is NP-hard; Sahni presents both exact exponential-time algorithms and a polynomial-time approximation algorithm.Maximizing the throughput
The problem 1, , aims to minimize the ''number'' of late jobs, regardless of the amount of lateness. It can be solved optimally by the Hodgson-Moore algorithm. It can also be interpreted as maximizing the number of jobs that complete on time; this number is called theJobs with non-constant length
Workers and machines often become tired after working for a certain amount of time, and this makes them slower when processing future jobs. On the other hand, workers and machines may learn how to work better, and this makes them faster when processing future jobs. In both cases, the length (processing-time) of a job is not constant, but depends on the jobs processed before it. In this setting, even minimizing the maximum completion time becomes non-trivial. There are two common ways to model the change in job length. # The job length may depend on the start time of the job. When the length is a weakly-increasing function of the start-time, it is deterioration effect; when it is weakly-decreasing, it is called learning effect. # The job length may depend on the sum of normal processing times of previously-processed jobs. When the length is a weakly-increasing function of this sum, it is often called aging effect.Start-time-based length
Cheng and Ding studied makespan minimization and maximum-lateness minimization when the actual length of job ''j'' scheduled at time ''sj'' is given by, where ''pj'' is the normal length of ''j''.They proved the following results: * When jobs can have arbitrary deadlines, the problems are strongly NP-hard by reduction from 3-partition; * When jobs can have one of two deadlines, the problems are NP-complete, by reduction from partition. * When jobs can have arbitrary release times, the problems are strongly NP-hard, by reduction from the problem with arbitrary deadlines. * When jobs can have one of two release times, either 0 or R, the problems are NP-complete. Kubiak and van-de-Velde studied makespan minimization when the fatigue starts only after a common due-date ''d''. That is, the actual length of job ''j'' scheduled at time ''sj'' is given by
.So, if the job starts before ''d'', its length does not change; if it starts after ''d'', its length grows by a job-dependent rate. They show that the problem is NP-hard, give a pseudopolynomial algorithm that runs in time , and give a branch-and-bound algorithm that solves instances with up to 100 jobs in reasonable time. They also study bounded deterioration, where ''pj'' stops growing if the job starts after a common maximum deterioration date D > d. For this case, they give two pseudopolynomial time algorithms. Cheng, Ding and Lin surveyed several studies of a deterioration effect, where the length of job ''j'' scheduled at time ''sj'' is either linear or piecewise linear, and the change rate can be positive or negative.
Sum-of-processing-times-based length
The aging effect has two types: * In the position-based aging model, the processing time of a job depends on the number of jobs processed before it, that is, on its position in the sequence. * In sum-of-processing-time-based aging model, the processing time of a job is a weakly-increasing function of the sum of normal (=unaffected by aging) processing times of the jobs processed before it. Wang, Wang, Wang and Wang studied sum-of-processing-time-based aging model, where the processing-time of job ''j'' scheduled at position ''v'' is given bywhere is the job scheduled at position , and α is the "aging characteristic" of the machine. In this model, the maximum processing time of the permutation is:Rudek generalized the model in two ways: allowing the fatigue to be different than the processing time, and allowing a job-dependent aging characteristic:Here, ''f'' is an increasing function that describes the dependance of the fatigue on the processing time; and ''αj'' is the aging characteristic of job ''j''. For this model, he proved the following results: * Minimizing the maximum completion time and minimizing the maximum lateness are polynomial-time solvable. * Minimizing the maximum completion time and minimizing the maximum lateness are strongly NP-hard if some jobs have deadlines.See also
* Interval scheduling Many solution techniques have been applied to solving single machine scheduling problems. Some of them are listed below. *References
{{DEFAULTSORT:Single-Machine Scheduling Optimal scheduling NP-complete problems