An Application of Bayesian Decision Theory to Decentralized Control of Job Scheduling

There is a wide spectrum of techniques that can be aptly named decentralized control. However, certain functions in distributed operating systems, e.g., scheduling, operate under such demanding requirements that no known optimal control solutions exist. It has been shown that heuristics are necessary. This paper presents a heuristic for the effective cooperation of multiple decentralized components of a job scheduling function. An especially useful feature of the heuristic is that it can dynamically adapt to the quality of the state information being processed. Extensive simulation results show the utility of this heuristic. The simulation results are compared to several analytical models and a baseline simulation model. The heuristic itself is based on the application of Bayesian decision theory. Bayesian decision theory was used because its principles can be applied as a systematic approach to complex decision making under conditions of imperfect knowledge, and it can run relatively cheaply in real time.

[1]  Larry D. Wittie,et al.  MICROS, A Distributed Operating System for MICRONET, A Reconfigurable Network Computer , 1980, IEEE Trans. Computers.

[2]  Yan Hong Ng The distributed computer system , 1983 .

[3]  John K. Ousterhout,et al.  Medusa: An experiment in distributed operating system structure (Summary) , 1979, SOSP '79.

[4]  Raphael A. Finkel,et al.  A Stable Distributed Scheduling Algorithm , 1981, IEEE International Conference on Distributed Computing Systems.

[5]  Raphael A. Finkel,et al.  Roscoe: A Multi-Microcomputer Operating System , 1978 .

[6]  Ray A. Jarvis,et al.  Optimization Strategies in Adaptive Control: A Selective Survey , 1975, IEEE Transactions on Systems, Man, and Cybernetics.

[7]  Mario J. Gonzalez Deterministic Processor Scheduling , 1977, CSUR.

[8]  Kemal Efe,et al.  Heuristic Models of Task Assignment Scheduling in Distributed Systems , 1982, Computer.

[9]  Krithi Ramamritham,et al.  Dynamic Task Scheduling in Hard Real-Time Distributed systems , 1984, IEEE Software.

[10]  Philip A. Bernstein,et al.  The correctness of concurrency control mechanisms in a system for distributed databases (SDD-1) , 1980, TODS.

[11]  Yu-Chi Ho,et al.  Team decision theory and information structures , 1980 .

[12]  Walter H. Kohler,et al.  Models for Dynamic Load Balancing in a Heterogeneous Multiple Processor System , 1979, IEEE Transactions on Computers.

[13]  Masahiro Tsuchiya,et al.  A Task Allocation Model for Distributed Computing Systems , 1982, IEEE Transactions on Computers.

[14]  Nils R. Sandell,et al.  Strategies for Distributed Decisionmaking , 1981, IEEE Transactions on Systems, Man, and Cybernetics.

[15]  Paul L. McEntire,et al.  Tutorial, distributed control , 1982 .

[16]  Wesley W. Chu,et al.  Optimal File Allocation in a Multiple Computer System , 1969, IEEE Transactions on Computers.

[17]  Wesley W. Chu,et al.  Task Allocation in Distributed Data Processing , 1980, Computer.

[18]  Gérard Le Lann,et al.  Distributed Systems - Towards a Formal Approach , 1977, IFIP Congress.

[19]  Karsten Schwan,et al.  StarOS, a multiprocessor operating system for the support of task forces , 1979, SOSP '79.

[20]  David C. Walden,et al.  The ARPA Network Design Decisions , 1977, Comput. Networks.

[21]  Butler W. Lampson,et al.  Distributed Systems — Architecture and Implementation , 1982, Lecture Notes in Computer Science.

[22]  Shahid H. Bokhari,et al.  Control of Distributed Processes , 1978, Computer.

[23]  John A. Stankovic,et al.  An Adaptive Bidding Algorithm For Processes, Clusters and Distributed Groups , 1984, ICDCS.

[24]  Shahid H. Bokhari,et al.  Dual Processor Scheduling with Dynamic Reassignment , 1979, IEEE Transactions on Software Engineering.

[25]  Arne A. Nilsson,et al.  On Optimal Scheduling Algorithms for Time-Shared Systems , 1981, JACM.

[26]  Reid G. Smith,et al.  The Contract Net Protocol: High-Level Communication and Control in a Distributed Problem Solver , 1980, IEEE Transactions on Computers.

[27]  Y. Ho,et al.  Team decision theory and information structures in optimal control problems: Part II , 1971, CDC 1971.

[28]  Philip H. Enslow What is a "Distributed" Data Processing System? , 1978, Computer.

[29]  John A. Stankovic,et al.  Simulations of Three Adaptive, Decentralized Controlled, Job Scheduling Algorithms , 1984, Comput. Networks.

[30]  Nils R. Sandell,et al.  Structures for Distributed Decisionmaking , 1981, IEEE Transactions on Systems, Man, and Cybernetics.

[31]  Philip A. Bernstein,et al.  Concurrency Control in Distributed Database Systems , 1986, CSUR.

[32]  Michael Athans,et al.  Survey of decentralized control methods for large scale systems , 1978 .

[33]  Adrian Segall,et al.  The Modeling of Adaptive Routing in Data-Communication Networks , 1977, IEEE Trans. Commun..

[34]  Robert L. Winkler,et al.  An Introduction to Bayesian Inference and Decision , 1972 .

[35]  Harold S. Stone,et al.  Multiprocessor Scheduling with the Aid of Network Flow Algorithms , 1977, IEEE Transactions on Software Engineering.

[36]  John A. Stankovic,et al.  Software Communication Mechanisms: Procedure Calls versus Messages , 1982, Computer.

[37]  Wing H. Huen,et al.  Distributed Enumeration on Between Computers , 1980, IEEE Transactions on Computers.

[38]  Jacob A. Abraham,et al.  Load Balancing in Distributed Systems , 1982, IEEE Transactions on Software Engineering.

[39]  E. Jensen The Honeywell Experimental Distributed Processor – an Overview , 1978, Computer.