Abstract
The Internet of Things offers a vast infrastructure where numerous devices interact to collect data or perform processing activities (tasks). These devices are, usually, equipped with sensors, software and storage capabilities being able to process the collected data. Task scheduling in edge computing environments has gained considerable attention lately due to the fact that the Edge computing provides lower latency compared to the Cloud. The main challenge is to find a way to maximize the utilization of limited resources available in the edge compared to the Cloud and minimize response time. Many research efforts have been published in order to overcome this challenge. The main limitation of these efforts is the fact that they do not account for task requirements or task correlation that originates from these requirements. In this paper, we focus on the development of a mechanism that utilizes correlation between tasks and takes task requirements into consideration in order to provide efficient task scheduling. Our vision is to minimize task failures and maximize resource utilization with great benefits for the efficient management of the limited resources.
Similar content being viewed by others
Availability of data and material
The dataset used in the second experimental scenario is available at https://archive.ics.uci.edu/ml/datasets/Real+estate+valuation+data+set.
Code availability
The code used for the experiments is available at https://github.com/thanosmous/Correlation-Adaptive-Task-Scheduling-CATS.
References
Aazam Mohammad, Huh Eui-Nam (2014) Fog computing and smart gateway based communication for cloud of things. 2014 International conference on future internet of things and cloud. IEEE
Alworafi MA, Dhari A, Al-Hashmi AA, Darem AB, Suresha (2016) An improved SJF scheduling algorithm in cloud computing environment. 2016 International Conference on Electrical, Electronics, Communication, Computer and Optimization Techniques (ICEECCOT), Mysuru, India, pp 208-212, https://doi.org/10.1109/ICEECCOT.2016.7955216
Abdelkader Doaa M, Omara Fatma (2012) Dynamic task scheduling algorithm with load balancing for heterogeneous computing system. Egyptian Inform J 13(2):135–145
Abohamama AS, El-Ghamry Amir, Hamouda Eslam (2022) Real-time task scheduling algorithm for IoT-based applications in the cloud-fog environment. J Netw Syst Manag 30(4):1–35
Alizadeh Mohammad Reza et al (2020) Task scheduling approaches in fog computing: a systematic review. Int J Commun Syst 33(16):e4583
Anagnostopoulos C, Kolomvatsos K (2018) Predictive intelligence to the edge through approximate collaborative context reasoning. Springer Appl Intell 48(4):966–991
Baranidharan B, Saravanan, K (2017) ETSI: Efficient task scheduling in Internet of Things. In International Journal of Pure and Applied Mathematics Volume 117 No. 22
Bhoi Upendra R, Ramanuj Purvi N (2013) Enhanced Max-min Task Scheduling Algorithm in Cloud Computing
Boveiri Hamid Reza, Javidan Reza, Khayami Raouf (2021) An intelligent hybrid approach for task scheduling in cluster computing environments as an infrastructure for biomedical applications. Expert Syst 38(1):e12536
Boulougaris G, Kolomvatsos K (2022) A QoS-aware, Proactive Tasks Offloading Model for Pervasive Applications. In 9th International Conference on Future Internet of Things and Cloud (FiCloud), 22-24 Aug, Rome, Italy
Deslauriers Francis, et al. (2016) Quartet: Harmonizing task scheduling and caching for cluster computing. 8th USENIX Workshop on Hot Topics in Storage and File Systems (HotStorage 16)
Fang Juan, Zeng Wenzheng (2020) Offloading strategy for edge computing tasks based on cache mechanism. Proceedings of the 2020 6th International Conference on Computing and Artificial Intelligence
Guo Shaoyong et al (2020) Blockchain meets edge computing: Stackelberg game and double auction based task offloading for mobile blockchain. IEEE Trans Vehicul Technol 69(5):5549–5561
Hossain Md Sajjad et al (2020) Edge computational task offloading scheme using reinforcement learning for IIoT scenario. ICT Express 6(4):291–299
Topcuoglu H, Hariri S, Min-You Wu (2002) Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Trans Parall Distrib Syst 13(3):260–274. https://doi.org/10.1109/71.993206
Hamdan S, Ayyash M, Almajali S (2020) Edge-computing architectures for Internet of Things applications: a survey. Sensors 20(22):6441. https://doi.org/10.3390/s20226441
Hu Xiaoqing, Xu Bugong (2011) Task allocation mechanism based on genetic algorithm in wireless sensor networks. International Conference on Applied Informatics and Communication. Springer, Berlin, Heidelberg
Jiang H, Ni T (2009) PB-FCFS-a task scheduling algorithm based on FCFS and backfilling strategy for grid computing, 2009 Joint Conferences on Pervasive Computing (JCPC), Tamsui, Taipei, 2009, pp 507-510, https://doi.org/10.1109/JCPC.2009.5420131
Karanika A, Oikonomou P, Kolomvatsos K, Loukopoulos T (2020) A demand-driven, Proactive Tasks Management Model at the Edge. IEEE FUZZ-IEEE
Kolomvatsos K, Anagnostopoulos C (2022) A proactive statistical model supporting services and tasks management in pervasive applications. IEEE Trans Netw Serv Manag 19(3):3020–3031
Kolomvatsos K, Anagnostopoulos A (2019) Multi-criteria optimal task allocation at the edge. Fut Generat Comput Syst 93:358–372
Kolomvatsos K, Hadjiefthymiades S (2017) Learning the engagement of query processors for intelligent analytics. Springer Appl Intell J 46(1):96-112, pp 1-17
Kumar M, Sharma SC (2016) Priority aware longest job first (PA-LJF) algorithm for utilization of the resource in cloud environment, 2016 3rd International Conference on Computing for Sustainable Global Development (INDIACom), New Delhi, India, pp 415-420
Krishnapriya S, Joby PP (2015) QoS aware resource scheduling in Internet of Things-cloud environment. Int J Scient Eng Res 6:4
Liu Yu et al (2017) DeMS: a hybrid scheme of task scheduling and load balancing in computing clusters. J Netw Comput Appl 83:213–220
Zhang Longxin, Li Kenli, Xu Yuming, Mei Jing, Zhang Fan, Li Keqin (2015) Maximizing reliability with energy conservation for parallel task scheduling in a heterogeneous cluster. Information Sciences, Volume 319, Pages 113-131,ISSN 0020-0255, https://doi.org/10.1016/j.ins.2015.02.023
Mei Jing, Li Kenli, Li Keqin (2014) Energy-aware task scheduling in heterogeneous computing environments. Cluster Comput 17(2):537–550
Mutlag Ammar Awad et al (2020) MAFC: Multi-agent fog computing model for healthcare critical tasks management. Sensors 20(7):1853
Oikonomou P, Kolomvatsos K, Anagnostopoulos C, Tziritas N, Theodoropoulos G (2021) A Probabilistic Batch Oriented Proactive Workflow Management. In 33rd International Conference on Tools with Artificial Intelligence (ICTAI 2021), November 1-3, 2021
Onu Peter, Pradhan Anup, Mbohwa Charles (2023) Industrial internet of things (IIoT): opportunities, challenges, and requirements in manufacturing businesses in emerging economies. Procedia Comput Sci 217:856–865. https://doi.org/10.1016/j.procs.2022.12.282
Parsa Saeed, Entezari-Maleki Reza (2009) RASA: a new grid task scheduling algorithm. Int J Digit Cont Technol Appl 3(4):91–99
Patel P, Narmawala Z, Thakkar A (2019) A Survey on Intelligent Transportation System Using Internet of Things. In: Shetty N, Patnaik L, Nagaraj H, Hamsavath P, Nalini N (eds) Emerging Research in Computing, Information, Communication and Applications. Advances in Intelligent Systems and Computing, vol 882. Springer, Singapore. https://doi.org/10.1007/978-981-13-5953-8-20
Cao Q, Wei Z -B, Gong W-M (2009) An optimized algorithm for task scheduling based on activity based costing in cloud computing. 2009 3rd International Conference on Bioinformatics and Biomedical Engineering, pp 1-3, https://doi.org/10.1109/ICBBE.2009.5162336
Qian Y, Wu D, Bao W, Lorenz P (2019) The Internet of Things for smart cities: technologies and applications. IEEE Netw 33(2):4–5. https://doi.org/10.1109/MNET.2019.8675165
Singh Ravi Pratap, Javaid Mohd, Haleem Abid, Suman Rajiv (2020) Internet of things (IoT) applications to fight against COVID-19 pandemic, Diabetes & Metabolic Syndrome: Clinical Research & Reviews,Volume 14, Issue 4, Pages 521-524, ISSN 1871-4021, https://doi.org/10.1016/j.dsx.2020.04.041
Albishi Saad, Soh Ben, Ullah Azmat, Algarni Fahad (2017) Challenges and Solutions for Applications and Technologies in the Internet of Things. Procedia Computer Science, Volume 124, Pages 608-614, ISSN 1877-0509, https://doi.org/10.1016/j.procs.2017.12.196
Savvas Ilias K, Kechadi M-T (2004) Dynamic task scheduling in computing cluster environments. Third International Symposium on Parallel and Distributed Computing/Third International Workshop on Algorithms, Models and Tools for Parallel Computing on Heterogeneous Networks. IEEE
Satyanarayanan M (2017) The emergence of edge computing. Computer 50(1):30–39. https://doi.org/10.1109/MC.2017.9
Sedighi Art, Deng Yuefan, Zhang Peng (2014) Fariness of task scheduling in high performance computing environments. Scalable Comput: Practice Exp 15(3):271–288
Shanthan BJ et al (2017) Scheduling for internet of things applications on cloud: a review. Imperial J Interdisciplinary Res 3(1):1649–1653
Singh Harvinder, Singh Gurdev (2015) Task scheduling in cluster computing environment. 2015 International Conference on Futuristic Trends on Computational Analysis and Knowledge Management (ABLAZE). IEEE
Sreenu Karnam, Sreelatha M (2019) W-Scheduler: whale optimization for task scheduling in cloud computing. Cluster Comput 22(1):1087–1098
Vongsingthong Suwimon, Smanchat Sucha (2014) INTERNET OF THINGS: A REVIEW OF APPLICATIONS AND TECHNOLOGIES. https://doi.org/10.14456/sjst.2014.38
Wang Lizhe et al (2013) Energy-aware parallel task scheduling in a cluster. Future Gen Comput Syst 29(7):1661–1670
Yang Tao, Gerasoulis Apostolos (1992) PYRROS: Static task scheduling and code generation for message passing multiprocessors. ACM International Conference on Supercomputing 25th Anniversary Volume. 1992
Yu Yang, Prasanna Viktor K (2005) Energy-balanced task allocation for collaborative processing in wireless sensor networks. Mobile Netw Appl 10(1):115–131
Lei Zhang, Yuehui Chen, Runyuan Sun, Shan Jing, Bo Yang (2008) A task scheduling algorithm based on PSO for grid computing. Int J Comput Intell Res 4:37–43. https://doi.org/10.5019/j.ijcir.2008.123
Zheng Shi, Zhiguo Shi (2020) Multi-node task scheduling algorithm for edge computing based on multi-objective optimization. J Phys Conf Ser 1607:012017
Funding
The authors did not receive support from any organization for the submitted work.
Author information
Authors and Affiliations
Contributions
All authors contributed to the study conception and design. Material preparation, data collection and analysis were performed by Thanasis Moustakas. The first draft of the manuscript was written by Thanasis Moustakas and all authors commented on previous versions of the manuscript. All authors read and approved the final manuscript.
Corresponding author
Ethics declarations
Conflict of interest
The authors have no competing interests to declare that are relevant to the content of this article.
Ethics approval
Not applicable.
Consent to participate
Not applicable.
Consent for publication
Not applicable.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix A
Appendix A
1.1 Proof 1
We provide the proof for Lemma 1. As mentioned before \(tfv_i[l], tfm_i[l], trov_i[l], NFV_j[l], NFM_j[l],NROV_j[l]\) are independent between them, so we can calculate the initial probability separately for each pair of statistical measure (variance, mean and range of values).
\({\textbf{E}}(f(i,j,l)) = 1*[P(f(i,j,l)=1] + 0*[P(f(i,j,l)=0] = [P(f(i,j,l)=1] = P[tfv_i[l] \cap NFV_j[l] \ne \emptyset \vee tfv_i[l] = 0] *P[tfm_i[l] \cap NFM_j[l] \ne \emptyset \vee tfm_i[l] = 0] * P[trov_i[l] \cap NROV_j[l] \ne \emptyset \vee trov_i[l] = 0]\)
To avoid confusion, we perform further calculations separately. Each task requirement has a probability p of existing. This leads to the following:
\(P[tfv_i[l] \cap NFV_j[l] \ne \emptyset \vee tfv_i[l] = 0] = p*P[tfv_i[l] \cap NFV_j[l] \ne \emptyset ] + (1-p) = p*P[NFV_j[l] \in [c,d]] + (1-p) = p*P[c \le NFV_j[l] \le d] + (1-p) = p* (P[NFV_j[l] \le d] - P[NFV_j[l]< c]) + (1-p) P[tfm_i[l] \cap NFM_j[l] \ne \emptyset \vee tfm_i[l] = 0] = p*P[tfm_i[l] \cap NFM_j[l] \ne \emptyset ] + (1-p) = p*P[NFM_j[l] \in [e,f]] + (1-p) = p*P[e \le NFM_j[l] \le f] + (1-p) = p * (P[NFM_j[l] \le f] - P[NFM_j[l] < e]) + (1-p)\)
\(P[trov_i[l] \cap NROV_j[l] \ne \emptyset \vee trov_i[l] = 0] = p * P[trov_i[l] \cap NROV_j[l] \ne \emptyset ] + (1-p)\)
where
\(P(trov_i[l] \cap NROV_j[l] \ne \emptyset ) = P[[g,h] \cap [NROV_j[l][1],NROV_j[l][2]] \ne \emptyset ) = 1 - P([g,h] \cap [NROV_j[l][1],NROV_j[l][2]]) = \emptyset ) = 1- P( (NROV_j[l][2]< g) \cup ([NROV_j[l][1]> h) ) = 1 - (P(NROV_j[l][2]< g) + P( (NROV_j[l][1] > h) ) = 1 - ( P(NROV_j[l][2]< g) + 1 - P( (NROV_j[l][1] \le h) ) = 1 - P(NROV_j[l][2]< g) - 1 + P( (NROV_j[l][1] \le h) ) = P( (NROV_j[l][1] \le h) ) - P(NROV_j[l][2] < g)\)
1.2 Proof 2
We provide the proof for Lemma 2.
\({\textbf{E}}(su_i[j]) = 1 * P(\sum _{l=1}^{r}f(i,j,l) =r) + 0 * P(\sum _{l=1}^{r}f(i,j,l) \ne r) = P(\sum _{l=1}^{r}f(i,j,l) =r) = P(f(i,j,1) = 1 \cap f(i,j,2) = 1 \cap \ldots \cap f(i,j,r) = 1 ) = \prod _{l=1}^{r} P(f(i,j,l) = 1) = \prod _{l=1}^{r} {\textbf{E}}(f(i,j,l))\)
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Moustakas, T., Kolomvatsos, K. Correlation adaptive task scheduling. Computing 105, 2459–2486 (2023). https://doi.org/10.1007/s00607-023-01192-8
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00607-023-01192-8