# A Novel Fault-Tolerant Aware Task Scheduler Using Deep Reinforcement Learning in Cloud Computing
## 2 Related Works
The model can be fine-tuned for a variety of objectives and workloads by carefully modeling the reward function. The authors tested the algorithm under varying workloads and compared its results to those of three heuristic algorithms (round robin, min-max, and FCFS). The authors of [18] introduce TeNOR, which is an effective resource and network service mapping technique to build a microservice architecture for network function virtualization. Reinforcement learning is used in one approach to map available resources. Experiments show that the RL approach to large-scale NS has gained widespread popularity as a result of its iterative learning of optimal technique for resource mapping. In [19], a flexible framework for handling faults in a cloud computing model is developed, which is integrated into a Hadoop framework.. It uses Markov decision process and ML techniques to generated schedules. ATLAS+, an adaptive fault-aware scheduler for Hadoop, was used in the framework's deployment. Compared to Fair, FIFO, and Capacity Hadoop schedulers,it greatly minimizes execution time and rate of failure and improves resource utilization. The authors of [20] proposed a task scheduling mechanism formulated for heterogeneous machine learning applications to run their tasks on edge computing systems to improve task completion rate and minimize energy consumption. They leveraged fairness among the different heterogeneous applications without allowing bias of the scheduler towards these tasks. In [21], the authors developed a fault-tolerant workflow scheduler which is based on a combination of a heuristic approach and a reinforcement learning mechanism. The authors used a Markov decision process to generate schedules while resubmitting and replication strategies are used to tackle fault tolerance in this mechanism. In [22], a hybridized approach formulated by the authors is used to address computation time of tasks by using whale optimization in the generation of scheduling decisions and convolutional neural networks for optimization of generated schedules by addressing computation time. The authors of [23] modeled a layered architecture which anticipates failures and developed a proactive mechanism by migrating the VM to another pool of VMs. This mechanism improved the makespan of the proposed approach over existing state-of-the-art algorithms. In [24], the authors developed a task assignment mechanism in fog computing nodes while achieving reliability in executing tasks, i.e., execution of tasks under deadline constraints. The main aim of this approach is to identify suitable fog nodes to compute the tasks and assign tasks to them by using an RL-based approach. This RELIEF approach dominates other existing algorithms by improving reliability. The Section 2 and Table 1 represent various task scheduling algorithms modeled using various metaheuristic approaches as well as ML techniques. We carefully studied the existing literature and identified that some of the previous authors addressed parameters which influence the task scheduling such as makespan, computation time, resource utilization, and fault tolerance that give near-optimal solutions and generate schedules. However, in our research, the novelty is that we carefully evaluated the suitability of tasks to VMs based on their priorities. In this research, priorities mean both tasks and VMs based on electricity unit cost. Thus, a task with the highest priority should be mapped to a VM with the highest priority that means a VM with a low electricity unit cost. These priority calculations of both tasks and VMs based on electricity cost were not carried out by the previous authors. Moreover, we calculated task priorities based on the length of the task and processing capacity of VMs. When there is a better suitability of a VM for a task, then there is much less chance of failure of the task. These priorities are fed to the scheduler which is integrated with the DQN model to generate schedules while addressing parameters, i.e., makespan, rate of failure, and energy consumption.