Enhancing Cloud Resource Management Based on Intelligent System

,


Introduction
Cloud computing has received great attention due to the rapid development of Internet technology 1 .To reduce the cost by allowing them to use less expensive, more powerful resources, or by enabling them to benefit from the scale economies provided by cloud computing platforms.In a cloud computing system, distributed computing technology and many open service interfaces are utilized to get benefits by selling redundant computing and storage capabilities to users 2 , that is, the concept of cloud computing dependent on a pay-per-model that contains a general set of on-demand allocation of programmable computer resources, and users can easily access the network 3 .Service providers can make profits by providing essential services during a short period of time through the advantages of their hardware resources 1 , while users and certain companies that want to reduce the cost by allowing to use less expensive, more powerful resources, or by enabling them to benefit from the scale economies provided by cloud computing platforms 4 .
However, due to its low-cost and on-demand availability, it is common for cloud asset misuse to arise, minimizing resource utilization or even risking infrastructure.As a result, resource management is critical to ensuring continuous supply and better utilization, which is accomplished through scheduling 5 .The round-robin method is a timesharing operating system's efficient CPU scheduling process.The system processes the strategies regarding the time slice; even so, the researchers have found calculating the time slice to be extremely difficult.CPU scheduling is a resource allocation technique that deals with assigning CPU time to a particular process.The way the CPU selects the process from the ready queue differs between this algorithm 6 .Several scheduling methods, including FCFS, SJF, priority, and Round-Robin (RR), is used Published Online First: November, 2023 https://dx.doi.org/10.21123/bsj.2023.8507P-ISSN: 2078-8665 -E-ISSN: 2411-7986 Baghdad Science Journal in the time-sharing system.The traditional RR provides an equal amount of time for all processes, which is known as a time slice.Each process uses its time slice numerous times until its execution is complete.Furthermore, the following criteria must be considered when selecting a scheduling algorithm: CPU utilization, throughput, response time, turnaround time, and waiting time.Firstly, resource management must be understood and the numerous issues associated with various scheduling techniques to develop a good scheduling algorithm 6 .This paper offers a thorough resource analysis management in cloud computing using optimization factors appropriate for cloud computing environments.Then will assist researchers in determining the best approach for recommending an appropriate technique for scheduling user applications in a cloud environment.
Cloud computing works as a virtual resource provider for the multi-user with a random selection for whom they need service.Thus to improve stability must intelligent monitoring methods without delay to avoid instability.Then two algorithms GA and RR are combined to ensure that the processing of the tasks is not delayed and reaches a stable state.
The rest of this paper is organized as follows: Cloud resource management is presented, resource management challenges in the cloud are mentioned, a description of genetic and round-robin algorithms, and related works, the proposed cloud resource management algorithm is described, then the results and discussion are presented.Finally, in the last section, the conclusion and future work will be discussed.

Cloud Resource Management
When dealing with predictable or unpredictable requirements, cloud computing is a good choice to take into account 7 .The robust framework of cloud computing enables people as well as companies to acquire the necessary services in accordance with their requirements.The model provides a wide range of services, including storage, deployment platforms, easy access to web services, and other 8 .The management of resources is a major challenge in distributed computing, like cloud computing.
Different cloud users require various services based on their changing requirements in cloud computing.As a result, the goal of cloud computing is to present all of the necessary services.Nevertheless, because of the limited resources available, cloud service providers struggle to provide all required services at the same time.Classifications of major types of resources based on their services, like as storage, network, computation, energy, and, security.In the following section, the different types of challenges for resource management will be discussed in the cloud computing situation 9 .

Resource Management Challenges in Cloud
Resource mapping, resource provisioning, resource allocation, resource selection and discovery, resource brokering, resource adaptation, and resource scheduling are some of the major challenges based on resource cloud system management systems.The main concept of these challenges is presented 9 : Resource mapping: The consistency of available resources with a service provider and resources required by users is referred to as resource mapping.Resource provisioning: this is the method for assigning a service provider's resources to cloud users while maintaining the quality of service guarantee specified in the service level agreement (SLA).Resource allocation: is the cost-effective assigning of cloud resources among various applications via the internet.Resource selection and discovery: this is the method of finding all resources offered up in the system, gathering current resource state information, and deciding which target resource to select based on the data collected from the discovery.Resource brokering: is the method of negotiation for the resources needed with an agent to ensure that they are available in time to accomplish the objectives.Resource adaptation: this system's ability to dynamically regulate resources to satisfy user needs.Resource scheduling: as a schedule of events and resources that registers when an action should begin or end based on its: dedicated resources, duration, preceding activities, and preceding relationships.

Genetic and Round-Robin Algorithms
Genetic algorithm: GA is a heuristic technique; it solves a difficult optimization problem based on natural evolution, high efficiency, and stability.GA is motivated by the improved fitness of biological systems as a result of evolution.In this algorithm, the solution to a given problem is represented as a chromosome in the form of a string, and a set of elements is represented as genes, which have the values of optimized variables.GA works with a random population of chromosomes.On each chromosome, an objective function is used to assess its fitness.To simulate the natural survival of the fittest process, chromosomes are produced through crossover or mutation 10 .Children have a better casual of surviving if their parents are more physically fit.This cycle repeats until the generation of fittest is identified 11 .
Round-robin scheduling: this is the most basic scheduling algorithm and is used in a wide range of applications.When the RR algorithm is implemented for an extended period of time, all devices are scheduled equally 9 .In this situation, each task takes its role all tasks have been assigned time slots 11 .Because round-robin performs on a static time quantum, for execution, each process gets a time slice.When a process completes its time slice, it is moved to the end of the ready queue for later implementation 5 .As a result, it is a time-slicing technique in which every time slot offers the same period of time, and tasks are given one by one 9 .However, many researchers were interested in the constant time quantum problem to minimize the waiting time and turnaround time; while others reorganized the ready queue in increasing or decreasing order, to get better performance.Mainly, an algorithm composite of multiple steps, a genetic algorithm is one of the problem-solving methods that use genetics in its work 10 .

Related Works
Many studies have been conducted in order to increase CPU utilization and then improve the performance of cloud management.The following are some related work.
Fan et al. 12 proposed A multi-objective Genetic Algorithm is used for dynamic resource usage and power consumption forecasting.To raise average CPU and memory usage, the prediction VM assignment technique is used, but Genetic Algorithm alone increases execution and waiting time, so a static algorithm can be used such as a round-robin to decrease them.Kousalya et al. 13 presented a new cloud-based job scheduling algorithm that depended on basic GA merged with PSO for task scheduling.In this method, bandwidth is utilized as a fitness circumstance to validate the scheduling results.Most clouds are taken into account in this strategy to enhance resource utilization.To improve the allocation process, dedicated virtual machines are divided based on their CPU priority.The hybrid algorithm uses cloud measurements such as execution time, bandwidth, node requirement, and deadline to generate an optimized scheduling scheme.The experimental outcomes illustrate that the proposed method maximizes resource utilization.But, this paper combined GA and PSO for task scheduling, which are heuristic methods that take a long time.
Henrique et al. 14 proposed the Genetic Algorithm (GA) and Multi-Population Genetic Algorithm (MPGA), along with the suggested operators, could be a viable different to the earlier PSO approach.According to the findings, GA and MPGA were consistently better than PSO.For the three workflow scheduling algorithms tested, evolutionary algorithms returned improved scheduling schemes that reduced costs in an acceptable amount of time.But there was a delay in the distribution of tasks and it can be solved using a static scheduling algorithm such as round-robin, in order to fulfill the stability Mahendra et al. 15 proposed a heuristic approach for the allocation of resources and job scheduling be used.Modules such as task scheduling and resource allocation using the divide and conquer method, a modified analytic hierarchy process, longest expected processing time preemption, and bandwidth-aware splitting scheduling are used in this approach.Tasks are processed prior to assignment.He could have used a method, for example, roundrobin, to distribute tasks to the VMs and reduce waiting time.show that the improved genetic algorithm described in this paper has a greater effect on cloud resource scheduling, and achieves more acceptable task scheduling.Firstly, it did not convert the requests to binary code that come from users to the queue which takes up a large storage space and is also difficult to deal with.Secondly, it did not achieve stability in the system, which is important in distributing cloud resources.
Hatem 16 proposed a cloud hybrid adaptive strategy for proper scientific scheduling problems (WS) that are deadline and budget constrained.This problem is solved by combining the heterogeneous earliest finish time HEFT solution into the initial population used by our approach to achieving the best execution time and least execution cost, but the waiting time was not considered into account.
Praveenchandar 17 a Dynamic Resource Allocation method with enhanced job scheduling and improved power management modules is proposed in this paper.This is a new method for energy-efficient scheduling tasks in cloud environments with dynamic resource allocation.The job size and interarrival time were considered in the proposed job scheduling method.However, it is possible that several of the tasks are similar in size and arrive at the same time.The limitation of this method is that the delay did not take into account how long the task was waiting in the queue.
Singh et al. 18 suggested the merged the nondominated sorting and flower pollination using a genetic algorithm (NSGA).The Google cluster dataset is used to evaluate the algorithm.For both static and dynamic situations metrics for performance like utilization of resources, energy use, and emissions of carbon values are computed.Unfortunately, stability was not achieved.
In the following section, a tabular comparison of the literature is presented as illustrated in Table 1.That compares the performance metrics such as delay and stability which are applied to assess the effectiveness of the suggested algorithms.

The Proposed Cloud Resource Management Algorithm
In this section, a cloud resource management scheme is suggested, which is intended to be an extension of existing cloud frameworks.The process of allocating the various resources depends on intelligent algorithms, which are the hybrid Genetic Algorithm (GA) and Round-Robin (RR) as dedicated in Fig. 1.
Using GA would help in estimating the process length to minimize average waiting time and then apply the RR algorithm in order to not enter in a deadlock case.

Figure 1. Flowchart of proposed resource management
The relationship between the main algorithm and the two procedures is: It starts receiving the requests from users by calling the fetch procedure and converting them into binary code to make it easier to deal with them, then calls the genetic procedure, here it starts collecting requests and roughly calculating the length of tasks.
After that, go back to the main algorithm, and distribute tasks to resources through the Round-Robin implementation.
The proposed algorithm's steps are as follows: Main Algorithm 1-Start 2-Call fetch requests from IOT (users).IP addresses then the action is checked it is either equal to "P" which is processed or is equal to "N" which is mean normal.Then check if the process length is greater than 10 ms; which must be less than 10, a RR algorithm is applied in order to avoid the process entering a deadlock case that is due to suspend the system.

Results and Discussion
This section describes the experimental findings of the suggested hybrid GA-RR algorithm, beginning with a depiction of the experimental environment.
The users send their requests in the form of IoT data.Each data is converted to binary numbers which have the properties of file size.
Firstly, the user requests which are fetched as IP addresses convert to 32-bit binary digits in order to represent the chromosomes that the genetic algorithm depended on it.As shown in Table 2.

Figure 2. Process predictive values
As illustrated in Fig. 2 The process lengths for the 145 processes range between 1 and 34 process lengths, representing predictive values as a result of GA.

Figure 3. Process real values
As depicted in Fig. 3 The real values range from 1 to 32 for 145 processes.The final result is concluded that there is little difference between predictive and real values.This proves the importance of using the genetic algorithm to find approximate values for user requests.Where almost every time a user request is this long.This is shown in Fig. 4, it is observed from this experiment that the differences between the process lengths of predictive and real values range between 1 and 5 process length is 92 processes, the process whose lengths between 6 and 8 are 28 processes, as well as, the process whose lengths extends from 9 to 10 is 24 processes.This means that the differences between the expected values and the real values are very small, this benefit is due to the use of the GA.

Figure 4. Differences between the process lengths of predictive and real values
In order to avoid a deadlock, which leads to system instability, a round-robin algorithm is used, which uses a time slice equal to 10 for each process.If the process length is less than or equal to 10 then the action is normal, else, if the process length is greater than 10.If the action is greater than 10 then the round-robin algorithm is applied, because if the process length reaches 10 the system enters a halt case, in order to reach to stability system.

Conclusion
There should always be a balance between not delaying tasks for processing and system stability.This balance is a problem for many researchers.In this paper, an intelligent technique for resource monitoring is suggested in a cloud computing environment depending on hybrid genetic and roundrobin algorithms.The monitoring problem is important in cloud resources management.In this method, process length is utilized as a fitness condition for proving the fitness of the monitoring results to get the exact values for requests in order to decrease the delay that may be happened.The results from GA compared with the real process lengths and little differences are shown.Finally, a round-robin was applied for the requests whose process length is greater than 10 in order to avoid the deadlock state to obtain a stable system.For future work, the suggested hybrid algorithm can be replaced by another, and more parameters can be added based on the users' requirements.

Fang 2
determines the resource scheduling execution amount by optimizing the genetic algorithm's https://dx.doi.org/10.21123/bsj.2023.8507P-ISSN: 2078-8665 -E-ISSN: 2411-7986 Baghdad Science Journal execution process, planning the completion time of job scheduling and load balancing, and establishing a set of cloud resource scheduling search schemes based on the genetic algorithm.Experiment results

3 - 6 -
Convert the requests to binary code.4-Call genetic procedure.5-Process the requests using the Round-Robin algorithm.Read the current status and save the user request to the info predictive table.7-End Algorithm Fetch Request 1-Start 2-While online received requests from users (IoT) compare with the predictive table and update save data 3-End Algorithm Genetic Procedure1-Strat 2-Start with the initial population for user requests 3-loop-until finish population or fitness select operation, cross-over, and mutation 4-End GA is performed by implementing the development process in order to improve toward the best solution.A genetic algorithm has the ability to determine the best job sequence to assign to the processor.The following steps are used by GA to perform its general operations: -Choose the population set's fixed-size chromosomes that are represented by binary codes.-Perform any encoding procedure on the chromosome sets'.-Using their fitness value which is maxing job time=10, choose the best two chromosomes from the set.-Cross two chromosomes and you will get two different offspring.-On those offspring, simply swap the bit positions to perform the mutation operation.-Continue until the population's optimal solution is obtained.-Finally performing the elitism operation of the chromosomes means storing the best chromosomes in the system.As shown in Table 1 pre_value represents the process length for each job.After the GA is applied for the Published Online First: November, 2023 https://dx.doi.org/10.21123/bsj.2023.8507P-ISSN: 2078-8665 -E-ISSN: 2411-7986 Baghdad Science Journal used in this paper to transfer parental genetic material to children.The goal of this step is to select the best-fitting pair of individuals for crossover most of the time.The fitness value of each chromosome is 10 process length.This pool of chromosomes goes through a random single-point crossover, where the portion on one side of the crossover site is exchanged with the portion on the other side, depending on the crossover point.As a result, it creates a new pair of people.-Mutation:The mutation operation broadens the search space by modifying a single chromosome.The quality of the created chromosomes is not especially good at the start of the genetic algorithm.As time passes on, the quality of the chromosome improves.In this paper, a very low value (0.05) is chosen as the mutation probability.This startup operation assists the GA scheduling purpose in avoiding local optimums and discovering various search locations.