You are currently viewing a new version of our website. To view the old version click .
Mathematics
  • Article
  • Open Access

11 April 2022

Parallel Meta-Heuristics for Solving Dynamic Offloading in Fog Computing

,
and
Department of Information Technology, College of Computer and Information Sciences, Princess Nourah bint Abdulrahman University, Riyadh 84428, Saudi Arabia
*
Author to whom correspondence should be addressed.

Abstract

The internet of things (IoT) concept has been extremely investigated in many modern smart applications, which enable a set of sensors to either process the collected data locally or send them to the cloud for remote processing. Unfortunately, cloud datacenters are located far away from IoT devices, and consequently, the transmission of IoT data may be delayed. In this paper, we investigate fog computing, which is a new paradigm that overcomes many issues of cloud computing. More importantly, dynamic task offloading in fog computing is a challenging problem that requires an optimal decision for processing the tasks that are generated in each time slot. Thus, exact optimization methods based on Lyapunov function have been widely used for solving dynamic offloading which represents an NP hard problem. To overcome the scalability issue of exact optimization techniques, we have explored famous population based meta-heuristics for optimizing the offloading process of a set of dynamic tasks using Orthogonal Frequency Division Multiplexing (OFDM) communication. Hence, a parallel multi-threading framework is proposed for generating the optimal offloading solution while selecting the best sub-carrier for each offloaded task. More importantly, our contribution associates a thread for each IoT device and generates a population of random solutions. Next, each population is updated and evaluated according to the proposed fitness function that considers a tradeoff between the delay and energy consumption. Upon the arrival of new tasks at each time slot, an evaluation is performed for maintaining some individuals of the previous population while generating new individuals based on some criteria. Our results have been compared to the results achieved using Lyapunov optimization. They demonstrate the convergence of the fitness function, the scalability of the parallel Particle Swarm Optimization (PSO) approach, and the performance in terms of the offline error and the execution cost.

1. Introduction

The evolution of computing paradigms improves the Information Technology (IT) practices in terms of design, development, and deployment. From this perspective, cloud computing has provided IT service models where customers benefit from hardware and software computing resources on demand through a network []. Despite the advantages of cloud computing, there exist some challenges that need to be considered before embracing cloud computing as a viable solution. These challenges include security threats along with the design of the optimal decision rules for moving applications to the cloud []. Additionally, the IoT concept allows real world life things to sense, communicate and act remotely through the Internet []. However, most IoT applications incorporate different IoT sensors, which generate large volumes of data that usually require a swift analysis; today’s cloud models do not handle the size, the variety, or the velocity of IoT generated data []. As an example, most critical healthcare applications require the real-time analysis of patients’ vital signs, whereas moving data from IoT devices to the cloud for further analysis increases the latency. In addition, IoT devices have limited computing, storage, networking, and energy resources that introduce additional design challenges, which involve an adaptation of IoT architecture []. More specifically, the problem of moving data and applications to the cloud is known as offloading. Recently, many research efforts have been dedicated for developing effective mathematical models for deciding on task offloading. One of the ideas consists of investigating fog computing, which has recently emerged as an efficient computing model that manages data and applications and performs computation in fog servers that are close to the end users. In this manner, network latency will be reduced through the allocation of some tasks to the fog layer. The concept of fog computing was first proposed by Cisco in 2012 to improve the performance of IoT applications in terms of a network’s congestion, latency, and quality of service (QoS) []. The idea of fog computing consists of deploying a set of traditional networking components, e.g., base stations, routers, proxy servers, etc., at the proximity of IoT devices []. As reported in [,], edge computing, micro-cloudlet, mobile cloud computing (MCC), and mobile edge computing (MEC) are terms related to fog computing that provide services to end users via an extremely distributed layer [,]. Despite the advantages of fog computing, some potential concerns have been addressed in some research papers. The integration of Software Defined Networks (SDN) and (Network Functions Virtualization) NFV to fog computing is appropriate for large-scale IoT applications [], although the integration of NFV and SDN to fog computing includes some design challenges along with the re-design of the south-bound, north-bound, and east–west Application Programming Interfaces (APIs). Another research topic concerns QoS in fog computing, which can be fixed through the dynamic selection of fog nodes, check-pointing, re-scheduling, data placement, and the prediction of future requests []. Additionally, fog nodes are vulnerable to potential security attacks []. Therefore, authentication and privacy techniques should be implemented while maintaining QoS requirements []. Furthermore, fog application management is another research target. Moreover, dynamic offloading that supports the arrival of new requests is a hard problem. The big difficulty for dynamic optimization is how to track the optimum that may change over time. As indicated in [], the information from the previous environment should be considered after a change has occurred for accelerating the optimization process. We mention also that the authors of [,] have comprehensively explained how to apply meta-heuristics including genetic algorithms, PSO, and ant colony optimization (ACO) for dynamic optimization. This paper focuses on designing parallel approaches for dynamic offloading in fog computing using two famous population based meta-heuristics including genetic algorithm and PSO. The major motivation behind selecting genetic algorithm and PSO concerns their utilization for solving many dynamic optimization problems. Compared to the state of the art, our contributions are summarized as follows:
  • The solution presented in this paper investigates parallel meta-heuristics for dynamic offloading in fog computing. Most papers presented in the literature are based on Lyapunov optimization. Although this has proved to be an efficient approach, its application to many large scale IoT problems is challenged by the scalability bottleneck.
  • This paper discusses the effectiveness of the proposed parallel meta-heuristics for handling the problem of dynamic offloading in fog computing. Our design initializes a set of random solutions that are evaluated using a bi-objective function that considers the delay and energy consumption. The aim of our work is twofold: deciding if the tasks generated in each time slot will be processed locally or offloaded to the suitable fog node for further processing and selecting the best channel of communication in case of task offloading. On one hand, our objective function is appropriate for task offloading in IoT applications that generate delay-sensitive tasks. On the other hand, our objective function is appropriate for energy-constrained IoT devices, as it depends on the processing and the transmission energy. Furthermore, upon the generation of new tasks in each time slot, our contribution replaces the worst solutions by random ones.
  • Our results show the performance in terms of the convergence of the fitness function and the offline error. Additionally, our results demonstrate that the proposed parallel meta-heuristics are applicable for a network comprised of many IoT devices, and the fitness function value decreases as the number of IoT devices increases. Another finding concerns the execution cost of parallel PSO that is lower than the execution cost of Lyapunov technique.
Thus, this paper is organized as follows. Section 2 introduces the related works. Section 3 explains the proposed mathematical model as well as the proposed approaches. Then, Section 4 illustrates our simulation results. Finally, Section 5 concludes this paper and discusses potential future work.

3. Proposed Method

We consider a system consisting of N IoT devices and M fog nodes such that M < N . We also assume that TDD communication is adopted. Each IoT device generates computational tasks at the beginning of every time slot and the generated tasks are stored in an M/M/1 queue. Further, each IoT device i is characterized by its:
  • Frequency f i (t), which depends on CPU cycles for processing the generated tasks. It is expressed in Megahertz (MHz).
  • Power of transmission   P i ( t ) , used for offloading a task to a fog node through the optimal sub-carrier. It is expressed in Watt.
We mention that our system allows each IoT device to generate tasks stochastically and independently according to a Poisson process with an average arrival rate   λ i ( t ) . More importantly, our generic model is useful for several scenarios including dynamic offloading in 5G Vehicular Adhoc Networks (Vanets) and healthcare applications where a set of IoT devices generate tasks dynamically and accordingly an optimal offloading decision is required.
In this context, each task j is modeled by a tuple   { α j ,   w j } , where α j represents the data size and w j represents the number of CPU cycles that are required to process task   j . The communication between IoT devices and fog nodes is carried using OFDM with K channels [,]. In particular, our model aims to find the optimal dynamic binary offloading decision, such that IoT devices have the ability to process tasks locally or to offload them to the appropriate fog node.
We define x   as the task allocation matrix:
x i j ( t ) = { 1 ,   i f   t a s k   j   i s   a l l o c a t e d   t o   I o T   d e v i c e   i 0 ,   i f   t a s k   j   i s   o f f l o a d e d  
As each IoT device has an M/M/1 queue, the time required for queuing and local execution of task j at time t is obtained using the Little formula []. It depends on the average service time and the mean arrival rate:
D i j L o c a l = x i j ( t ) × 1 f i ( t ) w j ( t ) λ i ( t )
Given that f i ( t ) w j ( t ) represents the average service rate at time   t . We indicate that we need to ensure that f i ( t ) w j ( t ) λ i ( t ) > 0 for maintaining the stability of the queue.
The energy consumed for local execution at time t is:
E i j L o c a l = k × f i 3 ( t ) × x i j ( t ) × 1 f i ( t ) w j ( t ) λ i ( t )
where k is defined as the effective switched capacitance, which relies on the chip architecture []. More notably, the matrix ρ denotes the channel assignment that is defined as follows:
ρ i k ( t ) = { 1   ,   i f   c h a n n e l   k   i s   a l l o c a t e d   t o   I o T   d e v i c e   i 0   ,   o t h e r w i s e    
Hence, we calculate the uplink rate between the IoT device i on channel k that using Equation (5), which is derived from the Shannon theorem:
r i k = ρ i k ( t ) × B × l o g 2   ( 1 + P i k ( t ) × h i k ( t ) N 0 )
where B ,   N 0   and   h i k ( t ) denote the uplink channel bandwidth, white noise, and the uplink channel gain, respectively. We define the computational latency for offloading a task j on channel k at time t as follows:
D j k O f f l o a d i n g ( t ) = α j ( t ) r i k ( t )
Accordingly, the energy required for offloading a task j on channel k at time t is described through Equation (7):
E j k O f f l o a d i n g ( t ) = P i k ( t ) × α j ( t ) r i k ( t )
The problem of jointly minimizing the delay and energy in dynamic fog computing while selecting the best channel is formulated as a weighted sum that is described by Equation (8):
t :   M i n   a × ( i j x i j ( t ) × 1 f i ( t ) w j ( t ) λ i ( t ) + i j k × f i 3 ( t ) × x i j ( t ) × 1 f i ( t ) w j ( t ) λ i ( t ) ) + b × (   i j k   α j ( t ) r i k ( t ) + i j k P i k ( t ) × α j ( t ) r i k ( t )   )
The first weight represented by a is a random number that is generated in each time slot. The second weight represented by b is calculated as ( 1 a ) . The aim of introducing the two weights a   and   b   requires a balance between local execution and offloading decisions. The first term of Equation (8) refers to the time and energy for local processing, whereas the second term refers to the delay and energy required for offloading. We mention that, different from some related works that optimize one parameter, our objective function enables minimizing two parameters including the delay and energy consumption based upon the queuing theory.
{ P ( t ) P m a x f ( t ) f m a x x i j { 0 , 1 } ρ i j { 0 , 1 }
Equation (9) indicates the power and frequency constraints.
The problem of optimizing the offloading decision has been identified as an NP-hard problem [,,]. Different from the above related works, our contribution investigates parallel meta-heuristics for solving the proposed model for dynamic offloading in fog computing, which is a complex problem. So far, our solution defines many threads, whereas each thread runs the specified meta-heuristic for a specific IoT device. In other words, we will investigate parallel meta-heuristics for solving the problem of dynamic offloading in fog computing. As stated in the related work section, population-based optimization techniques including genetic algorithms and PSO have been widely investigated for dynamic optimization. The parameters of the suggested algorithms consist of α(t), w(t), f(t), P(t), and h(t). Consequently, our solution runs the proposed genetic algorithm shown in Figure 1 in each time slot. Starting from the second time slot, our proposed genetic algorithm conducts an evaluation of all chromosomes and replaces a certain percentage of the worst chromosomes by new random ones. The remaining chromosomes will be kept for finding the optimal solution Fbest that represents the best fitness value for the current time slot. This process is repeated in all time slots for ensuring a trade-off between exploitation and exploration. Notably, our proposed genetic algorithm represents each chromosome as one-dimensional array. We have adopted an integer encoding, such that:
x i j = 1 , if   task   j   is   offloaded   using   sub carrier   x i 0
Figure 1. Flowchart of the proposed parallel genetic algorithm.
According to Equation (10), the first element of each chromosome includes the sub-carrier that is randomly initialized, although the other elements represent the offloading decision for the corresponding tasks. At each time slot, the proposed genetic algorithm consists of a set of sub-populations. Each thread generates a random set of initial solutions according to the encoding described in Equation (10). Each sub-population will be handled by a thread and will be generated randomly. The evaluation of the chromosomes of each sub-population is performed using the objective function defined in equation. Then, our genetic algorithm applies the tournament selection, crossover, and two-point mutation operators. The flowchart in Figure 1 depicts the idea of our solution. Assume that the duration of each time slot is Dslot , and random sub-populations are initiated. More specifically, our proposed algorithms rely on a time management module that triggers an event if the duration of a time slot has expired. Next, the chromosomes are evaluated, and the best solution is updated. Then, the crossover and mutation operators are applied, and this process is repeated during the same time slot. Upon the reception of a notification from the time management module, an evaluation of the chromosomes is performed, and 20% of the worst chromosomes are re-initialized before completing the remaining steps of the genetic algorithm. We also indicate that IoT devices may update their parameters at the beginning of each time slot. Assuming that new tasks arrive in the second time slot, our design extends the solutions manipulated by the considered thread by allocating random offloading decision variables for them. The second idea investigated in this paper consists of adapting PSO for solving the problem of dynamic offloading in fog computing. Following the same solution based on a genetic algorithm, we propose to initialize a set of swarms. Each swarm of particles corresponds to an IoT device. The swarms are executed in parallel using a set of threads. More specifically, each particle is represented by a one-dimensional array where the first position corresponds to the sub-carrier, and the other elements correspond the probability of task offloading. During each time slot, the fitness function is used to evaluate the particles based on the probability of offloading of each task. If the probability is high and exceeds 70%, a task offloading is possible; however, when the probability is low, local execution is possible, as shown in Figure 2. After conducting the fitness evaluation, each particle will update its position and velocity based on the following equations that balance between local and global search []:
v k + 1 i = W × v k i + c 1 × r 1 × ( p b e s t   i x k i ) + c 2 × r 2 × ( g b e s t   i x k i )
x k + 1 i = x k i + v k + 1 i
Figure 2. Flowchart of the proposed parallel PSO algorithm.
p b e s t represents the personal best solution of the particle, whereas g b e s t represents the global best solution. c 1   and c 2 are random parameters. The proposed parallel PSO is also synchronized to the time management module that provokes an event at the beginning of each time slot. We indicate that we have fixed the problem of boundary exceeding by re-initializing the particles that violate the allowed boundaries of the search space.
Assume the number of chromosomes/particles is n , the number of generated tasks is m , and the number of iterations is g . The complexity of the parallel genetic algorithm that is executed in each time slot is O ( g ( n + n × ( m + 1 ) + n × ( m + 1 ) + n ) ) . The first term of the complexity refers to the evaluation of the solutions, whereas the second and the third terms refer to the crossover and the mutation, respectively. The last term of the complexity refers to the re-initialization process. In the worst case, the last solution of the population represents the best solution, and the mutation may be applied for the last element of the considered solution. Meanwhile, the complexity of the parallel PSO algorithm that is executed in each time slot is   O ( g ( n + n × ( m + 1 ) + n × ( m + 1 ) + n ) ) . The first term of the complexity refers to the evaluation of the solutions, whereas the second and the third terms refer to the process of checking the offloading probability and the process of updating the velocity and the position, respectively. The last term of the complexity refers to the re-initialization process. It is obvious that the two parallel meta-heuristics have the same complexity, which is of the order O ( n × ( m + 1 ) ) .   Hence, the proposed scheme is appropriate for applications with low rate of task generation, where the IoT devices switch between active and idle states. Another parameter that impacts the time complexity concerns the number of time slots.

4. Simulation Results

We have performed extensive simulations using Java Eclipse Oxygen [] to demonstrate the effectiveness of the proposed meta-heuristics for dynamic offloading in fog computing. Our simulation enables initializing a random number of IoT devices and fog nodes. The tasks are generated according to a Poisson distribution. Table 2 illustrates the parameters of simulation. Most of them are similar to the settings adopted in [,,]. Hence, our aim is to validate the performance of parallel meta-heuristics for dynamic offloading in fog computing. The best and average fitness values when varying the number of IoT devices from three to twelve are obtained by running the proposed approaches under 30 repetitions, and they are listed in Table 3.
Table 2. Simulation parameters.
Table 3. Fitness value comparison.
It is obvious that the proposed parallel PSO and genetic algorithm generate better results compared to Lyapunov optimization in terms of the cost that is represented by the fitness function. In a similar manner, the proposed PSO outperforms the proposed genetic algorithm as it achieves the smallest best and average fitness value. Another finding concerns the scalability of the proposed genetic algorithm that is demonstrated by the fitness value, which decreases as the number of IoT devices increases too. The second metric used for evaluating dynamic optimization is the offline error that depends on the best fitness value. The results of the offline error for the proposed parallel PSO and the proposed parallel genetic algorithms are, respectively, illustrated in Figure 3. The green bars correspond to the offline error generated by the threads running the proposed parallel PSO algorithm, whereas the blue bars correspond to the offline error generated by the threads running the proposed parallel genetic algorithm. It is clear from Figure 3 that the offline error is very low. Therefore, the obtained offline errors indicate how well the solution meets the objectives of the problem. Additionally, the performance of the proposed parallel PSO in terms of the offline error is better than the performance of the proposed parallel genetic algorithm when the number of IoT devices has been increased to twelve. More specifically, the offline error achieved by all threads of the proposed parallel genetic algorithm is less than the offline error attained by the threads of the proposed parallel PSO when the number of IoT devices has been varied from three to eight. Accordingly, the proposed parallel genetic algorithm has the ability to find the optimal solution faster than the proposed PSO algorithm when the number of IoT devices varies from three to eight. However, the proposed parallel PSO algorithm outstands the proposed parallel genetic algorithm for quickly determining the optimal solution when the number of IoT devices is twelve.
Figure 3. Offline error comparison.
To further analyze the results obtained by the proposed scheme, we studied the impact of varying the number of sub-channels on the execution cost. The number of IoT devices has been fixed to five. It can be observed from Figure 4 that increasing the number of sub-channels increases the probability of offloading and therefore decreases the execution cost for the three considered methods. However, there is a significant difference between the proposed parallel PSO and Lyapunov optimization. The former achieves lower execution cost compared to Laypunov optimization. This indicates that the proposed parallel PSO is more inclined to generate optimal particles in each time slot and the generated tasks have more chance to be allocated to the suitable node.
Figure 4. Execution cost comparison.
Despite the advantages of our results, some limitations should be highlighted:
  • Our results did not depend upon realistic tasks.
  • Our contribution did not handle the security issues in fog computing.
  • Our contribution is limited to the offloading process.

5. Conclusions

This paper shows that parallel meta-heuristics are a powerful solution that can be extended for solving dynamic offloading in fog computing. Mainly, our contribution investigates the solution obtained at the end of each time slot for optimizing the solution of the next time slot, while re-initializing a certain percentage of the worst chromosomes/particles for jointly minimizing the delay and energy consumption. According to the extensive simulation results, the average and the best fitness functions converge. Additionally, the proposed parallel PSO approach achieves a minimal offline error, and it is scalable compared to the proposed parallel genetic algorithm. The comparison between the simulation results of the proposed approaches and Lyapunov optimization demonstrates the effectiveness of the proposed parallel PSO when increasing the number of IoT devices and the number of sub-channels. This paper is limited to the evaluation of the proposed generic model. So far, a realistic dataset for a specific application should be used for validating the proposed model. Another direction consists of deploying the simulation on a fog simulator and integrating the offloading technique to the fog scheduler. It is also recommended to consider security issues during task offloading. Potentially, a hybrid recent meta-heuristic will be developed for improving the obtained results by investigating the power of recent meta-heuristics in terms of the convergence and the trade-off between exploitation and exploration process.

Author Contributions

Conceptualization, S.I.A. and S.A.C.; methodology, D.S.M.H.; software, S.A.C.; validation, S.I.A.; formal analysis, S.A.C.; investigation, D.S.M.H.; resources, S.A.C.; data curation, S.I.A.; writing—original draft preparation, S.I.A.; writing—review and editing, S.A.C.; visualization, D.S.M.H.; supervision, S.I.A.; project administration, S.I.A.; funding acquisition, S.I.A. All authors have read and agreed to the published version of the manuscript.

Funding

This research project was funded by the Deanship of Scientific Research, Princess Nourah bint Abdulrahman University, through the Program of Research Project Funding After Publication, grant No (PRFA-P-42-10).

Institutional Review Board Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Marston, S.; Li, Z.; Bandyopadhyay, S.; Zhang, J.; Ghalsasi, A. Cloud computing—The business perspective. Decis. Support Syst. 2011, 51, 176–189. [Google Scholar] [CrossRef]
  2. Negash, B.; Rahmani, A.M.; Liljeberg, P.; Jantsch, A. Fog Computing Fundamentals in the Internet-of-Things. In Fog Computing in the Internet of Things; Rahmani, A.M., Liljeberg, P., Preden, J.-S., Jantsch, A., Eds.; Springer: Cham, Switzerland, 2018; pp. 3–13. [Google Scholar]
  3. Bonomi, F.; Milito, R.; Zhu, J.; Addepalli, S. Fog Computing and its Role in the Internet of Things. In Proceedings of the First Edition of the MCC Workshop on Mobile and Cloud Computing, Helsinki, Finland, 17 August 2012; pp. 13–15. [Google Scholar]
  4. Mahmud, R.; Kotagiri, R.; Buyya, R. Fog Computing: A Taxonomy, Survey and Future Directions. In Internet of Everything, 1st ed.; Springer: Berlin, Germany, 2018; pp. 103–130. [Google Scholar]
  5. Yi, S.; Hao, Z.; Qin, Z.; Li, Q. Fog computing: Platform and applications. In Proceedings of the Third IEEE Workshop on Hot Topics in Web Systems and Technologies, Washington, DC, USA, 12–13 November 2015; pp. 73–78. [Google Scholar]
  6. Alba, E.; Nakib, A.; Siarry, P. Metaheuristics for Dynamic Optimization; Studies in Computational Intelligence 433; Springer: Berling/Heidelberg, Germany, 2013; ISBN 978-3-642-30664-8. [Google Scholar]
  7. Abdallah, A.F.M.; Essam, D.L.; Sarker, R.A. Genetic Algorithms-based Techniques for Solving Dynamic Optimization Problems with Unknown Active Variables and Boundaries. In Innovative Computing, Optimization and Its Applications; Springer: Cham, Switzerland, 2018; pp. 151–166. [Google Scholar]
  8. Mukherjee, M.; Kumar, S.; Zhang, Q.; Matam, R.; Mavromoustakis, C.X.; Lv, Y.; Mastorakis, G. Task Data Offloading and Resource Allocation in Fog Computing with Multi-Task Delay Guarantee. IEEE Access 2019, 7, 152911–152918. [Google Scholar] [CrossRef]
  9. Yousefpour, A.; Ishigaki, G.; Gour, R.; Jue, J.P. On Reducing IoT Service Delay via Fog Offloading. IEEE Internet Things J. 2018, 5, 998–1010. [Google Scholar] [CrossRef] [Green Version]
  10. Al-Khafajiy, M.; Baker, T.; Al-Libawy, H.; Maamar, Z.; Aloqaily, M.; Jararweh, Y. Improving fog computing performance via Fog-2-Fog collaboration. Future Gener. Comput. Syst. 2019, 100, 266–280. [Google Scholar] [CrossRef]
  11. Chang, Z.; Zhou, Z.; Ristaniemi, T.; Niu, Z. Energy Efficient Optimization for Computation Offloading in Fog Computing System. In Proceedings of the IEEE Global Communications Conference, GLOBECOM, Singapore, 4–8 December 2017; pp. 1–6. [Google Scholar]
  12. Movahedi, Z.; Defude, B.; Hosseininia, A.M. An efficient population-based multi-objective task scheduling approach in fog computing systems. J. Cloud Comput. Adv. Syst. Appl. 2021, 10, 53. [Google Scholar] [CrossRef]
  13. Keshavarznejad, M.; Rezvani, M.H.; Adabi, S. Delay-aware optimization of energy consumption for task offloading in fog environments using metaheuristic algorithms. Clust. Comput. J. 2021, 24, 1825–1853. [Google Scholar] [CrossRef]
  14. Hussein, M.K.; Mousa, M.H. Efficient Task Offloading for IoT-Based Applications in Fog Computing Using Ant Colony Optimization. IEEE Access 2020, 8, 37191–37201. [Google Scholar] [CrossRef]
  15. AL-Amodi, S.; Patra, S.S.; Bhattacharya, S.; Mohanty, J.R.; Kumar, V.; Barik, R.K. Meta-heuristic Algorithm for Energy-Efficient Task Scheduling in Fog Computing. In Recent Trends in Electronics and Communication; Lecture Notes in Electrical Engineering; Springer: Singapore, 2022; Volume 777, pp. 905–925. [Google Scholar]
  16. Mao, Y.; Zhang, J.; Letaief, K.B. Dynamic Computation Offloading for Mobile-Edge Computing with Energy Harvesting Devices. IEEE J. Sel. Areas Commun. 2016, 34, 3590–3605. [Google Scholar] [CrossRef] [Green Version]
  17. Liu, C.; Bennis, M.; Poor, H.V. Latency and Reliability-Aware Task Offloading and Resource Allocation for Mobile Edge Computing. In Proceedings of the IEEE Globecom Workshops, Singapore, 4–8 December 2017; pp. 1–7. [Google Scholar]
  18. Gao, X.; Huang, X.; Bian, S.; Shao, Z.; Yang, Y. PORA: Predictive Offloading and Resource Allocation in Dynamic Fog Computing Systems. In Proceedings of the IEEE International Conference on Communications, Changchun, China, 11–13 August 2019; pp. 1–6. [Google Scholar]
  19. Chang, Z.; Liu, L.; Guo, X.; Chen, T.; Ristaniemi, T. Dynamic Resource Allocation and Computation Offloading for Edge Computing. In Proceedings of the AIAI Workshops, Halkidiki, Greece, 5–7 June 2020; pp. 61–73. [Google Scholar]
  20. Alenizi, F.; Rana, O. Dynamically Controlling Offloading Thresholds in Fog Systems. Sensors 2021, 21, 2512. [Google Scholar] [CrossRef]
  21. Wei, Z.; Jiang, H. Optimal Offloading in Fog Computing Systems with Non-Orthogonal Multiple Access. IEEE Access 2018, 6, 49767–49778. [Google Scholar] [CrossRef]
  22. Mao, Y.; Zhang, J.; Song, S.H.; Letaief, K.B. Power-Delay Tradeoff in Multi-User Mobile-Edge Computing Systems. In Proceedings of the IEEE Global Communications Conference, Washington, DC, USA, 4–8 December 2016; pp. 1–6. [Google Scholar]
  23. Assila, B.; Kobbane, A.; El Koutbi, M. A Many-to-One Matching Game Approach to Achieve Low-Latency Exploiting Fogs and Caching. In Proceedings of the Ninth IFIP International Conference on New Technologies, Mobility and Security, Paris, France, 26–28 February 2018; pp. 1–2. [Google Scholar]
  24. Yang, M.; Zhu, H.; Wang, H.; Koucheryavy, Y.; Samouylov, K.; Qian, H. An Online Learning Approach to Computation Offloading in Dynamic Fog Networks. IEEE Internet Things J. 2021, 8, 1572–1584. [Google Scholar] [CrossRef]
  25. Liu, C.; Liu, K.; Guo, S.; Xie, R.; Lee, V.C.S.; Son, S.H. Adaptive Offloading for Time-Critical Tasks in Heterogeneous Internet of Vehicles. IEEE Internet Things J. 2020, 7, 7999–8011. [Google Scholar] [CrossRef]
  26. Mukherjee, M.; Guo, M.; Lloret, J.; Iqbal, R.; Zhang, Q. Deadline-Aware Fair Scheduling for Offloaded Tasks in Fog Computing with Inter-Fog Dependency. IEEE Commun. Lett. 2020, 24, 307–311. [Google Scholar] [CrossRef]
  27. Zhao, S.; Yang, Y.; Shao, Z.; Yang, X.; Qian, H.; Wang, C. FEMOS: Fog-Enabled Multitier Operations Scheduling in Dynamic Wireless Networks. IEEE Internet Things J. 2018, 5, 1169–1183. [Google Scholar] [CrossRef]
  28. Tu, Y.; Chen, H.; Yan, L.; Zhou, X. Task offloading based on LSTM prediction and deep reinforcement learning for efficient edge computing in IoT. Future Internet 2022, 14, 30. [Google Scholar] [CrossRef]
  29. Lakhan, A.; Mastoi, Q.; Elhoseny, M.; Memon, M.S.; Abed-Mohammed, M. Deep neural network-based application partitioning and scheduling for hospitals and medical enterprises using IoT assisted mobile fog cloud. Entrep. Inf. Syst. 2021, 1–23. [Google Scholar] [CrossRef]
  30. Lakhan, A.; Memon, M.S.; Elhoseny, M.; Abed-Mohammed, M.; Qabulio, M.; Abdel-Basset, M. Cost-efficient mobility offloading and task scheduling for microservices iovt applications in container-based fog cloud network. Clust. Comput. 2021, 8, 1–23. [Google Scholar] [CrossRef]
  31. Lakhan, A.; Mohammed, M.A.; Rashid, A.N.; Kadry, S.; Panityakul, T.; Abdulkareem, K.H.; Thinnukool, O. Smart-Contract Aware Ethereum and Client-Fog-Cloud Healthcare System. Sensors 2021, 21, 4093. [Google Scholar] [CrossRef]
  32. Mutlag, A.A.; Ghani, M.K.A.; Mohammed, M.A.; Lakhan, A.; Mohd, O.; Abdulkareem, K.H.; Garcia-Zapirain, B. Multi-Agent Systems in Fog–Cloud Computing for Critical Healthcare Task Management Model (CHTM) Used for ECG Monitoring. Sensors 2021, 21, 6923. [Google Scholar] [CrossRef]
  33. Lakhan, A.; Abed-Mohammed, M.; Ibrahim, D.A.; Abdulkareem, K.H. Bio-inspired robotics enabled schemes in blockchain-fog-cloud assisted IoMT environment. J. King Saud Univ. Comput. Inf. Sci. 2021, 30, 1–12. [Google Scholar] [CrossRef]
  34. Li, L.; Guo, M.; Ma, L.; Mao, H.; Guan, Q. Online Workload Allocation via Fog-Fog-Cloud Cooperation to Reduce IoT Task Service Delay. Sensors 2019, 19, 3830. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  35. Fan, Q.; Ansari, N. Workload Allocation in Hierarchical Cloudlet Networks. IEEE Commun. Lett. 2018, 22, 820–823. [Google Scholar] [CrossRef]
  36. Du, J.; Zhao, L.; Feng, J.; Chu, X. Computation offloading and resource allocation in mixed fog/cloud computing systems with min-max fairness guarantee. IEEE Trans. Commun. 2018, 66, 1594–1608. [Google Scholar] [CrossRef] [Green Version]
  37. Wang, D.; Liu, Z.; Wang, X.; Lan, Y. Mobility-aware task offloading and migration Schemes in Fog Computing Networks. IEEE Access 2019, 7, 43356–43368. [Google Scholar] [CrossRef]
  38. Swain, C.; Sahoo, M.N.; Satpathy, A. SPATO: A student project allocation based task offloading in IoT-Fog systems. In Proceedings of the ICC 2021—IEEE International Conference on Communications, Montreal, QC, Canada, 14–23 June 2021; pp. 1–6. [Google Scholar]
  39. Huang, S.; Tian, N.; Wang, Y.; Ji, Z. Particle swarm optimization using multi-information characteristics of all personal-best information. SpringerPlus 2016, 5, 1632. [Google Scholar] [CrossRef] [Green Version]
  40. Eclipse Foundation. Available online: https://www.eclipse.org/oxygen/ (accessed on 21 February 2022).
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Article Metrics

Citations

Article Access Statistics

Multiple requests from the same IP address are counted as one view.