Differential Evolution Based Optimal Task Scheduling in ... ??scheduling, information of the job components or task ... Workflow Scheduling: ... presented a task scheduled based on load balancing Mutation ...

Download Differential Evolution Based Optimal Task Scheduling in ... ??scheduling, information of the job components or task ... Workflow Scheduling: ... presented a task scheduled based on load balancing Mutation ...

Post on 06-Feb-2018

215 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • 2016, IJARCSSE All Rights Reserved Page | 340

    Volume 6, Issue 6, June 2016 ISSN: 2277 128X

    International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com

    Differential Evolution Based Optimal Task Scheduling in

    Cloud Computing Anshul Ahluwalia

    *

    Research Scholar, M.tech Computer Science

    JMIT, Kurukshetra University, Haryana, India

    Vivek Sharma

    Associate Professor, Department of Computer Engg.

    JMIT, Kurukshetra University, Haryana, India

    Abstract: In today's scenario, cloud computing has been renowned as a new mode of service in the area of computer

    science. This paper initially starts from the definition, also the key technology and corresponding characteristic that

    are reviewed from all the aspects of cloud computing. In both literature and practice, the cloud computing face the

    large quantity of the cloud users or client groups and the quantity of number of tasks and the massive data, so the

    concern for scheduling task processing is very significant. How to schedule the tasks efficiently has now become an

    important issue rather a problem to be solved in the field of cloud computing. Hence for the programming framework

    of cloud computing, a Differential Evolution(DE) Algorithm can get an efficient optimized task scheduling

    completion time and better results, and the results of the scheduling task average make-span completion time is far

    more better than existing PSO(particle swarm optimization)algorithm due to the fast convergence property of

    Differential Evolution Algorithm. The simulation result of this algorithm is compared with other algorithms, the

    results analysis show that, this algorithm DE is much better than the existing PSO algorithm and also it can be used

    as an efficient task scheduling algorithm in cloud computing environment.

    Keywords: Cloud Computing, Task Scheduling Algorithm, Differential Evolution Algorithm, DE, Optimization,

    Scheduling Types, Particle swarm optimization (PSO).

    I. INTRODUCTION Cloud computing is mainly meant for the delivery of computing services over the Internet. Cloud services allow

    individuals and businesses to access or use the software and hardware that are in turn managed by third parties at remote

    locations. Examples of cloud services includes the online file storage, the social networking sites, a web-mail, and an

    online business applications.[10] The cloud computing model has the open access to information and computer resources

    from anywhere or any part of that a network the connection is available. [1]Cloud computing provides a shared pool of

    the resources, including the data storage space, networks, the computer processing power, and a specialized corporate

    and a user applications. Cloud computing architecture has two most important components that are generally known as

    the front end and other is the back end. Where the Front end is that part of cloud which is visible to the user of cloud.

    This include applications and the computer that user look to access the cloud. Back end of cloud computing is nothing

    but it is the cloud itself, which mainly comprises of computers, storage devices.[2]

    Fig.1 Layered View of Cloud Architecture

    http://www.ijarcsse.com/

  • Ahluwalia et al., International Journal of Advanced Research in Computer Science and Software Engineering 6(6),

    June- 2016, pp. 340-347

    2016, IJARCSSE All Rights Reserved Page | 341

    Cloud computing is an internet based computing that delivers the users an infrastructure as a service (IaaS), platform as a

    service (PaaS), and software as services (SaaS). The services are mostly made available on a subscription based using

    pay per demand user model to customers, regardless of their location. IaaS is the lower most layers of the cloud

    computing systems and it basically provides a virtualized resource such as the computation, communication and storage

    that are available on demand. PaaS makes the cloud so easily as programmable. SaaS can be called as the software

    delivery model. [8]

    Cloud Scheduling: Traditional cloud scheduling algorithms typically aim to minimize and decrease the time and cost for

    processing all tasks scheduled. However, in cloud computing environment, computing capability varies from different

    resources and the cost of the resource usage. Therefore, it is important to take into consideration the cost. A scheduling

    algorithm is implemented by programmers to schedule the task with maximum estimated gain or profit and execute the

    task in the queue.

    Need for Cloud Scheduling: In cloud computing, users may utilize hundreds of thousands of virtualized resources and it

    is impossible for everyone to allocate each task manually. Due to commercialization and Virtualization, cloud computing

    left the task scheduling complexity to virtual machine layer by utilizing resources virtually. Hence to assign the resources

    to each task efficiently and effectively, Scheduling plays an important role in cloud computing. [7]

    Types of Cloud Scheduling: The different types of cloud scheduling are:

    User level scheduling: User level scheduling comprises of market based and auction based scheduling. FIFO scheduling, priority based, non pre-emptive scheduling etc. are used in user level scheduling.

    Cloud Service Scheduling: Cloud service scheduling is classified at user level and system level. At user level, it mainly considers the service regarding problems between the provider and the user. At system level, scheduling

    and resource management is done. In addition to real time satisfaction, fault tolerance, reliability, resource

    sharing and QoS parameters are also taken under consideration.[12]

    Static and Dynamic Scheduling: Static scheduling permits pre-fetching of required data and pipelining of distant stages of task execution. Static scheduling imposes minimum runtime overhead. In case of dynamic

    scheduling, information of the job components or task is not known before. Thus the execution time of the task

    may not be known and the allocation of tasks is done only as the application executes.

    Heuristics Scheduling: In cloud environment, heuristic based scheduling can be done to optimize results. More accurate results can be built by heuristic methods.[4]

    Workflow Scheduling: For the management of workflow execution, workflow scheduling is done.

    Real Time Scheduling: Real Time Scheduling in cloud environment is done to increase the throughput and to decrease the average response time instead of meeting deadline.

    Performance Parameters of Cloud: Various cloud scheduling parameters are discussed below:

    Makespan: (completion time of a schedule): The time variation between the start and finish of a sequence of schedule.

    Resource Cost: Resource cost in a cloud can be determined by resource capacity and occupied time. Powerful resources led to higher cost.

    Scalability: Capability to cope and perform with increased workload and has ability to add resources effectively.

    Reliability: The ability of a system to continue work even in case of failure.

    Resource Utilization: This parameter defines how effectively the system utilizes the resources.

    II. RELATED WORK 1A.I.Awad,N.A.El-Hefnawy[1] presented a task scheduled based on load balancing Mutation Particle Swarm

    Optimization (LBMPSO) that is used to minimize cost, minimize round, trip time, minimize execution time, minimize

    transmission time, achieve load balancing between tasks and virtual machine also proved that LBMPSO improves the

    Reliability of cloud computing. 2D.I. George Amalarethinam [2] presented a CFCSC algorithm that balances the load and

    minimizes the total monetary cost as compared to the HEFT algorithm. The CFCSC algorithm saves cost by using easier

    cost function. 3Antony Thomas [3] formulated the makespan factor tested upon 3 cloud scheduling scenarios i.e. length

    of task, task priority and both cloudlet priority and cloudlet length. As per result the makespan of task decreased after a

    certain value in number of tasks.4Mala Kalra [4] proposes the application of metaheuristic techniques in the area of

    scheduling in cloud and grid environments. Metaheuristic techniques are usually slower than deterministic algorithms

    and the generated solutions may not be optimal, thus the research is towards improving the convergence speed and

    quality of the solution.5Atul Vikas Lakra [5] proposed a multi-objective task scheduling algorithm for mapping tasks to a

    Vms in order to improve the throughput of the data center and reduce the cost without violating the SLA (Service Level

    Agreement) for an application in cloud SaaS environment. The proposed algorithm provides an optimal scheduling

    method.6Alexander Visheratin[6] investigated the applicability of previously developed Metaheuristic algorithm co

    evolutional genetic algorithm (CGA) for scheduling series of workflows with hard deadlines constraints.7Brototi

    Mondal[7] formulated a soft computing based load balancing approach has been proposed. A local optimization approach

    Stochastic Hill climbing is used for allocation of incoming jobs to the servers or virtual machines (VMs). Performance of

    the algorithm is analyzed both qualitatively and quantitatively using CloudAnalyst.8Kook-Hyun Choi[8] proposed the

    research on the calculation of SaaS hardware capacity, the foundation of cloud services, is basic research that is required

    to expand into various projects within the cloud. 9N. Ch. S. N. Iyengar[9] proposed that the significance of the proposed

  • Ahluwalia et al., International Journal of Advanced Research in Computer Science and Software Engineering 6(6),

    June- 2016, pp. 340-347

    2016, IJARCSSE All Rights Reserved Page | 342

    mechanism is detecting the higher rate of overload threats at earlier layers. Constant monitoring and stringent protocol

    setup for incoming traffic strengthens the proposed mechanism against several kinds of overload threats. Based on the

    traffic pattern of incoming requestors, the vulnerability is observed and outwitted at various layers.10

    Kook-Hyun

    Choi[10] researched on the hardware capacity calculation technique for SaaS, the foundation of cloud services, is key

    research that is needed to expand into a variety of projects within the cloud in the future. In this research, the method and

    criteria for capacity calculation of SaaS-based hardware are presented.

    III. PROPOSED APPROACH Task scheduling in cloud computing is implemented by using the Differential Evolution Algorithm which defines itself

    by an important factor of fast convergence followed by many more which made this algorithm more faster than the rest

    of the earlier used algorithms by decreasing the makespan factor after working upon the number of tasks and a virtual

    machine.

    Differential Evolution Algorithm: One extremely powerful algorithm from evolutionary computation due to its excellent

    convergence characteristics and few control parameters is Differential Evolution (DE). Differential Evolution (DE) is an

    efficient optimization approach.

    Storn and Prince in 1995 is the inventor of Differential evolution algorithm. Differential Evolution is a simple yet very efficient optimization approach in solving a variety of task

    scheduling problems with many real-world applications.

    Differential evolution combined with evolution strategies (ESs) and evolutionary programming (EP) can together be categorized into a class of population based, with Derivative free methods known as Evolutionary

    algorithm.

    All these approaches mimic Darwinian evolution and evolve a population of individuals from one generation to another generation by an analogous evolutionary operational factors such as mutation, crossover and selection.

    IV. DIFFERENTIAL EVOLUTION OPTIMIZATION PROCESS Differential evolution is a renowned for a best solution to solve the real valued problems based on the principles of the

    natural evolution using a population P of Np floating point-encoded individuals Eq.(1) that evolve over G generations to

    finally reach an optimal solution. In DE the differential Evolution algorithm, the size of population remains constant

    throughout the process of optimization. Each individual or user or a candidate solution is actually a vector that contains

    same parameters as in Eq.(2) as an issue the problem decision variables D. The basic idea employs that the difference of

    the two randomly selected parameter vectors as the source of the random variations for a third parameter vector. So here

    we depict a more rigorous and renowned description of this new optimization method.

    P = [Y1(G)

    ......................YNp(G)

    ] Eq.(1)

    Yi(G)

    = [ X1i(G)

    , X2i(G)

    ,........., XDi(G)

    ) ] i = 1,2......Np Eq.(2)

    Extracting the distance and direction of the information from the population to create or generate random deviations

    result in an adaptive scheme with excellent fast convergence properties. Differential Evolution creates a new off springs

    just by generating a noisy replication of each individual of the population. The individual in turn performs better from the

    parent vector (target) and a replica (trail vector) advances to next generation.

    This optimal task scheduler process is carried out with three basic operations given below:

    Mutation

    Cross-over

    Selection

    First of all the mutation operation activates and creates the mutant vectors by perturbing each and every target vector

    with a weighted difference of the two other individuals selected randomly. Once the cross over operation generates the

    trail vectors by mixing the parameters of the mutation vectors directly with the target vectors, in accordance with a

    selected probability distribution. In Final step, the selection operator produces the next generation population by selecting

    between the corresponding target vectors and trial vectors that fits better the actual objective function.

    A. Initialization

    The first step in the differential evolution DE optimization process is basically to create an initial population of candidate

    solutions generally by assigning random values to each and every decision parameter of each individual of the existing

    population. These values must lie within the feasible bounds of the decision variable that can be generated by an Eq....

Recommended

View more >