Abstract
In this paper an algorithm has been proposed to balance the loads in a distributed computing system based on game theory which models the load balancing problem as a non-cooperative game among the users. The proposed load balancing game, which is infinite and with perfect information, aims to establish fairness both in system and user level. The optimal or near-optimal solution of the game is approximated by a genetic algorithm and an introduced hybrid population-based simulated annealing algorithm, using the concept of Nash equilibrium. Since all users responses are shown to converge to their near-optimal solution, distribution of users’ jobs is “fair”. Simulations demonstrate near-optimality of the proposed algorithms in terms of makespan and fairness for the proposed load balancing scheme.
Similar content being viewed by others
References
Silberschatz, A., Galvin, P.B., Gagne, G.: Operating System Concepts, vol. 8. Wiley, New York (2013)
Penmatsa, S., Chronopoulos, A.T.: Game-theoretic static load balancing for distributed systems. J. Parallel Distrib. Comput. 71, 537–555 (2011)
Tanenbaum, A., Van Steen, M.: Distributed Systems. Pearson Prentice Hall, Upper Saddle River (2007)
Stallings, W., Paul, G.K., Manna, M.M.: Operating Systems: Internals and Design Principles, vol. 3. Prentice Hall, Upper Saddle River (1998)
Eftekhari, N., Zeinalabedin, F.H., Haghighat, A.T.: A novel threshold-based dynamic load balancing algorithm using mobile agent in distributed system. In: Computational Intelligence and Information Technology, pp. 103–109. Springer, Berlin (2011)
Li, Y., Yang, Y., Ma, M., Zhou, L.: A hybrid load balancing strategy of sequential tasks for grid computing environments. Future Gen. Comput. Syst. 25, 819–828 (2009)
Penmatsa, S., Chronopoulos, A.T.: Cooperative load balancing for a network of heterogeneous computers. In: 20th International Parallel and Distributed Processing Symposium, 2006 (IPDPS 2006), p. 8 (2006)
Chonggun, K., Kameda, H.: Optimal static load balancing of multi-class jobs in a distributed computer system. IEICE Trans. 1976–1990(73), 1207–1214 (1990)
Zomaya, A.Y., Teh, Y.-H.: Observations on using genetic algorithms for dynamic load-balancing. IEEE Trans. Parallel Distrib. Syst. 12, 899–911 (2001)
Okhovvat, M., Sharifi, M., Momeni, H.: Task allocation to actors in wireless sensor actor networks: an energy and time aware technique. Procedia Comput. Sci. 3, 484–490 (2011)
Meyerson, A., Roytman, A., Tagiku, B.: Online multidimensional load balancing. In: Approximation, Randomization, and Combinatorial Optimization. Algorithms and Techniques, pp. 287–302. Springer, Berlin (2013)
Jain, R., Chiu, D.-M., Hawe, W.: A quantitative measure of fairness and discrimination for resource allocation in shared computer systems. Computing Research Repository, vol. cs.NI/9809 (1998)
Drozdowski, M.: Selected problems of scheduling tasks in multiprocessor computer systems. Citeseer (1997)
Bharadwaj, V., Ghose, D., Robertazzi, T.G.: Divisible load theory: a new paradigm for load scheduling in distributed systems. Clust. Comput. 6, 7–17 (2003)
Bharadwaj, V., Barlas, G.: Scheduling divisible loads with processor release times and finite size buffer capacity constraints in bus networks. Clust. Comput. 6, 63–74 (2003)
Veeravalli, B., Ghose, D., Mani, V., Robertazzi, T.G.: Scheduling Divisible Loads in Parallel and Distributed Systems. IEEE Computer Society Press, Los Almitos (1996)
Nisan, N., Roughgarden, T., Tardos, E., Vazirani, V.V.: Algorithmic Game Theory, vol. 1. Cambridge University Press, Cambridge (2007)
Osborne, M.J., Rubinstein, A.: A Course in Game Theory. MIT Press, Cambridge (1994)
Fudenberg, D., Tirole, J.: Game Theory, vol. 393. Cambridge (1991)
Fudenberg, D.: The Theory of Learning in Games, vol. 2. MIT Press, Cambridge (1998)
Shamshirband, S., Patel, A., Anuar, N.B., Kiah, M.L.M., Abraham, A.: Cooperative game theoretic approach using fuzzy Q-learning for detecting and preventing intrusions in wireless sensor networks. Eng. Appl. Artif. Intell. 32, 228–241 (2014)
Charilas, D.E., Panagopoulos, A.D.: A survey on game theory applications in wireless networks. Comput. Netw. 54, 3421–3430 (2010)
Rzadca, K., Trystram, D.: Promoting cooperation in selfish computational grids. Eur. J. Oper. Res. 199, 647–657 (2009)
Kołodziej, J., Xhafa, F.: Meeting security and user behavior requirements in Grid scheduling. Simul. Model. Pract. Theory 19, 213–226 (2011)
Grosu, D., Chronopoulos, A.T.: Noncooperative load balancing in distributed systems. J. Parallel Distrib. Comput. 65, 1022–1034 (2005)
Grosu, D., Chronopoulos, A.T., Leung, M.-Y.: Cooperative load balancing in distributed systems. Concurr. Comput. Pract. Exp. 20, 1953–1976 (2008)
Schmidt, C.: Game Theory and Economic Analysis: A Quiet Revolution in Economics. Routledge, Lodnon (2003)
Pendharkar, P.C.: Game theoretical applications for multi-agent systems. Expert Syst. Appl. 39, 273–279 (2012)
Chana, I.: Bacterial foraging based hyper-heuristic for resource scheduling in grid computing. Future Gen. Comput. Syst. 29, 751–762 (2013)
Mani, V., Suresh, S., Kim, H.: Real-coded genetic algorithms for optimal static load balancing in distributed computing system with communication delays. In Computational Science and Its Applications—ICCSA 2005, pp. 269–279. Springer, Berlin (2005)
Song, S., Lv, T., Chen, X.: Load balancing for future internet: an approach based on game theory. J. Appl. Math. 2014, 959782 (2014). doi:10.1155/2014/959782.959782
Chen, B., Latifi, S.: Traffic load monitoring and load balancing for the Internet. Clust. Comput. 3, 139–150 (2000)
Amazon elastic compute cloud. http://www.amazon.com/
Buyya, R., Yeo, C.S., Venugopal, S.: Market-oriented cloud computing: vision, hype, and reality for delivering it services as computing utilities. In: 10th IEEE International Conference on High Performance Computing and Communications, 2008 (HPCC’08), pp. 5–13 (2008)
Goldenberg, D.: Genetic Algorithms in Search, Optimisation and Machine Learning. Adisson Wesley, Reading (1989)
Simon, D.: Evolutionary Optimization Algorithms. Wiley, New York (2013)
Holland, J.H.: Genetic algorithms. Sci. Am. 267, 66–72 (1992)
Williams, A., Arlitt, M., Williamson, C., Barker, K.: Web workload characterization: ten years later. In: Web Content Delivery, pp. 3–21. Springer, Berlin (2005)
Nozaki, S.A., Ross, S.M.: Approximations in finite-capacity multi-server queues with Poisson arrivals. J. Appl. Probab. 15, 826–834 (1978)
Kleinrock, L.: Queueing Systems. Wiley, New York (1975)
Tantawi, A.N., Towsley, D.: Optimal static load balancing in distributed computer systems. J. ACM 32, 445–465 (1985)
Jain, R.: The Art of Computer Systems Performance Analysis. Wiley, New York (2008)
Iosup, A., Ostermann, S., Yigitbasi, M.N., Prodan, R., Fahringer, T., Epema, D.H.: Performance analysis of cloud computing services for many-tasks scientific computing. IEEE Trans. Parallel Distrib. Syst. 22, 931–945 (2011)
Evangelinos, C., Hill, C.: Cloud computing for parallel scientific HPC applications: feasibility of running coupled atmosphere-ocean climate models on Amazon’s EC2. Ratio 2, 2–34 (2008)
Ekanayake, J., Fox, G.: High performance parallel computing with clouds and cloud technologies. In: Cloud Computing, pp. 20–38. Springer, Berlin (2010)
GoGrid: GoGrid Cloud-Server Hosting. http://www.gogrid.com
Tang, X., Chanson, S.T.: Optimizing static job scheduling in a network of heterogeneous computers. In: Proceedings of the 2000 International Conference on Parallel Processing, pp. 373–382 (2000)
Riechmann, T.: Genetic algorithm learning and evolutionary games. J. Econ. Dyn. Control 25, 1019–1037 (2001)
Protopapas, M.K., Kosmatopoulos, E.B.: Determination of sequential best replies in n-player games by Genetic Algorithms. Int. J. Appl. Math. Comput. Sci. 5, 19–24 (2009)
Sefrioui, M., Perlaux, J.: Nash genetic algorithms: examples and applications. In: Proceedings of the 2000 Congress on Evolutionary Computation, pp. 509–516 (2000)
Vorobeychik, Y., Wellman, M.P.: Stochastic search methods for Nash equilibrium approximation in simulation-based games. In: Proceedings of the 7th International Joint Conference on Autonomous Agents and Multiagent Systems, vol. 2, pp. 1055–1062 (2008)
Holland, J.H.: Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence. Uinversity of Michigan Press (1975)
Aboutalebi, M., Siar, H., Javadi, H.H.S.: Static task scheduling in homogeneous multiprocessor systems based on genetic algorithm. In: International Conference on Software Technology and Engineering (ICSTE) (2009)
Bertsimas, D., Tsitsiklis, J.: Simulated annealing. Stat. Sci. 8, 10–15 (1993)
Černý, V.: Thermodynamical approach to the traveling salesman problem: an efficient simulation algorithm. J. Optim. Theory Appl. 45, 41–51 (1985)
Acknowledgments
We gratefully acknowledge the reviewers for their helpful and constructive suggestions which considerably improved the quality of the manuscript.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Siar, H., Kiani, K. & Chronopoulos, A.T. An effective game theoretic static load balancing applied to distributed computing. Cluster Comput 18, 1609–1623 (2015). https://doi.org/10.1007/s10586-015-0486-0
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10586-015-0486-0