A novel energy-efficient resource allocation algorithm based on immune clonal optimization for green cloud computing
© Shu et al.; licensee Springer. 2014
Received: 27 October 2013
Accepted: 9 April 2014
Published: 23 April 2014
Cloud computing is a style of computing in which dynamically scalable and other virtualized resources are provided as a service over the Internet. The energy consumption and makespan associated with the resources allocated should be taken into account. This paper proposes an improved clonal selection algorithm based on time cost and energy consumption models in cloud computing environment. We have analyzed the performance of our approach using the CloudSim toolkit. The experimental results show that our approach has immense potential as it offers significant improvement in the aspects of response time and makespan, demonstrates high potential for the improvement in energy efficiency of the data center, and can effectively meet the service level agreement requested by the users.
Cloud computing is a hot topic of the computer field as an emerging new computing model . It is a style of computing in which dynamically scalable and other virtualized resources are provided as a service over the Internet . It is the traditional computer and network technology including distributed computing, parallel computing, utility computing, network storage technologies, virtualization, load balance, etc. combined with other products . Cloud computing is a model for enabling ubiquitous, on-demand network access to a shared pool of configurable computing resources by setting up basic hardware and software infrastructures in a data center. The aim of green cloud computing is to design a high-performance, low-power computing infrastructure while meeting an energy-efficient and safe service mode.
Resource allocation is the key technology of cloud computing, which utilizes the computing resources in the network to facilitate the execution of complicated tasks that require large-scale computation . Resource allocation needs to consider many factors, such as load balancing, makespan, and energy consumption. Selecting favorable resource nodes to execute a task in cloud computing must be considered, and they have to be properly selected according to the properties of the task . In particular, cloud resources need to be allocated not only to satisfy quality of service (QoS) requirements specified by users via service level agreements (SLAs) but also to reduce energy consumption [6, 7].
With the rapid development of cloud computing and network communication technology, many computing service providers including Google, Microsoft, Yahoo, and IBM are rapidly deploying data centers in various locations around the world to deliver cloud computing services . However, data centers hosting cloud applications consume huge amounts of electrical energy, contributing to high operational costs and carbon footprints in the environment [9, 10]. Therefore, we need green cloud computing solutions that can not only minimize operational costs but also reduce the environmental impact. There is also increasing pressure from governments worldwide aimed at the reduction of carbon footprints, which have a significant impact on climate change . Lowering the energy usage of data centers is a challenging and complex issue because computing applications and data are growing so quickly that increasingly larger servers and disks are needed to process them fast enough within the required time period.
In the business application process of green cloud computing, the energy consumption and makespan associated with the resources allocated should be taken into account. Therefore, resource allocation should be carefully coordinated and optimized jointly in order to achieve an energy-efficient schedule . The main objective of this work is to develop an energy-efficient resource allocation algorithm for virtualized data centers so that green cloud computing can be more sustainable. Green cloud computing not only achieves the efficient processing and utilization of a computing infrastructure but also reduces energy consumption [13, 14]. An efficient resource allocation algorithm allocates resources to tasks in a way that improves energy efficiency of the data center while taking into account minimization of makespan.
The objective of this paper is to optimize resource allocation using an improved clonal selection algorithm (ICSA) based on makespan optimization and energy consumption models in cloud computing environment. The ICSA has a powerful global exploration capability in a given feasible solution range and uses fewer running time. Therefore, the proposed ICSA is well enhanced and balanced in exploration and exploitation. In this study, the ICSA shows its effectiveness to optimize resource allocation compared with other existing resource allocation algorithms. We have validated our approach by conducting a performance evaluation study using the CloudSim toolkit. Experimental results show that the ICSA has immense potential as it offers significant cost savings and high potential for the improvement of energy efficiency and can satisfy the service level agreement requested by the customers.
The specific contributions of this paper include the following:
A literature survey about various existing resource allocation algorithms and an analysis of their advantages and disadvantages are presented.
An effective energy-efficient optimization model for resource allocation in cloud computing environments is proposed.
An algorithm for resource allocation in cloud computing environments inspired by clonal selection algorithm is proposed.
Performance analysis of the proposed algorithm and an evaluation of the algorithm with respect to other existing algorithms are presented.
The rest of this paper is organized as follows: Section 2 discusses related works, followed by models for energy-efficient optimization and makespan optimization design in Section 3. The improved clonal selection algorithm for resource allocation is discussed in Section 4. Section 5 shows the simulation experimental results, and Section 6 concludes the paper with summary and future research directions.
2 Related works
This section gives a brief review about the various existing resource allocation algorithms which mainly consider the energy efficiency of resources in cloud computing.
A parallel-machine scheduling involving both task processing and resource allocation was studied by using an improved differential evolution algorithm (IDEA) . The proposed IDEA combines the Taguchi method and a differential evolution algorithm (DEA). Beloglazov et al. defined an architectural framework and principles for energy-efficient cloud computing . Based on this architecture, the paper presented our vision, open research challenges, and resource provisioning and allocation algorithms for an energy-efficient management of cloud computing environments. The proposed energy-aware allocation heuristics provision data center resources to client applications in a way that improves energy efficiency of the data center. Kessaci et al. presented an energy-aware multi-start local search algorithm (EMLS) that optimizes the energy consumption of an OpenNebula-based cloud .
The objective is to find a trade-off between reducing the energy consumption and preserving the performance of resource nodes. A traditional data center has many distinguished features including heterogeneous hardware, heterogeneous workload, focus on average load rate, and consumption of time and human effort for administrative tasks. Quan et al. proposed a way of saving energy in traditional data centers considering all the above features . The basic idea was rearranging the allocation in such a way that energy is saved with suitable human effort.
Quarati et al. presented a cloud brokering algorithm delivering services with different levels of non-functional requirements , to private or public resources, on the basis of different scheduling criteria. With the objective of maximizing user satisfaction and broker's revenues, the algorithm pursues profit increases by reducing energy costs through the adoption of energy-saving mechanisms. Kołodziej et al. defined independent batch scheduling in computational grid as a three-objective global optimization problem with makespan, flow time, and energy consumption as the main scheduling criteria minimized according to different security constraints . The paper used the dynamic voltage scaling (DVS) methodology for reducing the cumulative energy utilized by the system resources. The effectiveness of these algorithms has been empirically justified in two different grid architectural scenarios in static and dynamic modes.
3 Resource allocation optimization models
To generalize the discussion, the assumption is that there is a set of tasks and each task has many subtasks with precedence constraints. Each subtask is allowed to be processed on any given available resource . A cloud resource has a given level of capacity (e.g., CPU, memory, network, storage) . A subtask is processed on one resource at a time, and the given resources are available continuously.
In the process of resource allocation in a cloud computing environment, the application of ICSA to the general process is as follows:
Inputs: Let R = (R1, R2, …, R j , …, R m ) be the set of m available resources which should process n independent tasks denoted by the set T = (T1, T2, …, T i , …, T n ), i = 1, 2, …, n, j = 1, 2, …, m.
All the resources are unrelated and parallel, and each task T i can be executed on any subset R j ∈ R of available resources.
Outputs: The output is an effective and efficient resource allocation scheme, including scheduling tasks to appropriate resources and makespan.
Constraints: The execution time of each task on a resource depends on the actual situation, and the value cannot be fixed in advance . Each task must be completed without interruption once started, and resources cannot perform more than one subtask at a time.
Objectives: The main objective is to improve energy efficiency of the data center and minimize makespan so as to achieve an energy-efficient schedule.
Since many real-world design or decision making problems involve simultaneous optimization of multiple objectives , we designed a resource allocation optimization model that will fully integrate the two factors of energy-efficient optimization and makespan optimization.
3.1 Energy-efficient optimization
where γ = A × C, A is the flip frequency that denotes the number of switches per clock cycle, C is the load capacitance, v is the supply voltage, and f is the frequency of the resource node.
where v k (i) is the voltage supply for resource r i at level k, k is the number of levels in the class s i , and f k (i) denotes the working frequency at the same level k, 0 ≤ f k (i) ≤ 1.
where γ = A × C is a intrinsic property for a given resource.
where vmin(i) and fmin(i) represent the voltage and frequency when resources r i transition to sleep mode in the idle time, respectively, and λ is the load factor of resources r i .
3.2 Makespan optimization
The makespan is the overall task completion time, which is the time difference between the start and end of a sequence of tasks on a resource . Cloud computing deals with assigning computational tasks on a dynamic resource pool according to different requirements from a user request. The proposed makespan is the time that comprises overall task completion on resources including receiving, processing, and waiting time.
The proposed algorithm chooses the resources based on the least makespan.
3.3 Multi-objective optimization model
4 Improved clonal selection algorithm
Artificial immune systems (AIS) are computation tools that emulate processes and mechanisms of the biological immune system. The immune system is one of the most important biological mechanisms humans possess since our life depends on it . The clonal selection theory has become a widely accepted model for how the immune system responds to infection and how certain types of B and T lymphocytes are selected for the destruction of specific antigens invading the body. Clonal selection algorithm (CSA) is a special class of immune algorithms which are inspired by the clonal selection theory to produce effective methods for search and optimization . CSA was first proposed by de Castro and Von Zuben  and was later enhanced and named as CLONALG . CSA is not only an adaptive parallel algorithm based on the clonal selection theory but also represents an intelligent exploitation of a heuristic search in a vast feasible solution space.
Once a new request for resource arrives, the system will run the ICSA to adjust the overall allocation of the resources. Before finding the best solution with the ICSA, we first change the mapping relationships between resources and tasks into a binary code as a set of initial population X(0). An individual is denoted as , where G denotes the current generation, i = 1, 2, …, s, and s denotes the population size.
5 Simulation experiment
In this section, we analyze the performance of our algorithm based on the experimental results. In order to make it easier to test the algorithms, CloudSim  has been adopted in this work as an effective cloud computing simulation platform. Six physical machines have 8 GB RAM and 2 TB storage, and each machine has four CPUs that have a capacity power of 10,000 MIPS. A data center with 16 DVS-enabled processors was used. For testing the effectiveness and superiority of the ICSA algorithm for resource allocation in cloud computing, the same conditions were used to compare with other existing resource allocation approaches such as the IDEA , EMLS , and DVS .
Response time is the amount of time taken between submission of a request and the first response that is produced [33, 34]. As shown in Figure 2, our proposed ICSA has the best response time performance compared to the other three algorithms. DVS and EMLS have relatively close response times, and the response time of IDEA increases significantly when the number of tasks increases in cloud computing environments. When the number of tasks is 200, the response time of ICGA is relatively minimal and its minimum value is close to 26.1 s. When the number of tasks is 400, the response time of ICGA is the smallest in most cases and its minimum value is close to 35.2 s. When the number of tasks is 500, the response time of ICGA is relatively minimal and its minimum value is close to 40.8 s. It is evident that ICSA is more efficient compared with the other three algorithms.It is clearly evident from Figure 3 that our proposed ICSA has better performance in terms of makespan compared to the other three algorithms. When the number of tasks in cloud computing environments is higher, the difference in makespan becomes more apparent. When the number of tasks is 200, the makespans of EMLS, IDEA, DVS, and ICSA are 365.8, 307.2, 354.6, and 291.3 s, respectively. When the number of tasks is 400, the makespans of EMLS, IDEA, DVS, and ICSA are 595.2, 577.6, 594.9, and 511.8 s, respectively. When the number of tasks is 500, the makespans of EMLS, IDEA, DVS, and ICSA are 874.8, 782.4, 890.1, and 732.3 s, respectively. Obviously, with the help of the ICSA approach, task execution time is minimal in the resource allocation process. It can be observed that ICSA can obtain the optimal solution accurately. Thus, we can decrease the computation complexity of traditional resource allocation algorithms and increase the overall performance.
Energy efficiency is one of the key technologies of resource allocation in cloud computing [35, 36]. When the lower utilization threshold increases, the energy consumption of the system is also rapidly reduced. The statistical analysis of the monthly energy consumption comparison of the four algorithms is illustrated in Figure 4c. It can be observed that there is a significant difference among the four resource allocation algorithms, and our proposed ICSA consumes the least energy in most cases.
Through the above experimental results, it can be observed that ICSA can effectively meet the requirements of resource and can save much more time compared to the other approaches. The ICSA is well enhanced and balanced on exploration and exploitation and has better stability and scalability. Thus, the ICSA shows its effectiveness to improve energy efficiency of the data center and decrease makespan.
Cloud computing, a pool of virtualized computer resources, is a new concept . Green cloud computing is the future development trend and main research object. Reducing energy consumption is an increasingly important issue in cloud computing, more specifically when dealing with a large-scale cloud. In this paper, we propose an improved clonal selection algorithm based on time cost and energy consumption models in cloud computing environment. The experimental results show that our approach has immense potential as it offers significant improvement in average execution time, demonstrates high potential in improving energy efficiency of the data center, and can effectively meet the service level agreement requested by the users. In the future, we will improve the proposed algorithm by considering other operators and computational complexity to make further works more practical in green cloud computing.
This project was supported by the Special Fund for Basic Scientific Research of Central Colleges, South-Central University for Nationalities (grant no. CZY14007), the Hubei Key Laboratory of Intelligent Wire1ess Communications (grant no. IWC2012007), and the National Natural Science Foundation of China (grant no. 61272497). We also wish to thank the anonymous reviewers who helped improve the quality of the paper.
- Quarati A, Clematis A, Galizia A, D'Agostino D: Hybrid clouds brokering: business opportunities, QoS and energy-saving issues. Simul. Model. Pract. Theory 2013, 39(2):121-134.View ArticleGoogle Scholar
- Quarati A, D'Agostino D, Galizia A, Mangini M, Clematis A: Delivering cloud services with QoS requirements: an opportunity for ICT SMEs, in 9th International Conference on Economics of Grids, Clouds, Systems, and Services. Springer, Berlin; 2012:197-211.Google Scholar
- Armbrust M, Fox A, Griffith R, Joseph AD, Katz R, Konwinski A, Lee G, Patterson D, Rabkin A, Stoica I, Zaharia M: A view of cloud computing. Commun. ACM 2009, 53(4):50-58.View ArticleGoogle Scholar
- Huang C-J, Guan C-T, Chen H-M, Wang Y-W, Chang S-C, Li C-Y, Weng C-H: An adaptive resource management scheme in cloud computing. Eng. Appl. Artif. Intell. 2013, 26(1):382-389. 10.1016/j.engappai.2012.10.004View ArticleGoogle Scholar
- Mukherjee GS: Mathematical model of cloud computing framework using fuzzy bee colony optimization technique, in Proceedings of the 2009 International Conference on Advances in Computing, Control, and Telecommunication Technologies. Piscataway, IEEE; 2009. pp. 664–668Google Scholar
- Buyya R, Beloglazov A, Abawajy J: Energy-efficient management of data center resources for cloud computing: a vision, architectural elements, and open challenges, in Proceedings of the 2010 International Conference on Parallel and Distributed Processing Techniques and Applications. CSREA, Las Vegas; 2010.Google Scholar
- Rodero-Merino L, Vaquero L, Gil V, Galan F, Fontan J, Montero R, Llorente I: From infrastructure delivery to service management in clouds. Futur. Gener. Comput. Syst. 2010, 26(8):1226-1240. 10.1016/j.future.2010.02.013View ArticleGoogle Scholar
- Buyya R, Yeo CS, Venugopal S, Broberg J, Brandic I: Cloud computing and emerging IT platforms: vision, hype, and reality for delivering computing as the 5th utility. Futur. Gener. Comput. Syst. 2009, 25(6):599-616. 10.1016/j.future.2008.12.001View ArticleGoogle Scholar
- Beloglazov A, Buyya R, Lee Y, Zomaya AY: A taxonomy and survey of energy-efficient data centers and cloud computing systems. Adv. Comput. 2011, 82(1):47-111.View ArticleGoogle Scholar
- Khan S: A self-adaptive weighted sum technique for the joint optimization of performance and power consumption in data centers, in Proceedings of the 22nd International Conference on Parallel and Distributed Computing and Communication Systems. ISCA PDCCS, Kentucky; 2009:13-18.Google Scholar
- Chiaraviglio L, Matta I: GreenCoop: cooperative green routing with energy-efficient servers, in Proceedings of the 1st ACM International Conference on Energy-Efficient Computing and Networking, e-Energy. ACM, New York; 2010:191-194.View ArticleGoogle Scholar
- Lee YC, Zomaya AY: Minimizing energy consumption for precedence constrained applications using dynamic voltage scaling, in Proceedings of the 9th IEEE/ACM International Symposium on Cluster Computing and the Grid CCGrid. Piscataway, IEEE; 2009. pp. 92–99Google Scholar
- Kim MY, Lee YH: MIP models and hybrid algorithm for minimizing the makespan of parallel machines scheduling problem with a single server. Comput. Oper. Res. 2012, 39(1):2457-2468.MathSciNetView ArticleGoogle Scholar
- Kliazovich D, Bouvry P: SU Khan, Dens: data center energy-efficient network-aware scheduling, in Proceedings of the ACM/IEEE International Conference on Green Computing and Communications, GreenCom. Piscataway, IEEE; 2010:69-75.Google Scholar
- Tsai J-T, Fang J-C, Chou J-H: Optimized task scheduling and resource allocation on cloud computing environment using improved differential evolution algorithm. Comput. Oper. Res. 2013, 40(2):3045-3055.View ArticleGoogle Scholar
- Beloglazov A, Abawajy J, Buyya R: Energy-aware resource allocation heuristics for efficient management of data centers for cloud computing. Futur. Gener. Comput. Syst. 2012, 28(3):755-768.View ArticleGoogle Scholar
- Kessaci Y, Melab N, Talbi E-G: A multi-start local search heuristic for an energy efficient VMs assignment on top of the OpenNebula cloud manager. Futur. Gener. Comput. Syst. 2013, 29(1):1-20. 10.1016/j.future.2012.04.002View ArticleGoogle Scholar
- Quan DM, Mezza F, Sannenli D, Giafreda R: T-Alloc: a practical energy efficient resource allocation algorithm for traditional data centers. Futur. Gener. Comput. Syst. 2012, 28(2):791-800.View ArticleGoogle Scholar
- Kołodziej J, Khan SU, Wang L, Kisiel-Dorohinicki M, Madani SA, Niewiadomska-Szynkiewicz E, Zomaya AY: Security, energy, and performance-aware resource allocation mechanisms for computational grids. Futur. Gener. Comput. Syst. 2013, 29(1):944-959.Google Scholar
- Zhao C, Zhang S, Liu Q, Xie J, Hu J: Independent tasks scheduling based on genetic algorithm in cloud computing, in Proceedings of IEEE WICOM. Piscataway, IEEE; 2009:1-4.Google Scholar
- Randles M, Lamb D, Taleb-Bendiab A: A comparative study into distributed load balancing algorithms for cloud computing, in Proceedings of the 24th IEEE International Conference on Advanced Information Networking and Applications Workshops. Piscataway, IEEE; 2010:551-556.Google Scholar
- Zhu R, Wang J: Power-efficient spatial reusable channel assignment scheme in WLAN mesh networks. Mobile Network Appl. 2012, 17(1):53-63. 10.1007/s11036-011-0302-xView ArticleGoogle Scholar
- Araujo DRB, Bastos-Filho CJA, Barboza EA, Chaves DAR, Martins-Filho JF: A performance comparison of multi-objective optimization evolutionary algorithms for all-optical networks design, in IEEE Symposium on Computational Intelligence in Multicriteria Decision-Making. Piscataway, IEEE; 2011. pp. 89–96Google Scholar
- Rizvandi NB, Taheri J, Zomaya AY, Lee YC: Linear combinations of DVFS-enabled processor frequencies to modify the energy-aware scheduling algorithms, in IEEE International Symposium on Cluster Computing and the Grid. Piscataway, IEEE; 2010. pp. 388–397Google Scholar
- Lorch J, Smith A: Improving dynamic voltage scaling algorithms with pace, in Proceedings of the 2001 ACM SIGMETRICS International Conference on Measurement and Modeling of Computer Systems. PER, Ottawa; 2001:50-61.View ArticleGoogle Scholar
- Wang Y, Chen P, Jin Y: Trajectory planning for an unmanned ground vehicle group using augmented particle swarm optimization in a dynamic environment, in Proceedings of the IEEE International Conference on Systems, Man, and Cybernetics. Piscataway, IEEE; 2009:4341-4346.Google Scholar
- Zhu R, Qin Y, Lai C-F: Adaptive packet scheduling scheme to support real-time traffic in WLAN mesh networks. KSII Trans. Internet Inf. Syst. 2011, 5(9):1492-1512.Google Scholar
- Gong MG, Du HF, Jiao LC: Optimal approximation of linear systems by artificial immune response. Sci. China F 2006, 49(1):63-79.MathSciNetView ArticleGoogle Scholar
- Haifeng D, Licheng J: Clonal operator and antibody clone algorithms, in Proceedings of the 2002 International Conference on Machine Learning and Cybernetics. Piscataway, IEEE; 2002:506-510.Google Scholar
- De Castro LN, Von Zuben FJ: The clonal selection algorithm with engineering applications, in Workshop Proceedings of GECCO’00, Workshop on Artificial Immune Systems and their Applications. Morgan Kaufmann, San Francisco; 2000. pp. 30–37Google Scholar
- De Castro LN, Von Zuben FJ: Learning and optimization using clonal selection principle. IEEE Trans. Evol. Comput. Spec. Issue Artif. Immune Syst. 2002, 6(3):239-251.View ArticleGoogle Scholar
- Calheiros RN, Ranjan R, Beloglazov A, Rose CAFD, Buyya R: CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Software Pract. Ex. 2011, 41(1):23-50. 10.1002/spe.995View ArticleGoogle Scholar
- Khan S: A goal programming approach for the joint optimization of energy consumption and response time in computational grids, in Proceedings of the 28th IEEE International Performance Computing and Communications Conference. Piscataway, IEEE; 2009:410-417.Google Scholar
- Khan SU, Ahmad I: A cooperative game theoretical technique for joint optimization of energy consumption and response time in computational grids. IEEE Trans. Parallel Distr. Syst. 2009, 20(3):346-360.MathSciNetView ArticleGoogle Scholar
- Wang Y, Yang T, Ma Y, Halade GV, Zhang J, Lindsey ML, Jin Y-F: Mathematical modeling and stability analysis of macrophage activation in left ventricular remodeling post-myocardial infarction. BMC Genomics 2012, 13: 1-8. 10.1186/1471-2164-13-1View ArticleGoogle Scholar
- Merkel A, Bellosa F: Memory-aware scheduling for energy efficiency on multicore processors, in Proceedings of the Workshop on Power Aware Computing and Systems. Pearson Pretice Hall, Englewood Cliffs; 2008:123-130.Google Scholar
- Costa GD, Assuncao MDD, Gelas J-P, Georgiou Y, Lefévre L, Orgerie A-C, Pierson JM, Richard O, Sayah A: Multi-facet approach to reduce energy consumption in clouds and grids: the GREEN-NET framework, in Proceedings of the ACM/IEEE International Conference on Energy-Efficient Computing and Networking. Piscataway, IEEE; 2010:95-104.View ArticleGoogle Scholar
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly credited.