Artificial intelligence (2nd ed.)
Artificial intelligence (2nd ed.)
Efficient computation of optimal assignments for distributed tasks
Journal of Parallel and Distributed Computing
Partitioning Problems in Parallel, Pipeline, and Distributed Computing
IEEE Transactions on Computers
Task Allocation for Maximizing Reliability of Distributed Computer Systems
IEEE Transactions on Computers
Parametric Combinatorial Computing and a Problem of Program Module Distribution
Journal of the ACM (JACM)
Distributed functions allocation for reliability and delay optimization
ACM '86 Proceedings of 1986 ACM Fall joint computer conference
Computers and Intractability: A Guide to the Theory of NP-Completeness
Computers and Intractability: A Guide to the Theory of NP-Completeness
Problem-Solving Methods in Artificial Intelligence
Problem-Solving Methods in Artificial Intelligence
IEEE Transactions on Parallel and Distributed Systems
Reliability and cost optimization in distributed computing systems
Computers and Operations Research
ICPP '00 Proceedings of the Proceedings of the 2000 International Conference on Parallel Processing
Efficient allocation of distributed object-oriented tasks to a pre-defined scheduled system
International Journal of Computers and Applications
Task allocation for maximizing reliability of distributed systems: a simulated annealing approach
Journal of Parallel and Distributed Computing
Journal of Systems and Software
Journal of Parallel and Distributed Computing
Reliability versus performance for critical applications
Journal of Parallel and Distributed Computing
Computers and Industrial Engineering
A memetic algorithm for reliability-based dynamic scheduling in heterogeneous computing environments
PDCS '07 Proceedings of the 19th IASTED International Conference on Parallel and Distributed Computing and Systems
The decision model of task allocation for constrained stochastic distributed systems
Computers and Industrial Engineering
Reliability-aware scheduling strategy for heterogeneous distributed computing systems
Journal of Parallel and Distributed Computing
IWDC'05 Proceedings of the 7th international conference on Distributed Computing
Performance implications of failures in large-scale cluster scheduling
JSSPP'04 Proceedings of the 10th international conference on Job Scheduling Strategies for Parallel Processing
A hierarchical reliability-driven scheduling algorithm in grid systems
Journal of Parallel and Distributed Computing
Maximal profit service task partition and distribution in computer grid
Computers and Industrial Engineering
Journal of Parallel and Distributed Computing
Load balanced reliable task scheduling algorithm for heterogeneous systems
Journal of High Speed Networks
Hi-index | 14.98 |
In this paper, we consider the problem of finding an optimal and suboptimal task allocation (i.e., to which processor should each module of a task or program be assigned) in distributed computing systems with the goal of maximizing the system reliability (i.e., the probability that the system can run the entire task successfully). The problem of finding an optimal task allocation is known to be NP-hard in the strong sense. Here we present an algorithm for this problem, which uses the idea of branch and bound with underestimates for reducing the computations in finding an optimal task allocation. The algorithm reorders the list of modules to allow a subset of modules that do not communicate with one another to be assigned last, for further reduction in the computations of optimal task allocation for maximizing reliability. We also present a heuristic algorithm which obtains suboptimal task allocations in a reasonable amount of computational time. We study the performance of the algorithms over a wide range of parameters such as the number of modules, the number of processors, the ratio of average execution cost to average communication cost, and the connectivity of modules. We demonstrate the effectiveness of our algorithms by comparing with recent competing task allocation algorithms for maximizing reliability available in the literature.