scispace - formally typeset
Search or ask a question

Showing papers on "Fair-share scheduling published in 1987"


Journal ArticleDOI
TL;DR: This paper considers the design and analysis of algorithms for vehicle routing and scheduling problems with time window constraints and finds that several heuristics performed well in different problem environments; in particular an insertion-type heuristic consistently gave very good results.
Abstract: This paper considers the design and analysis of algorithms for vehicle routing and scheduling problems with time window constraints. Given the intrinsic difficulty of this problem class, approximation methods seem to offer the most promise for practical size problems. After describing a variety of heuristics, we conduct an extensive computational study of their performance. The problem set includes routing and scheduling environments that differ in terms of the type of data used to generate the problems, the percentage of customers with time windows, their tightness and positioning, and the scheduling horizon. We found that several heuristics performed well in different problem environments; in particular an insertion-type heuristic consistently gave very good results.

3,211 citations


Book
01 Jan 1987
TL;DR: In this thesis, a system called ISIS is presented, which uses a constraint-directed search paradigm to solve the scheduling problem and provides a knowledge representation language for modeling organizations and their constraints.
Abstract: : This thesis investigates the problem of constraint-directed reasoning in the job-shop scheduling domain. The job-shop scheduling problem is defined as: selecting a sequence of operations whose execution results in the completion of an order, and assigning times (i.e., start and end times) and resources to each operation. The number of possible schedules grows exponentially with the number of orders, alternative production plans, substitutable resources, and possible times to assign resources and perform operations. The acceptability of a particular schedule depends not only on the availability of alternatives, but on other knowledge such as organizational goals, physical limitations of resources, causal restrictions amongst resources and operations, availability of resources, and preferences amongst alternatives. By viewing the scheduling problem from a constraint-directed search perspective, much of this knowledge can be viewed as constraints on the schedule generation and selection process. In this thesis, we present a system called ISIS. ISIS uses a constraint-directed search paradigm to solve the scheduling problem. ISIS provides: a knowledge representation language (SRL) for modeling organizations and their constraints; hierarchical, constraint-directed scheduling of orders, which includes: constraint-directed bounding of the solution space; context-sensitive selection of constraints, and weighted interpretation of constraints; analytic and generative constraint relaxation; and techniques for the diagnosis of poor schedules.

532 citations


01 Jul 1987
TL;DR: This dissertation presents efficient approximation algorithms for partitioning and scheduling problems, based on a macro-dataflow and compile-time scheduling model, which are proved to be NP-complete in the strong sense.
Abstract: There are three fundamental problems to be solved in the execution of a parallel program on a multiprocessor--identifying the parallelism in the program, partitioning the program into tasks and scheduling the tasks on processors. Whereas the problem of identifying parallelism is a programming language issue, the partitioning and scheduling problems are intimately related to parameters of the target multiprocessor, like the number of processors and synchronisation and communication overhead. It is desirable for the partitioning and scheduling to be performed automatically, so that the same parallel program can execute efficiently on different multiprocessors. This dissertation presents two solutions to the partitioning and scheduling problems. The first approach is based on a macro-dataflow model, where the program is partitioned into tasks at compile-time and the tasks are scheduled on processors at run-time. The second approach is based on a compile-time scheduling model, where the partitioning of the program and the scheduling of tasks on processors are both performed at compile-time. Both approaches have been implemented to partition programs written in the single-assignment language, SISAL. The inputs to the partitioning and scheduling algorithms are a graphical representation of the program and a list of parameters describing the target multiprocessor. Execution profile information is used to derive compile-time estimates of execution times and data sizes in the program. Both the macro-dataflow and compile-time scheduling problems are expressed as optimisation problems, which are proved to be NP-complete in the strong sense. This dissertation presents efficient approximation algorithms for these problems. The effectiveness of the partitioning and scheduling algorithms is studied by multiprocessor simulations of various SISAL benchmark programs for different target multiprocessor parameters.

322 citations


Proceedings ArticleDOI
01 Oct 1987
TL;DR: The iterative force-directed scheduling algorithm attempts to balance the distribution of operations that make use of the same hardware resources and has O(n/sup2/) complexity.
Abstract: The HAL system performs data path synthesis using a new scheduling algorithm that is part of an interdependent scheduling and allocation scheme. This scheme uses an estimate of the hardware allocation to guide and optimize the scheduling subtask. The allocation information includes the number, type, speed and cost of hardware modules as well as the associated multiplexer and interconnect costs. The iterative force-directed scheduling algorithm attempts to balance the distribution of operations that make use of the same hardware resources: * Every feasible control step assignment is evaluated at each iteration, for all operations. * The associated side-effects on all the predecessor and successor operations are taken into account. * All the decisions are global. * The algorithm has O(n/sup2/) complexity. We review and compare existing scheduling techniques. Moderate and difficult examples are used to illustrate the effectiveness of the approach.

236 citations



Journal ArticleDOI
01 Dec 1987
TL;DR: In this article, the authors present mathematical formulations to the problem and survey recent advances in optimization-based solution methods for the problem of short-term unit commitment, shortterm hydro scheduling, and hydro-thermal coordination.
Abstract: The operations scheduling problem in electric power systems is to determine which generating units should be on-line and available for generation at each hour and the associated nominal generation or dispatch. This paper describes the scope of the operations scheduling problem, presents mathematical formulations to the problem, and surveys recent advances in optimization-based solution methods. It is mainly concerned with the shorter term aspects of the problem where the time horizon is of the order of a week. The unit commitment, short-term hydro scheduling, and hydro-thermal coordination problems as well as solution methods are emphasized.

193 citations


Proceedings Article
01 Jan 1987
TL;DR: A classification scheme is proposed for a class of models that arise in the area of vehicle routing and scheduling and illustrated on a number of problems that have been considered in the literature.
Abstract: A classification scheme is proposed for a class of models that arise in the area of vehicle routing and scheduling and illustrated on a number of problems that have been considered in the literature. The classification scheme may serve as a first step towards the development of a model and algorithm management system in this area.

167 citations


Journal ArticleDOI
TL;DR: In this article, the authors consider the problem of scheduling a set of n preemptable tasks in a system having r resources, where each task has an arbitrary, but known, worst case processing time and a deadline, and may request simultaneous use of a number of resources.
Abstract: We consider the problem of scheduling a set of n preemptable tasks in a system having r resources. Each task has an arbitrary, but known, worst case processing time and a deadline, and may request simultaneous use of a number of resources. A resource can be used either in shared mode or exclusive mode. In this paper, we develop and evaluate algorithms for determining whether or not a set of preemptive tasks is schedulable in such a real-time system, and if so, determining a schedule for it. This scheduling problem is known to be computationally intensive. In many real-time application environments, tasks are scheduled dynamically, and hence the scheduling algorithms used must have low run-time costs. To keep run-time costs low, we propose the use of suboptimal but practical algorithms that employ computationally simple heuristics. The computational complexity of our algorithms for scheduling n tasks in a system having r resources is O(rn2), which is very much lower than that of known optimal algorithms. We report on the results of simulation studies performed on such heuristic preemptive scheduling algorithms and the sensitivity of the performance of the algorithms with respect to various scheduling parameters. These studies show that due to the complexity of the problem, straightforward heuristics do not perform satisfactorily. However, an algorithm that uses combinations of such heuristics in conjunction with limited backtracks works very well.

122 citations


Book ChapterDOI
TL;DR: The chapter focuses on the applications of this model in computer systems, and points out some other interpretations, because tasks and machines may also represent ships and dockyards, classes and teachers, patients and hospital equipment, or dinners and cooks.
Abstract: Publisher Summary This chapter discusses the deterministic problems of scheduling tasks on machines (processors), which is one of the most rapidly expanding areas of combinatorial optimization. These problems are stated as follows: A given set of tasks is to be processed on a set of available processors, so that all processing conditions are satisfied and a certain objective function is minimized (or maximized). It is assumed, in contrast to stochastic scheduling problems, that all task parameters are known a priori in a deterministic way. This assumption is well justified in many practical situations. On the other hand, it permits the solving of scheduling problems having a different practical interpretation from that of the stochastic approach. This interpretation is a valuable complement to the stochastic analysis and is often imposed by certain applications as—for example, in computer control systems working in a hard-real-time environment and in many industrial applications. The chapter focuses on the applications of this model in computer systems. It also points out some other interpretations, because tasks and machines may also represent ships and dockyards, classes and teachers, patients and hospital equipment, or dinners and cooks.

100 citations


Journal ArticleDOI
TL;DR: A distributed scheduling approach that takes into account characteristics of the communication network in the computer-integrated manufacturing environment and the formalism and model for the distributed scheme that can be embedded in a communication protocol are described.
Abstract: This paper describes a distributed scheduling approach that takes into account characteristics of the communication network in the computer-integrated manufacturing environment. The approach is based on a network-wide bidding scheme wherein the scheduling decision is made by collecting the price of each manufacturing cell for taking on the job; different dynamic scheduling heuristics can be incorporated in this scheme and executed in a distributed fashion. This paper also describes the formalism and model for the distributed scheme that can be embedded in a communication protocol. A simulation study has been conducted to evaluate and compare the performance of different strategies or heuristics employed in the scheduling method.

90 citations


Journal ArticleDOI
TL;DR: Algorithms used for determining whether or not a set of tasks is schedulable in a system having r resources are studied, and if so, determining a schedule for it.

Dissertation
01 Jan 1987
TL;DR: A new heuristic is introduced which considers the time delay imposed by message transmission among concurrently running tasks and a second heuristic which maximizes program execution speed by duplicating tasks is introduced, which suggest an order of magnitude improvement in program executionspeed over previous scheduling heuristics.
Abstract: We extend previous results for optimally scheduling concurrent program modules, called tasks, on a fixed, finite number of parallel processors in two fundamental ways: (1) we introduce a new heuristic which considers the time delay imposed by message transmission among concurrently running tasks; and (2) we introduce a second heuristic which maximizes program execution speed by duplicating tasks. Simulation results are given which suggest an order of magnitude improvement in program execution speed over previous scheduling heuristics. The first solution, called ISH (insertion scheduling heuristic), provides only a small improvement over current solutions but has a smaller time complexity than DSH, O(N$\sp2$). DSH (duplication scheduling heuristic) is an O(N$\sp4$) heuristic that (1) gives up to an order of magnitude improvement in performance, (2) solves the max-min problem of parallel processor scheduling by duplicating selected scheduled tasks on some PEs, and (3) gives monotonically growing improvements as the number of PEs is increased. The max-min problem is caused by the trade-off between maximum parallelism versus minimum communication delay. The DSH is also applied in "Grain Packing", which is a new way to define the grain size for a user program on a specific parallel processing system. Instead of defining the grain size before scheduling, grain packing uses the fine grain scheduling to construct larger grains. In this way all available parallelism is considered as well as the communication delay.

Journal ArticleDOI
TL;DR: An algorithm for scheduling nurses in a hospital is presented that can be implemented easily on a microcomputer and the resulting schedules are cyclic and optimal.


Proceedings ArticleDOI
19 Oct 1987
TL;DR: A new approach to stabilize the rate-monotonic algorithm in the presence of transient processor overloads is presented and a new class of algorithms to handle a periodic tasks which improve the response times to aperiodic tasks while guaranteeing the deadlines of periodic tasks are presented.
Abstract: In this paper, we give a comprehensive review of a number of practical problems associated with the use of static priority scheduling. We first present a new approach to stabilize the rate-monotonic algorithm in the presence of transient processor overloads. We also present a new class of algorithms to handle aperiodic tasks which improve the response times to aperiodic tasks while guaranteeing the deadlines of periodic tasks. We then study the problem of integrated processor and data I/O scheduling. Finally we review the problem of scheduling of messages over a bus with insufficient priority levels but with multiple buffers.


Journal ArticleDOI
TL;DR: How the underlying decision problem was analyzed was analyzed using both a network flow model and a mixed integer programming model, and the components of the decision support system developed to generate schedules are described.

Journal ArticleDOI
TL;DR: A manual heuristic for labor scheduling that outperforms traditional algorithmic solution approaches is offered and is shown to produce a smaller work force than the classical approach in 106 of the 108 demand-operating condition patterns examined.
Abstract: In the increasingly competitive services sector, utilization of the labor force can make the difference between profits or losses. Until recently, service operations managers had a limited set of tools, most of them computer-based, for scheduling labor. This paper offers a manual heuristic for labor scheduling that outperforms traditional algorithmic solution approaches. Specifically, this study examines the problem of scheduling employees in service delivery system subject to demand variability. The manual heuristic proposed asigns full-time empolyees to weekly work schedules with the objective of minimizing the total number of labor hours scheduled. The performance of the manual heuristic is compared to the classical algorithmic solution and to a lower bound for a variety of demand distributions and system operating conditions. The heuristic is shown to produce a smaller work force than the classical approach in 106 of the 108 demand-operating condition patterns examined.


Journal ArticleDOI
TL;DR: It is found, using a traffic model appropriate for circuit switched traffic that increases of typically 10 to 15 percent in offered load can be obtained through optimal scheduling (as compared to the much simpler random scheduling algorithm), which reduces the importance of the costly design feature of optimal scheduling.
Abstract: In a time-multiplex switching system, the incoming traffic must be scheduled to avoid conflict at the switch output (two or more users converging simultaneously upon a single output). Two scheduling algorithms, random scheduling and optimal scheduling, are explored in this paper. Random scheduling is computationally simple, whereas optimal scheduling is currently very difficult. We have found, using a traffic model appropriate for circuit switched traffic that increases of typically 10 to 15 percent in offered load can be obtained through optimal scheduling (as compared to the much simpler random scheduling algorithm). The improvement is a function of the number of time slots (or circuits) per time-multiplexed frame, and falls to zero for both very small and very large frame sizes. Thus, in many circuit switching applications, providing a computationally expensive optimal schedule may not be warranted. This conclusion has important ramifications for both electronic and emerging photonic switching systems since it reduces the importance of the costly design feature of optimal scheduling.

Proceedings ArticleDOI
01 Mar 1987
TL;DR: A novel approach to scheduling is described which overcomes the problems of combinatorial complexity and executional uncertainty and requires a new representation for schedules and techniques for knowledge-based reasoning about this representation.
Abstract: The scheduling of jobs and resources In a manufacturing environment is important because o f its basic impact on production costs, but is difficult because of the problems of combinatorial complexity and executwnal uncertainty. Scheduling suffers from combinatorial complexity because there are a very large number of schedules which can be generated f o r a set of jobs and resources, but there is no good way to choose between the options prior to execution. Scheduling is complicated by executional uncertainty in that unforeseeable events will almost certainly occur to disrupt any particular schedule once execution commences. This paper describes a novel approach to scheduling which overcomes these two difficulties. Implementation of the approach requires a new representation for schedules and techniques for knowledge-based reasoning about this representation. The issues involved in performing the knowledge-based reasoning are described and illustrated by examples drawn from the domain of robotic assembly.

Journal ArticleDOI
01 Oct 1987
TL;DR: Ada's constraints on the language's implementation limit the definition of priority and the task scheduling algorithm to preclude the use of the best algorithms for scheduling jobs with hard deadlines.
Abstract: The goal in real-time scheduling is to satisfy the timing requirements of application jobs which often have hard deadlines. There are two aspects to Ada's scheduling policies which are detrimental to achieving this goal. First, Ada's constraints on the language's implementation limit the definition of priority and the task scheduling algorithm to preclude the use of the best algorithms for scheduling jobs with hard deadlines. Second, information about task priority is not used when selecting a task from an entry queue or when choosing among branches of a selective wait statement. Instead, FIFO and arbitrary disciplines are used, respectively, which can unnecessarily lead to missed deadlines, even for very low levels of processor utilization. We suggest some areas for change to make the language more suitable for building real-time systems.

Journal ArticleDOI
TL;DR: A heuristic approach is developed, based on the well-known Critical Path algorithm, as a basis for determining instruction priorities, which shows that adding a priority mechanism is not justifiable in the general case.
Abstract: The effect of incorporating a priority scheme into a data flow computer is studied in this paper. Specifically, we deal with the scheduling of instructions in a data flow program, and the mechanisms by which such scheduling may be implemented within a data flow computer. We show that the assignment of priorities to data flow operations is a special case of a problem in scheduling theory, and also belongs to the NP-complete class of problems. Therefore, we develop a heuristic approach, based on the well-known Critical Path algorithm, as a basis for determining instruction priorities. Our conclusions, based on the simulation of programs executed in a modified data flow computer, show that adding a priority mechanism is not justifiable in the general case. This is due mostly to the inability to reach the potential improvement offered by scheduling operations, because of implementation restrictions. Nevertheless, certain algorithms (e. g., DFT) can still benefit from the proposed scheme, mainly because of their highly regular, static structure.

Journal ArticleDOI
TL;DR: In this article, the authors present a model that employs the criteria of flowtime as a measure of work-in-process (WIP) inventory and total job earliness to represent finished goods inventory.
Abstract: Recent research on the single machine scheduling problem has focused on the treatment of multiple scheduling objectives. Most works have used some combination of mean flowtime, maximum tardiness, or total tardiness as scheduling criteria. Previous research has largely ignored earliness as a scheduling criterion. This paper presents a model that employs the criteria of flowtime as a measure of work-in-process (WIP) inventory and total job earliness to represent finished goods inventory. Total tardiness is used to represent customer satisfaction. The three criteria are used to form a single, weighted-sum objective function for guiding the choice of the best processing sequence. Two procedures are presented that might be used to solve this problem. The first is an enumeration scheme using bounding and dominance criteria that have been developed to aid efficient solution, and the second is a mixed integer linear programming (LP) formulation. Computational experience with the two models is also presented.

Journal ArticleDOI
TL;DR: In this article, an heuristic simulation based approach to the production of schedules is proposed to ensure that the schedules are feasible and take account of the constraints of materials handling, tooling and fixtures while the proposed look ahead algorithm does not ensure optimal schedules.


Journal ArticleDOI
TL;DR: A heuristic that iterates between solving the scheduling problem with constant setup costs and solving a "traveling salesman" formulation with sequence dependent setup costs is presented in this article, which always provides a feasible solution if one exists.
Abstract: The problem of scheduling products, with constant demand rates, on a single facility is difficult. This difficulty is compounded if the setup costs are not constant for each product but depend on the sequence in which the products are made. A heuristic that iterates between solving the scheduling problem with constant setup costs and solving a “traveling salesman” formulation with sequence dependent setup costs is presented. The heuristic works well in practice and always provides a feasible solution if one exists. Some computational experience is also given.

Journal ArticleDOI
TL;DR: The use of artificial intelligence techniques has been investigated as a contribution to a solution to the following problems: daily estimated scheduling in a FMS, and real time control of production disturbances.
Abstract: The use of artificial intelligence techniques has been investigated as a contribution to a solution to the following problems: daily estimated scheduling in a FMS, and real time control of production disturbances. We present our investigation in object oriented languages to represent the relevant information of a scheduling problem, particularly knowledge about constraints and flexibility factors in a shop. We detail the off-line daily scheduling prototype SOJA and the reactive capabilities we are incorporating in it to repair previous schedules with respect to real-time situations. The integration of automatic generation and modification of schedule plans leads us to introduce a coordination level which generates an admissible solution and a local, cooperation level which deals with local modifications of the plan.

Proceedings ArticleDOI
01 May 1987
TL;DR: A variety of disk scheduling algorithms, including some newly defined ones, are compared both in simulation and in tests on a real machine running UNIX* System V, and an alternative arrival model is suggested which offers improved predictions in the System V environment.
Abstract: A variety of disk scheduling algorithms, including some newly defined ones, are compared both in simulation and in tests on a real machine running UNIX* System V. In the real system tests, first-come first-served (FCFS), shortest seek time first (SSTF), and the standard System V algorithm (SVS) are all seen to yield relatively poor mean waiting time performance when compared to the VSCAN(0.2) algorithm and modifications thereof suggested by Coffman. Nevertheless, each is seen to excel along a particular performance dimension. The adequacy of open, Poisson arrival simulation models in predicting disk scheduling performance is questioned, and an alternative arrival model is suggested which offers improved predictions in the System V environment.

30 Nov 1987
TL;DR: The problem of scheduling periodic jobs to meet deadlines on a system that provides the necessary programming language primitives and run-time support for processes to return imprecise results is discussed and three heuristic algorithms that lead to feasible schedules with small average errors are described.
Abstract: One approach to avoid timing faults in hard, real-time systems is to make available intermediate, imprecise results produced by real-time processes. When a result of the desired quality cannot be produced in time, an imprecise result of acceptable quality produced before the deadline can be used. The problem of scheduling periodic jobs to meet deadlines on a system that provides the necessary programming language primitives and run-time support for processes to return imprecise results is discussed. Since the scheduler may choose to terminate a task before it is completed, causing it to produce an acceptable but imprecise result, the amount of processor time assigned to any task in a valid schedule can be less than the amount of time required to complete the task. A meaningful formulation of the scheduling problem must take into account the overall quality of the results. Depending on the different types of undesirable effects caused by errors, jobs are classified as type N or type C. For type N jobs, the effects of errors in results produced in different periods are not cumulative. A reasonable performance measure is the average error over all jobs. Three heuristic algorithms that lead to feasible schedules with small average errors are described. For type C jobs, the undesirable effects of errors produced in different periods are cumulative. Schedulability criteria of type C jobs are discussed.