0% found this document useful (0 votes)
5 views

14

This paper presents a cooperative game theoretic approach for job scheduling in cloud computing, aiming to maximize resource utilization and profit while minimizing deadline violations. It proposes a new scheduling technique using Non-dominated Sorting Genetic Algorithm II (NSGA II) to achieve Pareto optimal solutions. The research highlights the importance of effective scheduling in meeting Service Level Agreements (SLAs) and user satisfaction in a resource-constrained environment.

Uploaded by

Syed Shah
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

14

This paper presents a cooperative game theoretic approach for job scheduling in cloud computing, aiming to maximize resource utilization and profit while minimizing deadline violations. It proposes a new scheduling technique using Non-dominated Sorting Genetic Algorithm II (NSGA II) to achieve Pareto optimal solutions. The research highlights the importance of effective scheduling in meeting Service Level Agreements (SLAs) and user satisfaction in a resource-constrained environment.

Uploaded by

Syed Shah
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

2015 Intl. Conference on Computing and Network Communications (CoCoNet'15), Dec.

16-19, 2015, Trivandrum, India

Cooperative Game Theoretic Approach for Job


Scheduling in Cloud Computing
Alaka Ananth K. Chandrasekaran
Department of Computer Science and Engineering Department of Computer Science and Engineering
The National Institute of Engineering National Institute of Technology Karnataka
Mysore, India Surathkal, India
Email: [email protected] Email: [email protected]

Abstract—Cloud computing is the upcoming technology in be executed and there is no need for scheduling. But when the
current day scenario. It has emerged as a solution for providing number of requests are more and resources are limited, system
computing resources as a service to the consumers in the form has to maintain some order to satisfy the user’s requests. If
of infrastructure, platform and software. When multiple users
request for services, cloud service provider has to schedule the multiple users request for same resource which is limited,
requests to the available resources appropriately to satisfy each system has to follow proper provisioning of resources based
user’s request to meet Service Level Agreements (SLAs) and also on certain parameters. System has to decide the order in which
deadline constraints. Job scheduling in cloud environment is an resources should be given to users to fulfil the service request
important issue where the main aim is to schedule the jobs for without violating the SLAs. The way in which system makes
effective resource utilization. Cloud service provider has to find
the best possible scheduling in order to gain maximum profit decision of ordering to satisfy user’s requests is known as
from the service provided to the consumers. This paper aims at scheduling. Scheduling plays an important role in fulfilling
maximizing the resource utilization as well as profit for the service user’s requests and providing services without violating SLAs
provider by cooperative game theory based approach for job and deadline constraints.
scheduling in cloud environment. Additionally it also concentrates Scheduling in general can be defined as method in which
on minimizing the deadline violation and makespan for the
jobs submitted by the user. Thus, new job scheduling technique processors are given access to resources in some order. In
is proposed using the concepts of game theory and genetic cloud computing environment, job scheduling can be redefined
algorithm. This research work also focusses on cooperative game as method of allocating resources to different jobs based on
theoretic approach to provide Pareto optimal solution using Non- certain criteria and thereby defining the order of execution
dominated Sorting Genetic Algorithm II (NSGA II). of the jobs. If there are sufficient resources to satisfy user’s
requests, then there is no need for scheduling. Scheduling
I. I NTRODUCTION
in cloud comes into picture when there are more number of
Cloud computing is the upcoming technology in current day service requests from the users but only limited resources.
scenario. It has emerged as a solution providing computing Scheduling a set of tasks for parallel systems on processors
resources as a service to the consumers in the form of infras- is an important and complex issue. Solving this problem
tructure, platform and software. National Institute of Standards could provide better performance and interaction among nodes
and Technology (NIST) definition says, “Cloud computing in parallel and distributed systems. The purposes of task
is a model for enabling ubiquitous, convenient, on-demand- scheduling in distributed systems include maximizing system
network access to a shared pool of configurable computing throughput by assigning specific tasks to specific processors,
resources (e.g., networks, servers, storage, applications, and maximizing resource utilization, minimizing execution time,
services) that can be rapidly provisioned and released with minimizing cost on the user side and fulfilling economic
minimal management effort or service provider interaction.” constraints. Scheduling of jobs should consider meeting the
This cloud model is composed of five essential character- SLAs and also achieving QoS to gain user’s satisfaction.
istics, three service models and four deployment models Genetic Algorithm (GA) is a meta-heuristic search tech-
[1]. Five essential characteristics are: on-demand self-service, nique which allows the search of large solution spaces heuristi-
broad network access, resource pooling, rapid elasticity, and cally in polynomial time, by applying evolutionary techniques
measured service. Four deployment models include private, from nature which are also known as bio-inspired approaches.
community, public and hybrid cloud. Three service models are In GA, a population represents a set of candidate solutions to
Software as a Service (SaaS), Platform as a Service (PaaS) and an optimization problem. The candidates (called chromosomes
Infrastructure as a Service (IaaS). or the genotype of the genome) evolve toward better solutions.
In cloud computing, service requests are dynamic in nature Solutions are often represented in binary as strings of 0s and
as the amount of resources requested by the consumers may 1s; however other encodings are also possible. The evolution
vary at any time. When there are requests from the users and usually starts from a population of randomly generated chro-
resources are sufficient for providing services, all the jobs can mosomes. In each generation, the fitness of each chromosomes

978-1-4673-7309-8/15/$31.00 ©2015 IEEE 147


2015 Intl. Conference on Computing and Network Communications (CoCoNet'15), Dec. 16-19, 2015, Trivandrum, India

in the population is evaluated, multiple chromosomes are to grid resources. They are also working on inter-operable grid
selected from the current population (based on their fitness), and cloud frameworks [6].
and modified (crossed over and possibly mutated) to form a Liu et. al proposed a scheduling model for cloud computing
new population. The new population is then used in the next based on Multi-Objective Genetic Algorithm to minimize
iteration of the algorithm. Commonly, the algorithm terminates energy consumption and maximize profit of service providers
when either a maximum number of generations has been under the constraint of deadlines. This model considers both
reached, or a satisfactory fitness level has been met for the resource requirements of different jobs and circumstances of
population. If the algorithm has terminated due to a maximum computing infrastructure [7].
number of generations, a satisfactory solution may or may not Knsemller et. al presented the game theoretical approach to
have been reached. the benefits of cloud computing. A game-theoretic model of
In this research work, solution for the job scheduling an Infrastructure-as-a-Service (IaaS) cloud market, covering
problem is provided with the help of genetic algorithm. The dynamics of pricing and usage, is suggested [8].
GA cannot be applied directly to cloud environment as this Lu et. al the authors developed a simple model for cooper-
research work focusses on Multi-Objective Decision Making ative coalition based on Markov chain. Resource and revenue
(MODM) problem. To reach the optimal solution in a large sharing among cloud providers is considered using stochastic
solution space for a MODM problem, a variant of genetic linear programming game. The work done is for centralized
algorithm, NSGA II is used. systems. For distributed environment, algorithms are yet to be
Rest of the paper is organized as follows. Section II dis- developed [9].
cusses related work. Section III gives an overview of game Rahman et. al proposed a novel technique for decentralized
theory and NSGA. In section IV, we define and formulate and co-operative workflow scheduling in dynamic distributed
for problem. Section V gives the optimization algorithm. In grid resource sharing environment. This approach is scalable
Section VI, we analyse our work. Concluding remarks are in terms of message complexity as well as makespan [10].
presented in Section VII. Ranjan et. al presented SLA-based super scheduling ap-
proach which is based on contract net protocol. Though this
II. R ELATED W ORK approach provides finer control over the resources, it also has
Many approaches by various authors have been suggested a degrading effect on users QoS satisfaction. Simultaneous
for job scheduling in cloud environment. Few of them focus bidding mechanisms are to be developed in order to meet the
on game theoretic approaches. This section briefly describes QoS requirements as well as reduce response time for the users
few papers along with their advantages and drawbacks. [11].
Zhou et. al presented a novel technique of combining game Wu et. al proposed a task scheduling algorithm based on
theory with genetic algorithm in order to provide efficient job QoS-driven in cloud computing. Based on special attributes of
scheduling algorithm considering makespan as the parameter task, algorithm computes priority for each task and the tasks
for performance analysis. Authors have focused only on non- are sorted by priority. In order to achieve good performance,
cooperative games in grid environment [2]. algorithm evaluates the completion time of each task and
Buscemi et. al presented game theoretic analysis of job schedules each task based on priority as well as minimal
scheduling in heterogeneous grid environment by exploiting completion time. Thus the proposed algorithm achieves good
the concept of Nash Equilibrium inherited from game theory. performance as well as load balancing by QoS driving from
Authors also mentioned about extending their work to cloud both priority and completion time [12].
computing systems [3]. S. Ghanbari et. al proposed a priority based job scheduling
Ye et. al presented non-cooperative games on multidimen- algorithm in cloud (PJSC) which is based on multiple criteria
sional resource allocation in cloud environment. They inves- decision making model. This algorithm mainly focuses on
tigated on two resource allocation problems: the server load priority rather than makespan. Though it has a reasonable
balancing and the Virtual Machine(Vm) placement problems. complexity, finish time is the major drawback [13].
Solution is provided using Nash Equilibrium concept [4]. Jang et. al proposed a task scheduling algorithm based on
Wei et. al in their work presented a game theoretic method genetic algorithm in order to solve task scheduling issues
of fair resource allocation for cloud computing systems. in cloud computing environment. The proposed algorithm
Initially each participant solves in problem independently considers user’s satisfaction as well as availability of virtual
without considering the multiplexing of resource assignment. machines in order to schedule the tasks appropriately. Genetic
Later on, evolutionary mechanism is designed which changes scheduling function iterates to output the best possible task
multiplexed strategies of initial optimal solutions of different schedule [14].
participants with minimizing their efficiency losses. The algo- M. Paul et. al proposed a dynamic job scheduling mecha-
rithms in the evolutionary mechanism take both optimization nism for cloud computing based on horizontal load balancing.
and fairness into account [5]. Authors considered task scheduling problem as an assignment
Arackal et. al showed that grid and cloud can co-exist in problem of mathematics and solved it using Lexi-search ap-
GARUDA. Authors have tried to make cloud available to High proach for optimal feasible assignment. [15].
Performance Computing(HPC) users who may not have access S. Bitam proposed Bee’s Life Algorithm for job scheduling

148
2015 Intl. Conference on Computing and Network Communications (CoCoNet'15), Dec. 16-19, 2015, Trivandrum, India

which was inspired by bee’s life in nature. Authors have shown the authors concentrated on non-cooperative game theoretic
that this technique gives better results when compared to that approach. Cooperative game theoretic approach may yield
of Genetic Algorithm. Makespan is the main objective consid- better results when compared to non-cooperative approaches.
ered for performance evaluation. Dynamic job scheduling in The main focus of this research work is to use game theory for
cloud as well as execution of jobs in real time is suggested as scheduling jobs in cloud environment. For cooperative game
the future work [16]. theoretic approach we can further improvise the results by
S Behzad et. al proposed Queue based Job Scheduling Pareto Efficiency concept of game theory. We focus on coop-
algorithm for efficient execution of user jobs. Authors have erative game theoretic approach for job scheduling considering
compared their work with existing approaches like First makespan, deadline violation and resource utilization as the
Come First Serve(FCFS), Round Robin(RR) and Shortest Job parameters.
First(SJF) considering average waiting time, average response
time as parameters. Simulation results show that Queue based III. NSGA AND G AME T HEORY
Job Scheduling algorithm is better than the existing ones in A. Game Theory
terms of execution time [17].
In their work Dumitrescu et. al proposed a different ap- Game theory is a distinct and interdisciplinary approach for
proach for job scheduling and bin packing problem. For the the study of human behaviour. The disciplines most involved in
detection of equilibrium evolutionary approach is considered. game theory are mathematics, economics and the other social
Authors have shown that for large number of players Aumann and behavioural sciences. Game theory can be broadly classi-
Equilibria gives a better solution than Nash Equilibria [18]. fied into cooperative game theory and non-cooperative game
Ahmad et. al addressed the problem of power aware theory. In cooperative game theory the players cooperate and
scheduling considering makespan and energy consumption as coordinate to form coalition and compete in groups whereas
the main objective of scheduling. Authors converted Energy in non cooperative game theory, each player independently
Aware Task Allocation problem into cooperative game theory competes against other players.
to minimize energy consumption as well as makespan simul- Few terms extensively used in game theory can be given as
taneously while maintaining the deadline constraints [19]. follows:
The specific target of minimizing makespan in the NP- Game: A game is a formal description of a strategic situation.
Complete problem, job-shop scheduling is considered by the Player: A player is an agent who makes decisions in a game.
authors. An Evolutionary Algorithm approach is adopted. As Payoff: A payoff is a number, also called utility, that reflects
encoding is one of the major steps while using evolutionary the desirability of an outcome to a player, for whatever reason.
algorithms to solve a problem, two different encodings the When the outcome is random, payoffs are usually weighted
parallel machine encoding and parallel job encoding are ex- with their probabilities.
perimented. Different crossover and mutation operators are Strategy: In a game in strategic form, a strategy is one of
designed. The parallel job approach is observed to have a the given possible actions of a player. In an extensive game, a
greater efficiency in the context considered [20]. strategy is a complete plan of choices, one for each decision
The authors focus on the multi-objective nature of the NP- point of the player.
Hard task scheduling problem in the grid computing environ- Nash Equilibrium, Best Response, Maximin Solution,
ment. They have developed a mathematical model to formulate Pareto Optimality or Pareto Efficiency are few of the solution
the scheduling problem involving the various users, their tasks, concepts of game theory [23].
the resources and the resource providers. In the optimization The main focus of this paper is to use game theory for
model proposed, load balancing and task completion time are scheduling jobs in cloud environment. Here, scheduling is
considered as the objectives. [21]. considered as a game where the users requesting for services
The incorporation of the genetic operators of crossover are players, meeting the users’ satisfaction is the payoff for the
and mutation in the Artificial Bee Colony Approach to solve user whereas gaining maximum profit is the payoff for service
job scheduling problems is proposed by the authors. The provider. Scheduling of users’ requests on the machines is the
real coded crossover and mutation operators are used in the strategy. Problem is formulated by mapping the concepts of
proposed approach, after the employer bee phase and the game theory to job scheduling.
onlooker bee phase, respectively [22].
In most of the above mentioned research works, solution is B. Non-dominated Sorting Genetic Algorithm
provided using concept of game theory called Nash Equilib- Non-dominated Sorting Genetic Algorithm (NSGA) was
rium. Nash equilibrium is a certain combination of strategy proposed by K. Deb et al [24] to find solution set for multi-
choices, under which no player can benefit by unilaterally objective optimization problems. In a typical multi-objective
changing his strategy while the other players keep their optimization problem, there exists a set of solutions which
strategy unchanged. Nash equilibrium is under the assump- are superior to rest of the solutions when all objectives are
tion that all players are rational and that their rationality is considered but inferior when only one or two of the objectives
common knowledge. It is suitable for non-cooperative game are considered. Such set of solutions are called Pareto optimal
theory. From the literature review it is evident that most of solutions of Non-dominated solutions. Any solution in that

149
2015 Intl. Conference on Computing and Network Communications (CoCoNet'15), Dec. 16-19, 2015, Trivandrum, India

set is equally important to any other solution. Therefore any jid is job id for that job
solution in that set is an acceptable solution. ti is amount of time for which resources are needed
NSGA varies from GA only in terms of selection operator ni is the number of resources needed
while crossover and mutation operator remain the same. Set di is the deadline time before which request has to be fulfilled
of solutions which are not dominated by any other solutions costi is the amount which user has to pay to service provider
are categorized as pareto front 1. Subsequent fronts are in for executing the job
the order of their domination over solutions of other fronts. f lgi is the flag, which is set to ‘1’if deadline is violated, else
Before performing selection, population is ranked based on it is set to ‘0’
non-dominated solutions. All the non-dominated solutions in scheduledi is the flag which is set to ‘1 ’if job has been
the current population are assumed to be first pareto front scheduled on a machine else it is set to ‘0 ’
and assigned dummy fitness value. To maintain diversity in Each machine can be represented as a vector with three
population, individual of non-dominated solutions are shared parameters as follows:
with their dummy fitness values. Multiple optimal points co- Physical Machine Pi =< pmid, ui , availi >
exist in the population. After sharing, these non-dominated in- where Pi is the ith physical machine
dividuals temporarily ignored to process individuals in second pmid is the id of physical machine
non-dominated front and so on. availi is the amount of available resources on that machine
NSGA II is an improvised version of NSGA proposed by K. pmcosti is the cost for executing each job on that physical
Deb et al [25]. It overcomes the drawback of NSGA and gives machine
the solution faster. Original NSGA used sharing of fitness
values and non-dominated individuals. This had an overhead Each job represents a player whereas utilization of machine
of choosing parameters for sharing value and also the time resource and completing jobs within deadline time is the
complexity was higher as every solution had to be compared payoff. To achieve maximum payoff we must ensure effective
with every other solution in the population. In NSGA II, utilization of the resources, maximize the cost for service
sharing function approach has been replaced with crowded- provider, also minimization of deadline violation as well as
comparison approach. This involves crowding distance calcu- makespan. Jobs on each physical machine form a coalition
lation to find the solution. The crowding-distance computation cooperating to process in parallel sharing resources. We can
requires sorting the population according to each objective represent the problem mathematically using the following
function value in ascending order of magnitude. Thereafter, equations:
n
for each objective function, the boundary solutions (solutions X ni
U= ∗ 100 (1)
with smallest and largest function values) are assigned an avail
i=1
infinite distance value. All other intermediate solutions are
assigned a distance value equal to the absolute normalized where U is the total resource utilization for all jobs on the
difference in the function values of two adjacent solutions. allocated machine
This calculation is continued with other objective functions. i is the jid of the job
The overall crowding-distance value is calculated as the sum ni is the number of resources requested by job
of individual distance values corresponding to each objective. avail is the amount of resources available on the allocated
Each objective function is normalized before calculating the machine (capacity of that machine) machine
crowding distance. To find the average utilization of resources on all physical
To provide optimal solution to job scheduling problem in machines, we formulate the equation as follows:
cloud environment which is formulated using game theory, m
X Um
NSGA II is used in this research work. This gives the Pareto Ru = (2)
i=1
m
optimal solution for the given multi-objective problem.
where Ru is the average utilization on all machines
IV. P ROBLEM F ORMULATION i is the pmid of physical machine
Consider a scenario where there are ‘n’users requesting for Ui is the utilization of physical machine which is calculated
some services. i.e ‘n’jobs arrive at service provider. These from (1) m is the total number of physical machines
jobs are to be scheduled on ‘m’machines such that resource To find the execution cost of all jobs on a machine following
utilization as well as deadline violations are minimum. We equation can be used:
formulate this problem using co-operative game theory based
costi = ni ∗ ti ∗ pmcost (3)
approach. Let J = J1 , J2 , J3 , ..., Jn be set of ‘n’jobs to be
scheduled. Let P = P 1, P 2, P 3, ...P m be set of ‘m’machines where costi is execution cost for that job
on which jobs can be scheduled. ni is the amount of resources used by that job
Each job request can be represented as a ti is the amount of time for which resources are used by that
vector consisting of certain parameters. Job job
Ji =< jid, ti , ni , di , f lgi , scheduledi > pmcost is the execution cost for any job on that machine
where Ji is the ith job

150
2015 Intl. Conference on Computing and Network Communications (CoCoNet'15), Dec. 16-19, 2015, Trivandrum, India

To find the total cost of all jobs we use the following the problem which we discussed above is multi-objective, there
equation: can be multiple solutions where one of the objectives has its
n
X best value. Thus, we get a set of non- dominated solutions
T otalcost = costi (4) where every solution is equally important. Based on the current
i=1
requirements, one has to select the appropriate solution giving
where i is the jid of the job priority to one of the objectives.
T otalcost is total execution cost of all jobs costi is the Following algorithms give a brief description of solution
execution cost of that job
Evaluate Constraints
To find overall deadline violation, following equation can Input: Set of all jobs
be used. n Output: constraint violation array for jobs
evaluateConstraints(solution)
X
D= f lgi (5)
i=1
for each job j do
if time(j) > deadline(j) then
where D is the number of jobs violating deadline
constraint violation[j] = true
f lgi = 1 if deadline is violated else it is 0
else
To find the makespan, following equations can be used:
constraint violation[j] = f alse
x
X end if
Tpm = ti (6) end for
i=1

where Tpm is the amount of time from beginning of first job Evaluate
to end of last job on that machine Input: Set of all jobs, set of all physical machines, con-
i is the jid of that job straint violation array
x is the number of jobs allocated on that machine Output: total resource utilization, total deadline violation
ti is the execution time of that job evaluate(solution)
for each job j do
M akespan = M ax(Tpm1 , Tpm2 , ..., Tpmm ) (7) Randomly choose a machine x
if constraint violation[j] is true then
Maximum value among all physical machines gives the
Goto next job
makespan for all those physical machines
else
Add job j to machine x
Our objective is to maximize resource utilization as well
end if
as cost to the service provider and at the same time mini-
end for
mize deadline violation as well as makespan. Thus, we have
for each physcial machine P do
formulated a multi-objective problem with maximization and
Sort jobs based on deadline time in ascending order
minimization functions. Following are our assumptions for
for each job j on physical machine P do
problem formulation
if P hysical machine has enough resources then
• At time t0 all jobs are available for scheduling. Jobs
set scheduled(j) = 1
arriving after that are considered during next time slot Calculate resource utilization of job j
• If a job is scheduled on one machine, it has to be
Calculate execution cost(j)
completed on same machine, i.e., it cannot be migrated Calculate execution time of job j
to other machine decrement avail(P ) by resources used by job j
• Each machine can execute more than one job at a time
end if
provided resources are available end for
Constraints which we have considered in our problem are as for each job j on machine P do
follows: if job is scheduled then
• Deadline of job should be greater than amount of time increment avail(P ) by resources used by job j
for which job requests resources else
• Jobs assigned on same machine should be processed add job to lef t jobs array
based on deadline time. end if
end for
V. O PTIMIZATION A LGORITHM for each job in left jobs array do
To provide solution to the proposed approach, we use an al- compare cumulative time and deadline time
gorithm called “NSGA-II”(Non-dominated Sorting Algorithm if deadline time > cumulative time then
version II). This is a metaheuristic algorithm very much useful set f lag(j) = 1
for finding set of solutions for multi-objective problems. Since end if

151
2015 Intl. Conference on Computing and Network Communications (CoCoNet'15), Dec. 16-19, 2015, Trivandrum, India

if P hysical machine has enough resources then A. Chromosome Encoding


set scheduled(j) = 1
We represent chromosome as n-length vector where ‘n’ is
Calculate resource utilization of job j
the number of jobs. Allele value varies between 0 to ‘m’ where
Calculate execution cost(j)
‘m’ is the number of physical machines. Value at gene position
Calculate execution time of job j
‘i’ represents the machine where job ‘i’ has to be scheduled.
decrement avail(P )
Example of chromosome encoding is shown in Fig. 1.
end if
end for
end for
for each job j do
if f lag(j) ! = 0 then
increment total deadline violation by 1
else
T otalcost = T otal cost + execution cost(j) Fig. 1. Chromosome Encoding
end if
end for
In the example shown above, ten jobs are being scheduled
M akespan = M ax (execution time on all P M s)
on five physical machines. First job is scheduled on machine
for each physical machine P do
4, second job on machine 3 and so on.
Calculate total resource utilization
end for
Return total resource utilization, total deadline violation,
Total cost, Makespan B. Two Points Crossover

We have used Eclipse IDE and Java platform for implemen-


tation of our work. To implement and evaluate the performance
of our approach we use existing APIs of jMetal: Metaheuristic
Library in Java [26]. jMetal is an object- oriented Java-
based framework aimed at the development, experimentation,
and study of metaheuristics for solving multi-objective opti-
mization problems. jMetal includes a number of classic and
modern state-of-the-art optimizers, a wide set of benchmark
problems, and a set of well-known quality indicators to assess Fig. 2. Two Points Crossover
the performance of the algorithms. In our case, we have used
the following classes and methods for experimentation:
Fig. 2 shows TwoPointsCrossover.It is a type of crossover in
which two points are randomly selected from each parent. The
• We have defined the problem class (CooperativeGame),
values between those two points in the parents are exchanged
which extends the jMetal: Problem class.
to form new offspring. Since two points are selected for
• We have also defined the methods for evaluating fitness
crossover, it is called as Two Points Crossover.
of a solution which is defined in CooperativeGame class.
• Then we have defined the methods for evaluating con-
straints of the problem in the CooperativeGame class. C. Swap Mutation
• Finally we have defined another class CooperativeG-
ame Main, which is the main class where object for
NSGAII is created to operate on the defined problem.
The solutions and their corresponding values for decision
variables is obtained from the results given by this class.

Another important thing when using jMetal is to make


sure that the combinations of mutation operator and crossover Fig. 3. Swap Mutation
operator are valid. For our problem, we use BinaryTourna-
mentSelection as selection operator, TwoPointsCrossover as SwapMutation is a type of mutation in which two points
crossover operator and SwapMutation as mutation operator are selected randomly from an offspring. These points are
for Permutation Solution type. To perform any of these ge- swapped to obtain new offspring. In case of binary values,
netic operations, we need to have chromosomes. Thus, initial flipping a bit results in mutation. But for real numbers, one
step before beginning the genetic algorithm is to encode the has to swap values at two points. Fig. 3 shows the offspring
chromosome. before and after mutation.

152
2015 Intl. Conference on Computing and Network Communications (CoCoNet'15), Dec. 16-19, 2015, Trivandrum, India

VI. R ESULTS AND A NALYSIS approach performs better in terms of resource utilization when
We have used CloudSim toolkit for simulating the results. compared to non-cooperative approach. Fig. 4 (d) shows the
We focus on mapping the cloudlets to Vms using jMetal comparison of utilization of resources for cooperative and non-
Library. Using the existing classes, Cloudlets are created which cooperative approaches for heterogeneous jobs and heteroge-
are to be mapped to appropriate Vms. In the algorithm given neous machines. It can be seen that cooperative approach,
in previous section, jobs represent cloudlets and physical as always, gives better resource utilization when compared
machines represent Vms. Cloudlets from CloudSim are given to non-cooperative approach. Fig. 5 represents the analysis
as input to NSGA II algorithm in jMetal library. Proposed of cooperative and non-cooperative scheduling for resource
algorithm gives the mapping of cloudlets to virtual machines execution cost to be paid to the service provider. Fig. 5
using NSGA II. This output is further given to Cloudsim to (a) shows the comparison of execution cost for coopera-
analyze the performance based to parameters like makespan, tive and non-cooperative approaches for homogeneous jobs
deadline violation, and so on. To analyze the performance and homogeneous machines whereas Fig. 5 (b) shows the
of proposed approach, experimental analysis was done for same for homogeneous jobs but heterogeneous machines. It
both cooperative and non-cooperative approaches. Results are can be seen that initially both cooperative as well as non-
shown in Table I for non-cooperative game theory based cooperative approach yield same results. But as the number
approach and Table II for cooperative game theory based of jobs increase cooperative approach gives better execution
approach for job scheduling in cloud environment. cost than that of non-cooperative approach yielding more
profit to service provider. Fig. 5 (c) shows the comparison of
TABLE I execution cost for cooperative and non-cooperative approaches
A NALYSIS OF R ESULTS FOR N ON - COOPERATIVE G AME T HEORY BASED for heterogeneous jobs and homogeneous machines. Unlike
A PPROACH FOR J OB S CHEDULING in previous cases, it can be seen that cooperative approach
Resource Deadline performs better in terms of execution cost from the beginning
Number of jobs Makespan (ms)
Utilization (%) Violation till the end when compared to non-cooperative approach. Fig. 5
100 16.14 46 5
(d) shows the comparison of execution cost for cooperative and
200 10.54 54 13
300 6.54 51 17 non-cooperative approaches for heterogeneous jobs and het-
400 4.53 45 24 erogeneous machines. It can be seen that cooperative approach
500 2.95 39 gives better execution cost when compared to non-cooperative
approach. Fig. 6 represents the analysis of cooperative and
non-cooperative scheduling for deadline violation.
TABLE II
A NALYSIS OF R ESULTS FOR C OOPERATIVE G AME T HEORY BASED Fig. 6 (a) shows the comparison of deadline violation for
A PPROACH FOR J OB S CHEDULING cooperative and non-cooperative approaches for homogeneous
jobs and homogenous machines while Fig. 6 (b) shows the
Resource Deadline
Number of jobs Makespan (ms) same for homogeneous jobs but heterogeneous machines. It
Utilization (%) Violation
100 58.03 30 0 can be seen that deadline violation is same in both the
200 73.74 45 0 approaches at the initial stages. With the increase in number
300 79.43 66 2
400 82.41 79 4
of jobs, cooperative approach has less deadline violation when
500 87.02 97 4 compared to non-cooperative approach. Fig. 6 (c) shows the
comparison of deadline violation for cooperative and non-
We have tested our work for homogeneous and heteroge- cooperative approaches for heterogeneous jobs and homoge-
neous environments. Experimental results for various com- neous machines. Fig. 6 (d) shows the comparison of dead-
binations of test cases are shown in the following figures. line violation for cooperative and non-cooperative approaches
We have considered resource utilization, deadline violation, for heterogeneous jobs and heterogeneous machines. Unlike
makespan and execution cost for our analysis. Fig. 4 represents in previous cases, for heterogeneous environment it can be
the analysis of cooperative and non-cooperative scheduling seen that cooperative approach performs better in terms of
for resource utilization. Fig. 4 (a) shows the comparison of minimizing deadline violation from the beginning till the end
utilization of resources for cooperative and non-cooperative when compared to non-cooperative approach. Fig. 7 shows
approaches for homogeneous jobs and homogenous machines the analysis of cooperative and non-cooperative approaches
while Fig. 4 (b) shows it for homogeneous jobs and het- for makespan. Fig. 7 (a) shows the comparison of makespan
erogeneous machines. Even in this case, it can be seen that for cooperative and non-cooperative approaches for homoge-
cooperative approach gives better resource utilization than that neous jobs and homogenous machines. Fig. 7 (b) shows the
of non-cooperative approach. It can be seen that cooperative comparison of makespan for cooperative and non-cooperative
approach yields better resource utilization when compared to approaches for homogeneous jobs but heterogeneous ma-
non-cooperative approach. Fig. 4 (c) shows the comparison of chines. In both the cases, it can be seen that cooperative
utilization of resources for cooperative and non-cooperative approach gives better results by minimizing makespan when
approaches for heterogeneous jobs and homogeneous ma- compared to non-cooperative approach. Fig. 7 (c) shows the
chines. Like in previous cases, it can be seen that cooperative comparison of makespan for cooperative and non-cooperative

153
2015 Intl. Conference on Computing and Network Communications (CoCoNet'15), Dec. 16-19, 2015, Trivandrum, India

Fig. 4. Average Resource Utilization

Fig. 5. Average Cost

154
2015 Intl. Conference on Computing and Network Communications (CoCoNet'15), Dec. 16-19, 2015, Trivandrum, India

Fig. 6. Average Deadline Violation

Fig. 7. Average Makespan

155
2015 Intl. Conference on Computing and Network Communications (CoCoNet'15), Dec. 16-19, 2015, Trivandrum, India

approaches for heterogeneous jobs and homogeneous ma- [10] M. Rahman, R. Ranjan, and R. Buyya, “Cooperative and decentralized
chines whereas Fig. 7 (d) shows the same for heterogeneous workflow scheduling in global grids,” Future Generation Computer
Systems, vol. 26, no. 5, pp. 753–768, 2010.
jobs and heterogeneous machines. Unlike in previous cases, [11] R. Ranjan, A. Harwood, and R. Buyya, “Sla-based coordinated super-
for heterogeneous environment it can be seen that cooperative scheduling scheme for computational grids,” in Cluster Computing, 2006
approach initially performs better whereas with the increase IEEE International Conference on. IEEE, 2006, pp. 1–8.
[12] X. Wu, M. Deng, R. Zhang, B. Zeng, and S. Zhou, “A task scheduling
in number of jobs makespan also increases. In case of non- algorithm based on qos-driven in cloud computing,” Procedia Computer
cooperative approach makespan reduces with the increase in Science, vol. 17, pp. 1162–1169, 2013.
number of jobs. However, this can be justified as the increase [13] S. Ghanbari and M. Othman, “A priority based job scheduling algorithm
in cloud computing,” Procedia Engineering, vol. 50, pp. 778–785, 2012.
in number of jobs in such environment gives better results [14] S. H. Jang, T. Y. Kim, J. K. Kim, and J. S. Lee, “The study of genetic
in terms of resource utilization as well as execution cost for algorithm-based task scheduling for cloud computing,” International
cooperative approaches. Therefore, increase in makespan can Journal of Control and Automation, vol. 5, no. 4, pp. 157–162, 2012.
[15] M. Paul, D. Samanta, and G. Sanyal, “Dynamic job scheduling in cloud
be ignored when compared to other benefits which yield better computing based on horizontal load balancing,” International Journal
performance. of Computer Technology and Application, vol. 2, no. 5, pp. 1552–1556,
2011.
VII. C ONCLUSION AND F UTURE W ORK [16] S. Bitam, “Bees life algorithm for job scheduling in cloud computing,”
in International Conference on Computing and Information Technology.
Our research work focusses on cooperative game theory ICCIT, 2012, pp. 186–191.
based approach for job scheduling. The problem was for- [17] S. Behzad, R. Fotohi, and M. Effatparvar, “Queue based job scheduling
mulated mathematically using the concepts of game theory algorithm for cloud computing,” International Research Journal of
Applied and Basic Sciences ISSN, pp. 3785–3790, 2013.
and solution was proposed using Pareto optimality concept [18] D. Dumitrescu, R. I. Lung, N. Gasko, and R. Nagy, “Job scheduling
which uses NSGA II algorithm. Experimental results show and bin packing from a game theoretical perspective: An evolutionary
that cooperative game theoretic approach gives better results approach,” in 12th International Symposium on Symbolic and Numeric
Algorithms for Scientific Computing (SYNASC),. IEEE, 2010, pp. 209–
when compared to non-cooperative scheduling. Resource uti- 214.
lization, makespan, execution cost and deadline violation are [19] I. Ahmad, S. Ranka, and S. U. Khan, “Using game theory for scheduling
considered as the parameters for comparison. tasks on multi-core processors for simultaneous optimization of perfor-
mance and energy,” in IEEE International Symposium on Parallel and
In future, other parameters like energy efficiency, load Distributed Processing (IPDPS),. IEEE, 2008, pp. 1–6.
balancing can also be used to extend the work further. As [20] K. Mesghouni, S. Hammadi, and P. Borne, “Evolutionary algorithms for
more and more users are heading towards Cloud Computing, job-shop scheduling,” International Journal of Applied Mathematics and
Computer Science, vol. 14, no. 1, pp. 91–104, 2004.
resource requirements and overall energy consumption in [21] M. Camelo, Y. Donoso, and H. Castro, “Mags–an approach using multi-
data centres increases exponentially. Thus, reducing energy objective evolutionary algorithms for grid task scheduling,” International
consumption in data centres is an important future direction Journal of Applied Mathematics and Informatics, vol. 5, no. 2, 2011.
[22] M. Gupta and G. Sharma, “An efficient modified artificial bee colony
to model green data centres. algorithm for job scheduling problem,” International Journal of Soft
Computing and Engineering (IJSCE) ISSN, pp. 2231–2307, 2012.
R EFERENCES [23] M. J. Osborne and A. Rubinstein, A course in game theory. MIT press,
[1] P. Mell and T. Grance, “The nist definition of cloud computing,” 1994.
National Institute of Standards and Technology, vol. 53, no. 6, p. 50, [24] N. Srinivas and K. Deb, “Muiltiobjective optimization using nondomi-
2009. nated sorting in genetic algorithms,” Evolutionary computation, vol. 2,
[2] G. Zhou, P. Jiang, and G. Q. Huang, “A game-theory approach for job no. 3, pp. 221–248, 1994.
scheduling in networked manufacturing,” The International Journal of [25] K. Deb, A. Pratap, S. Agarwal, and T. Meyarivan, “A fast and elitist
Advanced Manufacturing Technology, vol. 41, no. 9-10, pp. 972–985, multiobjective genetic algorithm: Nsga-ii,” IEEE Transactions on Evo-
2009. lutionary Computation,, vol. 6, no. 2, pp. 182–197, 2002.
[3] M. G. Buscemi, U. Montanari, and S. Taneja, “A game-theoretic analysis [26] J. J. Durillo and A. J. Nebro, “jmetal: A java framework for multi-
of grid job scheduling,” Journal of Grid Computing, vol. 10, no. 3, pp. objective optimization,” Advances in Engineering Software, vol. 42,
501–519, 2012. no. 10, pp. 760–771, 2011.
[4] D. Ye and J. Chen, “Non-cooperative games on multidimensional
resource allocation,” Future Generation Computer Systems, vol. 29,
no. 6, pp. 1345–1352, 2013.
[5] G. Wei, A. V. Vasilakos, Y. Zheng, and N. Xiong, “A game-theoretic
method of fair resource allocation for cloud computing services,” The
Journal of Supercomputing, vol. 54, no. 2, pp. 252–269, 2010.
[6] V. S. Arackal, B. Arunachalam, P. Saluja, and B. P. Rao, “Co-existence
of cloud and grid: A case study in service oriented grid garuda,”
in Eighth International Conference on Information Technology: New
Generations (ITNG),. IEEE, 2011, pp. 1058–1059.
[7] J. Liu, X. Luo, X. Zhang, F. Zhang, and B. Li, “Job scheduling model
for cloud computing based on multi-objective genetic algorithm,” IJCSI
International Journal of Computer Science Issues, vol. 10, no. 1, pp.
134–139, 2013.
[8] J. Künsemöller and H. Karl, “A game-theoretical approach to the benefits
of cloud computing,” in Economics of Grids, Clouds, Systems, and
Services. Springer, 2012, pp. 148–160.
[9] Z. Lu, X. Wen, and Y. Sun, “A game theory based resource sharing
scheme in cloud computing environment,” in World Congress on Infor-
mation and Communication Technologies (WICT),. IEEE, 2012, pp.
1097–1102.

156

You might also like