Skip to main content
Log in

A dynamic task scheduling framework based on chicken swarm and improved raven roosting optimization methods in cloud computing

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Scheduling means devoting tasks among computational resources, considering specific goals. Cloud computing is facing a dynamic and rapidly evolving situation. Devoting tasks to the computational resources could be done in numerous different ways. As a consequence, scheduling of tasks in cloud computing is considered as a NP-hard problem. Meta-heuristic algorithms are a proper choice for improving scheduling in cloud computing, but they should, of course, be consistent with the dynamic situation in the field of cloud computing. One of the newest bio-inspired meta-heuristic algorithms is the chicken swarm optimization (CSO) algorithm. This algorithm is inspired by the hierarchical behavior of chickens in a swarm for finding food. The diverse movements of the chickens create a balance between the local and the global search for finding the optimal solution. Raven roosting optimization (RRO) algorithm is inspired by the social behavior of raven and the information flow between the members of the population with the goal of finding food. The advantage of this algorithm lies in using the individual perception mechanism in the process of searching the problem space. In the current work, an ICDSF scheduling framework is proposed. It is a hybrid (IRRO-CSO) meta-heuristic approach based on the improved raven roosting optimization algorithm (IRRO) and the CSO algorithm. The CSO algorithm is used for its efficiency in satisfying the balance between the local and the global search, and IRRO algorithm is chosen for solving the problem of premature convergence and its better performance in bigger search spaces. First, the performance of the proposed hybrid IRRO-CSO algorithm is compared with other imitation-based swarm intelligence methods using benchmark functions (CEC 2017). Then, the capabilities of the proposed scheduling hybrid algorithm (IRRO-CSO) are tested using the NASA-iPSC parallel workload and are compared with the other available algorithms. The obtained results from the implementation of the hybrid IRRO-CSO algorithm in MATLAB show an improvement in the average best fitness compared with the following algorithms: IRRO, RRO, CSO, BAT and PSO. Finally, simulation tests performed in cloud computing environment show improvements in terms of reduction of execution time, reduction of response time and the increase in throughput by using the proposed hybrid IRRO-CSO approach for dynamic scheduling.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

Similar content being viewed by others

Notes

  1. Differential evolutionary (DE).

References

  1. Kalra M, Singh S (2015) A review of metaheuristic scheduling techniques in cloud computing. Egypt Inform J 16:275–295

    Article  Google Scholar 

  2. Salimian L, Safi F (2013) Survey of energy efficient data centers in cloud computing. In: Proceedings of the 2013 IEEE/ACM 6th International Conference on Utility and Cloud Computing, pp 369–374

  3. Haratian P, Safi-Esfahani F, Salimian L, Nabiollahi A (2017) An adaptive and fuzzy resource management approach in cloud computing. IEEE Trans Cloud Comput. https://doi.org/10.1109/TCC.2017.2735406

    Google Scholar 

  4. Donyadari E, Safi-Esfahani F, Nourafza N (2015) Scientific workflow scheduling based on deadline constraints in cloud environment. Int J Mechatron Electr Comput Technol 5:1–15

    Google Scholar 

  5. Alaei N, Safi-Esfahani F (2017) RePro-active: a reactive–proactive scheduling method based on simulation in cloud computing. J Supercomput 74:1–29

    Google Scholar 

  6. Motavaselalhagh F, Safi Esfahani F, Arabnia HR (2015) Knowledge-based adaptable scheduler for SaaS providers in cloud computing. Human-Centric Comput Inf Sci 5(1):16

    Article  Google Scholar 

  7. Awan M, Shah MA (2015) A survey on task scheduling algorithms in cloud computing environment. Int J Comput Inf Technol 4(2):441–448

    Google Scholar 

  8. Jeong Y-S, Snasel V, Arabnia HR, Hung JC (2017) Fuzzy neuro theory and technologies for cloud computing. Elsevier, Amsterdam

    Google Scholar 

  9. Xu L, Wang K, Ouyang Z, Qi X (2014) An improved binary PSO-based task scheduling algorithm in green cloud computing. In: Proceeding of the 2014 9th International Conference on Communication Network China, CHINACOM 2014, pp 126–131

  10. Kaur G, Sharma ES (2014) Optimized utilization of resources using improved particle swarm optimization based task scheduling algorithms in cloud computing. Int J Emerg Technol Adv Eng 4(6):110–115

    Google Scholar 

  11. Brabazon A, Cui W, O’Neill M (2016) The raven roosting optimisation algorithm. Soft Comput 20(2):525–545

    Article  Google Scholar 

  12. Chen J, Xin B, Peng Z, Dou L, Zhang J (2009) Optimal contraction theorem for exploration-exploitation tradeoff in search and optimization. IEEE Trans Syst Man Cybern Part A Syst Hum 39(3):680–691

    Article  Google Scholar 

  13. Torabi S, Safi-Esfahani F (2017) Improved raven roosting optimization algorithm (IRRO). Swarm Evol Comput. https://doi.org/10.1016/j.swevo.2017.11.006

    Google Scholar 

  14. Meng X, Liu Y, Gao X, Zhang H (2014) A new bio-inspired algorithm: chicken swarm optimization. In: International Conference in Swarm Intelligence, pp 86–94

  15. Valafar H, Arabnia HR, Williams G (2004) istributed global optimization and its development on the multiring network. Neural Parallel Sci Comput 12(4):465–490

    MathSciNet  MATH  Google Scholar 

  16. Arabnia HR, Fang WC, Lee C, Zhang Y (2010) Guest editor’s introduction: context-aware middleware and intelligent agents for smart environments. IEEE Intell Syst 25(2):10–11

    Article  Google Scholar 

  17. Ramezani F, Lu J, Hussain F (2013) Task scheduling optimization in cloud computing applying multi-objective particle swarm optimization. In: Basu S et al (eds) ICSOC 2013, LNCS 8274. Springer, Berlin, pp 237–251

    Google Scholar 

  18. Glover F (1986) Future paths for integer programming and links to artificial intelligence. Comput Oper Res 13(5):533–549

    Article  MathSciNet  MATH  Google Scholar 

  19. Sridhar M (2015) Hybrid particle swarm optimization scheduling for cloud computing. In: 2015 IEEE International Advance Computing Conference (IACC), pp 1196–1200

  20. Priyadarsini RJ, Arockiam L (2015) PBCOPSO: a parallel optimization algorithm for task scheduling in cloud environment. Indian J Sci Technol 8 (July)

  21. Rouhi S, Nejad EB (2015) CSO-GA: a new scheduling technique for cloud computing systems based on cat swarm optimization and genetic algorithm. Cumhur Sci J 36(4):1672–1685

    Google Scholar 

  22. Chu S, Tsai P, Pan J (2006) Cat swarm optimization. In: Pacific Rim International Conference on Artificial Intelligence, pp 854–858

  23. Aujla S, Amandeep U (2015) Task scheduling in cloud using hybrid cuckoo algorithm. Int J Comput Netw. Appl 2(3):144–150

    Google Scholar 

  24. Kumar VS (2015) Trust based resource selection in cloud computing using hybrid algorithm. Int J Intell Syst Appl 7(July):59–64

    Google Scholar 

  25. George S (2015) Hybrid PSO-MOBA for profit maximization in cloud computing. Int J Adv Comput Sci Appl 6(2):159–163

    Google Scholar 

  26. Rani E, Kaur H (2017) Efficient load balancing task scheduling in cloud computing using raven roosting optimization algorithm. Int J Adv Res Comput Sci 8(5):2419–2424

    Google Scholar 

  27. Abedinpourshotorban H, Shamsuddin SM, Beheshti Z, Jawawi DNA (2016) Electromagnetic field optimization: a physics-inspired metaheuristic optimization algorithm. Swarm Evol Comput 26:8–22

    Article  Google Scholar 

  28. Kirkpatrick S, Gelatt CD, Vecchi MP (1983) Optimization by simulated annealing. Sci New Ser 220(4598):671–680

    MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Faramarz Safi-Esfahani.

Appendices

Appendix A: definition of IRRO and CSO algorithms

1.1 Improved raven roosting optimization (IRRO)

The roost is considered the center of information, a place where information on food sources is exchanged between members. In this paper, the main focus was structure of the RRO algorithm. The part of the raven population that leaves the roost to find food and follows the leader is divided into two groups, according to weak ravens and greedy ravens. The ravens that cannot find food sources for themselves in a day are determined as weak ravens. Members of this group see the ravens that return to the roost having found the rich food sources and follow them to find the food. The second group consists of greedy ravens that follow the leader to get more food sources. How to divide this part of the population in two groups and to determine the identity of the ravens (weak or greedy) all depend on the fitness values of the ravens themselves. The percentage of ravens “Weak_Population_Percent” with the worst fitness values would act in weakness; the others would be greedy. Usually, premature convergence occurs because of a weakness in its capacity for exploration (global search). The standard RRO algorithm has also the problem of premature convergence. To solve this problem, the control parameter \( {\text{Food}}_{st} \) is used. This parameter represents the amount of food remaining for each raven. First, the value of this parameter is considered to be 1, but with increasing the number of iteration of the algorithm, the value of this parameter decreases to zero. By reducing the amount of \( {\text{Food}}_{st} \), the tendency of the raven increases to find the new location and then the exploration capability is improved in the search space. The \( {\text{Food}}_{{st_{t,j} }} \) parameter was updated using Eq. (4):

$$ {\text{Food}}_{{st_{t + 1,j} }} = {\text{Food}}\_{\text{Max}} \times \frac{{\left( {{\text{Max}}It - i} \right)}}{{{\text{Max}}It}} $$
(4)

where \( {\text{Food}}\_{\text{Max}} \) is the maximum amount of food for the raven and is set to 1. The parameter \( {\text{Food}}_{{st_{t + 1,j} }} \) is calculated based on the updated values of the parameters \( {\text{Food}}_{{st_{t,j} }} \) for the jth member. Also \( {\text{Max}}It \) is the maximum of the number of iterations, and \( i \) is the current iteration. The flowchart and pseudo-code of the RRO algorithm are specified in Fig. 11 and Algorithm 2, respectively. The parts highlighted in Algorithm 2 show the ideas employed in the proposed algorithm.

figure b
Fig. 11
figure 11

Flowchart of the IRRO algorithm

1.2 Chicken swarm optimization (CSO)

The chicken swarm optimization algorithm is inspired by the hierarchical behavior of chickens in a swarm for finding food. The behavior of the chickens in modeled by the following rules: (1) There are a number of groups in a chicken swarm. Each group consists of a rooster (as the head of the group) and a number of hens and chickens. (2) Based on their fitness, the members of the population are categorized to a number of groups. The members with the best fitness are considered as roosters. Each group has a rooster as its head. The members with worse fitness are considered as chickens and the rest are considered as hens. Initially, the relation between hen and chickens is set in a random way. (3) In times, the role of the dominant and the relation between hen and chickens is changed by the parameter G. (4) The chickens in a group follow their head rooster to find food. They might also steal food from other groups or might search in the vicinity of their mother hen for food (competition phase). The position of all N members of the population is defined by the vector \( x_{ij}^{t} \) in the D-dimensional problem space, where \( i \in \left[ {1, \ldots ,N} \right] \) and \( j \in \left[ {1, \ldots ,D} \right] \). The competition among different sub-groups causes global optimization of the problem. This algorithm belongs to the group of multi-warm algorithms and inherits the properties of other algorithms like PSO and the differential evolutionary algorithm (DE).Footnote 1 Its general procedure can be seen in Algorithm 3.

figure c

Appendix B

See Tables 3, 4, 5, 6, 7, 8, 9, 10, 11 12.

Table 3 Related parameter values
Table 4 Parameter setting of experiments
Table 5 Parameter setting of simulation
Table 6 Experiment layout
Table 7 Simulation results with different number of tasks and execution time
Table 8 Simulation results with different number of tasks and response time
Table 9 Simulation results with different number of tasks and throughput
Table 10 Simulation results with different number of VMs and execution time
Table 11 Simulation results with different number of VMs and response time
Table 12 Simulation results with different number of VMs and throughput
Table 13 Results of the IRRO-CSO algorithm compared with versions of IRRO, PSO, BA, CSO, GWO algorithms in 50 D

Appendix C: experimental results of IRRO-CSO algorithm in MATLAB

See Table 13.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Torabi, S., Safi-Esfahani, F. A dynamic task scheduling framework based on chicken swarm and improved raven roosting optimization methods in cloud computing. J Supercomput 74, 2581–2626 (2018). https://doi.org/10.1007/s11227-018-2291-z

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-018-2291-z

Keywords

Navigation