# An Enhanced Discrete Symbiotic Organism Search Algorithm for Optimal Task Scheduling in the Cloud
## 1 Introduction  
Cloud computing uses many resources, including storage, processors, networks, memory, and applications that have been provisioned as services, as well as continually changing information technology (IT) resources [1]. In this regard, the paradigm of cloud computing has drastically brought down the cost of acquiring both software and hardware, as well as that of the deployment of applications and the cost of maintenance. Due to the high scalability in the cloud, customers are not worried about inaccurate estimation of theservice scale, which can lead to wastage of resources when over-provisioned or a loss of revenue when under-provisioned [2; 3]. Cloud computing shares resources between users of the cloud via the concept known as virtualisation. Virtualisation allows several environments that are running remotely to be safely integrated into physical machines for the optimal usage of the physical resources and energy [2]. Cloud data are situated crosswise over servers that are interconnected through resources that are networked and accessed through virtual machines (VMs). In this way, VMs in cloud server farms are a critical element of software stacks. An example of a cloud platform that renders infrastructure services in the form of VMs is the Amazon Elastic Computing Cloud (EC2) [4]. One of the central aims of cloud computing is to maximise the revenue for both sides of the cloud provider, as well as for the consumer. Task scheduling is an NP-complete problem, and it has developed as one of the focuses in cloud computing [5], as inefficient task scheduling results in a loss of revenue, degradation of execution, and violation of service-level agreements (SLAs). Hence, strategies that are efficient for task scheduling are necessary in order to minimise metrics that are computationally based, such as the makespan, response time, system throughput, and system utilisation, as well as those that are network-based, such as the traffic volume, network communication cost, data communication cost, and round-trip time [6]. These measurement metrics are cardinal in observing the cloud procedures for handling difficulties--for example, quality of service (QoS) and SLA guarantees, load balancing, energy efficiency, and fault tolerance [6]. There is existing research on task scheduling with encouraging solutions in the cloud computing domain, yet problems related to task scheduling still remain NP-complete [7; 8; 9; 10]. In cloud computing, the vast majority of task scheduling strategies applied are rule-based [11; 12; 13] because they are easy to implement. According to [5], with regard to the complex problems of task scheduling, rule-based strategies are characterised by poor performance. Recently, the commonly used metaheuristic strategies for task scheduling problems in grids, as well as in cloud computing environments, have included the symbiotic organism search (SOS) [7; 14; 9], genetic algorithms (GAs) [15; 16; 17; 18; 19], particle swarm optimisation (PSO) [20; 21; 22; 23; 24; 25; 26; 27; 28; 29; 30], ant colony optimisation (ACO) [31; 32; 33], hybrid firefly-genetic [34], the whale optimisation algorithm (WOA) [35], and hybrid electro search with a genetic algorithm (HESGA) [36]. SOS is faster in terms of convergence compared with PSO, GAs, and ACO due to its exploratory and exploitative features for finding optimal solutions [9; 14; 24; 37]. Because of the better execution of SOS compared to that of PSO, ACO, and GAs, variants of SOS were utilised to benchmark our proposed task scheduling strategy. It is well known in the literature that metaheuristics are superior to heuristics or local search scheduling strategies, which is our reason for using the metaheuristic technique. In this paper, an enhanced discrete symbiotic organism search (eDSOS) strategy is proposed and used to schedule set-of-tasks applications in a cloud computing setting; therefore, the costs of network communication and of data transfer are not key optimisation setbacks when addressing independent tasks.