# LBPSGORA: Create Load Balancing with Particle Swarm Genetic Optimization Algorithm to Improve Resource Allocation and Energy Consumption in Clouds Networks

Authors: Seyedeh Maedeh Mirmohseni; Amir Javadpour; Chunming Tang
Journal: Mathematical Problems in Engineering
 (2021)

---

## Abstract

Due to the purpose of this study that reducing power consumption in the cloud network is based on load balancing, the fitness function measures the load balance between cloud network and servers (the hosts). This technique is appropriate for handling the resource optimization challenges, due to the ability to convert the load balancing problem into an optimization problem (reducing imbalance cost). In this research, combining the results of the particle swarm genetic optimization (PSGO) algorithm and using a combination of advantages of these two algorithms lead to the improvement of the results and introducing a suitable solution for load balancing operation, because in the proposed approach (LBPSGORA), instead of randomly assigning the initial population in the genetic algorithm, the best result is procured by putting the initial population. The LBPSGORA method is compared with PSO, GA, and hybrid GA-PSO. The execution cost, load balancing, and makespan have been evaluated and our method has performed better than similar methods.


---

## Body

## 1. Introduction

Recent advances in computer networks, devices, Internet speeds, and so forth have led many companies and users to use cloud services. Resource sharing, virtualization of various services, and scheduling techniques have increased the efficiency of data centers. All of this has led users to use cloud services to meet their needs. Users need strong processors and fast networks to set up cloud data centers in different parts of the world. One of the most important concerns in this area is related to energy [1, 2]. For this purpose, in recent years, attention has been paid to enhanced techniques for providing power management for cloud servers. Therefore, many researchers have worked on different algorithms to reduce costs by reducing energy consumption and also reduce greenhouse gas emissions. To improve the performance of several algorithms to affect the hardware or the software has been tested. With the help of virtualization techniques, several virtual machines can be created on a physical machine, so we need less hardware and can increase performance. Cloud computing uses virtualization technology based on user’s needs to provide resources, which reduces energy consumption. One of the most popular ways to reduce energy consumption is to use metaheuristic techniques [3, 4]. This technique could attract attention due to its simplicity of implementation. The cloud services providers, because of the benefits they gain from serving customers as well as cloud consumers, such as organizations and economic organizations, tend to cloud computing because of the benefits they receive from reducing or eliminating infrastructure maintenance costs for these services [1]. However, since applications for business operations of users running in the cloud may be highly sensitive, consumers need to have a guarantee by the cloud providers when the service is delivering. Usually, such a guarantee is supplied between the consumer and the provider through a service level agreement. Recently, the use of virtualization to improve the performance of cloud networks has flourished [2, 5]. So virtual machines can be moved from one host to another to enhance the efficiency of users’ applications without interrupting service. Also, it is possible that the number of resources allocated to a customer increases or decreases dynamically [6–9].In cloud computing, the users pay the cost for the amount of use and services they receive, and the workspace is transmitted to the cloud (the Internet) from data and information on the personal computer [10] so users can access their data and evidence anytime, anywhere in the world. Users also do not need hardware systems with high processing capacity and storage capacity, as all cloud computing operations and storage are handled in the cloud service providers section by equipped and advanced servers [11]. Currently, cloud computing services are offered in three different forms: SaaS_Software as a Service, PaaS_Platform as a Service, and IaaS_Infrastructure as a Service [1]. Organizations and companies can select and use one or more service strategies depending on their needs. Cloud accounting is one of the most famous words in today’s economic organization. An intrinsic cloud feature that distinguishes it from traditional and old hosting services. The amount of unlimited resource capacity (such as CPUs, memory, input-output network, and disk) is provided at a competitive rate [12]. This subject provides opportunities for startup companies to host their applications in the cloud, so it eliminates the overflow of prepared old ultrastructural resources that lasted several months [1, 13, 14].Cloud service providers need to reassure customers that their needs will be fulfilled completely [15–17].


### 1.1. Motivations and Goals

Using virtualization-based networks and storing bits for cloud computing can be a way to balance the load on networks; just as in the phase map and radius created in the big data, it can upset the balance. Using virtualization methods and load balancing methods can help a lot. In this paper, we present an algorithm PSGO considering scheduling. The main challenge about earlier researches during past years was that although resource scheduling and request management were taken into place, there was not considerable attention for energy optimization. In this research, we considered energy optimization as the main objective and tried to present a solution based on this. The energy-performance tradeoff can be considered for a physical machine that has computing ability in its peak usage. For optimizing energy consumption, we used the PSO optimization algorithm [14]. In this approach, user applications are mapping to virtual machines through the autonomous domain layer. Therefore, resource scheduling has been done with the assistance of an autonomous domain and virtual machine layer. The advantage of this heuristic algorithm is that it starts searching from some areas of space and extends the exploration domain and develops a stronger algorithm. In this work, we do the following to improve results: the final result of the PSO is to initiate population for GA. Thus, the first population of the GA is the optimal solution of the last step (Figure 1). Bestowing to the goal of this study is reducing load power in the cloud network based on load balancing, and the fitness function measures the load balance between the cloud network (host) servers.Figure 1
The framework of an algorithm based on load balancing to optimize energy consumption.In this study, we have dealt with the issue of virtualized reserve controlling of cloud computing records middles and, in particular, the load balancing among the servers, and we have done this by considering and implementing particle swarm optimization algorithms and genetic procedures [3, 18]. The sequel displays that the combination of these two can be effective in reducing the cost of resource allocation and load balancing. On the other hand, considering the combination of two optimization algorithms, the program execution time is increased compared to the implementation of an optimization algorithm. In this study, to improve the results, we will do the following: the final result of the PSO algorithm will be the initial value used in the genetic algorithm. Therefore, the initial population used in the genetic algorithm is the optimal solution obtained from the previous step. This method is very suitable for answering the main question of the current research due to its ability to convert the load balancing problem to the optimization problem (reduction of the imbalance cost function) and has been used in studies in this field as well.In the first part of this article, some of the definitions related to this field and the introduction are discussed. The second section discusses the research background. In the third part, LBPSGORA based on the heuristic algorithms is presented [19], and, in the fourth part, an implementation of the proposed method and the result of the power consumption reduction are presented. In Section 5, we present future work and conclusions.


## 1.1. Motivations and Goals

Using virtualization-based networks and storing bits for cloud computing can be a way to balance the load on networks; just as in the phase map and radius created in the big data, it can upset the balance. Using virtualization methods and load balancing methods can help a lot. In this paper, we present an algorithm PSGO considering scheduling. The main challenge about earlier researches during past years was that although resource scheduling and request management were taken into place, there was not considerable attention for energy optimization. In this research, we considered energy optimization as the main objective and tried to present a solution based on this. The energy-performance tradeoff can be considered for a physical machine that has computing ability in its peak usage. For optimizing energy consumption, we used the PSO optimization algorithm [14]. In this approach, user applications are mapping to virtual machines through the autonomous domain layer. Therefore, resource scheduling has been done with the assistance of an autonomous domain and virtual machine layer. The advantage of this heuristic algorithm is that it starts searching from some areas of space and extends the exploration domain and develops a stronger algorithm. In this work, we do the following to improve results: the final result of the PSO is to initiate population for GA. Thus, the first population of the GA is the optimal solution of the last step (Figure 1). Bestowing to the goal of this study is reducing load power in the cloud network based on load balancing, and the fitness function measures the load balance between the cloud network (host) servers.Figure 1
The framework of an algorithm based on load balancing to optimize energy consumption.In this study, we have dealt with the issue of virtualized reserve controlling of cloud computing records middles and, in particular, the load balancing among the servers, and we have done this by considering and implementing particle swarm optimization algorithms and genetic procedures [3, 18]. The sequel displays that the combination of these two can be effective in reducing the cost of resource allocation and load balancing. On the other hand, considering the combination of two optimization algorithms, the program execution time is increased compared to the implementation of an optimization algorithm. In this study, to improve the results, we will do the following: the final result of the PSO algorithm will be the initial value used in the genetic algorithm. Therefore, the initial population used in the genetic algorithm is the optimal solution obtained from the previous step. This method is very suitable for answering the main question of the current research due to its ability to convert the load balancing problem to the optimization problem (reduction of the imbalance cost function) and has been used in studies in this field as well.In the first part of this article, some of the definitions related to this field and the introduction are discussed. The second section discusses the research background. In the third part, LBPSGORA based on the heuristic algorithms is presented [19], and, in the fourth part, an implementation of the proposed method and the result of the power consumption reduction are presented. In Section 5, we present future work and conclusions.


## 2. Literature Review

The load balancing algorithms are in three categories: (1) sender initiated load balancing algorithms, (2) receiver initialed load balancing algorithms, and (3) symmetric load balancing algorithms, a combination of both modes. The Round Robin algorithm is a load balancing method with an optimization energy consumption methodology. This issues tasks to all secondary processors. All tasks are assigned to secondary processors based on Round Robin (RR-Order) (Figure2). Resources are selected with the machine to run in the alone direction. Selecting processors locally and independently of the allocation of processors is performed on each processor. The RR-Order algorithm generally is recycled in web servers where generally the WEB applications have the same nature and, as a result, they are evenly distributed. This defined pattern has not been under the principle of SLA [20].Figure 2
The diagram of cloud base structure.With increasing the number of intelligent communication monitoring system devices such as WSN, WBANs, Big Data, SDN, and mCloud (mobile-Clouds), these devices have become moveable, proficient, and personal accounting infrastructure for the end handler in various modes [2, 8, 17, 21–25]. These devices come with cloud network intermediaries and IoT and SDNs, which cause them to enter the global Internet resources [12, 17]. Many end-users tend to use these devices instead of desktops or clients. In this case, CloudIoT and fog computing have appeared as a practical explanation, and their tasks can be offloaded on the cloud substructure [1]. As another example, network bandwidth may change over time, and the performance levels of data rate cannot be guaranteed for task scheduling [18]. This is especially regarded in the area of real-time applications, where minimum latency is important. Resource management allocated to the mobile cloud must be considered in the cloud infrastructure. Because load-free applications and tasks run on the cloud substructure, fog resources such as storing are recycled to complement mobile device home-grown resources [9, 26].In this regard [2], power consumption in CDC (CloudDataCenters) has been used. In this paper, the goal is to achieve an efficient resource management system to reduce operating costs and ensure service quality. The model of reducing energy consumption in this paper is based on continuous control of virtual machines using efficient methods. The main tool is the use of live migration. In this case, they can transfer virtual machines to physical machines without any interruption and with the highest flexibility, so that they can use the highest capacity of physical machines.In [16], genetic algorithms for allocating virtual machines to reduce energy consumption in data centers are proposed, which shows that evolutionary algorithms are useful for allocating virtual machines because they have been able to reduce energy consumption by up to 10%.In [27], a method of load balancing using PSO was provided. The authors have used many mobile cloud solutions to conserve many properties resources such as power and energy in mobile-portable devices. They optimized the grid energy by examining the SLA and placing the virtual machines using the PSO method.In [28], in PSOSA, the PSO is used to minimize the energy. In experiments using cellular communications ad hoc mobile, the load balancer decision-maker used cellular convergence by PSO by load balancing on the network. The authors tried to evaluate their mechanism on a cloud-based cellular network.Another method of load balancing the MOPSO multiobjective code transfer interval is proposed: the Energy Management and Service Quality Awareness (QOS) Framework [29]. The authors have used the Internet of Things for their inputs. They have considered the infrastructure for the network. Their approach focuses on portable mob-cloud service transfer created on QOS as well as power constrictions. If using the mobile device remote service is costly or the latency time is so high that QoS is not available, the fog service can be transmitted by communication and locally at a lower cost. It proposes algorithms for migration and transfers alongside the decision process for fog-grown performance against inaccessible performance.In [30], a solution was presented based on the migration of virtual machines using PSO. The authors have used mobile devices to deliver cloud-based services. As part of their method, they supported fuzzy to apply multiple services; for example, a service output can be used as another service input. Their goal is to reduce energy consumption in the network, and resources and the potential of this platform in data are shared by online services. They have analyzed this potential and mentioned the difficulty of this way.In [31], a C-RAN application parsing solution was presented; it works by splitting Apps to different mechanisms; then these modules are activated. The authors also discussed how to avoid the middleware solution from allocating further mob-resources to the fog server by using the OFDMA and PSO facilities instead of allocating all virtual machines. In the results section, several experimentations were achieved with m-devices to reach a DSS model to place the load on the network and reduce energy consumption.In [32], a method with PSO considers reducing the consumption of available fog resources without the need for additional overflow in the m-device. In the obtained method, the implementation of PSO algorithm has been used to find suitable places in the network. Cloudlets and their modifications to find the suitable virtual machine location are another method for mobile clouds which are used like VM by placing load on the cloud infrastructure that may be nearby.In [33], a scheduling method called NP-Hard is presented for the cloud. The authors have used PSO to reduce costs. How the cloudlet approach to scaling is used according to their resources, how m-devices network efficiency will cooperate with multiple users, and just how fog cloud will manage the stimulus ability need to be explored. The authors have introduced the CSOS method and optimized network energy by reducing makespan. In their method, the calculated cost has a low value.In [34], the analysis of energy consumption by PSO on mobile devices has been examined to some extent in articles and writings. As mentioned, most of power and costs connected with using an m-device come from “DPRA” energy, known as the network interface. When the connection is made, the net edge remains active for each outstanding packet from the fog server, and it is costly for net operation. The work done in this paper is to implement a system called VM-DPRA, which groups network needs and requests together to reduce the number of tail energy occurrences. Their tail-ender method similarly attempts to cluster network requirements to minimize the power. In this research, K-means clustering method has been used for mapping tasks and microgenetic algorithm for dynamic aggregation of virtual machines. It has also been able to reduce the execution time.In [28], a dynamics algorithm is presented. This algorithm is proposed to create load balance in cloud computing environments using the ant colony algorithm. This algorithm is one of the biological algorithms and almost simulates the behavior of ants.The authors in [29] provide a method for allocating virtual machines using a linear search to optimize resources. The architecture used in this paper is that data centers include several physical machines and physical machines have a fixed size of RAM, CPU, and memory. The broker is responsible for managing user’s requests; then the requests are transferred to the data center via the cloud, where the center manager reserves a certain number of virtual machines to execute the users’ request and provides different classes of virtual machines by cloud maker is suggested, and the user can choose from these classes that have special features such as RAM, CPU, and memory. In this way, it has been able to reduce energy consumption to some extent.The issue of proper placement of virtual machines in physical machines has a great impact on optimizing energy consumption. In [30], the ant colony system has been used to place virtual machines. In this research, the dynamic placement system of virtual machines has been considered. In this way, the request for several virtual machines changes in each time interval; at the beginning of the time interval, the list of virtual machines needs to be updated, and this happens by deleting the expired virtual machines before the previous interrupt. Then the resources of these expired machines are released, and new virtual machines are given to them. Updated virtual machines receive the right information and resources, which improves energy efficiency.The study in [7] develops new VM scheduling to reduce energy costs for cloud services providers. In this study, it is assumed that there is an optimal frequency for one PM for VM processing. The optimal rate is also defined for the performance-power ratio based on which the heterogeneous PMs are weighted in the cloud environment. This problem is defined for the time-bound networks and has achieved good results. The workflow process is divided into several periods, where in each one the virtual machines have been dedicated to the proper PM and each core is operating at its optimal frequency. After each period, the cloud reconfigures to consolidate computing resources, which further reduces energy consumption.Table1 illustrates some related works with metaheuristics algorithms for solving time scheduling problems and improving energy consumptions in cloud networks.Table 1
Comparison of load balancing methods for cloud networks.
ReferenceDescriptionMethodAdvantagesDisadvantagesSimulations[27]Load balancing for optimization problemUsing modified PSO for load balancingTo maximize user-centric energy efficiency in the uplink communicationHigh capacity, low throughput, time complexityMATLAB[28]Cloud provider load balancing PSOSAUsing PSO for having high performance LB in fogVMs is presented to decrease LB on fog cloudHas a multiplex physical resource and high time complexityCloudSim[29]Load balancing with placement optimization MOPSOPSO algorithm for time scheduling and improving energyLow energy consumptionHigh delay and low throughput, time complexityMATLAB[30]Load balancing decentralized particle swarm optimizationPSO-GA-based is presented to decrease LB on CloudNetsLow energy consumption, solve the optimization problem of maximizing the profitHigh total execution timeMATLAB[31]Task scheduling problem on cloud is a load balancing for clouds with load balancing C-RANScheduling constitutes one of the crucial aspects of resources management system in cloud computingImprove energy consumption and resource utilizationHigh total execution time (makespan), bad throughput, and low quality of serviceCloudSim[32]Cloud task scheduling problem with the aim of decreasing powerPSO-based for minimization energy and LBLow energy consumptionHave a scheduling problem between virtual machinesCloudSim[33]CSOS energy-saving research of virtualization of the cloud computing platform with load balancingPSO algorithm for solving time schedulingReduces energy with migration and high quality of serviceTime complexity, high delayMATLAB[34]DPSRA resource allocation VM-DPRAPSO algorithm for solving time schedulingLow energy consumptionTime complexity, high delayMATLAB[18]Hybrid load balancing task scheduling problem PSO and GANovel load balancing symbiotic organisms search PSO + GALow cost, solving task schedulingTime complexity and low quality of serviceCloudSim


## 3. The Proposed Method (LBPSGORA)

### 3.1. Problem Statement

Here, ADS = AD1, AD2, …, ADr represents the autonomous domains set and each AD represents an autonomous domain. Each autonomous domain has several virtual machines, as shown in Figure 3 [18, 35]. The cloud is mapped user applications to the virtual machine by running user applications and through a layer of autonomous domains. Therefore, the source environment scheduling of the cloud should be done by the layer of autonomous domains and the layer of virtual machines.Figure 3
The application scheduling framework on the cloud.So here we have used two layers for scheduling; in this way, first, we can find autonomous domains that have more fitness and then search for the best virtual machines for assigning tasks among virtual machines at those domains. In addition, we considered some autonomous tasks as an application and attempted to assign them to the virtual machines by the proposed scheduling method. Thus, a hierarchical scheduling framework is used for the proposed algorithm. To illustrate this problem, we present a two-dimensional form in Figure4, in which Xaxis shows speed of CPUs and Yaxis shows the amount of RAM (Table 2 and Table 3).Figure 4
A hierarchical scheduling framework is used for AD.Table 2
An example of available resources.
Application numberCPU (GHz)RAM (GB)HDD (T)1.17.88322.2.17.44322.3.16.48162.4.16.48162.Table 3
Example of requests received by the cloud.
Application numberCPU (GHz)RAM (GB)Memory (GB)1.13.03121002.12.04122003.13.18322004.12.15322001.14.12324002.14.2481003.17.2216400


### 3.2. Proposed Method LBPSGORA

In this study, a load balancing algorithm is presented for optimizing energy consumption by considering scheduling. The problem with research that has been done over the last years is that, despite addressing resource allocation and requests management, there has not been much attention paid to energy efficiency in it. But this research aims to provide a solution based on this vital problem, considering energy efficiency as the primary goal. The energy efficiency ratio for a physical machine (PM) that contains the computational power ratio at the peak of energy can be used for this purpose. The algorithm used to optimize energy consumption is the particle swarm optimization algorithm. In this method, users’ applications are mapped to virtual machines through a layer of autonomous domains. Therefore, the scheduling of cloud environment resources is done by the layer of autonomous domains and the layer of virtual machines. The advantages of using metaheuristic algorithms are that one can start searching from several areas of the problem space and increase the level of exploration and have a stronger algorithm. In this study, to improve the results, the final achieved result of the PSO algorithm will be used as an initial value in the genetic algorithm. Therefore, the initial population used in the genetic algorithm yields is the optimal response obtained from the previous step.


### 3.3. Particle Swarm Optimization Algorithm

In this part, we describe the several specifics of the LBPSGORA. As virtual machines are the subset of physical machines that are processing tasks, the PSO algorithm can work in a complex problem to find suitable tasks. The formulas that are presented in this section are related to the particle swarm optimization method. This method is based on using metaheuristic algorithms, in such a way that the metaheuristic methods have been used for assigning VM to PMs. The PSO algorithm is a global optimization method that can solve problems with solutions in a point or surface inn-dimensional space. Therefore, in addition to the initial velocity of particles, the channels of communication between the particles are identified. By moving these particles into the solution space, the results are evaluated based on a merit criterion. A large number of swarm particles make the method flexible against the local optimal solution problem. Each particle has a location. xit specifies the position of particle i at time t. Each particle also needs a swiftness to move through space. vit specifies the velocity of particle i at time t. The equations for updating the particle positions are given below. The particles are talented at memorizing the best position in their lives. The best individual experience of a particle or the best position met by a particle is called yi. The particles know the best position met in the whole group. This is called the y^ position. The two values of c1 and c2 are constant and w is the initial weight that is decreased linearly from wmax to wmin. tmax is the maximum number of repetitions intended for algorithm (Table 4). Therefore, it can be expected that, by utilizing metaheuristics in the initial allocation of VM to PMs, it would be closer to the optimal solution and reduce the number of migrations (Figure 5, part A).(1)vit+1=w∗vit+c1∗rand1∗yi−xit+c2∗rand2∗y^−xit,xit+1=xit+vit+1,w=wmax−t∗wmax−wmintmax,vmin≤vit≤vmax,i=1,…,n,xmin≤xit<xmax,i=1,…,n.Table 4
Resource parameters and their initialization range.
ComponentsApplicationDescriptionvThe velocity of each particleEach particle has a velocity vector such thatvi=vi1,vi2,…,vinxThe location of each particleEach particle has a position vector such thatxi=xi1,xi2,…,xinC1,C2Two random coefficientsc1,c2 are acceleration coefﬁcients. The acceleration of each particle is directed to Pbest and GbestpbestBest valueThe particle’s best known positiongbestThe best cost consideredMoving to the best position that has been in the neighborhood of the swarm from the beginning until nowFigure 5
The proposed algorithm. Step 2 is related to PSO for distinguishing tasks apportion to more than one virtual machine and step 3 is related to GA for returning the best solution.


### 3.4. Genetic Algorithm

The steps used in the genetic algorithm are as follows: at first, building the initial population is based on the best solution obtained from the PSO algorithm. Selecting and combining initial samples (arrays) to generate a new sample or a crossover are done in this algorithm. In the crossover phase, a random combination of two fathers was used to generate a new child. If the generated children contain repeated genes, they will be replaced by the number of unused genes. The whole crossover phase is performed in ten iterations with a combination of 10 randomly selected pairs. Modifying existent samples and building a new sample prevent local optimization because similar samples may be used for the combination in the crossover phase. Selecting a sample with the best fitness among the produced samples in this generation continues to produce the next generation of samples until the end condition is met (Figure5, part B).On the path to the aim and on the way to achieving the optimal solution for the problem, it is necessary at each step to measure the proximity of the current solution to the aim using a criterion. This is done by the fitness function. In this paper, the fitness function is carried out by using the study in [17]. To achieve an optimal solution where there is load balancing between cloud (hosts) network servers, we need to minimize the mean deviation between the loads allocated to the servers. Suppose that Ti denotes all computing powers of a server and Li is the computational power left by the server after assigning it to requests. The computing power of a server is calculated by the speed of CPU and the number of storage resources and its memory.If the number of servers or hosts ism (the m physical hosts are heterogeneous),(2)Ti=αTci+βTri,Li=αLci+βLri,i=1,2,…,m.Therefore, according to the standard deviation formula to optimize the load balancing in the cloud network, we use the following fitness function, whereEX is a mathematical expectation (Figure 6):(3)σ=1N∑i=1NXi−EX2.Figure 6
Each step to measure the proximity of the current solution to the aim using a criterion.The remaining load ratio in a server is defined as (residual load rate)(4)Ei=LiTi,iϵ1.2.3,…,m.Therefore, the fitness function is defined as the standard deviation function:(5)σ=1m∑i=1mαLci+βLriαTci+βTri−∑k=1mαLck+βLrk/αTck+βTrkm2.


## 3.1. Problem Statement

Here, ADS = AD1, AD2, …, ADr represents the autonomous domains set and each AD represents an autonomous domain. Each autonomous domain has several virtual machines, as shown in Figure 3 [18, 35]. The cloud is mapped user applications to the virtual machine by running user applications and through a layer of autonomous domains. Therefore, the source environment scheduling of the cloud should be done by the layer of autonomous domains and the layer of virtual machines.Figure 3
The application scheduling framework on the cloud.So here we have used two layers for scheduling; in this way, first, we can find autonomous domains that have more fitness and then search for the best virtual machines for assigning tasks among virtual machines at those domains. In addition, we considered some autonomous tasks as an application and attempted to assign them to the virtual machines by the proposed scheduling method. Thus, a hierarchical scheduling framework is used for the proposed algorithm. To illustrate this problem, we present a two-dimensional form in Figure4, in which Xaxis shows speed of CPUs and Yaxis shows the amount of RAM (Table 2 and Table 3).Figure 4
A hierarchical scheduling framework is used for AD.Table 2
An example of available resources.
Application numberCPU (GHz)RAM (GB)HDD (T)1.17.88322.2.17.44322.3.16.48162.4.16.48162.Table 3
Example of requests received by the cloud.
Application numberCPU (GHz)RAM (GB)Memory (GB)1.13.03121002.12.04122003.13.18322004.12.15322001.14.12324002.14.2481003.17.2216400


## 3.2. Proposed Method LBPSGORA

In this study, a load balancing algorithm is presented for optimizing energy consumption by considering scheduling. The problem with research that has been done over the last years is that, despite addressing resource allocation and requests management, there has not been much attention paid to energy efficiency in it. But this research aims to provide a solution based on this vital problem, considering energy efficiency as the primary goal. The energy efficiency ratio for a physical machine (PM) that contains the computational power ratio at the peak of energy can be used for this purpose. The algorithm used to optimize energy consumption is the particle swarm optimization algorithm. In this method, users’ applications are mapped to virtual machines through a layer of autonomous domains. Therefore, the scheduling of cloud environment resources is done by the layer of autonomous domains and the layer of virtual machines. The advantages of using metaheuristic algorithms are that one can start searching from several areas of the problem space and increase the level of exploration and have a stronger algorithm. In this study, to improve the results, the final achieved result of the PSO algorithm will be used as an initial value in the genetic algorithm. Therefore, the initial population used in the genetic algorithm yields is the optimal response obtained from the previous step.


## 3.3. Particle Swarm Optimization Algorithm

In this part, we describe the several specifics of the LBPSGORA. As virtual machines are the subset of physical machines that are processing tasks, the PSO algorithm can work in a complex problem to find suitable tasks. The formulas that are presented in this section are related to the particle swarm optimization method. This method is based on using metaheuristic algorithms, in such a way that the metaheuristic methods have been used for assigning VM to PMs. The PSO algorithm is a global optimization method that can solve problems with solutions in a point or surface inn-dimensional space. Therefore, in addition to the initial velocity of particles, the channels of communication between the particles are identified. By moving these particles into the solution space, the results are evaluated based on a merit criterion. A large number of swarm particles make the method flexible against the local optimal solution problem. Each particle has a location. xit specifies the position of particle i at time t. Each particle also needs a swiftness to move through space. vit specifies the velocity of particle i at time t. The equations for updating the particle positions are given below. The particles are talented at memorizing the best position in their lives. The best individual experience of a particle or the best position met by a particle is called yi. The particles know the best position met in the whole group. This is called the y^ position. The two values of c1 and c2 are constant and w is the initial weight that is decreased linearly from wmax to wmin. tmax is the maximum number of repetitions intended for algorithm (Table 4). Therefore, it can be expected that, by utilizing metaheuristics in the initial allocation of VM to PMs, it would be closer to the optimal solution and reduce the number of migrations (Figure 5, part A).(1)vit+1=w∗vit+c1∗rand1∗yi−xit+c2∗rand2∗y^−xit,xit+1=xit+vit+1,w=wmax−t∗wmax−wmintmax,vmin≤vit≤vmax,i=1,…,n,xmin≤xit<xmax,i=1,…,n.Table 4
Resource parameters and their initialization range.
ComponentsApplicationDescriptionvThe velocity of each particleEach particle has a velocity vector such thatvi=vi1,vi2,…,vinxThe location of each particleEach particle has a position vector such thatxi=xi1,xi2,…,xinC1,C2Two random coefficientsc1,c2 are acceleration coefﬁcients. The acceleration of each particle is directed to Pbest and GbestpbestBest valueThe particle’s best known positiongbestThe best cost consideredMoving to the best position that has been in the neighborhood of the swarm from the beginning until nowFigure 5
The proposed algorithm. Step 2 is related to PSO for distinguishing tasks apportion to more than one virtual machine and step 3 is related to GA for returning the best solution.


## 3.4. Genetic Algorithm

The steps used in the genetic algorithm are as follows: at first, building the initial population is based on the best solution obtained from the PSO algorithm. Selecting and combining initial samples (arrays) to generate a new sample or a crossover are done in this algorithm. In the crossover phase, a random combination of two fathers was used to generate a new child. If the generated children contain repeated genes, they will be replaced by the number of unused genes. The whole crossover phase is performed in ten iterations with a combination of 10 randomly selected pairs. Modifying existent samples and building a new sample prevent local optimization because similar samples may be used for the combination in the crossover phase. Selecting a sample with the best fitness among the produced samples in this generation continues to produce the next generation of samples until the end condition is met (Figure5, part B).On the path to the aim and on the way to achieving the optimal solution for the problem, it is necessary at each step to measure the proximity of the current solution to the aim using a criterion. This is done by the fitness function. In this paper, the fitness function is carried out by using the study in [17]. To achieve an optimal solution where there is load balancing between cloud (hosts) network servers, we need to minimize the mean deviation between the loads allocated to the servers. Suppose that Ti denotes all computing powers of a server and Li is the computational power left by the server after assigning it to requests. The computing power of a server is calculated by the speed of CPU and the number of storage resources and its memory.If the number of servers or hosts ism (the m physical hosts are heterogeneous),(2)Ti=αTci+βTri,Li=αLci+βLri,i=1,2,…,m.Therefore, according to the standard deviation formula to optimize the load balancing in the cloud network, we use the following fitness function, whereEX is a mathematical expectation (Figure 6):(3)σ=1N∑i=1NXi−EX2.Figure 6
Each step to measure the proximity of the current solution to the aim using a criterion.The remaining load ratio in a server is defined as (residual load rate)(4)Ei=LiTi,iϵ1.2.3,…,m.Therefore, the fitness function is defined as the standard deviation function:(5)σ=1m∑i=1mαLci+βLriαTci+βTri−∑k=1mαLck+βLrk/αTck+βTrkm2.


## 4. Simulation and Results

In the cloud computing environment, some slaves are the central interfaces between users and the cloud infrastructure. This slave is responsible for resources management policy and allocating requests for machines. In addition to the slave that manages the cloud with its policies, due to the distributed nature of the cloud computing network, distributed resource management algorithms can also be provided. The purpose of this research is to manage resources in the cloud environment and to present a new method for examining the current status and history of semicentralized cloud-level machines. The cloud environment includes the physical infrastructure and specific control functions that the cloud, with their collaboration, will be able to provide and manage services. These infrastructures and resources are integrated and configured by the infrastructure provider in the data centers. The cloud provider provides resources to developers with the help of virtualization techniques and resource management algorithms (Figure7). We used MATLAB and CloudSim to evaluate the algorithm. The simulations have been run in an environment with an Intel processor and 6 GB of RAM. The operating system used is 64-bit Windows 7 Ultimate (Tables 5 and 6).Figure 7
Resources management policy and allocating requests.Table 5
Resources and initialization range.
Resources (MAX, MIN)Num_of_CPU numbersNum_of_RAMTotal_BandwidthNum_of StorageMinRe8 (2.4 GHz)32.2101MaxRe7 (3.8 GHz)32.48200StepsRe4 (2.5 GHz)32.74200Table 6
An example of requests and their range.
Resources (MAX, MIN)Num_of_CPU numbersNum_of_RAM (GB)Total_Bandwidth (GB)Num_of Storage (TB)Maximum7.00 (4.2 GHz)16101Minimum11.00 (4.4 GHz)2561100Steps5.00 (7.2 GHz)2561100MATLAB’s programming language is used to simulate the peer-to-peer system, connect between records, and construct the data distribution. Figure8 illustrates the implementation steps of this research. After performing this initialization, Figure 9 shows the number of resources and registered requests in the program when the LBPSGORA is evaluating.Figure 8
The steps of this research (LBPSGORA algorithm).Figure 9
The average number of each virtual machine in the resource parameters.


### 4.1. Applying PSO to Data Resources Matrix

In the process of implementing LBPSGORA after identifying the resource matrix and also the submissions matrix, the PSO_Algorithm has been applied to data. So we can allocate sent requests appropriately so that the load balancing between the servers is maintained and the cost function defined for this research will be minimized. Table7 shows the parameters used in the particle swarm optimization algorithm.Table 7
The parameters used in the PSO algorithm.
ParameterDescriptionValuenVarNumber of decision parameters1MaxItMaximum number of rings1000WInitial weight1WdampWeight change coefficient0.99c1Personal learning rate1.5c2Basic learning rates2After the implementation of the PSO algorithm according to the initialization, the manner of initial and final allocation to some of the requests is given in the following table as an example. Comparing Table8 and Table 9, it can be seen that the final cost considered to the resource allocation is much lower than the initial cost. Figure 10 shows a comparison of the initial cost and the final cost in resource allocation to the requests for a better understanding of how the algorithm works. Also, Figure 11 shows the amount of resource allocation cost per replicate. As can be seen, this algorithm can find the optimal path correctly and after 100 iterations can propose the desired results at the lowest cost. Table 7 and Table 8 represent the details of how to allocate a resource to received requests.Table 8
Initial values attributed to requests from 1 to 3.
Request IDResource ID assignedRequest value in parameter orderThe number of resources in the parameter orderCost188[3, 11, 6, 2][6, 64, 8, 35]0.0618294[3, 35, 5, 9][3, 96, 10, 21]0.0617317[2, 51, 6, 3][7, 128, 8, 7]0.06204Table 9
Final values attributed to requests from 1 to 3.
Request IDResource ID assignedRequest value in parameter orderSource value in parameter orderCost135[3, 11, 6, 2][8, 112, 10, 23]0.0615226[3, 35, 5, 9][12, 141, 5, 10]0.0616345[2, 51, 6, 3][25, 150, 20, 20]0.0616Figure 10
Comparison of the initial cost and final cost of assigning the source to requests from 1 to 3.Figure 11
The cost of resource allocation in different replays of implementation of the PSO algorithm.The number of resources is considered to be 100, where, for each of these resources, the parameters related to CPU capacity, memory, and so forth are given values according to the initial values in Table9.


### 4.2. Applying Genetic Algorithm

After applying the PSO to data related to the defined requests and resources in the system, it is time to implement the genetic algorithm. Thus, after performing the PSO and achieving the best cost in allocating resources for the received requests to balance genetic servers, the GA_algorithm is applied to the best results of the particle swarm optimization algorithm. Thus, we believe that performing this method can reduce the cost of resource allocation for received requests.In this research, we also intend to minimize the cost defined. By comparing Table10 with the final output of the PSO algorithm and Table 11 showing the parameters of the genetic algorithm, it can be concluded that the final cost considered to allocate resources and load balancing has been reduced desirably in comparison to the cost obtained in the PSO algorithm. Therefore, the LBPSGORA can propose appropriate allocations that maintain the load balancing between the servers. Figure 12 shows a comparison of the initial cost and the final cost in allocating resources for the requests for a better understanding of how the algorithm works. Also, this method reduces the cost of resources to requests, and Figure 12 shows the amount of allocation costs of resources in each iteration. This algorithm can find an optimal path and can propose the desired results with the minimum cost after 100 iterations.Table 10
Parameters used in the genetic algorithm.
ParameterDescriptionValuenPopPopulation size (number of request parameters)4n_genNumber of generations1000RpCrossover percentage or crossover0.8MuPercentage of mutation or mutation0.5Table 11
Final values attributed to requests from 1 to 3.
Request IDResource ID assignedRequest value in parameter orderThe amount of resources in the parameter orderCost135[3, 11, 6, 2][25, 308, 52, 71]0.0491226[3, 35, 5, 9][28, 303, 58, 64]0.0608345[2, 51, 6, 3][25, 332, 51, 78]0.0600Figure 12
Comparison of the initial cost and final cost in resource allocation to requests 1 to 3.


### 4.3. Runtime Calculation

In this sector, we investigate the runtime calculation for the LBPSGORA, PSO algorithm, and genetic algorithm. To be fair to the obtained results, we assume that the numbers of rings are equal, as depicted in Figure13. The numerical value of the LBPSGORA runtime in different repetitions is shown in Table 12.Figure 13
Comparison of the runtime of the LBPSGORA in different repetitions in seconds.The variable of the cost of consumption is taken as a threshold to load balancing in the cloud network and optimizing energy consumption. By spending more time and developing a hybrid algorithm, we have improved energy consumption and cost. Without load balancing, when clients send requests to the cloud network, data transmission operations are complicated, and retransmission occurs. As a result, it needs to spend money and extra energy (Table12).Table 12
The numerical value of the LBPSGORA runtime in different repetitions.
Number of iterationsPSO algorithm/t (s)GA algorithm/t (s)Total time spent/t (s)300.0994110.0753960.174807500.0961960.1177150.213911700.1743650.1308530.3052181000.2822680.3176310.599899


### 4.4. Check the Load Balance against Tasks

In this section, the details of LB in exchange for increasing tasks in the physical machine are discussed. In the proposed method, the LBPSGORA combination is intended to handle tasks.The proposed method is compared with the method in [16], hybrid GA-PSO, and GA algorithms. In hybrid GA-PSO method, due to having higher complexity compared to our proposed method, it has a weaker load balancing compared to our proposed method. The difference between our work and the article is that the authors therein used a combination of PSO + GA for their method and the two methods depend on internal steps to create the initial population. In LBPSGORA method, two separate algorithms work, and the optimal PSO response for the initial population of GA is considered.As can be seen in Figure14, the proposed method has better conditions for increasing tasks. This makes it less energy-consuming. The PSO and GA methods are also unfavorable conditions for observing the LB of the other methods. The circles in Figure 15 show the effect of increasing tasks on LB. With the increase of tasks, we see that the load created on the network has increased. As shown in Figure 13, the proposed method is similar to the compared methods in different cases and the improvement rate of the proposed method compared to hybrid GA-PSO is 8.42%, and it is 10.61% compared to GA and 11.71% compared to PSO.Figure 14
Load balancing rates in LBPSGORA and hybrid GA-PSO.Figure 15
Load balancing changes in LBPSGORA and hybrid GA-PSO.Also, the simulation results for tasks 100 to 1000 are examined in detail in Figure15. The improvement rate of LBPSGORA method compared to hybrid GA-PSO, respectively, is as follows: 5.12% for 100 tasks, 3.67% for 200 tasks, 4.18% for 400 tasks, 2.28% for 600 tasks, 5.12% for 800 tasks, and 3.23% for 1000 tasks.


### 4.5. Check Makespan against Task Execution

This section compares the proposed LBPSGORA method with the hybrid GA-PSO method and the number of makespan changes against the number of tasks. As shown in Figure16, as the number of tasks increases in different cases, the proposed method and other methods will be changed. Because the tasks in the proposed method are more efficient than the hybrid GA-PSO method, makespan changes in various tests are due to the use of two-stage PSO and GA and network updates. In some incremental modes, load balancing changes are also observed. The proposed method is similar to other compared methods in different cases and the improvement rate of the proposed method is 7.32%.Also, the simulation results for the 100 to 1000 tasks are discussed in detail in Figure15. The improvement rate of LBPSGORA method compared to hybrid GA-PSO in makespan, respectively, is as follows: 2.1% for 100 tasks, 1.39% for 200 tasks, 1.36% for 400 tasks, 2.74% for 600 tasks, 1.06% for 800 tasks, and 2.60% for 1000 tasks.Figure 16
Makespan implementation changes in LBPSGORA and hybrid GA-PSO.


### 4.6. Task Execution Cost

Figure17 examines the costs of task execution changes in different implementation of tasks, and, as can be seen, the proposed method has a lower implementation cost task execution compared to other methods. In the hybrid GA-PSO method, the cost changes are similar to the performance of the proposed method and the LBPSGORA is 6.87% more efficient. As can be seen, with the increase in the number of tasks, the cost task execution for both methods of implementation costs is increasing. Also, the simulation results for 100 to 1000 tasks are reviewed in detail. The improvement cost task execution rate of LBPSGORA compared to hybrid GA-PSO, respectively, is as follows: 0.4% for 100 tasks, 1% for 200 tasks, 1.6% for 400 tasks, 2.32% for 600 tasks, 2.48% for 800 tasks, and 1.53% for 1000 tasks.Figure 17
Execution cost in the LBPSGORA and hybrid GA-PSO.


## 4.1. Applying PSO to Data Resources Matrix

In the process of implementing LBPSGORA after identifying the resource matrix and also the submissions matrix, the PSO_Algorithm has been applied to data. So we can allocate sent requests appropriately so that the load balancing between the servers is maintained and the cost function defined for this research will be minimized. Table7 shows the parameters used in the particle swarm optimization algorithm.Table 7
The parameters used in the PSO algorithm.
ParameterDescriptionValuenVarNumber of decision parameters1MaxItMaximum number of rings1000WInitial weight1WdampWeight change coefficient0.99c1Personal learning rate1.5c2Basic learning rates2After the implementation of the PSO algorithm according to the initialization, the manner of initial and final allocation to some of the requests is given in the following table as an example. Comparing Table8 and Table 9, it can be seen that the final cost considered to the resource allocation is much lower than the initial cost. Figure 10 shows a comparison of the initial cost and the final cost in resource allocation to the requests for a better understanding of how the algorithm works. Also, Figure 11 shows the amount of resource allocation cost per replicate. As can be seen, this algorithm can find the optimal path correctly and after 100 iterations can propose the desired results at the lowest cost. Table 7 and Table 8 represent the details of how to allocate a resource to received requests.Table 8
Initial values attributed to requests from 1 to 3.
Request IDResource ID assignedRequest value in parameter orderThe number of resources in the parameter orderCost188[3, 11, 6, 2][6, 64, 8, 35]0.0618294[3, 35, 5, 9][3, 96, 10, 21]0.0617317[2, 51, 6, 3][7, 128, 8, 7]0.06204Table 9
Final values attributed to requests from 1 to 3.
Request IDResource ID assignedRequest value in parameter orderSource value in parameter orderCost135[3, 11, 6, 2][8, 112, 10, 23]0.0615226[3, 35, 5, 9][12, 141, 5, 10]0.0616345[2, 51, 6, 3][25, 150, 20, 20]0.0616Figure 10
Comparison of the initial cost and final cost of assigning the source to requests from 1 to 3.Figure 11
The cost of resource allocation in different replays of implementation of the PSO algorithm.The number of resources is considered to be 100, where, for each of these resources, the parameters related to CPU capacity, memory, and so forth are given values according to the initial values in Table9.


## 4.2. Applying Genetic Algorithm

After applying the PSO to data related to the defined requests and resources in the system, it is time to implement the genetic algorithm. Thus, after performing the PSO and achieving the best cost in allocating resources for the received requests to balance genetic servers, the GA_algorithm is applied to the best results of the particle swarm optimization algorithm. Thus, we believe that performing this method can reduce the cost of resource allocation for received requests.In this research, we also intend to minimize the cost defined. By comparing Table10 with the final output of the PSO algorithm and Table 11 showing the parameters of the genetic algorithm, it can be concluded that the final cost considered to allocate resources and load balancing has been reduced desirably in comparison to the cost obtained in the PSO algorithm. Therefore, the LBPSGORA can propose appropriate allocations that maintain the load balancing between the servers. Figure 12 shows a comparison of the initial cost and the final cost in allocating resources for the requests for a better understanding of how the algorithm works. Also, this method reduces the cost of resources to requests, and Figure 12 shows the amount of allocation costs of resources in each iteration. This algorithm can find an optimal path and can propose the desired results with the minimum cost after 100 iterations.Table 10
Parameters used in the genetic algorithm.
ParameterDescriptionValuenPopPopulation size (number of request parameters)4n_genNumber of generations1000RpCrossover percentage or crossover0.8MuPercentage of mutation or mutation0.5Table 11
Final values attributed to requests from 1 to 3.
Request IDResource ID assignedRequest value in parameter orderThe amount of resources in the parameter orderCost135[3, 11, 6, 2][25, 308, 52, 71]0.0491226[3, 35, 5, 9][28, 303, 58, 64]0.0608345[2, 51, 6, 3][25, 332, 51, 78]0.0600Figure 12
Comparison of the initial cost and final cost in resource allocation to requests 1 to 3.


## 4.3. Runtime Calculation

In this sector, we investigate the runtime calculation for the LBPSGORA, PSO algorithm, and genetic algorithm. To be fair to the obtained results, we assume that the numbers of rings are equal, as depicted in Figure13. The numerical value of the LBPSGORA runtime in different repetitions is shown in Table 12.Figure 13
Comparison of the runtime of the LBPSGORA in different repetitions in seconds.The variable of the cost of consumption is taken as a threshold to load balancing in the cloud network and optimizing energy consumption. By spending more time and developing a hybrid algorithm, we have improved energy consumption and cost. Without load balancing, when clients send requests to the cloud network, data transmission operations are complicated, and retransmission occurs. As a result, it needs to spend money and extra energy (Table12).Table 12
The numerical value of the LBPSGORA runtime in different repetitions.
Number of iterationsPSO algorithm/t (s)GA algorithm/t (s)Total time spent/t (s)300.0994110.0753960.174807500.0961960.1177150.213911700.1743650.1308530.3052181000.2822680.3176310.599899


## 4.4. Check the Load Balance against Tasks

In this section, the details of LB in exchange for increasing tasks in the physical machine are discussed. In the proposed method, the LBPSGORA combination is intended to handle tasks.The proposed method is compared with the method in [16], hybrid GA-PSO, and GA algorithms. In hybrid GA-PSO method, due to having higher complexity compared to our proposed method, it has a weaker load balancing compared to our proposed method. The difference between our work and the article is that the authors therein used a combination of PSO + GA for their method and the two methods depend on internal steps to create the initial population. In LBPSGORA method, two separate algorithms work, and the optimal PSO response for the initial population of GA is considered.As can be seen in Figure14, the proposed method has better conditions for increasing tasks. This makes it less energy-consuming. The PSO and GA methods are also unfavorable conditions for observing the LB of the other methods. The circles in Figure 15 show the effect of increasing tasks on LB. With the increase of tasks, we see that the load created on the network has increased. As shown in Figure 13, the proposed method is similar to the compared methods in different cases and the improvement rate of the proposed method compared to hybrid GA-PSO is 8.42%, and it is 10.61% compared to GA and 11.71% compared to PSO.Figure 14
Load balancing rates in LBPSGORA and hybrid GA-PSO.Figure 15
Load balancing changes in LBPSGORA and hybrid GA-PSO.Also, the simulation results for tasks 100 to 1000 are examined in detail in Figure15. The improvement rate of LBPSGORA method compared to hybrid GA-PSO, respectively, is as follows: 5.12% for 100 tasks, 3.67% for 200 tasks, 4.18% for 400 tasks, 2.28% for 600 tasks, 5.12% for 800 tasks, and 3.23% for 1000 tasks.


## 4.5. Check Makespan against Task Execution

This section compares the proposed LBPSGORA method with the hybrid GA-PSO method and the number of makespan changes against the number of tasks. As shown in Figure16, as the number of tasks increases in different cases, the proposed method and other methods will be changed. Because the tasks in the proposed method are more efficient than the hybrid GA-PSO method, makespan changes in various tests are due to the use of two-stage PSO and GA and network updates. In some incremental modes, load balancing changes are also observed. The proposed method is similar to other compared methods in different cases and the improvement rate of the proposed method is 7.32%.Also, the simulation results for the 100 to 1000 tasks are discussed in detail in Figure15. The improvement rate of LBPSGORA method compared to hybrid GA-PSO in makespan, respectively, is as follows: 2.1% for 100 tasks, 1.39% for 200 tasks, 1.36% for 400 tasks, 2.74% for 600 tasks, 1.06% for 800 tasks, and 2.60% for 1000 tasks.Figure 16
Makespan implementation changes in LBPSGORA and hybrid GA-PSO.


## 4.6. Task Execution Cost

Figure17 examines the costs of task execution changes in different implementation of tasks, and, as can be seen, the proposed method has a lower implementation cost task execution compared to other methods. In the hybrid GA-PSO method, the cost changes are similar to the performance of the proposed method and the LBPSGORA is 6.87% more efficient. As can be seen, with the increase in the number of tasks, the cost task execution for both methods of implementation costs is increasing. Also, the simulation results for 100 to 1000 tasks are reviewed in detail. The improvement cost task execution rate of LBPSGORA compared to hybrid GA-PSO, respectively, is as follows: 0.4% for 100 tasks, 1% for 200 tasks, 1.6% for 400 tasks, 2.32% for 600 tasks, 2.48% for 800 tasks, and 1.53% for 1000 tasks.Figure 17
Execution cost in the LBPSGORA and hybrid GA-PSO.


## 5. Conclusions

The most significant challenges that cloud service providers face are managing physical resources and scheduling tasks by taking into consideration the reduction of energy consumption throughout the network. In the LBPSGORA approach, instead of randomly assigning the initial population to the genetic algorithm, the best result obtained from the PSO algorithm is considered as the initial population in GA. The hybrid GA-PSO method is similar in performance to the proposed method with tasks changes. The LBPSGORA method is 6.87% more efficient in execution cost and 7.32% more efficient in makespan compared to hybrid GA-PSO. In load balancing, LBPSGORA was 8.42% superior to the hybrid GA-PSO, 10.61% superior to GA, and 11.71% superior to PSO. For future work of this research, the use of other heuristic methods with load balancing and scheduling problems will be considered. Besides, reliability and response time considerations are other areas of future research.



---

*Source: 5575129-2021-06-07.xml*