Task allocation for maximizing reliability of distributed computing systems using honeybee mating optimization

This paper deals with the problem of task allocation (i.e., to which processor should each task of an application be assigned) in heterogeneous distributed computing systems with the goal of maximizing the system reliability. The problem of finding an optimal task allocation is known to be NP-hard in the strong sense. We propose a new swarm intelligence technique based on the honeybee mating optimization (HBMO) algorithm for this problem. The HBMO based approach combines the power of simulated annealing, genetic algorithms with a fast problem specific local search heuristic to find the best possible solution within a reasonable computation time. We study the performance of the algorithm over a wide range of parameters such as the number of tasks, the number of processors, the ratio of average communication time to average computation time, and task interaction density of applications. The effectiveness and efficiency of our algorithm are demonstrated by comparing it with recently proposed task allocation algorithms for maximizing system reliability available in the literature.

[1]  Ladislau Bölöni,et al.  A Comparison of Eleven Static Heuristics for Mapping a Class of Independent Tasks onto Heterogeneous Distributed Computing Systems , 2001, J. Parallel Distributed Comput..

[2]  Chengbin Chu,et al.  Reliability allocation through cost minimization , 2003, IEEE Trans. Reliab..

[3]  Wun-Hwa Chen,et al.  A hybrid heuristic to solve a task allocation problem , 2000, Comput. Oper. Res..

[4]  Imtiaz Ahmad,et al.  Particle swarm optimization for task assignment problem , 2002, Microprocess. Microsystems.

[5]  Hussein A. Abbass,et al.  MBO: marriage in honey bees optimization-a Haplometrosis polygynous swarming approach , 2001, Proceedings of the 2001 Congress on Evolutionary Computation (IEEE Cat. No.01TH8546).

[6]  Imtiaz Ahmad,et al.  Task assignment using a problem-space genetic algorithm , 1995, Concurr. Pract. Exp..

[7]  Ali Maroosi,et al.  Application of honey-bee mating optimization algorithm on clustering , 2007, Appl. Math. Comput..

[8]  Peng-Yeng Yin,et al.  Task allocation for maximizing reliability of a distributed system using hybrid particle swarm optimization , 2007, J. Syst. Softw..

[9]  H. Abbass A single queen single worker honey–bees approach to 3-SAT , 2001 .

[10]  Jue-Sam Chou,et al.  A fast algorithm for reliability-oriented task assignment in a distributed system , 2002, Comput. Commun..

[11]  C. Siva Ram Murthy,et al.  Algorithms for reliability-oriented module allocation in distributed computing systems , 1998, J. Syst. Softw..

[12]  C. Siva Ram Murthy,et al.  Improved task-allocation algorithms to maximize reliability of redundant distributed computing systems , 1995 .

[13]  Chung-Chi Hsieh Optimal task allocation and hardware redundancy policies in distributed computing systems , 2003, Eur. J. Oper. Res..

[14]  Magdalene Marinaki,et al.  A hybrid Honey Bees Mating Optimization algorithm for the Probabilistic Traveling Salesman Problem , 2009, 2009 IEEE Congress on Evolutionary Computation.

[15]  J.-P. Wang,et al.  Task Allocation for Maximizing Reliability of Distributed Computer Systems , 1992, IEEE Trans. Computers.

[16]  Howard Jay Siegel,et al.  Representing Task and Machine Heterogeneities for Heterogeneous Computing Systems , 2000 .

[17]  Mouloud Koudil,et al.  Using artificial bees to solve partitioning and scheduling problems in codesign , 2007, Appl. Math. Comput..

[18]  Yskandar Hamam,et al.  Task allocation for maximizing reliability of distributed systems: A simulated annealing approach , 2006, J. Parallel Distributed Comput..

[19]  Anil Kumar Tripathi,et al.  Maximizing reliability of distributed computing system with task allocation using simple genetic algorithm , 2001, J. Syst. Archit..

[20]  Dharma P. Agrawal,et al.  A generalized algorithm for evaluating distributed-program reliability , 1993 .

[21]  Peng-Yeng Yin,et al.  A hybrid particle swarm optimization algorithm for optimal task assignment in distributed systems , 2006, Comput. Stand. Interfaces.

[22]  C. Siva Ram Murthy,et al.  Task Allocation Algorithms for Maximizing Reliability of Distributed Computing Systems , 1997, IEEE Trans. Computers.

[23]  Ishfaq Ahmad,et al.  Optimal task assignment in heterogeneous distributed computing systems , 1998, IEEE Concurr..

[24]  Chung-Chi Hsieh,et al.  Reliability and cost optimization in distributed computing systems , 2003, Comput. Oper. Res..