An efficient algorithm for a task allocation problem
- 1 July 1992
- journal article
- Published by Association for Computing Machinery (ACM) in Journal of the ACM
- Vol. 39 (3) , 502-518
- https://doi.org/10.1145/146637.146646
Abstract
This paper presents an efficient algorithm to solve one of the task allocation problems. Task assignment in an heterogeneous multiple processors system is investigated. The cost function is formulated in order to measure the intertask communication and processing costs in an uncapacited network. A formulation of the problem in terms of the minimization of a submodular quadratic pseudo-Boolean function with assignment constraints is then presented. The use of a branch-and-bound algorithm using a Lagrangean relaxation of these constraints is proposed. The lower bound is the value of an approximate solution to the Lagrangean dual problem. A zero-duality gap, that is, a saddle point, is characterized by checking the consistency of a pseudo-Boolean equation. A solution is found for large-scale problems (e.g., 20 processors, 50 tasks, and 200 task communications or 10 processors, 100 tasks, and 300 task communications). Excellent experimental results were obtained which are due to the weak frequency of a duality gap and the efficient characterization of the zero-gap (for practical purposes, this is achieved in linear time). Moreover, from the saddle point, it is possible to derive the optimal task assignment.Keywords
This publication has 12 references indexed in Scilit:
- Unconstrained 0–1 optimization and Lagrangean relaxationDiscrete Applied Mathematics, 1990
- Efficient computation of optimal assignments for distributed tasksJournal of Parallel and Distributed Computing, 1987
- A Graph Matching Approach to Optimal Task Assignment in Distributed Computing Systems Using a Minimax CriterionIEEE Transactions on Computers, 1985
- Heuristic Models of Task Assignment Scheduling in Distributed SystemsComputer, 1982
- On the Mapping ProblemIEEE Transactions on Computers, 1981
- Task Allocation in Distributed Data ProcessingComputer, 1980
- Dual Processor Scheduling with Dynamic ReassignmentIEEE Transactions on Software Engineering, 1979
- Assignment of Tasks in a Distributed Processor System with Limited MemoryIEEE Transactions on Computers, 1979
- A linear-time algorithm for testing the truth of certain quantified boolean formulasInformation Processing Letters, 1979
- A Selection Problem of Shared Fixed Costs and Network FlowsManagement Science, 1970