Abstract
Cloud computing has expanded considerably in industry and research and is based on a pay-as-you-go payment model. In cloud computing environment, on one hand, jobs sent to the cloud to execution have a variety of attribute such as deadline, length, bandwidth requirements. On the other hand, various virtual machines have been created at different costs on existing physical resources. In this paper, a job scheduling method is proposed that carries out scheduling using cellular automata. The proposed algorithm is called CA-JS. The main goal of this method is to execute the jobs in the specified deadline and to increase the profitability of cloud providers. Also, in this paper, another attribute named hardness factor, is determined by each user of jobs sent to the cloud, which also specifies the running cost of jobs. The simulations carried out in the CloudSim environment indicate that the proposed method, in comparison with FCFS, Min–Min, and EDF algorithms, has better tardiness and makespan, and also, allows more jobs to be executed in their specified deadline.
Similar content being viewed by others
References
Li, W., Zhong, Y., Wang, X., & Cao, Y. (2013). Resource virtualization and service selection in cloud logistics. Journal of Network and Computer Applications, 36(6), 1696–1704.
Buyya, R., Broberg, J., & Goscinski, A. M. (2011). Cloud computing principles and paradigms. Hoboken: Wiley.
Lombardi, F., & Pietro, R. D. (2011). Secure virtualization for cloud computing. Journal of Network and Computer Applications, 34(4), 1113–1122. https://doi.org/10.1016/j.jnca.2010.06.008.
Buyya, R., Vecchiola, C., & Selvi, S. T. (2013). Mastering cloud computing: Foundations and applications programming. Amsterdam: Elsevier.
Singh, S., & Chana, I. (2015). Q-aware: Quality of service based cloud resource provisioning. Computers & Electrical Engineering, 47, 138–160. https://doi.org/10.1016/j.compeleceng.2015.02.003.
Rimal, B. P., Jukan, A., Katsaros, D., & Goeleven, Y. (2011). Architectural requirements for cloud computing systems: An enterprise cloud approach. Journal of Grid Computing, 9(1), 3–26. https://doi.org/10.1007/s10723-010-9171-y.
Gao, Y., Guan, H., Qi, Z., Hou, Y., & Liu, L. (2013). A multi-objective ant colony system algorithm for virtual machine placement in cloud computing. Journal of Computer and System Sciences, 79(8), 1230–1242. https://doi.org/10.1016/j.jcss.2013.02.004.
Garey, M. R., & Johnson, D. S. (2002). Computers and intractability. New York: W.H. Freeman.
Abrishami, S., Naghibzadeh, M., & Epema, D. H. (2013). Deadline-constrained workflow scheduling algorithms for Infrastructure as a Service Clouds. Future Generation Computer Systems, 29(1), 158–169.
Wieczorek, M., Hoheisel, A., & Prodan, R. (2009). Towards a general model of the multi-criteria workflow scheduling on the grid. Future Generation Computer Systems, 25(3), 237–256.
T’kindt, V., & Billaut, J.-C. (2006). Multicriteria scheduling: Theory, models and algorithms. Berlin: Springer.
Yu, J., & Buyya, R. (2006). Scheduling scientific workflow applications with deadline and budget constraints using genetic algorithms. Scientific Programming, 14(3–4), 217–230.
Doğan, A., & Özgüner, F. (2005). Biobjective scheduling algorithms for execution time–reliability trade-off in heterogeneous computing systems. The Computer Journal, 48(3), 300–314.
Duwairi, B., & Manimaran, G. (2003). Combined scheduling of hard and soft real-time tasks in multiprocessor systems. In International conference on high-performance computing (pp. 279–289). Springer. https://doi.org/10.1007/978-3-540-24596-4_30.
Swiecicka, A., & Seredynski, F. (2000). Cellular automata approach to scheduling problem. In International conference on parallel computing in electrical engineering, 2000. PARELEC 2000. Proceedings (pp. 29–33). IEEE. https://doi.org/10.1109/pcee.2000.873596.
Brucker, P. (2007). Scheduling algorithms. Berlin: Springer.
Pinedo, M. L. (2012). Scheduling theory, algorithms, and systems. New York: Springer.
Yu, J., Buyya, R., & Ramamohanarao, K. (2008). Workflow scheduling algorithms for grid computing (metaheuristics for scheduling in distributed computing environments). Berlin: Springer.
Talbi, E.-G. (2009). Metaheuristics: From design to implementation. Hoboken: Wiley.
Kwok, Y.-K., & Ahmad, I. (1999). Static scheduling algorithms for allocating directed task graphs to multiprocessors. ACM Computing Surveys, 31(4), 406–471. https://doi.org/10.1145/344588.344618.
Topcuouglu, H., Hariri, S., & Wu, M.-Y. (2002). Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Transactions on Parallel and Distributed Systems, 13(3), 260–274. https://doi.org/10.1109/71.993206.
Bajaj, R., & Agrawal, D. P. (2004). Improving scheduling of tasks in a heterogeneous environment. IEEE Transactions on Parallel and Distributed Systems, 15(2), 107–118.
Daoud, M. I., & Kharma, N. (2008). A high performance algorithm for static task scheduling in heterogeneous distributed computing systems. Journal of Parallel and Distributed Computing, 68(4), 399–409. https://doi.org/10.1016/j.jpdc.2007.05.015.
Dorigo, M., & Stützle, T. (2010). Ant colony optimization: Overview and recent advances. In M. Gendreau & J. Y. Potvin (Eds.), Handbook of metaheuristics (pp. 227–263). Boston, MA: Springer.
Kirkpatrick, S., Gelatt, C. D., & Vecchi, M. P. (1983). Optimization by simulated annealing. Science, 220(4598), 671–680.
Eberhart, R., & Kennedy, J. (1995). A new optimizer using particle swarm theory. In Proceedings of the sixth international symposium on micro machine and human science, 1995. MHS’95. (pp. 39–43). IEEE. https://doi.org/10.1109/mhs.1995.494215.
Karaboga, D. (2005). An idea based on honey bee swarm for numerical optimization. Technical report-tr06, Erciyes University, Engineering Faculty, Computer Engineering Department.
Tawfeek, M. A., El-Sisi, A., Keshk, A. E., & Torkey, F. A. (2013). Cloud task scheduling based on ant colony optimization. In 2013 8th international conference on computer engineering & systems (ICCES), November 26–28, 2013 (pp. 64–69). https://doi.org/10.1109/icces.2013.6707172.
Liu, A., & Wang, Z. (2008). Grid task scheduling based on adaptive ant colony algorithm. In 2008 International conference on management of e-commerce and e-government, October 17–19, 2008 (pp. 415–418). https://doi.org/10.1109/icmecg.2008.50.
Bagherzadeh, J., & MadadyarAdeh, M. (2009). An improved ant algorithm for grid scheduling problem. Paper presented at the 2009 14th international CSI computer conference, October 20–21, 2009.
Mezmaz, M., Melab, N., Kessaci, Y., Lee, Y. C., Talbi, E. G., Zomaya, A. Y., et al. (2011). A parallel bi-objective hybrid metaheuristic for energy-aware scheduling for cloud computing systems. Journal of Parallel and Distributed Computing, 71(11), 1497–1508. https://doi.org/10.1016/j.jpdc.2011.04.007.
Li, J., Qiu, M., Ming, Z., Quan, G., Qin, X., & Gu, Z. (2012). Online optimization for scheduling preemptable tasks on IaaS cloud systems. Journal of Parallel and Distributed Computing, 72(5), 666–677. https://doi.org/10.1016/j.jpdc.2012.02.002.
Su, S., Li, J., Huang, Q., Huang, X., Shuang, K., & Wang, J. (2013). Cost-efficient task scheduling for executing large programs in the cloud. Parallel Computing, 39(4–5), 177–188. https://doi.org/10.1016/j.parco.2013.03.002.
Wu, X., Deng, M., Zhang, R., Zeng, B., & Zhou, S. (2013). A task scheduling algorithm based on QoS-driven in cloud computing. Procedia Computer Science, 17, 1162–1169.
Xu, B., Zhao, C., Hu, E., & Hu, B. (2011). Job scheduling algorithm based on Berger model in cloud environment. Advances in Engineering Software, 42(7), 419–425. https://doi.org/10.1016/j.advengsoft.2011.03.007.
Seredynski, F., & Zomaya, A. Y. (2002). Sequential and parallel cellular automata-based scheduling algorithms. IEEE Transactions on Parallel and Distributed Systems, 13(10), 1009–1023.
Wolfram, S. (1986). Theory and applications of cellular automata (Vol. 1). Singapore: World Scientific.
Toffoli, T., & Margolus, N. (1987). Cellular automata machines: A new environment for modeling. Cambridge, MA: MIT Press.
Palmieri, F., Buonanno, L., Venticinque, S., Aversa, R., & Di Martino, B. (2013). A distributed scheduling framework based on selfish autonomous agents for federated cloud environments. Future Generation Computer Systems, 29(6), 1461–1472. https://doi.org/10.1016/j.future.2013.01.012.
D’Arienzo, M., Pescap, A., Romano, S. P., & Ventre, G. (2002). The service level agreement manager: Control and management of phone channel bandwidth over Premium IP networks. Paper presented at the Proceedings of the 15th international conference on computer communication, Mumbai, Maharashtra, India.
Moon, H. J., Chi, Y., & Hacig, H. (2011). Performance evaluation of scheduling algorithms for database services with soft and hard SLAs. Paper presented at the proceedings of the second international workshop on data intensive computing in the clouds, Seattle, Washington, USA.
Goyal, T., Singh, A., & Agrawal, A. (2012). Cloudsim: Simulator for cloud computing infrastructure and modeling. Procedia Engineering, 38, 3566–3572. https://doi.org/10.1016/j.proeng.2012.06.412.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Zekrizadeh, N., Khademzadeh, A. & Hosseinzadeh, M. An Online Cost-Based Job Scheduling Method by Cellular Automata in Cloud Computing Environment. Wireless Pers Commun 105, 913–939 (2019). https://doi.org/10.1007/s11277-019-06128-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11277-019-06128-0