Supercomputer resource planning method based on colonial competition algorithm

Number of pages: 75 File Format: word File Code: 31068
Year: 2016 University Degree: Not Specified Category: Computer Engineering
  • Part of the Content
  • Contents & Resources
  • Summary of Supercomputer resource planning method based on colonial competition algorithm

    Abstract

    The evolution of computing is such that it can be assumed as the fifth basic element after water, electricity, gas and telephone. In recent years, increasing attention has been paid to cloud computing.  Cloud computing is a large-scale distributed model that provides a scalable and virtualized collection of managed computing power, storage space and services through the Internet to customers.

    The problem of allocating resources in cloud computing and scheduling each of the user's tasks on existing virtual machines is an NP-Complete problem that many algorithms have been presented to solve it. But none of these algorithms are able to meet the requirements related to speed and accuracy in cloud computing environments. In this research, a combination method of colonial competition algorithm and local search is proposed to solve this problem. By creating an initial empire, this algorithm tries to improve the possible answers by applying the stages of the colonial competition algorithm. In order to avoid premature convergence, the colonial competition algorithm is combined with a local search algorithm. The proposed hybrid algorithm uses a convergence detection mechanism based on the similarity coefficient and executes the local search method when the colonial competition method undergoes early convergence.

    The quality of the answers and the efficiency of the proposed algorithm were compared with the efficiency of round robin, ant colony and genetic algorithms.

    Results: The results obtained show that the proposed algorithm is faster than the two ant colony algorithms and the genetic algorithm in terms of execution time quality. slow down In addition, the proposed algorithm performs better than the other compared algorithms in terms of the quality of the answers.

     

    Introduction:

    In recent years, increasing attention has been paid to cloud computing. The most welcome of this technology is in the multimedia industry and analysis systems. In cloud computing, some decisions are known as scheduling decisions. The planning process determines the necessary resources to produce the set of activities required for scheduling [Baker00]. Scheduling is the allocation of limited resources to activities over time, in order to optimize one or more objective functions [Baker00]. The problem of scheduling cloud computing resources is one of the most important scheduling problems that has attracted the attention of many researchers. The resource scheduling problem is considered a very hard problem among NP-hard problems [Yu12, Garey76].

    The problem of scheduling and allocating resources in a cloud and a network is a very hard problem, and as a result, the search space of this problem is so large that if an algorithm wants to examine this space sequentially and find the best solution, it will need exponential time. Among the innovative algorithms that have been used in the field of scheduling and resource allocation, we can mention the ant colony algorithm [Zhu12, Chen09] and the genetic algorithm [Javier07].

    Ant colony algorithm is a type of algorithm based on collective intelligence that is inspired by studies and observations on ant colonies [Diargo96]. In the real world, ants first randomly wander around to find food. Then they return to the nest and leave a trail of pheromone[1] on the way. When an ant moves randomly and alone, encountering a path that has more pheromone effect, it is likely to choose the above path and reinforce it with the pheromone it leaves behind. Although the algorithms based on the ant colony presented [Zhu12, Chen09] provide parallel scheduling for the problem of resource allocation in cloud computing, but for the efficient implementation of this algorithm, powerful parallel hardware is required and its implementation on a scheduler system will require considerable time. Checked. Genetic algorithm is a type of heuristic algorithm that got ideas from Darwin's "survival of the fittest" [2] theory [Eiben07]. Genetic algorithm can be classified as a type of evolutionary algorithm[3] that encodes potential solutions to a specific problem in the form of data structures similar to chromosomes[4].. Genetic algorithm can be categorized as a type of evolutionary algorithm [3] that encodes the potential solutions of a specific problem in the form of chromosome-like data structures [4] and applies recombination operators on these structures to preserve vital information.

    Accordingly, in this paper, a method based on the colonial competition algorithm [Atashpaz07] is presented to solve the task scheduling problem. This algorithm is classified in the class of population-based heuristic algorithms, and as a result, it does not have the problems of traditional systematic methods. In addition, in the proposed method, local search has been used to prevent the algorithm from getting stuck in local optima, and for this reason, this algorithm shows a more intelligent behavior than the genetic algorithm in the conditions of local optima. In addition, the proposed algorithm does not require special hardware to be implemented and can perform much better than the ant colony algorithm in terms of time.

    Colonial competition

    Figure 2-8 shows the flowchart of the colonial competition algorithm [Atashpaz07]. Like other evolutionary algorithms, this algorithm, with a number of random initial populations, each of which is called a "country"; It begins. Some of the best elements of the population (equivalent to elites in the genetic algorithm) are selected as imperialists [5]. The rest of the population is also considered as a colony [6]. The colonists, depending on their power, these colonies with a specific process that follows; They pull towards themselves. The total power of any empire depends on both its constituent parts, the imperialist country (as the central core) and its colonies. Mathematically, this dependence is modeled by defining the power of the empire as the total power of the imperialist country, plus a percentage of the average power of its colonies.

    With the formation of early empires, the imperialist competition between them begins. Any empire that cannot succeed in the colonial competition and increase its power (or at least prevent its influence from decreasing), will be removed from the colonial competition scene. Therefore, the survival of an empire will depend on its ability to absorb the colonies of rival empires and bring them under control. As a result, in the course of imperialist competition, the power of larger empires will gradually be increased and weaker empires will be eliminated. Empires will be forced to develop their colonies to increase their power. Over time, the colonies will become closer to the empires in terms of power, and we will see a kind of convergence. The ultimate limit of colonial competition is when we have a single empire in the world, with territories that are very close in terms of location to the imperialist country itself.

    Key words:

    Resource allocation, cloud computing, colonial competition algorithm, local search, NP-Complete.

    Chapter 1:

    Overview

    Introduction

    The evolution of calculations is such that it can be assumed as the fifth basic element after water, electricity, gas and telephone. In such a case, users try to access a service based on their needs and regardless of where it is located or how it is transformed. There are various examples of computing systems that try to provide such services to users. Some of these computing systems are: cluster computing[1], grid computing[2] and recently cloud computing[3].

    In recent years, increasing attention has been paid to cloud computing. The most welcome of this technology is in the multimedia industry [4] and analysis systems. In 2008, the benefit of using cloud computing for commercial applications was estimated to be three to four times that of non-cloud systems [Stanoevska10]. Foster and his colleagues [5] [Foster08] define cloud computing as follows: "Cloud computing is a large-scale distributed model that is a scalable and virtual set made of managed computing power, provides storage space and services to customers through the Internet."

    In cloud computing, some decisions are known as planning decisions[6]. The planning process determines the necessary resources to produce the set of activities required for scheduling [Baker00]. Scheduling [7] is the allocation of limited resources to activities over time, in order to optimize one or more objective functions [Baker00]. The problem of scheduling cloud computing resources[8] is one of the most important scheduling problems that has attracted the attention of many researchers.

  • Contents & References of Supercomputer resource planning method based on colonial competition algorithm

    List:

    Chapter One: General

    1

    1-1: Introduction

    2

    1-2: Statement of the problem

    3

    1-3: Background of the research

    5

    1-4: Overview of the thesis chapters

    7

     

    Chapter Two: Research Literature

    8

    2-1: Introduction

    9

    2-2: Grid Computing

    9

    2-2-1: Definition of Grid Computing

    10

    2-2-2: Architecture of Grid Computing

    11

    2-2-3: Benefits and Potential Risks of Grid Computing

    13

    2-2-4: Types of Tours

    15

    2-2-4-1: Cluster Tours

    15

    2-2-4-2: Enterprise Tours

    17

    2-2-4-3: Tours Usefulness

    18

    2-2-4-4: Association Tours

    19

    2-3: Cloud Computing

    21

    2-3-1: Definitions of Cloud Computing

    21

    2-3-2: Triple Layers of Cloud

    25

    2-3-2-1: Infrastructure as a Service (IaaS) 26 2-3-2-2 Platform as a Service 27

    2-4-1 Look at the history of colonialism

    28

    2-4-2 Optimization based on colonial competition

    29

     

     

    Chapter three: Research background

    31

    3-1 Introduction

    32

    3-2 Eucalyptus resource management system

    33

    3-3 resource allocation using ant colony

    36

    3-4 resource allocation using genetic algorithm

    38

     

     

    Chapter Four: Proposed Method

    43

    4-1 Introduction

    44

    4-2 Structure Proposed Colonial Competition Algorithm

    45

    4-2-1: Encoding

    46

    4-2-2: Formation of Early Empires

    47

    4-2-3: Absorption Policy Model: Movement of Colonies to Imperialist

    49

    4-2-4: Colony Position Shift and Imperialist

    52

    4-3: Local Search

    53

    4-3-1: Local Search Control Mechanism

    54

     

     

    Chapter Five: Implementation and Evaluation of Results

    56

    5-1 Introduction

    57

    5-2: Benchmarks used

    57

    5-3 Review of various parameters of the proposed algorithm

    58

    5-4 Comparison of the proposed algorithm with other algorithms

    61

    5-4-1 Comparison of execution times

    61

    5-4-2 Comparison of the quality of answers

    62

     

     

     

    Chapter Six: Conclusion and Future Work

    64

    6-1: Future Studies

    65

     

     

    Resources

    66

     

     

    Source:

    [Baker00] K.R. Baker, D. Trietsch, Principles of Sequencing and Scheduling, Wiley, 2000.

    [Yu12] H. Yu, L. Wang, Genetic Algorithm Combined with Simulation for Job Shop Scheduling Problem in Mechanical Engineering, Advances in Mechanical and Electronic Engineering, Vol. 176, pp. 139-144, 2012.

    [Garey76] M. R. Garey, D. S., Johnson, R., Sethi, The complexity of flowshop and jobshop scheduling., Mathematics of operations research, Vol.1, 1976.

    [Atashpaz07] E. Atashpaz-Gargari, C. Lucas, Imperialist competitive algorithm: An algorithm for optimization inspired by imperialistic competition, Evolutionary Computation, 2007. CEC 2007. IEEE Congress on, Singapore, pp. 4661-4667, 2007.

    [Foster08] I. Foster, Y. Zhao, I. Raicu, S. Lu, Cloud Computing and Grid Computing 360-Degree Compared, Grid Computing Environments Workshop, Austin, TX, pp. 1-10, 2008.

    [Stanoevska10] K. Stanoevska, T. Wozniak, S. Ristol, Grid and Cloud Computing: A Business Perspective on Technology and Applications, Berlin, Springer-Verlag, 2010.

    [Armbrust09] M.Armbrust, Above the Clouds – A Berkeley View of Cloud, California, Technical Report UCB/EECS-2009-28.

    [Bourbonnais04] S., Bourbonnais, V. M., Gogate, L. M., Haas, R. W., Horman, S., Malaika, I., Narang,., Narang, V., Raman, Towards an information infrastructure for the grid, IBM Systems Journal, Vol. 43, pp. 665-688, 2004.

    [Foster01] I., Foster, C., Kesselman, The Anatomy of the Grid: Enabling Scalable Virtual Organization, International Journal of High Performance Computing Applications, Vol. 15, pp. 200-222, 2001.

    [Boden04] T., Boden, The Grid Enterprise — Structuring the Agile Business of the Future, Technology Journal, Vol. 21, pp. 107-117, 2004.

    [Goyal05] B., Goyal, S., Lawande, Grid Revolution: An Introduction to Enterprise Grid Computing, McGraw-Hill, 2005.

    [EUCALYPTUS-WEB] Eucalyptus,http://www.eucalyptus.com.

    [Nurmi09] D. Nurmi, R. Wolski, C. Grzegorczyk, G. Obertelli, S. Soman, L. Youseff, and D. Zagorodnov, "The Eucalyptus Open-Source Cloud-Computing System", In Proceedings of the 2009 9th IEEE/ACM International Symposium on Cluster Computing and the Grid (CCGRID 09), IEEE Computer Society, Washington, DC, USA, pp.124-131, 2009.

    [Zhu12] L. Zhu, Q. Li, L. He, Study on cloud computing resource scheduling strategy based on the ant colony optimization algorithm, International Journal of Computer Science Issues, Vol. 9 (5), pp. 54-58, 2012.

    [Chen09] W. N. Chen, and J. Zhang, An ant colony optimization approach to a grid workflow scheduling problem with various QoS requirements, IEEE Transactions on Systems, Man, and Cybernetics, Vol. 39 (1), pp. 29-43.

    [Diargo96] M. Dorigo, V. Maniezzo, and A. Colorni, Ant system: optimization by a colony of cooperating agents, IEEE Transactions on Systems, Man, and Cybernetics, Vol. 26 (1), pp. 29-41, 1996.

    [Le06] L. B. Lee, E. Hossain, and A. S. Alfa, Service

    [Eiben07]A. E., Eiben, J. E., Smith, Introduction to Evolutionary Computing, Springer, 2007.

    [Larranaga99] P., Larranaga, C.M.H., Kuijpers, R. H., Murga, I., Inza, S., Dizdarevic, Genetic Algorithms for the Traveling Salesman Problem: A Review of Representations and Operators. Artificial Intelligence Review, Vol. 13, pp. 129–170, 1999.

    [Sivanandam08] S. N. Sivanandam, S. N. Deepa, Introduction to Genetic Algorithms, New York, Springer, 2008.

    [Javier07] Javier, C., Fatos, X., Ajith, A.: Genetic Algorithm Based Schedulers For Gird. IEEE, International Journal of innovative Computing, Information and Control 3 (December 2007)

    [Chang10] Y.H. Chang, Adopting co-evolution and constraint-satisfaction concept on genetic algorithms to solve supply chain network design problems, Expert Systems with Applications, vol. 37, pp. 6919–6930, 2010.

    [Michalewicz94] Z. Michalewicz, Genetic Algorithms + Data Structures = Evolution Program, Spring-Verlag, 1994.

    [Beasley90] J., Beasley, OR-Library: Distributing test problems by electronic mail, Journal of the Operational Research Society, Vol. 41, pp. 1069–1072, 1990.

    [Muth63] J., Muth, G., Thompson, Industrial scheduling, Prentice-Hall, 1963.

    [Lawrence84] S., Lawrence, Resource constrained project scheduling: An experimental investigation of heuristic scheduling techniques (Supplement). Pittsburgh, PA: Carnegie-Mellon University, 1984. [Storer92] R. H., Storer, S. D., Wu, R. Vaccari, New search spaces for sequencing problems with application to job shop scheduling, Management Science, Vol. 39, pp. 1495-1509, 1992.

Supercomputer resource planning method based on colonial competition algorithm