1 Introduction

Cloud computing is nothing, but a computing theory for allowing the utilization of computing infrastructure at more than one level of abstraction. Due to the implications for higher availability and flexibility at limited cost, cloud computing has been paid a great deal of attention [1,2,3,4]. Meanwhile, due to the uneven task scale and various computing capacities of nodes, some computing nodes present in the cloud are underutilized whereas others are overloaded that results in unbalanced load distribution [1, 5, 6]. Hence, it is imperative for spreading loads over computing nodes to enhance user requirements [1, 7]. Several users and enterprises are permitted to maintain and construct data centers. The individuals of the cloud also enjoy several kinds of computing services provided by the public cloud [8]. Cloud computing with optimization algorithms is determined using NIST model for convenient and accessing various computing resources, such as services applications, networks, servers, and storage [9,10,11,12]. The data placement algorithms are used to improve the quality of various factors, which affect the workflows of the cloud computing environment [13]. The optimization algorithms are used in engineering research and industrial application to improve the performance of the system [14, 15].

VM migration is utilized in cloud data centres to save energy [16]. VM not only provides secure and efficient computing resources, and migration is also performed from the Physical Machine (PM) [16]. VM migration moves from one PM to others. This migration should be visible to the Operating System (OS) of guest, remote clients of VM, and the applications running on OS [17]. VM monitors, such as Xen, provide a mechanism to map VM into physical resources [18]. Developing hardware is usually mapped with VM that is system independent. Virtualization managers, such as VM manager, and VM monitor are used to communicate with lower-level devices, and allocating and coordinating VMs [19]. The majority of the cloud operations are supported using VM migration and optimization algorithms [20], like zero-downtime hardware maintenance [21], traffic management [22,23,24], server consolidation [25], and energy management. The VM migration pattern is utilized for migrating VM from the source server to the target server. The migration patterns are classified into non-live migration and live VM migration. The live migration does not quit the service during the migration process; meanwhile, non-live pattern follows the pause, resume, and copy approaches for migrating the VM [26].

Live migration is defined by transforming VMs without distracting the services of end-users, which causes limited-service downtime as transferring the whole VM to destination host [27]. Live migration in VM reduces the malicious attacks, component as well as the infrastructural faults. Live migration involves the dynamic transfer of the VM from one PM to the other, which is apparent to guest OS, and remote users of VM [28], while the VM migrations are essential for resource management in the cloud [29]. Several algorithms are utilized for deciding which VMs need to be migrated from the source server to support decision making, including VM resource usage and resource requirements; QoS; usage of server resource; such as bandwidth or CPU that improves the tasks completion time, workload burst, and the prediction of VM resource [27, 30].

The primary intention of this research is to develop an approach for VM migration in the cloud computing platform by proposing an optimization algorithm. At first, the cloud system is designed, and the migration agent monitors the resource utilization and memory in the cloud repeatedly, and the loads are balanced by migrating the VMs to handle the tasks. Here, a VM migration strategy is established using the proposed ChicWhale. Then, the other parameters, such as resource availability, energy, migration cost, are computed. Here, the movement of VM from PM to another PM is an optimization issue, and it is performed through the developed ChicWhale, which is the combination of the Chicken Swarm Optimization (CSO) and Whale Optimization Algorithm (WOA).

The main contributions of the research paper towards VM migration in the cloud computing environment are illustrated below.

  • Designing the multi-objective model for VM migration using the load factor, and the resource availability, for choosing the appropriate VM for the migration in the cloud.

  • Proposing the ChicWhale Optimization algorithm by integrating CSO in WOA for selecting the optimal VM to handle the tasks effectively in the cloud.

The paper is structured in the following manner: Sect. 2 discusses existing methods of VM migration with challenges of the methods that remain the motivation for the research. The proposed method of ChicWhale is demonstrated in Sect. 3, and Sect. 4 provides the results of the developed methods. At last, Sect. 5 **concludes the research work.

2 Motivation

This section presents the literature survey of several methods utilized for VM migration, and the challenges of the existing works are discussed.

2.1 Literature survey

Several methods related to VM migration are described and analyzed as follows: Li et al. [31] presented the dynamic energy-efficient VM migration and consolidation approach using the energy-efficient model. In this framework, the double threshold with the multi-resource utilization was designed for VM migration. Then, the modified version of Particle Swarm Optimization (PSO) was established to resolve the issue in the traditional heuristic approaches. Here, the energy-efficient was found better, but required high service downtime. Satpathy et al. [32] developed a queueing structure for managing and scheduling a large set of VMs. After that, the Crow Search-based VM Placement (CSAVMP) approach was introduced for mitigating the power consumption, and resource wastage at data centers. The method failed to compute the migration of live VM placement for parallel, enhanced serial strategies, and serial. Rodrigues et al. [33] modeled an approach to reduce the service delay with the two cloudlet servers. This framework has a dual focus on controlling processing Delay, and communication elements through VM migration to improve the transmission delay. The method did not examine multiple cloudlets and Dynamicity issues of Edge Cloud Computing (ECC). Karthikeyan et al. [34] employed Naive Baye’s classifier with hybrid Artificial Bee Colony–Bat Algorithm (ABC–BA) for reducing the energy consumption in VM placement. Innovative classifiers and other optimization algorithms with various performance measures were not considered for the migration of VM.

Paulraj et al. [35] developed resource-aware VM migration in the Internet of Service (IoT) cloud. In this framework, any sudden modify happened in sensing is observed by the clustering. Then, the best target server was chosen based on job arrival rate, and resource utilization. The major drawback of this method is, the VM was not optimally placed on the destination server. He et al. [36] developed Software-Defined Networking (SDN)-based cloud data centers for live VM migration. Here, the downtime, response time, and the evacuation time of various migrations are reduced, but the optimal downtime adjustment for various live migration tasks was not analyzed. Kansal et al. [37] presented an energy-aware VM migration for cloud computing using Firefly algorithm. This framework was utilized for maximally migrating loaded VM to the less loaded active node to maintain the energy efficiency of data centers. The method does not analyze the performance of the public, private or hybrid cloud. Jargalsaikhan Narantuya et al. [38] developed a service-aware approach for Cloud-to-cloud (C2C) migration of various VMs based on network traffic intensity for determining the dependent VMs of migration sequence for reducing the service downtime. The method failed to discuss the position of VMs in the destination before the migration of the source cloud. Patel [39] developed a multi-objective Dolphin Echolocation technique, which minimizes the power consumption, and resource wastage, but the cost of migration was high. Simarro et al. [40] developed a scheduling model for optimizing VM placements, which addresses the dynamic deployment cost of the virtual resources, but the required energy was high. Xu et al. [41] developed an improved multi-objective particle swarm optimization (IMOPSO) to improve resource usage, and reduce turnaround times of VMs. It obtained a Pareto optimal solution set, which had a better convergence and distribution. Anyhow, it did not focus on the dynamic environment. Yermolovich et al. [42] developed an optimizing trace-based virtual machine, which was used to store the execution path of the VM and also find the VM byte codes in the environment. It improves the overall performance, but the processing time was quite high when compared to other methods. Gao et al. [43] developed a multi-objective ant colony system algorithm for the VM placement problem, which obtains a set of non-dominated solutions that simultaneously minimizes total power consumption, and resource wastage. It was not scalable for the larger dataset (Table 1).

Table 1 Review on VM migration techniques

2.2 Challenges

This section deals with the challenges faced by the existing techniques of VM migration in the cloud platform.

  • Due to the size of the image, it is not possible to Translocate the live VM across low bandwidth high latency WAN [44].

  • In the post copy, at the destination while the VM tries for fetching the pages that are not changed yet, it redirects toward the source host, and therefore produces the network issues as VM at the source host is suspended [44].

  • If the VM migration needs to carry on for running from suspends point after the migration, all the running states have to be transferred to the target site [22].

  • After the migration of new location, few steps are necessary for making reachable to their users. For the live migration, the open connections must be kept alive during the migration [22].

  • VM migration approaches aim to the total number of objectives, which includes mitigating the service downtime, optimizing the duration of migration, reducing the duration of QoS degradation, and the best bandwidth resource utilization during VM migration process [32].

  • In [35], a Resource-aware approach was developed for VM migration in the cloud computing environment. Here, the total amount of migrations, energy utilization and migration time was found better but failed to apply another optimization algorithm to place the VM in the destination server.

3 Cloud setup

This section depicts the VM migration scheme using the ChicWhale optimization algorithm in the cloud computing environment. The block diagram of the VM migration model in the cloud is depicted in Fig. 1. In the last few years, cloud computing plays a vital role in computer science. Cloud computing provides a flexible, and simple way of maintaining and retrieving data and files. The cloud model consists of several PMs to solve the requests from the users, and PM has to collect the VMs for dynamically processing the tasks. The VM available in the cloud is produced dynamically for mitigating the bottleneck issues present in cloud computing and also virtualization problem enhances the speed. The services required by the users arrive in the cloud as a task, and each task is given to the VM based on the round-robin manner. Here, the set of VMs is controlled by PM; the cloud has the load balancer, which checks the load of PM. When the load value of PM is greater than the threshold value, the VM migration is performed.

Fig. 1
figure 1

VM migration model in the Cloud computing environment

3.1 Proposed VM migration algorithm

The algorithmic steps involved of the developed VM migration model are illustrated below,

  1. 1.

    In the first step, the cloud with \(M\) number of VMs and \(N\) number of PMs are initialized.

  2. 2.

    In this step, the migration cost of PM is initially fixed to the high value and hence, the migration cost is equal to 1.

  3. 3.

    After that, the incoming tasks of VM are assigned using round-robin fashion at the time duration.

  4. 4.

    Subsequently, compute the load value of the VM based on Eq. (2), and if the load value exceeds the value of the threshold, migrate the VM optimally using the proposed ChicWhale.

  5. 5.

    Find the other parameters, like resource availability, energy, and migration cost for the system.

  6. 6.

    Finally, the steps from (3) to (5) are repeated for every iteration, and the algorithm is terminated at the end of the iteration.

3.2 Virtual machine migration using chicken whale optimization algorithm

This section presents the developed VM migration model with the proposed ChicWhale optimization algorithm in the cloud computing environment, and the block diagram is shown in Fig. 2. The proposed ChicWhale optimization algorithm is designed by combining the CSO and WOA to select the optimal VM. The proposed ChicWhale optimization algorithm validates the load status based on each VM contained in the cloud and reallocated the task to another VM if the load of VM exceeds a specific threshold. Then, the proposed method defines the new fitness function based on various parameters like migration cost, load, resource availability, and energy. The proposed model assigns the appropriate tasks to VM in terms of fitness measure.

Fig. 2
figure 2

Block diagram of the proposed ChicWhale-based VM migration scheme in the cloud computing platform

3.2.1 Initialization

Assume the cloud model consists of several numbers of PMs, and VMs. The cloud model contains \(P\) number of PMs, which are denoted as, \(P = \{ P_{1} ,P_{2} , \ldots ,P_{n} , \ldots P_{N} \} ;\;1 \le n \le N\), and under every PM, several VMs are present. Let us consider the VM available in \(n^{th}\) PM are represented as, \(V = \{ V_{1}^{n} ,V_{2}^{n} , \ldots ,V_{m}^{n} , \ldots V_{M}^{n} \} ;\;1 \le m \le M\), where, the symbol \(V_{m}^{n}\) denotes the \(m^{th}\) VM in \(n^{th}\) PM. In addition, the task requested from the individual user is assigned to each VM in a round-robin manner and is expressed as,\(R = \left\{ {R_{1} ,R_{2} , \ldots ,R_{u} , \ldots ,R_{v} } \right\}\), where \(v\) specifies the total number of tasks assigned to each VM. The VM in the cloud model poses various parameters, which include the number of processing entities, CPU, bandwidth, memory, and Million Instructions per Second (MIPS). The \(m{\text{th}}\) VM present in \(n{\text{th}}\) PM in a cloud computing environment poses the following aspects which are expressed by

$$V_{m}^{n} = \left\{ {J_{m}^{n} ,C_{m}^{n} ,B_{m}^{n} ,D_{n}^{m} ,I_{n}^{m} } \right\}$$
(1)

where \(J_{m}^{n}\) signifies the total number of processing entities of \(m{\text{th}}\) VM in \(n{\text{th}}\) PM, and the term \(C_{m}^{n}\) represents the number of CPUs used by \(m{\text{th}}\) VM in \(n{\text{th}}\) PM. The symbols \(B_{m}^{n}\) refer to the bandwidth and \(D_{n}^{m}\) signify the memory of \(m{\text{th}}\) VM in \(n{\text{th}}\) PM. The total number of MIPS utilized by \(m{\text{th}}\) VM in \(n{\text{th}}\) PM is denoted as \(I_{n}^{m}\). All the above mentioned parameters are acquired, the value ranges from \(1\,to\,10\).

3.2.2 Load computation

The load is computed using the resources employed by the VM for processing tasks obtained from the user. Network bandwidth, MIPS, memory, CPU, and the total number of processing entities are utilized for evaluating the load in the cloud. The load is computed with memory, CPU utilization, bandwidth, frequency, and MIPS, as expressed below,

$$Load\,(L) = \frac{{R_{U} }}{t}$$
(2)

where the resource utilization is denoted as \(R_{U}\), and the term \(t\) refers to the time. The expression for resource utilized by \(m{\text{th}}\) VM present is given by,

$$R_{U} = \frac{1}{F}\sum\limits_{i - 1}^{M} {\left( {\frac{{J^{F} }}{{\max \left( {J^{F} } \right)}} + \frac{{C^{F} }}{{\max \left( {C^{F} } \right)}} + \frac{{B^{F} }}{{\max \left( {B^{F} } \right)}} + \frac{{D^{F} }}{{\max \left( {D^{F} } \right)}} + \frac{{I^{F} }}{{\max \left( {I^{F} } \right)}}} \right)}$$
(3)

where the total number of VMs in each PM is denoted as \(m\), and the term \(J^{F}\) refers to the total amount of processing entities. The total amount of CPUs utilized in PM is represented as \(C^{F}\), and the bandwidth employed in PM is represented as \(B^{F}\). The terms \(D^{F}\), and \(I^{F}\) signifies the memory and MIPS in PM. The normalizing factor is given as \(F\).

3.2.3 Resource availability

It is employed to make sure the resource utilization. It must be optimized for well-organized load balancing. The resource availability is expressed as,

$$R_{A} = 1 - R_{U}$$
(4)

3.2.4 Migration cost

The migration cost of VM is based on the number of movements attained to the total movements performed in the cloud. The formula for migration cost in the whole cloud environment is given by,

$${\rm M}_{c} = \frac{1}{N}\sum\limits_{j = 1}^{n} {\left( {\frac{G}{c * M}} \right)}$$
(5)

where, the total number of PMs, and the term \(G\) indicates the number of migration of VMs. The total number of VMs is denoted as \(M\), and \(c\) indicates the constant.

3.2.5 Energy model

The energy is mainly based on power utilized for migration and data processing by each VM. Therefore, the energy of the cloud setup is directly based on the consumed power from various resources present in VM. The energy model of VM is given below,

$$E^{{}} = \frac{1}{T}\sum\limits_{t = 1}^{T} {K^{{}} }$$
(6)

where \(T\) signifies the total time period, and the power consumed in the VM of the cloud is denoted as \(K\). The power consumption is expressed by,

$$K = p*K_{\max } + (1 - p)*K_{\max } *R_{U}^{cloud} ;\quad 1 < p < t < T$$
(7)

where, the term \(K_{\max }\) denotes the maximum power consumed, and \(R_{U}^{cloud}\) represents the resource utilization in the cloud, and is expressed by,

$$R_{U}^{cloud} = \frac{1}{N}\sum\limits_{r = 1}^{N} {R_{U} }$$
(8)

where, the total number of PMs is denoted as \(N\).

3.3 Proposed ChicWhale optimization for the migration of VM

In this section, the VM migration approach is elaborated using the proposed ChicWhale optimization approach to migrate the VM in the cloud computing platform. The proposed ChicWhale is designed by combining WOA in CSO. Thus, the integration of WOA in CSO tunes the associated parameters for improving the algorithmic performance to obtain a globally optimum solution. WOA [45] is duly based on the hunting mechanism of humpback whales that searches for their prey based on the bubble-net attacking mechanism. It is worth noting that the search for the prey is both associated within or outer the search spaces through a series of steps, like encircling, exploitation, and exploration. The CSO [46] algorithm is inspired by the behaviour of chicken swarms. The chicken swarms can easily extract swarm intelligence for solving the optimization issues and can attain improved optimization accuracy and robustness. Moreover, the CSO algorithm provides an effective trade-off between the determinacy and randomness to find the optima. Thus, the CSO acts intelligently for optimizing the issues and poses the self-adaptive ability to address the optimization issues. The solution encoding, fitness function, and the algorithm of the proposed ChicWhale optimization approach are explained below.

  1. 1.

    Solution encoding

The proposed ChicWhale optimization approach selects a suitable VM for migration. Let us assume that the PM 1 consists of 3 VMs and PM 2 having 2 VMs. The incoming tasks assigned to each VM using round-robin fashion. In this method, time slices are assigned to every process, and the process has to be carried out in a circular order, also all the processes are handled without priority. If the VM exceeds the threshold value, then the VM is migrated to the underloaded PMs, and the optimal VM for the migration is assigned using the optimization algorithm. Figure 3 depicts the solution encoding of the developed method to identify the optimal VM for migration. The first task in VM 1 is completed within the threshold value, the second and third tasks are not completed within the threshold value. Hence, the execution of tasks two and three has been postponded and the tasks four and five have been executed. The execution of tasks four and five are completed within the threshold value. Afterthat, the execution of tasks two and three has been resumed. Here, the solution represents the VM, denoted as \(S = \left\{ {S_{1} ,S_{2} , \ldots ,S_{K} } \right\}\), where \(K\) denotes the total number of underloaded VMs.

  1. 2.

    Fitness evaluation

Fig. 3
figure 3

Solution encoding

The fitness function is computed for determining the best solution from the solution set. The fitness function of the ChicWhale optimization approach is formulated in terms of four parameters, like load, energy, and so on. The fitness is a maximization function, and thus the optimal VM is chosen for execution. The fitness function of the proposed ChicWhale optimization approach is expressed by,

$$Fitness\left( f \right) = \alpha R_{A} + \beta \left( {1 - L} \right) + \gamma \left( {1 - {\rm M}_{c} } \right) + \delta \left( {1 - E} \right)$$
(9)

where, the terms \(\alpha\),\(\beta\),\(\gamma\), and \(\delta\) are the weights ranging from \(0\,to\,\,1\). The resource utilization is denoted as \(R_{A}\), and the load is represented as \(L\). The symbol \({\rm M}_{C}\) signifies the migration cost, and \(E\) refers to the energy.

  1. 3.

    Algorithmic procedure of the proposed ChicWhale optimization approach

The algorithmic steps of the proposed model to select the best VM for migration is illustrated below,

  1. (a)

    Initialization In the initial step, the parameters of the optimization including the population are initialized, which includes:\(\left\{ {{\rm X}_{gh} ,\,1 \le g \le a;\;1 \le h \le k} \right\}\), where, \(a\) refer to the population size, and the dimension is indicated as \(k\). \({\rm X} \in \left\{ { \, \alpha {,}\beta {,}\gamma {,}\delta \, } \right\}\).

  2. (b)

    Evaluation of fitness function The fitness is computed for each solution on the basis of the fitness function depicted in Eq. (9). The fitness function is taken as the maximization function, and a solution producing the maximum fitness is considered as the best solution.

  3. (c)

    Movement of rooster Rooster with the best fitness value may search their food in a wider range than that of worst fitness values. Hence, the behavior of the rooster movement is expressed as,

    $${\rm X}_{gh} \left( {\tau + 1} \right) = {\rm X}_{gh} \left( \tau \right) * \left( {1 + rand(0,\sigma^{2} )} \right)$$
    (10)
    $$\sigma^{2} = \left\{ {\begin{array}{*{20}l} {1;} \hfill & {if\;q_{g} \le q_{s} } \hfill \\ {\exp \left( {\frac{{q_{s} - q_{g} }}{{\left| {q_{g} } \right| + \in }}} \right);} \hfill & {otherwise,} \hfill \\ \end{array} s \in \left[ {1,a} \right],\;s \ne g} \right.$$
    (11)

    where \({\rm X}_{gh} \left( {\tau + 1} \right)\) be the new location of the rooster \({\rm X}\left( \tau \right)\) at iteration \(\tau + 1\), and \({\rm X}_{gh} \left( \tau \right)\) represents the current location of the rooster at iteration \(\tau\). The term \(rand(0,\sigma^{2} )\) represents the random distribution with standard deviation \(\sigma^{2}\), and mean \(0\). The randomly selected rooster is denoted as \(s\), and \(q_{g}\) be the fitness value of related rooster \({\rm X}_{g}.\)

  4. (d)

    Movement of hen Hens followed their group-mate for foraging. Additionally, they steal their food in a random manner, which is found by other chicken, though they are repressed by another chicken. The other leading hens may have benefit in competing for the food than more submissive ones. The standard equation of the foraging behavior of hens is given by,

    $${\rm X}_{gh} \left( {\tau + 1} \right) = {\rm X}_{gh} \left( \tau \right) + W_{1} * rand\left( {{\rm X}_{b1,h} \left( \tau \right) - {\rm X}_{gh} \left( \tau \right) + W_{2} * rand({\rm X}_{b2,h} \left( \tau \right) - {\rm X}_{gh} \left( \tau \right)} \right)$$
    (12)

    where,

    $$\begin{aligned} & W_{1} = \frac{{\exp \left( {q_{g} - q_{b1} } \right)}}{{abs\left( {q_{g} } \right) + \in }} \\ & U_{2} = \exp (q_{b2} - q_{g} ) \\ \end{aligned}$$

    where \(rand\) denotes the random number ranges from \(0\,and\,1\). \(b1\) be the index of the rooster, and \(b2\) denotes the index of chicken (hen or rooster) that are randomly selected from the swarm. Here, \(b1 \ne b2\). \(j\) be the fibers.

The update equation of bypass WOA is expressed as,

$${\rm X}_{gh} \left( {\tau + 1} \right) = {\rm X}^{*} \left( \tau \right) - H.S$$
(13)

Assuming \(\left( {{\rm X}^{*} \left( \tau \right) > {\rm X}\left( \tau \right)} \right)\),

$${\rm X}_{gh} \left( {\tau + 1} \right) = {\rm X}^{ * } \left( \tau \right) - H\left( {Y{\rm X}^{ * } \left( \tau \right) - {\rm X}_{gh} \left( \tau \right)} \right)$$
(14)
$${\rm X}_{gh} \left( {\tau + 1} \right) = {\rm X}^{ * } \left( \tau \right) - HY{\rm X}^{ * } \left( \tau \right) + H{\rm X}_{gh} \left( \tau \right)$$
(15)
$${\rm X}_{gh} \left( \tau \right) = \frac{{{\rm X}_{gh} \left( {\tau + 1} \right) - {\rm X}^{ * } \left( \tau \right) + HY{\rm X}^{ * } \left( \tau \right)}}{H}$$
(16)

where, the coefficient vectors are denoted as \(H\) and \(S\), \({\rm X}\left( \tau \right)\) refer to the location vector, \({\rm X}^{*} \left( \tau \right)\) is the current better position, The coefficient vectors are expressed as,

$$H = 2d\,.\,b - d$$
(17)
$$S = 2\,.\,b$$
(18)

where \(d\) value decreased linearly between \(2\,to\,0\), and the \(b\) is the random vector value ranges from \(0\,and\,1\).

Rearranging Eq. (12),

$${\rm X}_{gh} \left( {\tau + 1} \right) = {\rm X}_{gh} \left( \tau \right) + W_{1} * rand{\rm X}_{b1,h} \left( \tau \right) - W_{1} * rand{\rm X}_{gh} \left( \tau \right) + W_{2} * rand{\rm X}_{b2,h} \left( \tau \right) - W_{2} * rand\,{\rm X}_{gh} \left( \tau \right)$$
(19)
$${\rm X}_{gh} \left( {\tau + 1} \right) = {\rm X}_{gh} \left( \tau \right)\left( {1 - W_{1} * rand - W_{2} * rand} \right) + W_{1} * rand{\rm X}_{b1,h} \left( \tau \right) + W_{2} * rand\,{\rm X}_{b2,h} \left( \tau \right)$$
(20)

Substituting Eq. (16) in Eq. (20),

$${\rm X}_{gh} \left( {\tau + 1} \right) = \left[ {\frac{{{\rm X}_{gh} \left( {\tau + 1} \right)}}{H} - \frac{{ - {\rm X}^{ * } \left( \tau \right) - HY{\rm X}^{ * } \left( \tau \right)}}{H}} \right]\left( {1 - W_{1} * rand - W_{2} * rand} \right) + W_{1} * rand{\rm X}_{b1,h} \left( \tau \right) + W_{2} * rand\,{\rm X}_{b2,h} \left( \tau \right)$$
(21)
$$\begin{gathered} {\rm X}_{gh} \left( {\tau + 1} \right) = \frac{{{\rm X}_{gh} \left( {\tau + 1} \right)}}{H}\left( {1 - W_{1} * rand - W_{2} * rand} \right) - \frac{{{\rm X}^{ * } \left( \tau \right) - HY{\rm X}^{ * } \left( \tau \right)}}{H} \hfill \\ \left( {1 - W_{1} * rand - W_{2} * rand} \right) + W_{1} * rand{\rm X}_{b1,h} \left( \tau \right) + W_{2} * rand\,{\rm X}_{b2,h} \left( \tau \right) \hfill \\ \end{gathered}$$
(22)
$$\begin{gathered} {\rm X}_{gh} \left( {\tau + 1} \right) - \frac{{{\rm X}_{gh} \left( {\tau + 1} \right)}}{H}\left( {1 - W_{1} * rand - W_{2} * rand} \right) = W_{1} * rand{\rm X}_{b1,h} \left( \tau \right) \hfill \\ + W_{2} * rand\,{\rm X}_{b2,h} \left( \tau \right) - \frac{{{\rm X}^{ * } \left( \tau \right) - HY{\rm X}^{ * } \left( \tau \right)}}{H}\left( {1 - W_{1} * rand - W_{2} * rand} \right) \hfill \\ \end{gathered}$$
(23)
$$\begin{gathered} {\rm X}_{gh} \left( {\tau + 1} \right)\left( {\frac{{H - 1 + W_{1} * rand + W_{2} * rand}}{H}} \right) = W_{1} * rand{\rm X}_{b1,h} \left( \tau \right) \hfill \\ + W_{2} * rand\,{\rm X}_{b2,h} \left( \tau \right) - \frac{{{\rm X}^{ * } \left( \tau \right) - HY{\rm X}^{ * } \left( \tau \right)}}{H}\left( {1 - W_{1} * rand - W_{2} * rand} \right) \hfill \\ \end{gathered}$$
(24)
$${\rm X}_{gh} \left( {\tau + 1} \right) = \frac{H}{{H - 1 + W_{1} * rand + W_{2} * rand}}\left[ \begin{gathered} W_{1} * rand{\rm X}_{b1,h} \left( \tau \right) + W_{2} * rand\,{\rm X}_{b2,h} \left( \tau \right) \hfill \\ - \frac{{{\rm X}^{ * } \left( \tau \right)\left( {1 - HY} \right)}}{H}\left( {1 - W_{1} * rand - W_{2} * rand} \right) \hfill \\ \end{gathered} \right]$$
(25)
  1. (e)

    Movement of chick The chicks move around their mother for searching the food, and is expressed by,

    $${\rm X}_{gh} \left( {\tau + 1} \right) = {\rm X}_{gh} \left( \tau \right) + OZ * \left( {{\rm X}_{eh} \left( \tau \right) - {\rm X}_{gh} \left( \tau \right)} \right)$$
    (26)

    where \({\rm X}_{eh} \left( \tau \right)\) denotes the location of \(h^{th}\) chick's mother. \(OZ\) represents the speed of the chick that follows the mother, and is selected randomly in range \(\left[ {0,2} \right].\)

  2. (f)

    Checking the feasibility of solution The feasibility of the solution is computed based on the fitness function. If the newly generated solution is best than the previous one, then it is changed by the new solution.

  3. (g)

    Termination Repeat the steps for the maximal iterations until the global optimal best solutions are determined. Thus, the optimization algorithm discussed in this section aims at determining the optimal weights for VM migration.

The pseudo-code of the developed ChicWhale optimization is depicted in Algorithm 1, which demonstrates the step-wise description of the algorithm.

figure a

The flowchart for the proposed ChicWhale Optimization algorithm is given Fig. 4.

Fig. 4
figure 4

Flowchart of the proposed ChicWhale optimization algorithm

4 Results and discussion

The section demonstrates the results achieved by the developed ChicWhale model, and the performance is evaluated with respect to the previous methods based on varying the number of iteration.

4.1 Experimental arrangement

The experimentation of the developed model is done in JAVA, operating in the PC with Windows 10 OS and 2 GB RAM.

4.2 Simulation setup

The cloud environment employed for simulation contains 10 PMs and 50VMs, and the total incoming tasks vary as 25, and 75. Table 2 depicts the simulation setup of the proposed system.

Table 2 Simulation setup

4.3 Performance metrics

The metrics utilized for the analysis include load, migration cost, energy consumption, and resource availability. These are the commonly used performance metrics in the existing VM migration methods in cloud computing platform. The derivation of the energy consumption, migration cost, resource availability, and the load is defined in Eqs. (6), (5), (4), and (2). Table 3 shows the definition of the performance metrics used in this paper.

Table 3 Performance metrics and definition

4.4 Comparative techniques

The methods, such as Artificial Bee Colony-Bat Algorithm (ABC-BA) [34], Firefly [37], WOA [45] are used for the comparison with the proposed ChicWhale for the analysis.

4.4.1 Comparative analysis with incoming task = 25

The comparative analysis of the developed method is analyzed based on load, migration cost, energy consumption, and resource availability with incoming task = 25 are depicted in tables. Table 4 illustrates the analysis based on load by varying the number of iterations. When the number of iteration is 50, then the corresponding load values computed by existing ABC-BA, Firefly, WOA, and proposed ChicWhale are 0.0098, 0.0038, 0.0029, and 0.0019, respectively. For 80th iteration, the existing techniques, like ABC-BA, Firefly, and WOA, possess the load of 0.0046, 0.0019 and 0.0016, respectively, which is comparatively higher than the ChicWhale. For the same iteration, the developed ChicWhale acquired the load value of 0.0015. Similarly, when the number of iteration increased to 90, the methods, ABC-BA, Firefly, and WOA, attained the load of 0.0016, 0.0010, and 0.0003, whereas the load of the developed method is 0.0002.

Table 4 Comparative analysis of Load when task = 25

The comparative analysis based on migration cost is shown in Table 5. When the number of iteration is 60, the migration cost values achieved by ABC-BA, Firefly, WOA, and proposed model are 0.195, 0.132, 0.0605, and 0.059, respectively. For 70th iteration, the existing techniques, like ABC-BA, Firefly, and WOA, possesses the migration cost of 0.130, 0.117, and 0.103, respectively, which is comparatively higher than the proposed ChicWhale. For the same number of iteration, the developed ChicWhale acquired the migration cost of 0.085. Similarly, when the number of iteration increased to 80, the methods, ABC-BA, Firefly, and WOA, attained the migration cost of 0.159, 0.127, and 0.108, whereas the migration cost of the developed method is 0.091. Similarly, for 90th iteration, the migration cost values measured by ABC-BA, Firefly, and WOA, and proposed model are 0.077, 0.0693, 0.068, and 0.059.

Table 5 Comparative analysis of Migration cost when task = 25

The analysis in terms of energy cost is depicted in Table 6. For 60th iteration, the existing techniques, like ABC-BA, Firefly, and WOA, possesses the energy cost of 0.498, 0.494, and 0.494, respectively, which is comparatively higher than the ChicWhale. For the same iteration, the developed ChicWhale acquired the energy cost of 0.487. Similarly, when the number of iteration increased to 70, the methods, ABC-BA, Firefly, and WOA, attained the energy cost of 0.498, 0.495, and 0.494, whereas the energy cost of the developed method is 0.494. When the number of iteration is 80, the energy cost values measured by ABC-BA, Firefly, WOA, and proposed model are 0.497, 0.496, 0.496, and 0.493, respectively. When the number of iteration is kept to 90, the energy cost values measured by ABC-BA, Firefly, and WOA, and proposed model are 0.498, 0.498, 0.497, and 0.496, respectively.

Table 6 Comparative analysis of Energy consumption when task = 25

Table 7 depicts the analysis in terms of resource availability by varying the number of iterations. For 50th iteration, the existing techniques, like ABC-BA, Firefly, and WOA, possesses the resource availability of 0.937, 0.951, and 0.959, respectively, which is comparatively lower than the ChicWhale. For the same iteration, the developed ChicWhale acquired the resource availability of 0.973. Similarly, when the number of iteration increased to 70, the methods, ABC-BA, Firefly, and WOA, attained the resource availability of 0.953, 0.958, and 0.971, whereas the resource availability of the developed method is 0.981. When 80th iteration is considered, the methods, like ABC-BA, Firefly, and WOA acquire the resource availability value of 0.961, 0.967, and 0.971. Meanwhile, the developed ChicWhale obtained the resource availability value of 0.981. For 90th iteration, the resource availability values measured by ABC-BA, Firefly, and WOA are 0.942, 0.965, and 0.972, whereas the proposed ChicWhale achieved the resource availability of 0.981.

Table 7 Comparative analysis of Resource availability when task = 25

4.4.2 Comparative analysis with incoming task = 75

The comparative analysis of the developed method is analyzed in terms of load, migration cost, energy consumption, and resource availability with incoming task = 75 are depicted in tables. Table 8 illustrates the analysis based on load by varying the number of iterations. When the number of iteration is 50, then the corresponding load values computed by existing ABC-BA, Firefly, WOA, and proposed ChicWhale are 0.022, 0.019, 0.013, and 0.009, respectively. For 80th iteration, the existing techniques, like ABC-BA, Firefly, and WOA, possess the load of 0.010, 0.008, and 0.006, respectively, which is comparatively higher than the ChicWhale. For the same iteration, the developed ChicWhale acquired the load value of 0.004. Similarly, when the number of iteration increased to 90, the methods, ABC-BA, Firefly, and WOA, attained the load of 0.012, 0.008, and 0.006, whereas the load of the developed method is 0.005.

Table 8 Comparative analysis of Load when task = 75

The comparative analysis based on migration cost is shown in Table 9. When the number of iteration is 60, the migration cost values achieved by ABC-BA, Firefly, WOA, and proposed model are 0.155, 0.143, 0.106, and 0.084, respectively. For 70th iteration, the existing techniques, like ABC-BA, Firefly, and WOA, possesses the migration cost of 0.101, 0.072, and 0.065, which is comparatively higher than the proposed ChicWhale. For the same number of iteration, the developed ChicWhale acquired the migration cost of 0.056. Similarly, when the number of iteration increased to 80, the methods, ABC-BA, Firefly, and WOA, attained the migration cost of 0.112, 0.110, and 0.105, whereas the migration cost of the developed method is 0.073. Similarly, for 90th iteration, the migration cost values measured by ABC-BA, Firefly, and WOA, and proposed model are 0.099, 0.081, 0.067, and 0.059.

Table 9 Comparative analysis of Migration cost when task = 75

The analysis in terms of energy cost is depicted in Table 10. For 60th iteration, the existing techniques, like ABC-BA, Firefly, and WOA, possesses the energy cost of 0.490, 0.486, and 0.486, respectively, which is comparatively higher than the ChicWhale. For the same iteration, the developed ChicWhale acquired the energy cost of 0.482. Similarly, when the number of iteration increased to 70, the methods, ABC-BA, Firefly, and WOA, attained the energy cost of 0.491, 0.490, and 0.487, whereas the energy cost of the developed method is 0.484. When the number of iteration is 80, the energy cost values measured by ABC-BA, Firefly, WOA, and proposed model are 0.493, 0.492, 0.491, and 0.486, respectively. When the number of iteration is kept to 90, the energy cost values measured by ABC-BA, Firefly, and WOA, and proposed model are 0.493, 0.492, 0.490, and 0.483, respectively.

Table 10 Comparative analysis of Energy consumption when task = 75

Table 11 depicts the analysis in terms of resource availability by varying the number of iterations. For 50th iteration, the existing techniques, like ABC-BA, Firefly, and WOA, possesses the resource availability of 0.758, 0.760, and 0.777, respectively, which is comparatively lower than the ChicWhale. For the same iteration, the developed ChicWhale acquired the resource availability of 0.792. Similarly, when the number of iteration increased to 70, the methods, ABC-BA, Firefly, and WOA, attained the resource availability of 0.796, 0.852, and 0.855, whereas the resource availability of the developed method is 0.882. When 80th iteration is considered, the methods, like ABC-BA, Firefly, and WOA acquire the resource availability value of 0.841, 0.843, and 0.866. Meanwhile, the proposed ChicWhale obtained the resource availability value of 0.893. For 90th iteration, the resource availability values measured by ABC-BA, Firefly, and WOA are 0.789, 0.856, and 0.872, whereas the proposed ChicWhale achieved the resource availability of 0.892.

Table 11 Comparative analysis of Resource availability when task = 75

4.5 Comparative discussion

Table 12 depicts the comparative discussion of previous ABC-BA, Firefly, and WOA and the developed ChicWhale in terms of load, energy consumption, migration cost, and resource availability parameters with incoming tasks 25, and 75 by altering the number of iterations The minimum performance measured by proposed ChicWhale in terms of load parameter is 0.0001, whereas the load values of existing ABC-BA, Firefly, and WOA are 0.0016, 0.0010, and 0.0003, respectively. The minimal migration cost achieved by the proposed ChicWhale with a value of 0.0564, whereas the existing ABC-BA, Firefly, and WOA acquired the migration cost of 0.0777, 0.069, and 0.0605. The minimal energy consumption value computed by the proposed ChicWhale is 0.481, whereas the existing ABC-BA, Firefly, and WOA methods acquired the energy consumption of 0.487, 0.486, and 0.484. Meanwhile, the proposed ChicWhale has achieved the maximal resource availability of 0.989, whereas the existing ABC-BA, Firefly, and WOA have attained the resource availability of 0.961, 0.967, and 0.972. Among the existing methods, the WOA gives better performance results for the metrics, such as load, migration cost, energy consumption, and resource availability. The performance of the proposed ChicWhale algorithm is 66.66%, 6.77%, 0.62%, and 1.72% better than the performance of the existing WOA algorithm in terms of metrics, such as load, migration cost, energy consumption, and resource availability.

Table 12 Comparative analysis

5 Conclusion

This research paper presents the VM migration strategy using the novel optimization algorithm in the cloud computing model. The developed model employs the multi-objective framework designed from various factors, like load, resource availability, energy consumed, migration cost, and power consumption. Accordingly, the searching criteria are computed to identify the best service based on constraints. The VM migration model employs the developed ChicWhale optimization approach to assign VM. The developed ChicWhale optimization is the nature-inspired algorithm that depends on both the properties of CSO and WOA. The simulation of developed VM migration strategy with ChicWhale optimization algorithm utilized the cloud model with 10 PM as well as 50 VM. The performance of the ChicWhale is measured in terms of load, migration cost, energy consumption, and resource availability. The developed ChicWhale produces the minimal load of 0.0001, minimal migration cost of 0.0564, the minimal energy consumption of 0.481, and the maximal resource availability of 0.989, which indicates the superiority of the proposed method. The proposed algorithm can be used in Medical Image Quality Enhancement System, Optimal Allocation of Water Resources, and Mechanical and Production Engineering fields. In the future, we will integrate the technology like redundancy elimination to reduce the overhead.