research article an adaptive procedure for task scheduling...

14
Research Article An Adaptive Procedure for Task Scheduling Optimization in Mobile Cloud Computing Pham Phuoc Hung and Eui-Nam Huh Department of Computer Engineering, Kyung Hee University, Yongin-si 446-701, Republic of Korea Correspondence should be addressed to Eui-Nam Huh; [email protected] Received 3 October 2014; Accepted 11 March 2015 Academic Editor: Oleg V. Gendelman Copyright © 2015 P. Phuoc Hung and E.-N. Huh. is is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Nowadays, mobile cloud computing (MCC) has emerged as a new paradigm which enables offloading computation-intensive, resource-consuming tasks up to a powerful computing platform in cloud, leaving only simple jobs to the capacity-limited thin client devices such as smartphones, tablets, Apple’s iWatch, and Google Glass. However, it still faces many challenges due to inherent problems of thin clients, especially the slow processing and low network connectivity. So far, a number of research studies have been carried out, trying to eliminate these problems, yet few have been found efficient. In this paper, we present an enhanced architecture, taking advantage of collaboration of thin clients and conventional desktop or laptop computers, known as thick clients, particularly aiming at improving cloud access. Additionally, we introduce an innovative genetic approach for task scheduling such that the processing time is minimized, while considering network contention and cloud cost. Our simulation shows that the proposed approach is more cost-effective and achieves better performance compared with others. 1. Introduction During the last decade, we have witnessed an explosion of smart devices. According to Gartner Inc., mobile device is becoming the platform with approximately 2.4 billion units of both cellular phones and tablets shipped in 2013, outstripping PC sales in the same period which was less than 315 million shipments [1]. Together with it, the demands for mobile and service application from users are increasing, which may require processing capacities beyond what could be offered by even the most powerful smartphones [2, 3]. Meanwhile, gaining more and more popularity in recent years, cloud computing (CC) [4, 5], widely known as the next generation’s computing infrastructure with virtual unlimited resource and service provision, offered a considerable complement to mobile thin clients such as smartphones, tablets, or even the Google cutting-edge invention, Google Glass [6], and Apple’s iWatch [7] by expanding their power and extending the capa- bility of mobile computing. is integration results in a new paradigm named mobile cloud computing, allowing mobile devices to run computation-intensive applications, providing end users with rich computing experience [8]. However, it is still insufficient and vulnerable to inherent obstacles of thin devices: unstable accessibility, low network connectivity, especially the weak processing capacity. ese may degrade Quality of Service (QoS), particularly the performance of the system. at prevents mobile devices from satisfying the increasingly sophisticated applications demanded by users. Recently, many researchers have investigated to find the ways to improve the weakness. In [9], for example, Siegemund et al. discuss the fact that smart objects (i.e., smartphones) can leverage resources and computing capabilities from nearby nodes to extend their own processing ability. Similarly, in [10], a guideline to create a virtual MCC provider is proposed, although the limited capacity and bandwidth are still a hurdle [11, 12]. is framework takes advantage of nearby thin clients to create on-the-fly connection, thus avoiding the need to connect directly to infrastructure-based clouds. e downside of these efforts, however, lies in the thin clients’ capacity restriction and low bandwidth between them and cloud. erefore, they are not sufficient to eliminate the above discussed problems of thin clients. On the other hand, thick clients, including powerful smartphones (multicore CPU, large memory, LTE-enabled), usually come with better Hindawi Publishing Corporation Mathematical Problems in Engineering Volume 2015, Article ID 969027, 13 pages http://dx.doi.org/10.1155/2015/969027

Upload: others

Post on 10-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Research Article An Adaptive Procedure for Task Scheduling ...downloads.hindawi.com/journals/mpe/2015/969027.pdfcient and vulnerable to inherent obstacles of ... according to historical

Research ArticleAn Adaptive Procedure for Task Scheduling Optimization inMobile Cloud Computing

Pham Phuoc Hung and Eui-Nam Huh

Department of Computer Engineering, Kyung Hee University, Yongin-si 446-701, Republic of Korea

Correspondence should be addressed to Eui-Nam Huh; [email protected]

Received 3 October 2014; Accepted 11 March 2015

Academic Editor: Oleg V. Gendelman

Copyright © 2015 P. Phuoc Hung and E.-N. Huh. This is an open access article distributed under the Creative CommonsAttribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work isproperly cited.

Nowadays, mobile cloud computing (MCC) has emerged as a new paradigm which enables offloading computation-intensive,resource-consuming tasks up to a powerful computing platform in cloud, leaving only simple jobs to the capacity-limited thinclient devices such as smartphones, tablets, Apple’s iWatch, andGoogle Glass. However, it still facesmany challenges due to inherentproblems of thin clients, especially the slow processing and low network connectivity. So far, a number of research studies have beencarried out, trying to eliminate these problems, yet few have been found efficient. In this paper, we present an enhanced architecture,taking advantage of collaboration of thin clients and conventional desktop or laptop computers, known as thick clients, particularlyaiming at improving cloud access. Additionally, we introduce an innovative genetic approach for task scheduling such that theprocessing time is minimized, while considering network contention and cloud cost. Our simulation shows that the proposedapproach is more cost-effective and achieves better performance compared with others.

1. Introduction

During the last decade, we have witnessed an explosion ofsmart devices. According to Gartner Inc., mobile device isbecoming the platformwith approximately 2.4 billion units ofboth cellular phones and tablets shipped in 2013, outstrippingPC sales in the same period which was less than 315 millionshipments [1]. Together with it, the demands for mobile andservice application from users are increasing, which mayrequire processing capacities beyond what could be offeredby even the most powerful smartphones [2, 3]. Meanwhile,gaining more and more popularity in recent years, cloudcomputing (CC) [4, 5], widely known as the next generation’scomputing infrastructure with virtual unlimited resourceand service provision, offered a considerable complement tomobile thin clients such as smartphones, tablets, or even theGoogle cutting-edge invention, Google Glass [6], and Apple’siWatch [7] by expanding their power and extending the capa-bility of mobile computing. This integration results in a newparadigm named mobile cloud computing, allowing mobiledevices to run computation-intensive applications, providingend users with rich computing experience [8]. However, it

is still insufficient and vulnerable to inherent obstacles ofthin devices: unstable accessibility, low network connectivity,especially the weak processing capacity. These may degradeQuality of Service (QoS), particularly the performance ofthe system. That prevents mobile devices from satisfying theincreasingly sophisticated applications demanded by users.

Recently, many researchers have investigated to find theways to improve theweakness. In [9], for example, Siegemundet al. discuss the fact that smart objects (i.e., smartphones) canleverage resources and computing capabilities from nearbynodes to extend their ownprocessing ability. Similarly, in [10],a guideline to create a virtual MCC provider is proposed,although the limited capacity and bandwidth are still ahurdle [11, 12]. This framework takes advantage of nearbythin clients to create on-the-fly connection, thus avoiding theneed to connect directly to infrastructure-based clouds. Thedownside of these efforts, however, lies in the thin clients’capacity restriction and low bandwidth between them andcloud. Therefore, they are not sufficient to eliminate theabove discussed problems of thin clients. On the other hand,thick clients, including powerful smartphones (multicoreCPU, large memory, LTE-enabled), usually come with better

Hindawi Publishing CorporationMathematical Problems in EngineeringVolume 2015, Article ID 969027, 13 pageshttp://dx.doi.org/10.1155/2015/969027

Page 2: Research Article An Adaptive Procedure for Task Scheduling ...downloads.hindawi.com/journals/mpe/2015/969027.pdfcient and vulnerable to inherent obstacles of ... according to historical

2 Mathematical Problems in Engineering

hardware and network connectivity. Furthermore, lately, lotsof efforts have been made to reduce the cost of usingcloud services. For example, it would be really costly toprocess workflow by using solely cloud resources, for whichusers are charged based on the number of virtual machine(VM) instances and on hours of usage [13–15]. Thus, it isunderstandably suggested that thin clients be coupled withthick clients to achieve a desirable access to cloud, as statedin [8], as well as optimizing the cloud cost.

However, task scheduling is still one of the main issues in[8], which may negatively affect the performance, QoS, anduser experience. Consequently, in this paper, the crucial tech-nical contribution, based on the idea in [8], is to introduce anenhanced solution with a novel genetic algorithm in order toexploit the collaboration between thin-thick clients and cloudnetwork to optimize task scheduling of the processing systemso as to deal with the above issues, accordingly improvingQoS, user experience, and reliable performance of the system.In particular, our proposal takes into account not onlythe network contention but also the cost charged to cloudcustomers (CCs) since these two factors play important rolesin satisfying user’s expectations [16]. Moreover, the approachis experimentally evaluated and comparedwith existing ones.The results prove that our method can guarantee a taskscheduling efficiency and has better cost-effectiveness thanother approaches.

The remainder of this paper is structured as follows.Section 2 presents some related work which has partly solvedthe discussed problems. Section 3 gives amotivation scenario,where our proposal model can be practical to thin-thickclient collaboration for task scheduling. System architectureis presented in Section 4. Section 5 details the problemformulation. And Section 6 specifies the implementation,performance evaluation.The last section concludes our paperand suggests the future work.

2. Related Studies

There have been numerous studies that attempt to solve taskscheduling problems, which are considered as a variant of thequadratic assignment problem (QAP) [27, 28]. In [29–32],the authors propose task scheduling approaches for assigningprocessors to task graph templates prepared in advance.Gupta et al. in [26] suggest a new fault tolerant schedulingalgorithm MaxRe to incorporate the reliability analysis intothe active replication schema and exploit a dynamic numberof replicas for different tasks.The limitation of these methodsis that they do not consider the network contention. Sinnenand Sousa [19] present an efficient task scheduling methodbased on network contention although this study does notlook attentively at monetary cost paid by cloud customers foruse of the cloud resources.

In heterogeneous CC environment, despite numerousefforts, task scheduling remains one of the most challengingproblems [33]. The authors in [22] introduce a cost-efficientapproach to select the most proper system (private or publiccloud) to execute the workflow. Selection also depends onthe possibility of meeting the deadline of each workflow aswell as the cost savings. Zeng et al. in [14] propose budget

conscious scheduling Comparative Advantage (CA) functionto satisfy the strict budget constraint. In its first phase, eachof the tasks is assigned to the best VM whose CA1 valueis maximum to get a worthy tradeoff between cost savingand efficiency. In the second phase, budget constraint isused in the CA2 function to evaluate the improvement oftask reassignment to another VM on cost and performance.Notwithstanding CA is hard to be applied to the large-scale workflows. In the meantime, Li et al. in [13] presenta scheduling algorithm to schedule the application of largegraph processing considering both cost and schedule length.The input cost-conscious factor of this method is the cloudcost and is used as a weight to calculate the earliest finish time(EFT) of each task. Senthil Kumar and Balasubramanie in[21] try to schedule tasks to the available fault-free resourcesaccording to historical values of the system to improve thesystem performance, so that its reliability can be enhanced.That system also considers the minimum cost for CCs.However, global optimality between cost and schedule lengthis not properly addressed in these approaches.

Recently, some GAs have been successfully applied forsolving the global optimal problem in task scheduling. Theauthors in [25] propose approaches using genetic processesto find multiple solutions faster and ensure global optimalusage of the processing system. Gupta et al. [26] developeda method based on genetic algorithm (GA) to find optimalscheduling, whichwas showed to be efficient to discover opti-mal solution, focusing on the quality of solution and effect ofmutation probability on the performance ofGA.Nonetheless,in these proposals, monetary cost is not considered. OmaraandArafa in [34] show a new scheduling algorithm accordingto a fitness adaptive algorithm-job spanning time adaptivegenetic algorithm, so as to enhance the overall performanceof the cloud computing environment while consideringcommunication cost and computation cost but the tradeoffbetween cost and schedule length is not considered.

For ease of understanding, we present an overview ofcommon scheduling approaches along with ours in Table 1.

As shown in Table 1, the desired scheduling approachshould consider all the three factors including executiontime, network contention, and the cloud cost in combinationof thin-thick clients and clouds. Thus, in this paper, weaim to provide a schedule scheme which takes all threefactors into account. The main contribution of this work isthe development of a genetic algorithm to determine theglobal optimal schedule in combination of thin-thick clientsand clouds so as to improve QoS requirements and systemreliability.

3. Motivation Scenario

The scenario illustrated in Figure 1 exemplifies the utilizationof a collaboratedmobile cloudwith thick clients in optimizingtask scheduling.

An HR manager is attending a meeting for the report onuser behavior statistic of his/her company. In order to getthe insight of the information from the report, the manageruses his/her Google Glass (thin client) he/she is wearing totake pictures from the presentation slide and sends them to

Page 3: Research Article An Adaptive Procedure for Task Scheduling ...downloads.hindawi.com/journals/mpe/2015/969027.pdfcient and vulnerable to inherent obstacles of ... according to historical

Mathematical Problems in Engineering 3

Table 1: Existing scheduling approaches and ours.

Algorithm Target system Minimum schedule length Minimum cost Global optimalityTopcuoglu et al. [17] Heterogeneous Yes No NoGotoda et al. [18] Cloud Yes No NoSinnen and Sousa [19] Cloud Yes No NoHuerta-Canepa and Lee [10] Cloud & thin clients Yes No NoCanon and Jeannot [20] Heterogeneous Yes No NoKumar and Balasubramanie [21] Heterogeneous Yes No Noden Bossche [22] Public & private cloud Yes Yes NoZeng [14] Cloud Yes Yes NoLi et al. [13] Heterogeneous Yes Yes NoFunk et al. [23] Multicore processor Yes No YesKarthick et al. [24] Cloud Yes No YesKaiser and Jegede [25] Multicore processor Yes No YesGupta et al. [26] Heterogeneous Yes No Yes

Our approach Thin-thick clients &cloud Yes Yes Yes

Wi-Fi

Cloud

Thin client

Thick client 2 Thick client 1

Thick client 3

3G

Broker

Figure 1: Motivating scenario.

the cloud for extraction and analysis of user activity patterns.The achieved data are used to analyze valuable informationsuch as site traffic, Internet access time, favorite subjects, andhealth insurance, on an hourly, daily, weekly, or even yearlybasis.These patterns can be extremely useful for certain typesof prediction or recommender systems.

Though the glass is Internet-enabled and can conve-niently use online search engine to search for information, itsbandwidth is fairly limited while there are so many photoswith large size that have been taken. Fortunately, the glassis preconfigured to be connected with the company’s facili-tated thick client computers, which offers a more powerfulCPU, larger memory, and especially a high speed internet

connection. It clearlymakes sense then to let the glass transferthose photos to the thick clients and have them uploaded tosome cloud services using the terrific Internet speed. Onceuploaded to the cloud, all pictures will be processed andthe outputs will be looked up for the related information.In particular, cloud service will handle the work to look forrelated user logs. It is noteworthy that the records of userbehavior statistic, stored as logs on cloud, are collected on adaily basis and, thus, are really huge (up to several hundredsof GBs) and are operationally and even financially expensiveto look up some specific data as well as to process them. Tospeed up the progress, the log is divided into smaller setsof user logs, which are then processed in parallel by both anewnetworkmade up of the company’s powerful thick clients(laptop, desktop, etc.) and cloud virtual machines. This notonly significantly increases processing pace but also reducesthe cost of using cloud services because it is costly if he/sheonly uses cloud resources (VMs). Eventually, the processedresult will be delivered to a thick client, which works as abroker before sending to the thin client. Thus, the managercan achieve the results in shorter time than the time he/shecould have spent if using only his/her Google Glass.

The above scenario is one of the potential examples,where our proposed model can be applied for utilizing thejoint work between thin clients and thick clients for parallelprocessing in a typical mobile cloud computing environment.Such collaboration promisingly increases the opportunity ofusing resources efficiently. The thin client takes advantage ofmultiple thick clients’ relay to enhance the data distributionfrom cloud networks, consequently enhancing its computingcapabilities. With that in mind and with CC platform stayingready and emerging on the market, our paper aims atarchitecting a network design, based on the thin-thick clientcollaboration, attempting to address the following issue:globally minimizing the task scheduling in the collaboratedmobile cloud computing and thick clients while consideringthe network contention and cloud cost.

Page 4: Research Article An Adaptive Procedure for Task Scheduling ...downloads.hindawi.com/journals/mpe/2015/969027.pdfcient and vulnerable to inherent obstacles of ... according to historical

4 Mathematical Problems in Engineering

VM 1 VM 2 VM 3

Cloud provider

Information

Data query

Broker

Thick client 1

Thickclient 2

Thickclient m

Dispatcher

Cloud customer

Thin client 1 Thin client 2 Thin client 3

· · ·

· · ·

· · ·

VM n

Thin client k

collector

Figure 2: System architecture.

4. System Architecture

The following section gives an insight of our system architec-ture to address issues discussed above.

Our architecture has two layers, as illustrated in Figure 2,including (1) cloud provider layer, which contains virtualmachines (VMs), and (2) cloud customer layer, where thinclients and thick clients reside. In the second layer, there is athick client𝑚 functioning as a centralizedmanagement node,also known as a broker, which (1) receives all computationrequests of users, (2)manages processor’s profiles (processingcapacity, network bandwidth) as well as computation coststogether with results of data query returned from processors,and (3) accordingly creates the most reasonable schedulefor an input workflow. In particular, it sends data to cloudsin a single connection but when VMs send data to cloudcustomer layer, the data will be divided into different partswith different sizes before being delivered to thick clients inmulticonnections according to a previous research [8].More-over, the system has to satisfy the following requirements:

(i) The network needs to support high bandwidth andlow latency connection between thick clients andclouds so that data can be transferred at a fast rate.

(ii) STUN information and a communication library canbe shared by these P2P and thick clients to thin clientsor vice versa.

(iii) Thick clients should store a copy of persistent data ofthe cloud and should keep this loosely synchronized.

�0

�1 �2 �3 �4

�5 �6

�7

Figure 3: A sample DAG.

In the next section, we formulate the problem and describeour proposed approach.

5. Problem Formulation and Solution

Task scheduling [35] on a target system that has a networktopology is defined as the problem of allocating the tasksof an application to a set of processors that have diverseprocessing capabilities in order to minimize total executiontime.Thus, the input of task scheduling includes a task graphand a process graph.The output is a schedule representing theassignment of a processor to each task node.

5.1. Problem Formulation. In this section, we first define theterms used in this paper.Thenotations are listed in Notations.

Page 5: Research Article An Adaptive Procedure for Task Scheduling ...downloads.hindawi.com/journals/mpe/2015/969027.pdfcient and vulnerable to inherent obstacles of ... according to historical

Mathematical Problems in Engineering 5

Then, we explain how to formulate the problem. Eventually,a genetic method for task scheduling is presented to solve theabove problem.

Definition 1. A task graph (e.g., as in Figure 3) is representedby a Directed Acyclic Graph (DAG), 𝐺 = (𝑉, 𝐸, 𝑤, 𝑐), wherethe set of vertices 𝑉 = {V

1, V2, . . . , V

𝑘} represents the set of

parallel subtasks and the directed edge 𝑒𝑖𝑗= (V𝑖, V𝑗) ∈ 𝐸

describes the communication between subtasks V𝑖and V

𝑗,

𝑤(V𝑖) associated with task V

𝑖∈ 𝑉 represents its computation

time, and 𝑐(𝑒𝑖𝑗) represents the communication time between

task V𝑖and task V

𝑗with corresponding transferred data

𝑑(𝑒𝑖𝑗). One presumes that a task V

𝑖without any predecessors,

prec(V𝑖) = 0, is an entry task Ventry, and a task that does

not have any successors, succ(V𝑖) = 0, is an end task Vend.

The task consists of workload𝑤𝑙𝑖, which delimits the amount

of work processed with the computing resources. Besides, italso contains a set of preceding subtasks prec(V

𝑖) and a set of

successive subtasks succ(V𝑖) of task V

𝑖, 𝑡𝑠(V𝑖, 𝑃𝑗) denotes start

time, and 𝑤(V𝑖, 𝑃𝑗) refers to the execution time of task V

𝑖∈ 𝑉

on processor 𝑃𝑗. Hence, the finish time of that task is given by

𝑡𝑓(V𝑖, 𝑃𝑗) = 𝑡𝑠(V𝑖, 𝑃𝑗) + 𝑤(V

𝑖, 𝑃𝑗).

Suppose that the following conditions are satisfied.

Condition 1. A task cannot begin its execution until all of itsinputs have been gathered sufficiently. Each task appears onlyonce in the schedule.

Condition 2. The ready time 𝑡ready(V𝑖, 𝑃𝑗) is the time in whichprocessor 𝑃

𝑗completes its last assigned task and is ready to

execute task V𝑖. Therefore,

𝑡ready (V𝑖, 𝑃𝑗) = max{ maxV𝑦∈exec(𝑗)

(𝑡𝑓(V𝑦, 𝑃𝑗)) ,

max𝑒𝑧𝑖∈𝐸,V𝑧∈prec(V𝑖)

(𝑡𝑓(𝑒𝑧𝑖))} ,

(1)

where exec(𝑗) is a set of tasks executed at processor 𝑃𝑗,

𝑡𝑓(𝑒𝑧𝑖) = 𝑡

𝑓(V𝑧) + 𝑐(𝑒

𝑧𝑖), and prec(V

𝑖) is a set of preceding

tasks of V𝑖.

Condition 3. Let [𝑡𝐴, 𝑡𝐵] ∈ [0,∞] be an idle time interval on

processor 𝑃𝑗in which no task is executed. A free task V

𝑖∈ 𝑉

can be scheduled on processor 𝑃𝑗within [𝑡

𝐴, 𝑡𝐵] if

max {𝑡𝐴, 𝑡ready (V𝑖, 𝑃𝑗)} + 𝑤 (V𝑖, 𝑃𝑗) ≤ 𝑡𝐵. (2)

Definition 2. A processor graph TG = (𝑁,𝐷) demonstratedin Figure 4 is a graph that describes the topology of a networkbetween vertices (processors) that are cloud virtual machines(VMs), thick or thin clients. In this model,𝑁 is the finite setof vertices, and a directed edge 𝑑

𝑖𝑗∈ 𝐷 denotes a directed link

from vertex 𝑃𝑖to vertex 𝑃

𝑗with 𝑃

𝑖, 𝑃𝑗∈ 𝑁. Each processor 𝑃

𝑖

controls the processing rate 𝑝𝑖and bandwidth bw

𝑖on the link

connecting it to other processors.

5.2. Proposed Approach. Given a task graph 𝐺 = (𝑉, 𝐸, 𝑤, 𝑐)and a processor graph with network topology TG = (𝑁,𝐷),

P1 P2

P3

P4P5

P6

Figure 4: A processor graph.

Satisfy constraints?

Initialize population

Evaluate fitness

Select survivors Randomly vary individuals

Output results

No

Yes

Figure 5: Genetic algorithm.

ourmethod chooses themost appropriate schedule to executethe tasks. Among the various guided random techniques,genetic algorithms (GAs) are themostwidely used for the taskscheduling problem [17].

A genetic algorithm [33], illustrated in Figure 5, isinspired by natural evolution. It is a robust search techniquethat allows a global high-quality solution to be derivedfrom a large search space in polynomial time. This is incontrast to other algorithms that find only local optimalresults. GA combines the best solutions from past searcheswith exploration of new regions of the solution space. Inthis algorithm, a feasible solution is represented using anindividual (chromosomes), and a set of assignments signi-fying tasks allocated on nominated processors is considereda gene in a chromosome. The algorithm keeps a populationof these randomly generated individuals that evolves overgenerations. The quality of an individual in the populationcan be characterized by a fitness function whose valuespecifies the fitness of an individual compared to others inthe population. Higher fitness level presents better solutions.Based on fitness, parents are selected to produce offspring fora new generation. The fitter individual has a better chanceto reproduce. A new generation has the same number ofindividuals as the previous generation, which dies off onceit is replaced with the new generation. By applying geneticoperators, namely, selection, crossover, and mutation to apopulation of chromosomes, the quality of the chromosomescan be improved. As a result, a new population of individualsis produced. If well designed, this new population willconverge to optimal solution.

Page 6: Research Article An Adaptive Procedure for Task Scheduling ...downloads.hindawi.com/journals/mpe/2015/969027.pdfcient and vulnerable to inherent obstacles of ... according to historical

6 Mathematical Problems in Engineering

One-dimensional array

Processor

TaskIndividual

�0 �1 �2 �3 �4 �5 �6 �7

P1 P1P1P2P3 P3P3P4

�0(P1) �1(P3) �2(P2) �3(P1) �4(P4) �5(P3) �6(P1) �7(P3)

Figure 6: A one-dimensional array.

Two-dimensional arraySchedule

Time

One-dimensional array

�0

�1

�2

�3

�4

�5

�6 �7

P1

P2

P3

P4

�0

�1

�2

�3

�4

�5

�6 �7

P1

P2

P3

P4

�0(P1) �3(P1) �5(P1) �4(P2) �1(P3) �6(P3) �7(P3) �2(P4)

Figure 7: Two-dimensional array.

The following section describes in detail each operator ofthe genetic algorithm.

5.2.1. Representation. Here, we choose each individual (asshown in Figure 6) in the population to illustrate a feasi-ble solution to the problem and contain an array of taskassignments. Each of the assignments consists of a taskand a corresponding assigned processor. The time frames ofeach task in each individual, such as earliest start time andearliest finish time, can be changed to adjust those of itssuccessive tasks. These changes can lead to a very complexstate during the genetic algorithm. Hence, our solution is toignore the time framewhile conducting geneticmanipulationand assign a time slot to each assignment in order to obtain afeasible schedule later.

A one-dimensional array (Figure 6) may not be suitablefor representing the workflow because it only defines whichprocessor is allocated to each task and cannot show the orderof task assignments on each processor. However, the execu-tion order is very important since it significantly impacts theworkflow execution [36]. We use a two-dimensional arrayto represent a schedule, as demonstrated in Figure 7. In thistwo-dimensional array, the order of tasks on each processoris shown. During genetic manipulation, the two-dimensionalarray is transformed into a one-dimensional array.

5.2.2. Establishing the Initial Population. The initial popu-lation is a set of individuals generated through a randomheuristic. Each individual consists of pairs of tasks andprocessors on which the tasks are allocated.

5.2.3. Constructing a Fitness Function. A fitness function canbe used to characterize the quality of each individual in apopulation based on its optimization value. According tofitness value, parents are selected to generate new offspring.Since the purpose of our method is to minimize the schedulelength while considering the network contention and the costfor cloud users, the fitness function has to rely on EFT andcloud costs paid by CCs. The following section illustratesestablishment of EFT and the cost of task V

𝑖on a processor

from its start time as well as the ingredient costs.The start time of a task is defined when the last preceding

task is completed. Thence, to determine that start time, theearliest idle interval [𝑡

𝐴, 𝑡𝐵] on processor𝑃

𝑗has to be searched

and found to satisfy Conditions 2 and 3. As a result, the starttime 𝑡

𝑠of task V

𝑖on processor 𝑃

𝑗is set as

𝑡𝑠(V𝑖, 𝑃𝑗) =

{

{

{

max (𝑡𝐴, 𝑡ready (V𝑖, 𝑃𝑗)) , if V

𝑖̸= Ventry,

0, otherwise.(3)

Thus, the earliest start time (EST) of a task V𝑖executed on

a processor 𝑃𝑗is computed as follows:

EST (V𝑖, 𝑃𝑗) = max

V𝑧∈prec(V𝑖),𝑃𝑘∈𝑁(𝑡𝑓(V𝑧, 𝑃𝑘))

+max𝑃𝑘∈𝑁

(𝑐 (𝑒𝑘𝑗

𝑖)) ,

(4)

where 𝑐(𝑒𝑘𝑗𝑖) is the communication time between processors

𝑃𝑘and 𝑃

𝑗to execute task V

𝑖and is defined as

𝑐 (𝑒𝑘𝑗

𝑖) = (𝑑𝑖

𝑘

𝑖+ ∑

V𝑧∈(prec(V𝑖)∩exec(𝑘))do𝑧𝑖)

∗ (

1

bw𝑗

+

1

bw𝑘

) .

(5)

Here, 𝑑𝑖𝑘𝑖is the amount of input data stored at processor 𝑃

𝑘

and used for executing task V𝑖and do

𝑧𝑖is amount of outgoing

data executed from 𝑃𝑘and then transferred to 𝑃

𝑗. Therefore,

the earliest finish time (EFT) of the task V𝑖is calculated as

EFT (V𝑖, 𝑃𝑗) = 𝑤 (V

𝑖, 𝑃𝑗) + EST (V

𝑖, 𝑃𝑗) . (6)

In addition, the algorithm also considers the cost paidby cloud customers for using cloud resources to execute thetasks. The cost 𝐶(V

𝑖, 𝑃𝑗) for task V

𝑖executed at a VM 𝑃

𝑗or at

a thin client 𝑃𝑗as well as thick client 𝑃

𝑗is defined by

𝐶 (V𝑖, 𝑃𝑗) =

{

{

{

𝐶

(V𝑖 ,𝑃𝑗)proc + 𝐶

(V𝑖 ,𝑃𝑗)wait + 𝐶

(V𝑖 ,𝑃𝑗)comm + 𝐶

(V𝑖 ,𝑃𝑗)disc + 𝐶

(V𝑖 ,𝑃𝑗)str + 𝐶

(V𝑖 ,𝑃𝑗)mem , VMs,

𝐶

(V𝑖 ,𝑃𝑗)comm + 𝐶

(V𝑖 ,𝑃𝑗)disc , thick clients.

(7)

Page 7: Research Article An Adaptive Procedure for Task Scheduling ...downloads.hindawi.com/journals/mpe/2015/969027.pdfcient and vulnerable to inherent obstacles of ... according to historical

Mathematical Problems in Engineering 7

In (7), each cost is calculated as follows.Cost of processing is expressed as

𝐶

(V𝑖 ,𝑃𝑗)proc = 𝑐

1∗

𝑤𝑙𝑖

𝑝𝑗

, (8)

where 𝑐1is the processing cost per time unit of workflow

execution on processor 𝑃𝑗with processing rate 𝑝

𝑗.

Let 𝑡min be the finish time of the task which is completedfirst out of the parallel tasks and there is no available task afterthis one, let 𝑐

2be the waiting cost per time unit, and let 𝑡

𝑖be

the finish time of task V𝑖. Then the cost of waiting time is as

follows:

𝐶

(V𝑖 ,𝑃𝑗)wait = 𝑐

2∗ (𝑡𝑖− 𝑡min) . (9)

Suppose that the amount of money per time unit fortransferring outgoing data from processor 𝑃

𝑗is 𝑐3; then the

cost of communication time is defined as follows:

𝐶

(V𝑖 ,𝑃𝑗)comm = 𝑐3 ∗

(𝑑𝑖𝑗

𝑖+ ∑V𝑧∈(prec(V𝑖)∩exec(𝑗)) do𝑧𝑖)

bw𝑗

. (10)

We assume that the distribution of disconnection eventsbetween a cloud and clients is a Poisson distribution withparameter 𝜇

𝑇, which represents the stability of the network.

The expected number of arrivals over an interval of length𝜏 is 𝐸[𝑁

𝑇] = 𝜇

𝑇∗ 𝜏. Let 𝐿 be a random variable for the

length of an offline event, let 𝜇𝐿be the mean length, and

let 𝑐4be the disconnection cost per unit time. Therefore, the

expected duration of a disconnection event, which can affectthe processing time of task V

𝑖, is 𝜇𝑇∗ 𝜏 ∗ 𝜇

𝐿. Hence, the cost

of disconnection can be derived as

𝐶

(V𝑖 ,𝑃𝑗)disc = 𝑐

4∗ (𝜇𝑇∗ 𝜏 ∗ 𝜇

𝐿) . (11)

Let 𝑐5be the storage cost per data unit and let st

𝑖be the

storage size of task V𝑖on processor 𝑃

𝑗. Then the storage cost

of task V𝑖on processor 𝑃

𝑗is calculated as

𝐶

(V𝑖 ,𝑃𝑗)str = 𝑐

5∗ st𝑖. (12)

Further, we compute the cost of using the memory ofprocessor 𝑃

𝑗for task V

𝑖as follows:

𝐶

(V𝑖 ,𝑃𝑗)mem = 𝑐

6∗ 𝑠mem, (13)

where 𝑠mem is the size of the memory used and 𝑐6is the

memory cost per data unit.Using this cost, we can calculate a fitness function that

computes the tradeoff 𝑈(V𝑖, 𝑃𝑗) between the cost and EFT as

𝑈(V𝑖, 𝑃𝑗) = min ∑

V𝑖∈𝐸,𝑃𝑘∈𝑁(

cost (V𝑖, 𝑃𝑗)

max [cost (V𝑖, 𝑃𝑘)]

EFT (V𝑖, 𝑃𝑗)

max [EFT (V𝑖, 𝑃𝑘)]

) .

(14)

Parent 1

Random position

Parent 2

After crossover

Before crossover

�1 �1

�2�2

�6 �6�7 �7

P4

�2P4

P4

�1 �6 �7P4

�0 �0�3

�3�4

�4

�4

�5

�5

P1

�0 �3 �5P1

P5

�2 �4P5

P1

�0P1

P2 P2

�3 �5P2

P3

�1 �6 �7P3

�0(P1) �3(P1) �5(P1) �4(P2) �1(P3) �6(P3) �7(P3) �2(P4)

�0(P1) �3(P2) �5(P2) �1(P4) �6(P4) �7(P4) �2(P5) �4(P5)

Figure 8: Single-point crossover.

By considering the above fitness function that combinescost(V

𝑖, 𝑃𝑗) and EFT(V

𝑖, 𝑃𝑗), we can determine which indi-

vidual in a population is the most appropriate to satisfy thefunction. This indicates that its combination of cost(V

𝑖, 𝑃𝑗)

and EFT(V𝑖, 𝑃𝑗) should demonstrate the minimum value of

the tradeoff 𝑈(V𝑖, 𝑃𝑗).

5.2.4. Genetic Operators

(i) Selection. New individuals are selected according to theirfitness described by the utility function’s tradeoff value afterbeing compared to others in the population. The chanceof being selected as a parent is proportional to fitnessand is in inverse ratio to the tradeoff value. An individualwhose tradeoff value is lower is better than the one with ahigher tradeoff value. The fittest is considered as successivegeneration evolves. An excessively strong fitness selectionbias can lead to suboptimal solution.

(ii) Crossover. Crossover operates at an individual level and isused to generate new offspring from two randomly selectedindividuals (parents) in the current population in order toresult in an even better individual in the subsequent gen-eration. There are three methods of crossover, single-pointcrossover, two-point crossover (ormultipoint crossover), anduniform crossover, for all of which the chance of crossover isbetween 0.6 and 1 in general. As shown in Figures 8, 9, and 10,the crossover operator used is determined by the followingrules:

(i) One, two (or multiple) points are randomly chosenfrom selected parents.

(ii) These random points divide each individual into leftand right sections.

Page 8: Research Article An Adaptive Procedure for Task Scheduling ...downloads.hindawi.com/journals/mpe/2015/969027.pdfcient and vulnerable to inherent obstacles of ... according to historical

8 Mathematical Problems in Engineering

Parent 1 Parent 2

After crossover

Before crossover

Random position 2Random position 1

�1 �1

�2�2

�6 �6�7 �7

P4

�2P4

P4

�1 �6 �7P4

�0 �0�3

�3�4

�4

�4

�5

�5

P1

�0 �3 �5P1

P5

�2 �4P5

P1

�0P1

P2 P2

�3 �5P2

P3

�1 �6 �7P3

�0(P1) �3(P1) �5(P1) �4(P2) �1(P3) �6(P3) �7(P3) �2(P4)

�0(P1) �3(P2) �5(P2) �1(P4) �6(P4) �7(P4) �2(P5) �4(P5)

Figure 9: Two-point crossover.

1 10 0 01 10Mark

Before crossover

After crossover

�0(P1)

�0(P1)

�3(P1)

�3(P1)

�5(P1)

�5(P1)

�4(P2)

�4(P2)

�1(P3)

�1(P3)

�6(P3)

�6(P3)

�7(P3)

�7(P3)

�2(P4)

�2(P4)

�0(P1)

�0(P1)

�3(P2)

�3(P2)

�5(P2)

�5(P2)

�1(P5)

�1(P5)

�6(P4)

�6(P4)

�7(P4)

�7(P4)�2(P4)

�2(P4)

�4(P5)

�4(P5)

Figure 10: Uniform crossover.

(iii) Crossover then swaps the left (or the right) sections ofthe two individuals.

(iv) Two new offspring are created by recombining sec-tions taken from two parents.

In particular, in single-point crossover (presented inFigure 8), one position in the individual is randomly chosen.The first child is a combination of the head of the firstparent with the tail of the second parent. The second childis also an arrangement of the head of the second parentwith the tail of the first parent. In the meantime, in a two-point crossover operator, two positions in the individuals arerandomly chosen as shown in Figure 9. The benefit of two-point crossover is to avoid the inherent problem of single-point crossover, wherein the genes at the head and the genesat the tail of a certain chromosome are always split whenrecombined.

A random mask containing bits (as illustrated inFigure 10) is generated in uniform crossover. The maskdetermines which bits are copied from each parent. The bitrepresents the position of the elements in each individual, and

Parent

Offspring

�0(P1) �3(P1) �5(P1) �4(P2) �1(P3) �6(P3) �7(P3) �2(P4)

�0(P1) �3(P1) �5(P1) �4(P4) �1(P3) �6(P3) �7(P3) �2(P4)

(a)

Parent

Swap

Offspring

�0(P1) �3(P1) �5(P1) �4(P2)

�4(P2)

�1(P3) �6(P3) �7(P3) �2(P4)

�0(P1) �3(P1) �5(P1) �1(P3) �6(P3) �7(P3) �2(P4)

(b)

Figure 11: Replacing mutation (a) and swapping mutation (b).

the bit density in the mask determines how much material istaken from each parent.

(iii) Mutation. In genetic algorithms, a mutation generatesnew offspring from a single parent in the current population.Mutation maintains the diversity of individuals by exploringnew and better genes than were previously considered inorder to prevent a combination of all solutions in the pop-ulation converging into a local optimum of solved problemsas crossover can only explore the current combinations in thegene pool. However, mutation rates are low as the chance ofmutation in a specific individual is low (approximately 0.001).There are two types of mutations: a replacing mutation and aswapping mutation.

The purpose of the replacing mutation is to reallocatea substitute processor to a random task in an individual.The selected processor is also randomly chosen and hasenough capacity to execute the task. Figure 11(a) illustrates thereplacing mutation. In this figure, processor 𝑃

2allocated to

task V4is replaced by processor 𝑃

4. In contrast, the swapping

mutation changes the execution order of independent taskson the same processor in an individual for the same time slot.The example of swapping mutation in Figure 11(b) shows thattask V

5occupies the initial time slot of task V

0.

To verify the performance of our proposed genetic algo-rithm based approach, we have also designed several othertask scheduling algorithms. These algorithms minimize theschedule length of the workflow or lessen the cloud costpaid by CCs. Algorithm 1 is greedy for cost algorithm, whereeach task of the workflow is assigned to a processor whichminimizes cost greedily for cloud resources to execute thattask. In Algorithm 2, contention aware scheduling [19] aimsto create a schedule based on EFT pondering on networkcontention.Meanwhile, Algorithm 3 shows that our approachspeculates in both network contention and cloud cost as wellas considering the tradeoff between the execution time andthe cost. Moreover, our method also tries to get a globaloptimal scheduling for the workflow.

6. Implementation and Analysis

6.1. Experimental Settings. This section presents our experi-ments via numerical simulations to evaluate the efficiency of

Page 9: Research Article An Adaptive Procedure for Task Scheduling ...downloads.hindawi.com/journals/mpe/2015/969027.pdfcient and vulnerable to inherent obstacles of ... according to historical

Mathematical Problems in Engineering 9

Input: Task graph 𝐺 = (𝑉, 𝐸, 𝑤, 𝑐), processor graph TG = (𝑁,𝐷)Output: A new task schedulingFunction greedyForCostScheduling (𝐺, TG) {{

Sort task V𝑛∈ 𝑉 into list 𝐿 according to priority;

for each V𝑛∈ 𝐿

{

Find the best processor 𝑃𝑗which minimize the execution cost of task V

𝑛;

Assign V𝑛on 𝑃𝑗;

}

return a new task scheduling;}

Algorithm 1: Greedy for cost algorithm.

Input: Task graph 𝐺 = (𝑉, 𝐸, 𝑤, 𝑐), processor graph TG = (𝑁,𝐷)Output: A new task schedulingFunction networkCostScheduling (𝐺, TG) {{

Sort task V𝑛∈ 𝑉 into list 𝐿 according to priority.

for each V𝑛∈ 𝐿

{

Find the best processor 𝑃𝑗which allows EFT of V

𝑛, taking account of network bandwidth usage;

Assign V𝑛on 𝑃𝑗;

}

return a new task scheduling;}

Algorithm 2: Network contention aware scheduling.

Table 2: Characteristics of the target system.

Parameter ValueTopology model LAN, fully connectedOperating system Windows 7 ProfessionalNumber of processors [5, 30]Number of tasks [20, 90]Processing rate [10, 750]MIPSBandwidth [10, 100, 512, 1024]MbpsCost per a time unit executed onprocessor 𝑃

𝑗

[0.1, 0.5]

Cost per outgoing data unit fromprocessor 𝑃

𝑗

[0.2, 0.6]

Cost of waiting time [0.1, 0.4]Cost of a disconnection time [0,02, 0.2]Cost of memory used [0,01, 0.1]Cost of storage used [0,05, 0.2]

our approach, the cost-time aware genetic algorithm (CTaG),and compare its performance with two others: contentionaware scheduling (CaS) [19], which just takes account ofnetwork contention, and greedy for cost (GfC) algorithm,

whichmerely concerns themonetary cost. All the parametersare a different task graph 𝐺 = (𝑉, 𝐸, 𝑤, 𝑐) with the increase ofthe matrix size from 10 to 90 and a heterogeneous processorgraph TG = (𝑁,𝐷) which is a combination between 20 VMswith the different configurations and 6 thick clients and 4thin clients located at the local system of CCs for the abovealgorithms as shown inTable 2.Wedeveloped the simulationsin Java with JDK-7u7-i586 and Netbeans-7.2 using CloudSim[37]. It is a framework for modeling and simulation of cloudcomputing infrastructures and services. In our simulation, wedenoteMillion Instructions per Second byMIPS to representthe processing capacity of processors.

6.2. Experimental Results. Figures 12–19 show the simulationresults of our proposed genetic method for task schedulingcompared against other scheduling techniques. The graphspresent the measured outcomes of systems based on theabove methods. Their simulated results are different fromeach other, which is mainly caused by the instability of thenetwork bandwidth between heterogeneous processors andthe increasing number of tasks.

Figure 12 shows that GfC algorithm gets the worst case,CaS obtains the best result in terms of schedule length, whileour approach is still in the middle. Specifically, our method is19% better than GfC.

Page 10: Research Article An Adaptive Procedure for Task Scheduling ...downloads.hindawi.com/journals/mpe/2015/969027.pdfcient and vulnerable to inherent obstacles of ... according to historical

10 Mathematical Problems in Engineering

Input: Task graph 𝐺 = (𝑉, 𝐸, 𝑤, 𝑐), processor graph TG = (𝑁,𝐷)Output: A new task schedulingFunction geneticScheduling (𝐺, TG) {{

Generate initial population;Compute fitness of each individual according to (14)repeat // New generation

for population size{

Select two parents from old generation;// biased to the fitter onesRecombine parents for two offspring;Compute fitness of offspring;Insert offspring in new generation

}

until population has converged}

Algorithm 3: Cost-time aware genetic algorithm.

100

80

60

40

20

0

0 200 400 600 800 1000 1200

Num

ber o

f tas

ks

Schedule length (min)

Greedy for costContention aware schedulingCost-time aware genetic

Figure 12: Schedule length comparison.

However, regarding the monetary cost paid by CCs (asillustrated in Figure 13), it has been observed that althoughCaS provides the best performance, it has the highest costwhile the opposite is true forGfC algorithm. In themeantime,our solution is balanced between schedule length and cloudcost. Compared with CaS, our method can save nearly 20%of cost for CCs.

We next measured the effect of increasing number ofprocessors on the cloud cost and the schedule length onlyin CTaG algorithm with a fixed number of tasks. The resultsreflected in Figures 14 and 15 indicate that more processorsresult in better system performance but higher cost. It ishighly noticeable to find that the cost goes up from300000G$to 327400G$ as the number of processors increases from 15to 20.

600000

500000

400000

300000

200000

100000

0 20 40 60 80 100

Number of tasks

Cos

t (G

$)

Greedy for costContention aware schedulingCost-time aware genetic

Figure 13: Cost comparison.

Similar to the above simulation that regards the numberof generations, results from Figures 16 and 17, it shows thatthe schedule length of the workflow is reduced with theslight decrease of the execution cost when the number of thegenerations increases.This is because each individual selectedhas to consider the tradeoff between cloud cost and executiontime.

Finally, we observe the performance of the CTaG algo-rithm with a different number of individuals. When thenumber of individuals is altered from 20 to 90 (Figures 18 and19), we witness the fact that the increase in the populationsize does not significantly affect the execution cost of theworkflow while probability of finding a faster solution ishigher. The cost just fluctuates between 55500 and 60500G$.On the other hand, scheduling time exhibits a downwardtrend from approximately 78 minutes to around 50 minutes.

Page 11: Research Article An Adaptive Procedure for Task Scheduling ...downloads.hindawi.com/journals/mpe/2015/969027.pdfcient and vulnerable to inherent obstacles of ... according to historical

Mathematical Problems in Engineering 11

450

400

350

300

250

200

5 10 15 20 25 30

Number of processors

Sche

dule

leng

th (m

in)

Cost-time aware genetic

Figure 14: Schedule length with numbers of processors.

5 10 15 20 25 30

Number of processors

Cost-time aware genetic

335000

330000

325000

320000

315000

310000

305000

300000

295000

290000

Cos

t (G

$)

Figure 15: Cost with numbers of processors.

7. Conclusion

This paper proposes a thin-thick client collaboration archi-tecture that aims at optimizing cloud access in mobile cloudplatform. Furthermore, we presented a novel genetic methodto improve the task scheduling so as to bring reliable process-ing time while balancing the network contention and cloudservice cost. Besides, we conducted simulations to evaluateour approach. Through the implementation, it has been seenthat our solution is more cost-effective and achieves betterperformance than other existing approaches when compared.We will soon extend the proposed model to run in variouscircumstances to achieve higher reliability and efficiencywithmaximum satisfaction.

320

300

280

260

240

220

200

180

160

140

120

100

10 20 30 40 50 60

Number of generations

Sche

dule

leng

th (m

in)

Cost-time aware genetic

Figure 16: Schedule length with numbers of generations.

10 20 30 40 50 60

Number of generations

Cost-time aware genetic

20000

40000

60000

80000

100000

Cos

t (G

$)

Figure 17: Cost with numbers of generations.

Notations

𝐺: Directed Acyclic Graph𝑉: Set of parallel tasks𝐸: Communication between subtasks V

𝑖

and V𝑗

prec(V𝑖): Set of preceding tasks of task V

𝑖

succ(V𝑖): Set of successive tasks of task V

𝑖

𝑡𝑠(V𝑖, 𝑃𝑗): Start time of task V

𝑖∈ 𝑉 on processor 𝑃

𝑗

𝑤(V𝑖, 𝑃𝑗): Execution time of task V

𝑖∈ 𝑉 on

processor 𝑃𝑗

𝑡𝑓(V𝑖, 𝑃𝑗): Finish time of task V

𝑖∈ 𝑉 on processor

𝑃𝑗

𝑡ready(V𝑖, 𝑃𝑗): Time in which processor 𝑃𝑗completes

its last assigned task and is ready toexecute task V

𝑖

Page 12: Research Article An Adaptive Procedure for Task Scheduling ...downloads.hindawi.com/journals/mpe/2015/969027.pdfcient and vulnerable to inherent obstacles of ... according to historical

12 Mathematical Problems in Engineering

30 40 50 60 70 80

30

20

10

0

40

50

60

70

80

90

Number of individuals

Sche

dule

leng

th (m

in)

Cost-time aware genetic

Figure 18: Schedule length with numbers of individuals.

0

50000

40000

30000

20000

10000

20 40 60 80 100

Number of individuals

Cost-time aware genetic

Cos

t (G

$)

Figure 19: Cost with numbers of individuals.

EST: Earliest start timeEFT: Earliest finish time𝐶(V𝑖, 𝑃𝑗): Cost for task V

𝑖executed on processor 𝑃

𝑗

𝐶

(V𝑖 ,𝑃𝑗)proc : Processing cost of task V

𝑖executed on

processor 𝑃𝑗

𝐶

(V𝑖 ,𝑃𝑗)wait : Waiting cost of task V

𝑖executed on

processor 𝑃𝑗

𝐶

(V𝑖 ,𝑃𝑗)comm: Communication cost of task V

𝑖executed

on processor 𝑃𝑗

𝐶

(V𝑖 ,𝑃𝑗)disc : Disconnecting cost of task V

𝑖executed

on processor 𝑃𝑗

𝐶

(V𝑖 ,𝑃𝑗)str : Cost of using the memory of processor

𝑃𝑗for task V

𝑖

𝐶

(V𝑖 ,𝑃𝑗)mem : Storage cost of task V

𝑖on processor 𝑃

𝑗.

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper.

Acknowledgments

This work was supported by the IT R&D program ofMSIP/IITP (B0101-15-0535, Development of Modularized In-Memory Virtual Desktop System Technology for High SpeedCloud Service). And this research was supported by Next-Generation Information Computing Development Programthrough the National Research Foundation of Korea (NRF)funded by the Ministry of Science, ICT, and Future Planning(NRF-2010-0020725). The corresponding author is ProfessorEui-Nam Huh.

References

[1] Gartner Inc, 2013, http://www.gartner.com/newsroom/id/2408515.

[2] H. Qi and A. Gani, “Research on mobile cloud computing:review, trend and perspectives,” in Proceedings of the 2nd Inter-national Conference on Digital Information and CommunicationTechnology and It’s Applications (DICTAP ’12), pp. 195–202,Bangkok, Thailand, 2012.

[3] H. Luo and M.-L. Shyu, “Quality of service provision inmobile multimedia—a survey,”Human-Centric Computing andInformation Sciences, vol. 1, article 5, 2011.

[4] R. Hussain and H. Oh, “Cooperation-aware VANET clouds:providing secure cloud services to vehicular Ad hoc networks,”Journal of Information Processing Systems, vol. 10, no. 1, pp. 103–118, 2014.

[5] S.-J. Baek, S.-M. Park, S.-H. Yang, E.-H. Song, and Y.-S. Jeong,“Efficient server virtualization using grid service infrastruc-ture,” Journal of Information Processing Systems, vol. 6, no. 4, pp.553–562, 2010.

[6] Google Glass, http://www.google.com/glass/.[7] Apple iWatch, http://www.t3.com/news/apple-iwatch-ru-

mours-features-release-date.[8] P. P. Hung, T.-A. Bui, M. A. G. Morales, M. van Nguyen,

and E.-N. Huh, “Optimal collaboration of thin-thick clientsand resource allocation in cloud computing,” Personal andUbiquitous Computing, vol. 18, no. 3, pp. 563–572, 2014.

[9] F. Siegemund, C. Floerkemeier, and H. Vogt, “The value ofhandhelds in smart environments,” Personal and UbiquitousComputing, vol. 9, no. 2, pp. 69–80, 2005.

[10] G. Huerta-Canepa and D. Lee, “A virtual cloud computingprovider for mobile devices,” in Proceedings of the 1st ACMWorkshop on Mobile Cloud Computing & Services: Social Net-works and Beyond (MCS ’10), San Francisco, Calif, USA, June2010.

[11] T.-J. Kim, B.-G. Kim, G.-S. Park, and K.-S. Jang, “Efficientblock mode determination algorithm using adaptive searchdirection information for scalable video coding (SVC),” Journalof Convergence, vol. 5, no. 1, pp. 14–19, 2014.

[12] H. Cho andM. Choi, “Personal mobile album/diary applicationdevelopment,” Journal of Convergence, vol. 5, no. 1, pp. 32–37,2014.

[13] J. Li, S. Su, X. Cheng, Q. Huang, and Z. Zhang, “Cost-conscious scheduling for large graph processing in the cloud,”

Page 13: Research Article An Adaptive Procedure for Task Scheduling ...downloads.hindawi.com/journals/mpe/2015/969027.pdfcient and vulnerable to inherent obstacles of ... according to historical

Mathematical Problems in Engineering 13

in Proceedings of the IEEE 13th International Conference on HighPerformance Computing and Communications (HPCC ’11), pp.808–813, Banff, Canada, September 2011.

[14] L. Zeng, B. Veeravalli, and X. Li, “Budget conscious schedul-ing precedence-constrained many-task workflow applicationsin cloud,” in Proceedings of the International Conference onAdvanced Information Networking and Applications (AINA ’12),March 2012.

[15] Amazon Web Services, http://aws.amazon.com/ec2/.[16] A. Bhattacharya, W. Wu, and Z. Yang, “Quality of experience

evaluation of voice communication: an affect-based approach,”Human-Centric Computing and Information Sciences, vol. 2,article 7, 2012.

[17] H. Topcuoglu, S. Hariri, and M.-Y. Wu, “Performance-effectiveand low-complexity task scheduling for heterogeneous comput-ing,” IEEE Transactions on Parallel and Distributed Systems, vol.13, no. 3, pp. 260–274, 2002.

[18] S. Gotoda, M. Ito, and N. Shibata, “Task scheduling algorithmfor multicore processor system for minimizing recovery time incase of single node fault,” in Proceedings of the 12th IEEE/ACMInternational Symposium on Cluster, Cloud and Grid Computing(CCGrid ’12), pp. 260–267, Ottawa, Canada, May 2012.

[19] O. Sinnen and L. A. Sousa, “Communication contention intask scheduling,” IEEE Transactions on Parallel and DistributedSystems, vol. 16, no. 6, pp. 503–515, 2005.

[20] L. C. Canon and E. Jeannot, “Evaluation and optimization of therobustness of dag schedules in heterogeneous environments,”IEEE Transactions on Parallel and Distributed Systems, vol. 21,no. 4, pp. 532–546, 2010.

[21] S. K. Senthil Kumar and P. Balasubramanie, “Dynamic schedul-ing for cloud reliability using transportation problem,” Journalof Computer Science, vol. 8, no. 10, pp. 1615–1626, 2012.

[22] R. van den Bossche, K. Vanmechelen, and J. Broeckhove,“Cost-efficient scheduling heuristics for deadline constrainedwork-loads on hybrid clouds,” in Proceedings of the IEEE3rd International Conference Cloud Computing Technology andScience (CloudCom ’11), November-December 2011.

[23] S. Funk, C. Ho, V. Berten, and J. Goossens, “A global optimalscheduling algorithm for multiprocessor low-power platforms,”in Proceedings of the 20th International Conference on Real-TimeandNetwork Systems, pp. 71–80, ACM, Pont aMousson, France,November 2012.

[24] A. V. Karthick, E. Ramaraj, and R. G. Subramanian, “An efficientmulti queue job scheduling for cloud computing,” in Proceed-ings of the World Congress on Computing and CommunicationTechnologies (WCCCT ’14), pp. 164–166, IEEE, Trichirappalli,India, February-March 2014.

[25] T. Kaiser andO. Jegede, “A genetic algorithm formultiprocessortask scheduling,” in Proceedings of the World Congress in Com-puter Science, Computer Engineering, and Applied Computing(WORLDCOMP ’13), July 2013.

[26] S. Gupta, G. Agarwal, and V. Kumar, “Task scheduling inmultiprocessor system using genetic algorithm,” in Proceedingsof the the 2nd International Conference on Machine Learningand Computing (ICMLC ’10), pp. 267–271, Bangalore, India,February 2010.

[27] S. Tsutsui and N. Fujimoto, “Solving quadratic assignmentproblems by genetic algorithms with GPU computation: a casestudy,” in Proceedings of the 11th Annual Conference Companionon Genetic and Evolutionary Computation Conference (GECCO’09), Quebec, Canada, 2009.

[28] D. Jiankang,W. Hongbo, L. Yangyang, and C. Shiduan, “Virtualmachine scheduling for improving energy efciency in IaaScloud,” China Communications, vol. 11, no. 3, pp. 1–12, 2014.

[29] H. T. T. Binh, “Multi-objective genetic algorithm for solving themultilayer survivable optical network design problem,” Journalof Convergence, vol. 5, no. 1, pp. 20–25, 2014.

[30] J. Wolf, N. Bansal, K. Hildrum et al., “SODA: an optimizingscheduler for large-scale stream-based distributed computersystems,” in Proceedings of the 9th ACM/IFIP/USENIX Interna-tional Conference onMiddleware (Middleware ’08), pp. 306–325,December 2008.

[31] K. G. Anilkumar, “A subjective job scheduler based on abackpropagation neural network,” Human-Centric Computingand Information Sciences, vol. 3, article 17, 2013.

[32] B. Kim, C.-H. Youn, Y.-S. Park, Y. Lee, and W. Choi, “Anadaptive workflow scheduling scheme based on an estimateddata processing rate for next generation sequencing in cloudcomputing,” Journal of Information Processing Systems, vol. 8,no. 4, pp. 555–566, 2012.

[33] Y.-C. Lee andA. Y. Zomaya, “A novel state transitionmethod formetaheuristic-based scheduling in heterogeneous computingsystems,” IEEE Transactions on Parallel and Distributed Systems,vol. 19, no. 9, pp. 1215–1223, 2008.

[34] F. A. Omara and M. M. Arafa, “Genetic algorithms for taskscheduling problem,” Journal of Parallel and Distributed Com-puting, vol. 70, no. 1, pp. 13–22, 2010.

[35] P. P. Hung, M. Aazam, T.-D. Nguyen, and E.-N. Huh, “Asolution for optimizing recovery time in cloud computing,” inProceedings of the 8th International Conference on UbiquitousInformation Management and Communication (ICUIMC ’14),Siem Reap, Cambodia, January 2014.

[36] J. Yu and R. Buyya, “A budget constrained scheduling ofworkflow applications on utility grids using genetic algorithms,”in Proceedings of the Workshop on Workflows in Support ofLarge-Scale Science (WORKS ’06), June 2006.

[37] Cloudsim, https://code.google.com/p/cloudsim/downloads/list.

Page 14: Research Article An Adaptive Procedure for Task Scheduling ...downloads.hindawi.com/journals/mpe/2015/969027.pdfcient and vulnerable to inherent obstacles of ... according to historical

Submit your manuscripts athttp://www.hindawi.com

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttp://www.hindawi.com

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Journal of

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

CombinatoricsHindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

International Journal of

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

The Scientific World JournalHindawi Publishing Corporation http://www.hindawi.com Volume 2014

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttp://www.hindawi.com

Volume 2014 Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Stochastic AnalysisInternational Journal of