A Level-Wise Load Balanced Scientific Workflow Execution Optimization using NSGA-II

Similar documents
Lamarckian Repair and Darwinian Repair in EMO Algorithms for Multiobjective 0/1 Knapsack Problems

Mechanical Component Design for Multiple Objectives Using Elitist Non-Dominated Sorting GA

An Exploration of Multi-Objective Scientific Workflow Scheduling in Cloud

Reference Point Based Evolutionary Approach for Workflow Grid Scheduling

Comparison of Evolutionary Multiobjective Optimization with Reference Solution-Based Single-Objective Approach

Incorporation of Scalarizing Fitness Functions into Evolutionary Multiobjective Optimization Algorithms

A Similarity-Based Mating Scheme for Evolutionary Multiobjective Optimization

Evolutionary Algorithms: Lecture 4. Department of Cybernetics, CTU Prague.

SPEA2+: Improving the Performance of the Strength Pareto Evolutionary Algorithm 2

DEMO: Differential Evolution for Multiobjective Optimization

Recombination of Similar Parents in EMO Algorithms

Multi-objective Optimization

QUT Digital Repository:

Mechanical Component Design for Multiple Objectives Using Elitist Non-Dominated Sorting GA

An Evolutionary Multi-Objective Crowding Algorithm (EMOCA): Benchmark Test Function Results

Performance Assessment of DMOEA-DD with CEC 2009 MOEA Competition Test Instances

NCGA : Neighborhood Cultivation Genetic Algorithm for Multi-Objective Optimization Problems

Multiobjective Optimization Using Adaptive Pareto Archived Evolution Strategy

Solving Multi-objective Optimisation Problems Using the Potential Pareto Regions Evolutionary Algorithm

Finding a preferred diverse set of Pareto-optimal solutions for a limited number of function calls

Improved S-CDAS using Crossover Controlling the Number of Crossed Genes for Many-objective Optimization

Multi-Objective Pipe Smoothing Genetic Algorithm For Water Distribution Network Design

Multi-objective Optimization

Using ɛ-dominance for Hidden and Degenerated Pareto-Fronts

Multi-objective Optimization Algorithm based on Magnetotactic Bacterium

Bi-Objective Optimization for Scheduling in Heterogeneous Computing Systems

Development of Evolutionary Multi-Objective Optimization

Optimizing Delivery Time in Multi-Objective Vehicle Routing Problems with Time Windows

International Conference on Computer Applications in Shipbuilding (ICCAS-2009) Shanghai, China Vol.2, pp

Workflow scheduling algorithms for hard-deadline constrained cloud environments

Particle Swarm Optimization Approach with Parameter-wise Hill-climbing Heuristic for Task Allocation of Workflow Applications on the Cloud

Investigating the Effect of Parallelism in Decomposition Based Evolutionary Many-Objective Optimization Algorithms

A Search Method with User s Preference Direction using Reference Lines

Multiobjective Prototype Optimization with Evolved Improvement Steps

A Distance Metric for Evolutionary Many-Objective Optimization Algorithms Using User-Preferences

Genetic Algorithm Performance with Different Selection Methods in Solving Multi-Objective Network Design Problem

Exploration of Pareto Frontier Using a Fuzzy Controlled Hybrid Line Search

Revisiting the NSGA-II Crowding-Distance Computation

EVOLUTIONARY algorithms (EAs) are a class of

An Evolutionary Algorithm for the Multi-objective Shortest Path Problem

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL., NO., MONTH YEAR 1

Integration of Workflow Partitioning and Resource Provisioning

WORKFLOW ENGINE FOR CLOUDS

Non-Dominated Bi-Objective Genetic Mining Algorithm

DCMOGADES: Distributed Cooperation model of Multi-Objective Genetic Algorithm with Distributed Scheme

A Study on Load Balancing in Cloud Computing * Parveen Kumar,* Er.Mandeep Kaur Guru kashi University, Talwandi Sabo

Evolutionary multi-objective algorithm design issues

Reference Point-Based Particle Swarm Optimization Using a Steady-State Approach

A QoS Load Balancing Scheduling Algorithm in Cloud Environment

Communication Strategies in Distributed Evolutionary Algorithms for Multi-objective Optimization

Adaptive Multi-objective Particle Swarm Optimization Algorithm

Simulation of Cloud Computing Environments with CloudSim

A genetic algorithms approach to optimization parameter space of Geant-V prototype

Approximation-Guided Evolutionary Multi-Objective Optimization

Scheduling distributed applications can be challenging in a multi-cloud environment due to the lack of knowledge

Efficient Non-domination Level Update Approach for Steady-State Evolutionary Multiobjective Optimization

The Study of Genetic Algorithm-based Task Scheduling for Cloud Computing

Assessing the Convergence Properties of NSGA-II for Direct Crashworthiness Optimization

THIS PAPER proposes a hybrid decoding to apply with

X/$ IEEE

Finding Sets of Non-Dominated Solutions with High Spread and Well-Balanced Distribution using Generalized Strength Pareto Evolutionary Algorithm

Multiobjective Formulations of Fuzzy Rule-Based Classification System Design

Late Parallelization and Feedback Approaches for Distributed Computation of Evolutionary Multiobjective Optimization Algorithms

Multiobjective Job-Shop Scheduling With Genetic Algorithms Using a New Representation and Standard Uniform Crossover

Evolving Human Competitive Research Spectra-Based Note Fault Localisation Techniques

The Multi-Objective Genetic Algorithm Based Techniques for Intrusion Detection

SPEA2: Improving the strength pareto evolutionary algorithm

International Journal of Computer Techniques - Volume 3 Issue 2, Mar-Apr 2016

Comparing Algorithms, Representations and Operators for the Multi-Objective Knapsack Problem

Fast Efficient Clustering Algorithm for Balanced Data

EFFICIENT ALLOCATION OF DYNAMIC RESOURCES IN A CLOUD

minimizing minimizing

Evolutionary Multi-objective Optimization of Business Process Designs with Pre-processing

A Multi-Objective Approach for QoS-aware Service Composition

Ajay Sharma Gaurav Kapur VK Kaushik LC Mangal RC Agarwal. Defence Electronics Applications Laboratory, Dehradun DRDO, India

Multi-Objective Optimization using Evolutionary Algorithms

A Fast Elitist Non-Dominated Sorting Genetic Algorithm for Multi-Objective Optimization: NSGA-II

Combining Convergence and Diversity in Evolutionary Multi-Objective Optimization

Evolutionary Computation

Unsupervised Feature Selection Using Multi-Objective Genetic Algorithms for Handwritten Word Recognition

Approximation Model Guided Selection for Evolutionary Multiobjective Optimization

An Application of Genetic Algorithm for Auto-body Panel Die-design Case Library Based on Grid

Particle Swarm Optimization to Solve Optimization Problems

Experimental Study on Bound Handling Techniques for Multi-Objective Particle Swarm Optimization

Research Article Path Planning Using a Hybrid Evolutionary Algorithm Based on Tree Structure Encoding

Evolutionary Multiobjective Bayesian Optimization Algorithm: Experimental Study

Multi-Objective Optimization using Evolutionary Algorithms

An Approach to Mapping Scientific Workflow in Cloud Computing data centers to Minimize Costs of Workflow Execution

ScienceDirect. Differential Search Algorithm for Multiobjective Problems

INTERACTIVE MULTI-OBJECTIVE GENETIC ALGORITHMS FOR THE BUS DRIVER SCHEDULING PROBLEM

CHAPTER 6 ENERGY AWARE SCHEDULING ALGORITHMS IN CLOUD ENVIRONMENT

Neural Network Weight Selection Using Genetic Algorithms

Evolutionary Algorithm for Embedded System Topology Optimization. Supervisor: Prof. Dr. Martin Radetzki Author: Haowei Wang

Multi-Objective Evolutionary Algorithms

A Level-wise Priority Based Task Scheduling for Heterogeneous Systems

Online Optimization of VM Deployment in IaaS Cloud

A Fast Approximation-Guided Evolutionary Multi-Objective Algorithm

Hybrid Genetic Algorithms for Multi-objective Optimisation of Water Distribution Networks

Hybrid Bee Ant Colony Algorithm for Effective Load Balancing And Job Scheduling In Cloud Computing

Double Threshold Based Load Balancing Approach by Using VM Migration for the Cloud Computing Environment

Transcription:

2017 17th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing A Level-Wise Load Balanced Scientific Workflow Execution Optimization using NSGA-II Phyo Thandar Thant Graduate School of Information Science and Technology Hokkaido University Sapporo, Hokkaido, Japan phyothandarthant@ist.hokudai.ac.jp Courtney Powell, Martin Schlueter, Masaharu Munetomo Information Initiative Center, Hokkaido University Sapporo, Hokkaido, Japan kotoni@ist.hokudai.ac.jp, schlueter@midaco-solver.com munetomo@iic.hokudai.ac.jp Abstract Over the past decade, cloud computing has grown in popularity for the processing of scientific applications as a result of the scalability of the cloud and the ready availability of on-demand computing and storage resources. It is also a costeffective alternative for scientific workflow executions with a pay-per-use paradigm. However, providing services with optimal performance at the lowest financial resource deployment cost is still challenging. Several fine-grained tasks are included in scientific workflow applications, and efficient execution of these tasks according to their processing dependency to minimize the overall makespan during workflow execution is an important research area. In this paper, a system for level-wise workflow makespan optimization and virtual machine deployment cost minimization for overall workflow optimization in cloud infrastructure is proposed. Further, balanced task clustering, to ensure load balancing in different virtual machine instances at each workflow level during workflow execution, is also considered. The system retrieves the necessary workflow information from a directed acyclic graph and uses the nondominated sorting genetic algorithm II (NSGA-II) to carry out multiobjective optimization. Pareto front solutions obtained for makespan time and instance resource deployment cost for several scientific workflow applications verify the efficacy of our system. Keywords Scientific Workflow Applications; Cloud Computing; Multiobjective Optimization; NSGA-II I. INTRODUCTION Grid computing systems are widely used in scientific applications (e.g., [3], [16]) as they provide parallelism through high-performance computational infrastructure. However, nowadays, cloud computing has supplanted grid computing for the execution of scientific applications as it provides enormous amounts of scalable computational resources on demand. In cloud computing, resources such as networks, storage, applications, and servers can be allocated from a shared resource pool with minimal management or interaction [17]. In general, cloud computing provides Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS) in a pay-per-use model. Of these services, IaaS is the most frequently utilized as it provides customers with an elastic facility to provision or release virtual machines (VMs) in the cloud infrastructure [18]. As a result of its elastic resource provisioning mechanism, the cloud is widely used in several application areas including large-scale scientific applications. A workflow is a common model for describing the number of tasks, control, and data dependencies among the tasks of scientific applications [18]. Although workflow executions can be conducted with grid computing, cloud computing has been found to be much easier to set up and use, more predictable, capable of giving more uniform performance, and incurring less failure than grid computing. In the literature, it is assumed that the monetary cost for workflow execution is based on the amount of resources actually used, i.e., task execution cost correlated to the total number of CPU cycles for all tasks. By using cloud infrastructure, customers can also reduce the processing cost of workflow applications with the aid of the cloud s pay-per-use model. Moreover, a task that shares the same time interval with a previous task hosted in the same instance might not produce extra cost, reducing the overall workflow execution cost. Even in the case of processing workflow applications in the cloud, workflow scheduling is very important because it can significantly affect workflow makespan time. Although much research has been conducted on the workflow scheduling problem to minimize makespan during execution, much of the research only focused on single-objective optimization to reduce workflow makespan using an effective scheduling mechanism. According to Zhu et al. [18], even though multiobjective workflow scheduling has been conducted on grid platforms with the aid of several techniques such as NSGA-II [10], SPEA2 [6], and PAES [9], these techniques cannot be applied directly to the cloud. Consequently, they proposed multiobjective optimization of workflow scheduling in the cloud within specified deadline and budget constraints. However, in their approach, they assumed that the number of machine instances is equal to the number of tasks in the workflow and that all tasks are parallelizable. In this case, their approach does not emphasize the dependency among workflow tasks during execution. Fanian et al. [8] also proposed a fast scheduling method that can be used in utility grids. However, their approach enhances the genetic operators, resulting in high processing complexity. Zhu et al. [18] conducted workflow optimization via makespan minimization with a fixed number of VMs and no elasticity during workflow execution. Moreover, no control dependencies among workflow tasks are considered. In our approach, we optimize scientific workflows on two objectives: 978-1-5090-6611-7/17 $31.00 2017 IEEE DOI 10.1109/CCGRID.2017.77 882

minimization of makespan and cost during workflow execution. Our optimization idea is based on the widely used scientific workflows from the Pegasus project [20], which have control and dependencies. These dependencies are very important during workflow execution. For efficient optimization, our proposed system carries out the following functions. First, the system handles the execution of tasks in a level-wise manner in order not to violate their task execution dependencies. Second, randomized search on the number of VMs and machine instance type is conducted during execution to benefit from cloud elasticity and monetary facility. Third, balanced task assignment is conducted to balance the load in each machine instance as well as to reduce the wait time to proceed to the next level of tasks. In this way, the system searches for the Pareto-optimal solutions that exhibit the best performance at the lowest financial cost. The experimental results obtained comprise a series of optimized VMs with optimized machine instance type for each level of the workflow with their respective makespan time and cost. The remainder of this paper is organized as follows. Section 2 presents the theoretical background associated with scientific workflows and NSGA-II. Section 3 outlines the proposed system, the objective functions used, and the proposed workflow execution optimization algorithm. Section 4 discusses the performance evaluation conducted. Section 5 presents related work. Finally, Section 6 concludes and outlines intended future work. II. BACKGROUND A. Scientific Workflow and its Representations Scientific workflows have emerged as an alternative to script programming for performing in-silico experiments [15]. These workflows describe the set of tasks needed to carry out computational experiments and provide scientists with the ability to expose, share, and reuse their work. In general, a scientific workflow is modeled as a directed acyclic graph (DAG). A DAG, W, is defined as W=(T,D), where T={T 0, T 1,, T n} is a set of tasks and D={(T i, T j) T i, T j T}is a set of data or control dependencies [8]. Each task has its respective execution time, task name, input data size, and resulting output data size. For a DAG with multiple entries and exits, it is necessary to add a pseudo T entry and or a pseudo T exit with no control and dependencies. In this study, we assumed that all DAG workflows have only one T entry and one T exit, and optimization is considered for the actual processing steps inside the workflow. DAG is represented in either XML or JSON format and parsing is required to get the necessary information for further processing. A simple DAG is illustrated in Fig. 1 with respective task labels. Level-wise DAG execution is carried out in our proposed system in order not to violate the control dependencies among tasks in the workflow. Fig. 1. A simple DAG workflow B. NSGA-II Many multiobjective evolutionary algorithms (MOEAs) have been proposed for finding multiple Pareto-optimal solutions in one single simulation run. In 1995, NSGA [12], which improved computational complexity via a non-elitism approach and a sharing parameter, was developed. In 2002, Deb et al. developed NSGA-II [10], the improved version of NSGA to resolve the problems found in NSGA. NSGA-II is a popular multiobjective optimization algorithm that is widely used in several application domains. The main features of NSGA-II are low computational complexity, parameter-less diversity preservation and an elitism approach. The major components of NSGA-II include fast non-dominated sorting and crowding distance assignment. 1) Fast Non-dominated Sorting Elitism is introduced in NSGA-II by storing all nondominated solutions discovered, starting with the initial population [2]. Elitism enhances the convergence properties towards the Pareto-optimal set. In order to sort the individuals in the population according to the level of non-domination, each solution must be compared with every other solution to determine if it is dominated. Firstly, two entities are calculated for each solution: 1) n p, the number of solutions that dominate solution p and 2) S p, a set of solutions that solution p dominates. All solutions that have n p=0 are identified and placed in a current front list. It is also regarded as the first nondominated front. Again, for each solution in the current front, each member in its S p is visited and n p is reduced by one. At this point, if any new member of n p=0 is identified, that member is placed in a separate list Q, the second nondominated front. The above procedure is continued with list Q to identify the third non-dominated front. The process continues until all fronts are identified. Fast non-dominated sorting on a population returns a list of non-dominated fronts F r and the population is updated starting with the members in the best non-dominated front followed by the second-best nondominated front, and so on until the specified population size is reached. Moreover, the fast nominated approach reduces the complexity of the naïve approach from O(MN 3 ) to O(MN 2 ). 883

2) Crowding Distance Assignment After completing non-dominated sorting, crowding distance is assigned. In this process, all the individuals in the population are assigned a crowding distance value and individual selection is conducted based on rank and crowding distance. Crowding distance comparison compares the individuals within the same front and distance calculation is conducted as follows: For each front F i, n is the number of individuals: 1) Initialize the distance F i(d j)=0, j=1,,n 2) for each objective function m I =sort(f i,m) #Sort the individuals on objective m I(d 1)=I(d n)= #assign infinite distance to boundary values for k=2 to (n-1) # I(k).m is the m th objective value of the k th individual in I In other words, crowding distance involves finding the Euclidean distance between each individual in a front based on their m objectives in an m-dimensional hyperspace. The individuals in the boundary are always selected because they have infinite distance assignment [1]. The solutions found in NSGA-II are said to be Pareto optimal if they are not dominated by any other solutions in the solution space. Further, the set of all feasible non-dominated solutions in the solution space is referred to as the Paretooptimal set, and for a given Pareto-optimal set, the corresponding objective function values in the objective space are called the Pareto front. The ultimate goal of multiobjective optimization is to identify the solutions in the Pareto-optimal set. In this proposed optimization system, we use NSGA-II as it is one of the most popular optimization approaches in several domains. Fig. 2 depicts the process flow of NSGA-II optimization. environment is applied in our system based on NSGA-II. The details of our system are given in the ensuing sections. A. Objective Functions The objective functions utilized in the proposed system are geared towards minimizing the overall makespan for workflow execution and machine instance deployment cost during workflow execution. They are expressed as follows: min t(x), min c(x) where, X = [x 1, x 2,, x l,, x m] is the number of VMs and types of VMs in each level of the DAG. t(x) = total workflow execution time c(x)= total workflow machine instance deployment cost L= total number of levels in the workflow (m = 2L) In scientific workflow applications, execution dependencies among tasks are important. Thus, level-wise execution decision-making is conducted in our proposed system. First, we optimize the makespan and the number of VMs at each execution level. Then, following optimization at all levels in the workflow, an optimized execution plan is identified for the overall workflow. We assume that no user-defined constraints are considered at this time and automatic makespan and resource usage cost optimization is performed by the system. Level-wise makespan cost and virtual machine deployment cost are calculated as follows: where, i) Level-wise makespan cost (1) = longest task execution time in level k T k = total number of tasks in level k x k = number of machine instances in level k T k (l) = execution time of the task in position l in the cluster task set with respect to the instance type L = total number of levels in the DAG ii) Level-wise virtual machine deployment cost Fig. 2. Process flow of NSGA-II optimization where, (2) III. PROPOSED SYSTEM Search based workflow optimization on makespan and virtual machine deployment cost in cloud computing 884

The possible machine instance types are small, medium, large, and x-large. The deployment cost differs according to the machine instance type used during workflow optimization. P(x k) signify the price of the machine instance type in level k specified in Hokkaido University Academic Cloud pricing. According to the machine instance type, the runtime of each task in the workflow is also different. We assume that significant cost-performance tradeoff will occur depending on the machine instance we choose during optimization. B. System Architecture Fig. 3. Proposed multiobjective scientific workflow optimization system The architecture of our proposed multiobjective workflow optimization system is shown in Fig. 3. The operation of the system is as follows. First, workflow input in the form of a DAG is given to the system for optimization and the system parses the necessary information at each level of the workflow DAG. Then, the system performs makespan minimization and virtual machine deployment cost minimization based on the specific machine instance type throughout the search space. Machine instances are selected to execute all levels of a particular workflow by contacting the academic cloud system. C. System Overview Two major processes are performed during the multiobjective optimization process: workflow parsing and multiobjective optimization. Workflow Parsing In this step, necessary information such as total number of levels in the workflow, task name and their relevant execution time, and the maximum parallelization degree for the input workflow are parsed in order for the optimization by the system to proceed automatically. Subsequent chromosome length determination depends on the total number of levels in the workflow. Moreover, task labelling is also conducted at each level of the workflow to facilitate level-wise optimization of workflow tasks within the optimization process during workflow parsing. Multiobjective Optimization Following parsing and task labelling of the workflow, the system begins the multiobjective optimization process. First, random initial chromosome parameter lists comprising the number of VMs and the type of VMs suitable for each level of the workflow are generated to initiate the process. Next, fitness calculations are performed for the two objective functions. Genetic operators such as selection, crossover, and mutation are then chosen to be used during evolution. Then, the evolution process proceeds until the specified termination criterion is met. At this point, the Pareto front solutions from the evolution process are retrieved and the optimized number of VMs with optimized instance type at the Pareto front for optimal makespan and optimal deployment cost for each workflow level is recommended for processing the scientific workflow applications in the cloud. D. Chromosome Representation The system uses a fixed-length integer-encoding scheme, one of the most common representations of chromosomes in genetic algorithm (GA). In this system, the genes in the chromosomes are in the form {1, p} and {1, q} with each gene representing the number of VMs for each level of workflow execution for parallelization, while p signifies the maximum number of tasks in one of the levels in a particular workflow, and q signifies the total number of instance types provided by the academic cloud system. A single gene represents one level and the chromosome length depends on the maximum number of levels in the workflow. The chromosome length, 2L, which is two times the highest level of the workflow DAG, varies according to the input workflow structure. An example chromosome for the optimization process is illustrated in Fig. 4. Fig. 4. Chromosome structure for optimization during workflow execution E. Genetic Operators Genetic operators are used to guide the multiobjective optimization algorithm towards optimal solutions to a given problem. Three main operators, selection, crossover, and mutation, collaborate with each other for successful processing. Two-point crossover and uniform mutation are also used in the proposed system. Offspring are selected via the tournament selection mechanism. F. Load Balancing Load balancing is important in scientific workflow execution because fine-grained tasks in each workflow have to be processed in their dependency order. In order to provide load balancing in our proposed system, balanced partitioning of tasks in each level is considered before execution in their respective virtual machine. There are two stages in load balancing: (1) task sorting and (2) balanced clustering. In task sorting, all the tasks in each level are sorted according to their runtime. Then, balanced clustering is performed according to the following equation: 885

if v li = n, NC = n, (1 n p ) where, In our study, we considered four types of machine instances and calculated the costs based on instance pricing in Hokkaido University Academic Cloud [21]. Table I shows the instance pricing used in our resource usage calculation. TABLE I. MACHINE INSTANCE PRICING Instance type CPU (No. of cores) Memory (GB) Price per second (yen) Extra large 40 128 0.0160 Large 10 30 0.0039 Medium 4 12 0.0016 Small 1 3 0.0004 G. Multiobjective Optimization Algorithm This section presents the NSGA-II based optimization algorithm, which is the major component of the proposed system. The system used NSGA-II because it outperforms other contemporary MOEAs, such as PAES [9] and SPEA [5], in terms of finding a diverse set of solutions and in converging near the true Pareto-optimal set [10]. Algorithm: Scientific workflow execution optimization using NSGA-II Input: Workflow DAG, N: Population size, G: number of generations, O: number of objectives, MP: mutation probability, CP: crossover probability. Output: List of optimized solutions, W opt. Preprocessing Step 1: Parse the workflow DAG Step 2: Label tasks Step 3: Assign workflow tasks to objects Step 4: Retrieve maximum workflow level for chromosome length determination in optimization Step 5: Retrieve maximum parallelization degree for search space determination Processing Step 1: Generate random initial population, IP. 1.1 Randomly generate integer chromosome C i (i = 1, 2,, N). 1.2 Calculate the fitness of each random chromosome 1.3 Rank population P according to non-domination Step 2: Evolve population (N, P, G). 2.1 Select parents using tournament selection, (P 1, P 2). 2.2 Perform two-point dynamic crossover operation on parents (P 1, P 2) with probability CP to produce offspring population. 2.3 Perform mutation operation with probability MP on random points applied to offspring 2.4 Calculate fitness of new offspring population and update population (3) 2.5 Use non-dominated sorting to divide C P P { x } into several non-domination levels F 1, F 2,, F l. 2.6 Calculate Crowding Distance of all solutions 2.7 Identify the worst solution x Fl and set P P \ { x }. Step 3: Repeat Step 2 until termination condition is met. Step 4: Output the list of optimal solutions at Pareto front, W opt. IV. PERFORMANCE EVALUATION This section outlines the experimental environment and presents the experimental results obtained for various scientific workflow applications. The experiments were conducted on an Intel core i7 Dell PC with 16 GB RAM. The system implementation was conducted using the Python programming language and the well-known DEAP framework [7]. A. Experimental Scientific Workflow Applications The experiments were conducted using three scientific workflow DAG applications (Epigenomics, Montage, and CyberShake) from Pegasus [14] [20], with different input data sizes. The structures of the applications are illustrated in Fig. 5. Table II shows the scientific workflow applications used for system evaluation along with their respective input data sizes. The table also lists the experimental workflow used in our study with different task nodes. Fig. 5. Structure of the experimental scientific workflows TABLE II. EXPERIMENTAL WORKFLOWS No. Workflow application Number of task nodes (Input size) 1 Epigenomics 24 46 100 2 Montage 25 50 100 3 CyberShake 30 50 100 B. Experimental Analysis Figs. 6 14 show the optimal solutions identified by the proposed system. The experiments were conducted with a population size of 100 evolving over 1000 generations with crossover probability 0.9 and mutation probability 0.2 using NSGA-II. Real-world workflows Epigenomics, Montage, and CyberShake were used. The experimental results indicate that the system speeded up the makespan effectively with acceptable cost tradeoff. In Epigenomics 24 node workflow, 886

the system selected the best options with makespan and cost minimized by a factor of 12. For Montage 25 workflow, the system improved the makespan by a factor of 19 and deployment cost by a factor of 10 in the solution range. In addition, it improved the makespan time in the CyberShake 30 workflow by a maximum factor of 13 in terms of both makespan and cost. Further, the larger the input data size, the more efficient the system became. The effectiveness of the system is reflected more in the larger data size workflows, in which makespan is significantly improved with only a small increase in deployment cost. Fig. 9. Pareto front result for Epigenomics workflow (46 nodes) Fig. 6. Pareto front result for Epigenomics workflow (24 nodes) Fig. 10. Pareto front result for Montage workflow (50 nodes) Fig. 7. Pareto front result for Montage workflow (25 nodes) Fig. 11. Pareto front result for CyberShake workflow (50 nodes) Fig. 8. Pareto front result for CyberShake workflow (30 nodes) Fig. 12. Pareto front result for Epigenomics workflow (100 nodes) 887

Fig. 13. Pareto front result for Montage workflow (100 nodes) Fig. 14. Pareto front result for CyberShake workflow (100 nodes) V. RELATED WORK Workflows represent complex distributed scientific computations that comprise many tasks, the execution of which may require many complex modules and software [17]. Workflow optimization of scientific applications has become an interesting research area in this era of continuously increasing big data. Previous workflow optimization studies conducted single-objective optimization and multiobjective optimization. Zhang et al. [11] proposed bi-objective workflow optimization on energy consumption and reliability in heterogeneous computing systems. However, several previous workflow optimizations are done for single-objective optimization. Single-objective optimization studies primarily focused on developing effective scheduling strategies to reduce makespan. Chen et al. [17] proposed a workflow scheduling strategy that uses horizontal or vertical task clustering techniques to reduce the schedule overhead during workflow execution. Yan et al. [3] proposed a novel probability evaluation-based scheduling algorithm to address the problem of workflow deadline guarantee. They showed that their approach is effective in terms of adaptability and predictability under deadline constraints, but improvements in deadline distribution is still necessary. Kaur et al. [13] proposed workflow scheduling in clouds using augmented shuffled frog leaping algorithm (ASFLA). They improved the original shuffled frog leaping algorithm (SFLA) to speed up the overall execution time of the workflow. Experiments conducted showed significant reduction in overall workflow execution time, but resource usage cost was not accounted for in the system. Poola et al. [4] presented a resource scheduling algorithm for workflow execution on heterogeneous cloud resources along with makespan and cost minimization. However, the robustness and effectiveness of their proposed system depend on an increased budget. Zhu et al. [18] proposed a multiobjective workflow scheduling approach for cloud infrastructure. In their proposed approach, they enhance the evolution process of their optimization by introducing two novel crossover and mutation operators. They conducted experiments based on actual pricing and resource parameters on Amazon EC2, but did not consider task dependencies during workflow executions and simply assumed that all tasks can be executed in parallel. Most of the previous research studies focus only on singleobjective optimization for makespan minimization in grid infrastructure. However, grid computing was supplanted by cloud computing because of its pay-per-use and elastic resource facilities. Consequently, further optimization research on cloud infrastructure has become a necessity in workflow optimization. In our approach, we conduct multiobjective workflow optimization, i.e., minimization of workflow makespan and instance resource cost, without violating the task dependencies of the workflow in the cloud infrastructure. The proposed system improves workflow optimization in three ways. First, the system conducts levelwise optimization to satisfy the control dependencies among workflow tasks. Second, it provides dynamic virtual machine type selection at each level of the workflow to avoid extra resource usage cost. Third, the system includes balanced utilization of VMs in each workflow level to ensure load balancing that can indirectly reduce the failure rate of the VMs during workflow execution. VI. CONCLUSION AND FUTURE WORK Many workflow optimization studies have been conducted on grid computing systems as well as in the cloud. However, a cost-effective alternative for scientific workflow executions with pay-per-use paradigm to provide services with the best performance and the cheapest virtual machine deployment cost is still challenging. In this study, we addressed this problem by modeling the workflow optimization problem as a multiobjective optimization problem using NSGA-II in the cloud. To solve the multiobjective workflow optimization problem, we used a fixed-length encoding scheme to represent a random number of VMs that can be used in each level of the workflow. Based on the random initial chromosome population, the evaluation process was conducted, and the respective fitness values of the chromosomes calculated. We evaluated the proposed approach on three real-world workflows available from the ongoing Pegasus research project [20]. Our experimental results show that the system can speed up makespan with an acceptable cost tradeoff. The results also highlight that optimization depends on the 888

structure of the workflow, i.e., the more parallelized tasks there are in the level, the more the makespan time can be reduced. Our current work is focused on workflow execution optimization without violating the dependency and load balancing of the machine instances during workflow execution. System improvements are also still underway. In future work, we plan to include result comparisons with other multi-objective optimization algorithms such as SPEA2 and PAES. In addition, many-objective optimization of workflow execution will be considered. ACKNOWLEDGMENT This work was supported by CREST, Japan Science and Technology Agency. REFERENCES [1] A. Seshadri, A Fast Elitist Multiobjective Genetic Algorithm: NSGA- II, Lecture Handout, New Jersey Institute of Technology. [2] C. Chitra, Performance Comparison of Multi-objective Evolutionary Algorithms for QoS Routing Problems in Computer Networks, Thesis Dissertation, 2011. [3] C. Yan, H. Luo, Z. Hu, X. Li, and Y. Zhang, Deadline guarantee enhanced scheduling of scientific workflow applications in grid, Journal of Computers, vol. 8, No. 4, April 2013. [4] D. Poola, S. K. Garg, R. Buyya, Y. Yang and K. Ramamohanarao, Robust Scheduling of Scientific Workflows with Deadline and Budget Constraints in Clouds, IEEE 28 th International Conference on Advanced Information Networking and Applicatiions (AINA), pp. 858-865, 2014. [5] E. Zitzler, Evolutionary algorithms for multiobjective Optimization: Methods and applications, Doctoral dissertation ETH 13398, Swiss Federal Institute of Technology (ETH), Zurich, Switzerland, 1999. [6] E. Zitzler, M. Laumanns, and L. Thiele, SPEA2: Improving the strength Pareto evolutionary algorithm for multiobjective optimization, Evolutionary Methods for Design Optimization and Control with Applications to Industrial Problems, May 2001. [7] F. Fortin, F. D. Rainville, M. Gardner, M. Parizeau and C. Gagne, DEAP: a python framework for evolutionary algorithms, GECCO '12 Proceedings of the 14th annual conference companion on Genetic and evolutionary computation, Pages 85-92, ACM, 2012. [8] H. K. A. Fanian and T. Aaron Gulliver, Efficient Workflow Scheduling for Grid Computing Using a Leveled Multi-Objective Genetic Algorithm, J Grid Computing, Springer, 2014. [9] J. Knowles and D. Corne, The Pareto archive evolution strategy: A new baseline algorithm for multi-objective optimization, The Congress of Evolutionary Computation, pp. 98-105. [10] K. Deb, A. Pratap, S. Agarwal, and T. Meyarivan, A fast and elitist multi-objective genetic algorithm: NSGA-II, IEEE Transactions on Evolutionary Computation, vol. 2, Issue 6, pp. 182-197, 2002. [11] L. Zhang, K. Li, C. Li and K. Li, Bi-objective workflow scheduling of the energy consumption and reliability in heterogeneous computing systems,, Information Sciences (2016), Elsevier, 2016. [12] N. Srinivas and K. Deb, Multiobjective function optimization using non-dominated sorting genetic algorithms, Evol.Compu., vol.2, no.3, pp.221-248, 1995. [13] P. Kaur and S. Mehta, Resource Provisioning and Work flow Scheduling in Clouds using Augmented Shuffled Frog Leaping Algorithm, Journal of Parallel and Distributed Computing, ScienceDirect, vol. 101, pp. 41-50, November 2016. [14] S. Bharathi, A. Chervenak, E. Deelman, G. Mehta, M. Su and K. Vahi, Characterization of Scientific Workflows, 2008 Third Workshop on Workflows in Support of Large-Scale Science, IEEE, 2008. [15] S. Holl, D. Garijo, K. Belhajjame, O. Zimmermann, R. D. Giovanni, and M. Obst, On specifying and sharing scientific workflow optimization results using research objects, Proc. 8 th Workshop on Workflows in Support of Large-Scale Science, ACM, 2013, pp. 28-37. [16] S. Navaz and U. Ansari, An evolutionary algorithm in grid scheduling by multi-objective optimization using variants of NSGA, International Journal of Scientific and Research Publications, vol. 2, Issue 9, 2012. [17] W. Chen and E. Deelman, WorkflowSim: A toolkit for simulating scientific workflows in distributed environments, IEEE 8 th International Conference on E-Science (e-science), October 2012. [18] Z. Zhu and G. Zhang Evolutionary multi-objective workflow scheduling in cloud, IEEE Transactions on parallel and distributed Systems, vol. 27, no. 5, May 2016. [19] P. Mell and T. Grance, The NIST definition of cloud computing, Nat. Inst. Standards Technol., Gaithersburg, MD, USA, Tech., 2011. [20] Pegasus Workflow Generator [November 2016], https://confluence.pegasus.isi.edu/display/pegasus/workflowgenerator [21] Hokkaido University Academic Cloud System, [November 2016], http://www.hucc.hokudai.ac.jp/hosting_server.html. 889