Professional Documents
Culture Documents
https://doi.org/10.1007/s11227-018-2279-8
Abstract Cloud computing has emerged as the most effective distributed computing
paradigm. It has grabbed the attention of many organizations owing to its business
prospects and significant features like agility and flexibility. Dynamic scalability of
cloud services and availability of number of homogenous cloud service providers in
market make it difficult for the provider to fix the prices of cloud services, especially
on-demand Infrastructure-as-a-Service cloud service instances. It is quite problematic
for provider to map the dynamics of prices with the variation in service requirement
and satisfying the users’ quality of service requirement simultaneously. At the same
time, it is very essential for the provider to determine the lower bound price of the
services beyond which he could not afford the provisioning of the services. This paper
presents dynamic demand-based pricing model for on-demand IaaS cloud service
instances that will assist the provider to dynamically determine the price of provision-
ing the cloud services by considering the provider’s and users’ utility concurrently.
Genetic algorithm is applied for the optimized evaluation users’ request parameters
and provider’s computation capacity that will minimize the cost of execution. Exper-
imental results demonstrate that price evaluation is more efficient and users’ utility
increases considerably using the proposed framework in comparison with the existing
utility-based pricing model.
123
Genetic algorithm-based cost minimization pricing model… 1537
1 Introduction
123
1538 S. Kansal et al.
be further optimized by considering the other factors like data center geographical
location, data transfer rate (i.e., inbound, outbound data transfer), data center cooling
and other factors that also vary dynamically with the change in the users’ request
requirements. Transactional (capacity) [16] cost factors are prime concern in this
paper.
This paper presents a mathematical framework that can model the variation of the
price of cloud resources with the change in their demand. It enables the service provider
to calculate the dynamic demand-based prices of Infrastructure as a Service (IaaS) by
considering the users’ QoS requirements concurrently. Genetic algorithm is applied to
determine the optimal value of execution time from the range of deadline time and pro-
cessing capacity that minimize the cost of executing tasks. The proposed framework
assists the provider in prioritizing the execution of users’ tasks and in deciding the min-
imum cost processing capacity from the available processors. Performance analysis of
the framework is carried out by conducting the comparative analysis with the existing
pricing model, and experimental results exhibit better performance in terms of cost
minimization and users’ utility. Rest of the paper is organized as follows. Section 2
discusses the related work followed by problem formulation and proposed approach
in Sect. 3. Section 4 presents the experimental setup and performance analysis. Lastly,
Sect. 5 concludes the paper and gives future directions.
2 Literature survey
This section presents the work related to the existing pricing models used for the
evaluation of the cloud services followed by short coming in the previous works and
contribution statement.
Recent cloud services like Amazon Web Services, Google Cloud Platform follow
consumption-based pricing policies or utility-based pricing strategy. Economic and
market-based mechanisms have been deployed in cloud computing because financial
valuation of resources and services tends to be important aspect of this computing
model. Pordan et al. [12] proposed market-negotiation-based continuous double auc-
tion (CDA) mechanism for economically efficient execution of workflow application.
The auction mechanism is both users’ centric and providers centric where there exists
negotiation protocol between scheduler and resource manager. Authors try to gener-
alize users’ request behavior pattern that can be subsequently used to optimize the
resource allocation at provider end and simultaneously minimize the cost of execution
of the users’ application.
In [13], a dynamic automatic metered pricing mechanism based on utility is pre-
sented that regulates the prices on the basis of demand and supply. The mechanism
works on the demand and availability of the resources and can attract/restrict the users.
The proposed model is highly efficient for the providers but affects the utility of the
users and acts as an admission control mechanism for the users’ request.
123
Genetic algorithm-based cost minimization pricing model… 1539
123
1540 S. Kansal et al.
may involves the risk of loss that can be faced by the providers due to unstable option
prices.
Buell and Collofello [16] present the pricing framework for calculating the prices
of the application at the transactional level factors that includes memory, storage,
processing power and required bandwidth. More pricing factors like inflow data, out
flow data, maintenance are considered by Martens et al. [27]. But deeper knowledge of
the transactional cost factors greatly assists the developer in maximizing or minimizing
the profit of the providers. This paper considers the transactional factors that can assist
the provider in fixing the prices of the cloud services.
Researchers in [27, 15] have considered all the major fixed and dynamic cost factors
that all together come under total cost of ownership (TCO). It is the cost that incurs to
the cloud service provider for purchasing, maintaining and running the cloud services.
These factors include hardware, software licensing, labor, business premises, cloud
service and deployment cost. Cloud service providers on average typically charge 8%
more than the price of the service to compensate the cost of ownership [28] and they
are linearly independent. But there are certain factors like transaction factors [14] and
SLA components that bring the variation in the cost of cloud services. Such dynamics
is countered in this paper so as to deduce the optimal prices of the IaaS cloud services.
Authors in [14, 15] presented a comprehensive cost model for federated hybrid
cloud. As shown in Table 1, authors have covered all the aspects, i.e., traffic-related
cost factors, deployment-related cost factors, fixed cost factors, variable cost factors
that are the part of cloud pricing. The pricing functions except variable pricing factor
infer the independency of these factors and are not affected by the variation in the
demand of services. These are the factors that can variably affect the prices of cloud
services and can affect the decision of the consumers. Such kind of analysis is not
being done in the previous work. Considering these variable cost factors, this paper
presents the dynamic pricing model that can calculate the variation in the prices of
these resources with change in demand. Moreover, this paper also presents framework
Traffic-related cost factors Data traffic, service placement, traffic cost rate
Deployment-related cost factors Cost of migrating the virtual machine from one public
cloud to another public cloud
Fixed cost factors The purchasing cost of for all the network devices, i.e.,
server, software licensing, middleware licensing,
facility space, non-electric equipments, SSL certificate
Initial and permanent training Internal training (amount of preparation time invested
by one or more employee*amount of time invested by
participating employee) (PIT )
External training (PET ), instruction material (C mat )
Training cost PIT + PET + C mat
Variable cost factors (service cost) Computing power, storage power, inbound data transfer,
outbound data transfer
Maintenance Expenditure of time
123
Genetic algorithm-based cost minimization pricing model… 1541
that can optimally calculate the execution time of the user request from the range of
time given in SLA and also assist the providers in determining the processing capacity
required for the execution.
From the literature, it is concluded that work has been done to optimize the cost
of resource allocation or cost-efficient resource allocation in utility computing, grid
computing and cloud computing. But very less work has been done toward resolving
and optimizing the dynamic pricing of on-demand cloud services where the users’
request varies. Earlier models have not taken into the consideration of the dynamics
of pricing with the variation in the length tasks. The present work models a dynamic
and adaptable pricing model for on-demand instances of IaaS that give an insight into
the provider of how it should fix the prices for the set of resources available with IaaS
cloud services. Considering the issues in the pricing of the cloud services, following
are the main contribution in this paper:
1. Proposed a dynamic on-demand mathematical pricing model for cloud providers
using transaction-level pricing factors, i.e., memory, storage and computational
power. These are the factors that dynamically affect the prices of the cloud services
and play crucial role in deciding the prices of cloud services.
2. Deployed the genetic algorithm to determine the execution time and processing
capacity of the users’ jobs in the given deadline time that returns the best prices
for the users’ task.
3. Performed the comparative analysis of the proposed framework with utility-based
pricing model in terms of minimum price calculation for the provisioning services
and users’ utility.
Nowadays, number of cloud service providers providing the same kind of services has
increased in the market. This provides more options to the end users for selecting the
providers. At the same time, on-demand cloud service requirement for the execution
of scientific application has made it difficult for the providers in deciding the prices
of the cloud services. Instead of revenue maximization, it is becoming very essential
for the providers to minimize the cost of execution and evaluate the minimum price
beyond which the provisioning of the services will be non-profitable to the provider.
As in case of scientific applications like workflow applications, the requests arrive to
the provider with specific deadline with no predefined cost. In that case, the provider
needs to evaluate whether the execution of user request will be increasing profit or
decreasing profit. For that, provider will be required to evaluate the minimum price
by considering all the cost factors. As given in Table 1, a number of cost factors
are involved in pricing the cloud services. From that, variable cost factors are taken
and aim to minimize the cost of execution. The prime focus of the proposed model
is to assist the provider in reaching the minimum cost considering memory, storage,
123
1542 S. Kansal et al.
computation power, job length and deadline time. The problem statement is defined
as:
Pr stat is the base price of using any service that is obtained by the providers consid-
ering all the TCO factors and that varies from provider to provider. Typically, cloud
service providers on average charge 8% more than the price of the services to com-
pensate the cost of ownership [28], but that too vary from company to company. Pr var
123
Genetic algorithm-based cost minimization pricing model… 1543
Start
User’s request
U ( J j , D min
j − D max
j , Q St , Q Mr ).
End
is a variable component that fluctuates with time and dynamically affects the prices of
the cloud services. These variable factors effectively help the provider in generating
the higher profits. But at the same time, optimal pricing of the services by considering
the QoS of the consumer is equally required so as to mitigate the trade-offs between
123
1544 S. Kansal et al.
the providers and consumers’ interest. So, in this paper we have considered the dead-
line time of the consumer as the QoS, i.e., (D min , D max ), that should be satisfied
by the cloud service provider. The transaction-level cost factors for pricing the cloud
services, i.e., processing cores, storage and memory that are important factors for run-
ning any application on cloud, are taken [27]. Processing cores includes job length,
computation capacity and execution time.
Proposition The variable component of total revenue, i.e.,Pr var with job length(Ji ),
computing capacity (C J ), storage(Q st ) and memory(Q Mr ) at transaction level is given
as
2
Jj Jj
Pvar α1 + 1 + β1 +1 + α2 × Q 2st + β2 × Q st + α3 × Q 2Mr + β3 × Q Mr
C j × ETi C j × ETi
(2.1)
The profit attained by the provider is the revenue that exceeds the total expenses of
the organization or the company. Profit function that incurs to the cloud provider will
be calculated as shown in Eq. (2.2) [18].
πi Pr tp − TC (2.2)
where TC is the total cost of ownership (TCO) and it is the cost that incurred to the
provider owing to up-front cost and the on-going cost [29] and Pr tp is the total revenue
generated by the provider by the provisioning of the services.
Proof The execution time of the job should lies in deadline time of the job, i.e.,
between Dimin and Dimax [5]. For that, more number of computing processor with
same computation power (C j ) will be required. Let say n be the number of required
processors, so C j ∗ n is the required computation power for the execution of the job.
C J processing capacity of the virtual machine of the virtual machine may vary
according to two factors, i.e., job length and the deadline of the requested job. When
the length arriving job is higher and the deadline time is low, then more cycles of the
processor will be required for the completion of the job.
If J j is the length of the job, then execution cost, i.e., ETi , is calculated as given
by Eq. (3).
Jj
ETi (3)
Cj × n
From Eq. (3) number of processing cores, i.e., n is calculated, as shown in Eq. (4)
Jj
n (4)
C j × ETi
123
Genetic algorithm-based cost minimization pricing model… 1545
Using the demand curve, the change in the price of the resources with the increase
in demand is represented as: C α ∗ Q + β where Q is the quantity of the resources,
β is the base price and α is the small fraction of change in price with the increase in
the prices of cloud services.
Jj
Computation cost per unit is calculated as α1 + 1 + β1 (5)
C j × ETi
This is the case where demand is linear demand function. α1 < 0 as demand function
follows the downward slope and processing computation is fixed. Value of α1 shows
the variation in the price of the different types of resources. More the requirement of
the resource increases, less will be the cost of per unit of resource. But the processor’s
requirement for the execution of task also varies with the variation in the deadline time
and job length. So the computation cost per unit of time is shown in Eq. (6)
Jj
Ccost α1 + 1 + β1 × C j (6)
C j × ETi
Similarly, Stcost , i.e., cost per unit storage, is calculated by Eq. (7) as:
Stcost α2 × Q st + β2 (7)
Mrcost α3 × Q Mr + β3 (8)
Q Mr is amount of required RAM. In Eq. (7) and Eq. (8) the values of α2 , α3 < 0 due
to downward slope.
Total variable cost that incurs to the consumer is calculated by Eq. (9) as cost per
unit resource multiplied by quantity of the resource.
Using Eqs. (5), (7), (8) and (9) can be further written and expanded as shown in
Eqs. (10) and (11)
Jj Jj
Pvar +1 α1 + 1 + β1 × C j + Q st (α2 × Q st + β2 ) + Q Mr (α3 × Q Mr β3 ) (10)
C j × ETi C j × ETi
2
Jj Jj
Pvar α1 + 1 + β1 × C j +1 + α2 × Q 2st + β2 × Q st + α3 × Q 2Mr + β3 × Q Mr
C j × ETi C j × ETi
(11)
Equation (11) represents the variable component of the pricing function that models
the prices of the resources dynamically with the change in demand.
The IaaS cloud services are mainly provisioned in the form of VMs, and these
VMs are configured on the fly for on-demand cloud services [28]. Providers have the
123
1546 S. Kansal et al.
processors with different ranges of processing capacity. Each user request consists of
deadline range, i.e., Dimin to Dimax , in which the provider is bound to execute the
users’ request. It is difficult for the cloud provider to decide the optimal processing
capacity from the range of processing capacities and optimal execution time within the
deadline such that the cost of executing the users’ task is minimum. So, another part
of the problem lies in determining the execution time of the users’ job in the deadline
time Dimin to Dimax , evaluating the capacity of the processors that satisfies the users’
requirement with minimum value of Pvar . To solve this problem, next section presents
the evolutionary-based optimization technique. Each users’ request consists of set of
service requirements, and every provider follows service model for the provisioning
its services. Users’ task model and provider’s service model are defined in Sects. 3.1.1
and 3.1.2, respectively.
Number of end users’ requests arrive to cloud service provider for the execution of
tasks. Each task differs in the service requirements, and its attributes mainly consists
of job length, i.e., J j , deadline time in which the job need to be get executed, i.e.,
D min
j − D max
j , storage requirement (Q St ) and RAM (Q Mr ) as service requirement.
These users’ tasks are modeled as U (J , D min −D max , Q , Q ), and on the basis of
j j j St Mr
user’s requests, providers manage the provisioning of the resources to the consumers.
Cloud providers disseminate different sets of services to the cloud users. IaaS cloud ser-
vice providers deliver the resources in the form of VMs with different configurations.
In on-demand, service instance of the consumer is allowed to update the configuration
of the services dynamically. From the provider’s side, cloud service model consists of
processing power, i.e., C j , storage (St), RAM (Mpr ) and number of processing cores
(N). So, the provider cloud service model is considered as set of service provisioning
attributes and is represented as Pr(C j , St, Mpr , N ).
123
Genetic algorithm-based cost minimization pricing model… 1547
The steps involved in the evaluation of execution time and processing capacity
using the GA are as follows.
3.2.1 Encoding
The overall aim of the proposed framework is the evaluation of optimal execu-
tion time and optimal processing capacity. The users’ request, i.e., U (J j , D min
j −
D max
j , Q St , Q Mr ), arrives to the provider with service provisioning capacity, i.e.,
Pr(C j , St, Mpr , N ). The cost of Q St and Q Mr is calculated dynamically, using the
proposed model as given in Sect. 3.1, but the processing power and execution time are
evaluated optimally by the GA. Let T1, T2, …, and T10 be the users’ tasks and differ-
ent processors available with provider are P1 , P2 , P3 , P4 and P5 . As shown in Fig. 2,
allocation of the users’ task is required to be done optimally on available processors
for minimizing the cost of execution.
3.2.2 Initialization
GA begins with initialization. It is the process of choosing the individuals from the set
of available possible solutions. Initial population can be selected randomly or by using
heuristics. In random initialization, individuals are populated randomly, and in heuris-
tic, individuals are populated using some pattern and knowledge about problem. In our
work, random initialization is deployed for the selection of initial population. Different
ranges of processors are given in Fig. 2c. As shown in Fig. 2a, random initialization
Processor Tasks
P1 T5, T3 P3 P4 P1 P5 P1 P2 P2 P2 P4 P5
P2 T6,T7, T8
P3 T1 (b)
P4 T2, T9
P5 T4, T10
(a)
123
1548 S. Kansal et al.
is done by allocating the tasks randomly to the processors. User’ task and processing
capacity mapping are represented as shown in Fig. 2b. This initial population then
undergoes to recombination and reproduction to produce better chromosomes for the
next generation.
It is the deciding criterion in the selection of the individuals from the initial population.
It measures the degree fitness of the chromosome. In our proposed minimization
problem, Pvar , as mentioned in Eq. (11), is the fitness function.
3.2.4 Selection
It is the process of selecting the parents from the initial population for the intermediate
generation. There are number of ways in which selection can be done, i.e., Roulette
wheel, Boltzmann selection, rank selection and tournament selection.
We have used tournament-based selection as it is computationally more efficient
and more effective to parallel implementation. Moreover, the distance between the
individuals is more in tournament selection as compared to the other selection meth-
ods as evaluated, thus preventing the premature convergence of the solution. In this
selection method, two individuals are chosen randomly from the population. The indi-
vidual with more fitness value is selected, and these two individuals are then returned
to the original population for again participating in the selection process.
As shown in Fig. 3, Parent (a) with more fitness value is selected using tournament
selection. It undergoes crossover process with other selected parent. Parent (a) is send
back to the initial population so that it can again go through selection process.
3.2.5 Crossover
Crossover is the convergence operation which is used to pull the solution toward the
local maxima or minima. It is used to create the new individuals by the rearrangements
of the existing individuals. Individuals with better fitness value are selected, and using
scattered crossover operation, random vector of binary values is obtained. Genes are
selected from first parent where the vector value is 1, and genes from the second parent
are selected where the vector value is 0. Let the random vector is [1 1 0 0 1 1 0 1 1
Parent (a)
Inial populaon
123
Genetic algorithm-based cost minimization pricing model… 1549
P3 P4 P1 P5 P2 P2 P2 P4 P5 P5
(a)
P6 P3 P4 P1 P5 P2 P4 P5 P3 P4
After scattered crossover using vector [1 1 0 0 1 1 0 1 1 0]
(b)
P3 P4 P4 P1 P2 P2 P4 P4 P5 P4
(c)
Fig. 4 Crossover. a Parent 1. b Parent 2. c Child
0], and individuals selected based on tournament selection are Fig. 3a, b as shown in
Fig. 4. After crossover, the chromosome is shown in Fig. 4c.
3.2.6 Mutation
Mutation process is a divergent operation that breaks the members of a population out
of the local maxima and intends to discover the better maxima or minima. This process
helps the GA to explore and find the better genetic material than previously considered.
To find the global minima, in this proposed framework, constraint-dependent mutation
process is used.
Table 3 presents the pseudocode for obtaining the optimal calculation of the exe-
cution time and the computation capacity required by the user task using proposed
framework. Table 4 presents the parameters setting for genetic algorithm.
123
1550 S. Kansal et al.
4 Experimental results
For the evaluation of the proposed model, different sets of user’s requests are taken.
These requests are varying in terms of resource requirement and QoS requirement. As
such, no standard dataset is available for the performance evaluation of the proposed
DGA model. Data for the scientific workflow applications are available [31] which
consist of the number of interconnected files. So, for the evaluation, different files
from the available data are taken as the user’s requests that vary in terms of job length
(i.e., file size in number of instructions and execution time). For the same set of user’s
requests, performance of the existing UBP model is done.
For the experimental assessment, different user’s requests U, as given in Sect. 3.1.1,
are considered. Values of memory and storage are increasing, and deadline time is
taken as decreasing linear function of time.
The users’ requests have been categorized as: (1) static job length request and (2)
variable job length request. In the first case, the job length is kept constant while
keeping memory, storage requirement and deadline time varying. In second case, all
the factors i.e., the job length, memory, storage and deadline time are varying.
Values of the constants α1 , α2 , α3 and β1 , β2 , β3 are fixed by the cloud provider
according to the TCO. α is the variation in the unit price of the resources that vary
according to the increase in the quantity of the resources, and β is the fixed price of
the resources around in which the value of α varies. So, these two values are fixed by
the provider according to the cost that incurred to the provider. Here, we have taken
the values of α1 −.06, α2 −.0008 and α3 −.003 from the available cloud
services. Base values of the resources, i.e., processor, storage and memory, are taken
as β1 .5, β2 10 and β3 20, respectively, and for the comparative analysis of
DGA and UBP model, base value of the resources is considered same. Values of GA
parameters are given in Table 4.
Experiments are performed on system with configuration as: 4 GB RAM, 500 GB
hard disk and i5 processor with 3.30 GHz processing speed. Computation is done
using optimization computation toolbox for MATLAB 2012b.
For the performance analysis of the proposed framework, price variation and con-
sumer’s utility are considered. Price variation is the change in price of the users’
123
Genetic algorithm-based cost minimization pricing model… 1551
requests with the change in requirement of users’ request for resources and that is
evaluated as presented in Sect. 3.2. Consumer’s utility, i.e., UC , is the measure of
consumer’s QoS satisfaction for the users’ request of the required resources with cor-
responding price. UC is calculated as given in Eq. (12).
RT
UC ×λ (12)
PVar
where RT is the total normalized resources, λ is the constant variable, PVar is the
variable price as calculated by Eq. (11).
RT is calculated as:
Rmax
PUtility φ1 ∗ Pbase + φ2 ∗ Pbase (14)
Rfree
where Rmax is the upper limit of available resources with the provider, Rfree is the
amount of resources free, Pbase is the base price of the resources, φ2 and φ1 are the
weighting fractions [13]. For the performance evaluation, we have compared our pro-
posed demand and GA (DGA)-based pricing model with UBP model. For comparison
analysis, the base price of resources in DGA model and UBP model are kept same.
The variation in the prices of the cloud services with variation in job length and
deadline time is analyzed using the proposed model as shown in Fig. 5. It shows that
the values of the price vary slightly linearly when the deadline time is high, i.e., when
deadline is 80–90 s and 70–80. Price is varying nonlinearly when the corresponding
values of deadline are comparatively low, i.e., 20–30 and 30–40 s.
Main focus of the proposed framework is to minimize the price of on-demand
services and to determine the processing power of provider and execution time of
user’s request that will results in minimizing the cost of execution. For the analysis,
two different scenarios are taken. In the first one, the processing power of the VM is
kept constant and evaluated only the execution time of the users’ tasks. In the second
scenario, both the processing power and execution time are variable and analysis is
also done for the jobs of different lengths.
123
1552 S. Kansal et al.
1600
1400
Price
1200 20-30
30-40
1000
40-50
Deadline me
800 50-60
600 60-70
540
580
70-80
620
660
700
740
780
80-90
820
860
900
960
Job Length *1000
Fig. 5 Price variation with job length and deadline time
Table 5 Optimal prices for different sets of resources using DGA-based pricing model and UBP model
In this scenario, arrived task job length remains same, i.e., job length is set to
980,000 million instructions. Processing capacity of the processer too varies from one
hardware architecture to another, but here the processor capacity is kept constant, i.e.,
550 MIPS. Table 5 presents the different users’ requests. Values of ETi , Q Mr and
Q st , are given, and execution time in the deadline time, i.e., (Dimin − Dimax ), which
returns the minimum cost of executing services is evaluated. Comparative analysis
of the proposed framework is also done with the utility-based pricing (UBP) model
[13, 32]. From the results, it can be asserted that cost calculation for the users’ task
can be done more efficiently as compared to cost calculation using the UBP. With
the increase in demand of more resources by the users, increase in the price is more
123
Table 6 Different users’ requests with different job lengths with processing power of range 200–300 MIPS
Task no. Deadline Storage in Memory Job length 980,000 Job length 540,000 Job length 180,000
time (s) GBs In GBs
1 110 34 0.5 109.6 203.700 4660.822 109.9 223.146 2734.849 107.55 209.202 1125
2 100 40 0.5 98.90 213.046 5181.8141 99.8 207.865 3070.4009 99.78 225.849 1308.2770
3 90 50 1.0 89.30 200 5836.49 89.8 230.793 3477.4609 90 285.755 1515.1999
4 80 60 1.5 79.9 200.838 6529.4256 80 217.742 3944.4609 79.8 250.012 1747.3064
Genetic algorithm-based cost minimization pricing model…
5 70 70 2.0 69.9 208.958 7466.8352 69.7 233.772 4527.9628 69.8 285.727 2016.9812
6 60 80 2.5 59.9 223.748 8691.9289 59.8 209.306 5233.9917 59.7 273.219 2340.3035
7 50 90 3.0 48.9 202.449 10,207.725 48.9 200.528 6192.7838 49.18 212.135 2739.2986
8 40 100 3.5 37.9 205.918 12,464.4145 39.7 211.073 7570.5530 39.9 250.024 3292.7356
9 30 110 4.0 29.4 251.302 16,999.1847 29.8 243.249 9940.0785 29.893 206.916 4218.2578
10 20 120 4.5 19.8 243.791 23,453.791 20 217.780 13,956.1965 19.8 281.374 5816.9631
1553
123
1554
123
Table 7 Different users’ requests with different job lengths with processing power of range 300–450 MIPS
Task no. Deadline Storage in Memory Job length 980,000 Job length 540,000 Job length 180,000
time (s) GBs In GBs
1 110 34 0.5 109.811 406.365 4760.2588 109.53 377.788 2754.7580 108.364 332.376 1238.1594
2 100 40 0.5 99.8 306.281 5258.2953 99.096 302.744 3113.9735 98.586 308.285 1331.413
3 90 50 1.0 90 375.482 5912.0213 90 300.002 3494.0142 89.613 402.236 1522.0875
4 80 60 1.5 79.858 300 6676.2548 79.99 321.545 3976.8754 79.942 322.242 1522.0875
5 70 70 2.0 69.898 400.169 7665.4652 69.922 335.459 4562.1069 69.2 300.01 2081.2119
6 60 80 2.5 59.005 362.794 8890.2817 59.998 428.592 5318.6126 59.895 429.773 2346.1252
7 50 90 3.0 49.779 311.182 10,517.5883 49.558 308.737 6282.8998 48.39 413.688 2744.9702
8 40 100 3.5 39.98 331.088 12,983.6559 39.97 385.730 7738.7351 39.894 410.224 3310.9360
9 30 110 4.0 29.4 317.171 16,966.1874 29.9 439.184 10,170.8522 29.89 376.353 4263.8980
10 20 120 4.5 19.6 324.565 24,513.8728 19.9 325.403 14,467.312 19.957 392.183 5854.7865
S. Kansal et al.
Genetic algorithm-based cost minimization pricing model… 1555
Fig. 6 Price variation for job length 180,000 and users’ request for normalized resources as given in Table 6
In this scenario, the processing capacity available with the provider and execution time
required for the execution of the users’ request is calculated using the proposed model.
Similarly to the previous case, different users’ requests are considered as shown in
Tables 6 and 7. Users’ request consists of the deadline time, storage, memory and tasks
with different job lengths. In Table 6, processor range 200–300 MIPS is taken, and in
Table 7, processing range is 300–450 MIPS. Different ranges of processors are used to
determine the cost variation of users’ task with same service requirements and same
job lengths with different provisioning capacities. It can also be seen from Tables 6 and
7 that the price of the users’ request is higher when processors with higher processing
capacity are taken.
123
1556 S. Kansal et al.
Fig. 7 Price variation for job length 540,000 and users’ request for normalized resources as given in Table 6
Providers have different computing processors, P1, P2, P3, P4 and P5 as given in
Fig. 2, and users have different requirements of deadline time for the execution of the
users’ request, and different requirements for memory and storage. Using the proposed
DGA-based framework, optimal value of execution time and processing capacity that
return the minimum prices of the corresponding users’ request is calculated. From
Table 7, it can be concluded that for task T1, processor P2 should be deployed, and for
T2, P1 should be used. Similarly for T3, T4, T5, T6, T7, T8, T9 and T10, P4, P1, P1,
P5, P4, P4, P3 and P4 should be deployed, respectively. Along with that, corresponding
minimum dynamic cost of provisioning service to the users’ request is calculated as
shown in Tables 6 and 7 using Eq. (12).
Price variation analysis with UBP Price variation using proposed framework, i.e.,
DGA and using UBP pricing model for user’ tasks request from Table 6, is shown
in Figs. 6, 7 and 8 for job length 180,000 MI, 540,000 MI and 980,000 MI, respec-
tively. It is inferred from the results that minimum price evaluation, applying DGA, is
comparatively less than price evaluation using UBP. For less resource requests, price
variation is comparatively less as shown in Fig. 6, but when the demand of required
resources increases, price variation becomes considerably high. As shown in Fig. 7,
price difference is only 100 when normalized resource requirement is 0.544, but as
123
Genetic algorithm-based cost minimization pricing model… 1557
Fig. 8 Price variation for job length 980,000 and users’ request for normalized resources as given in Table 6
the QoS and resource requirement increases, there is considerable increase (i.e., 40%)
in the prices by using UBP model as compared to price using DGA model.
Users’ utility variation Users’ utility comparison of proposed framework, i.e., DGA,
is also done with traditional pricing model, i.e., UBP [13], for the users’ requests as
given in Table 6. The users’ utility is evaluated using Eq. (12). From Figs. 9, 10 and
11, it can be evaluated that users’ utility is first increasing and then decreasing due
to rate of diminishing marginal utility. With the proposed DGA pricing framework,
users’ utility is comparatively higher than the utility obtained by UBP pricing model.
As the users’ job length increases, our proposed DGA model performs better in terms
of users’ utility as compared to UBP model. It can be seen in Fig. 9 that average
difference in the utility using DGA and UBP is .00692 when Ji 180,000, .01272
when Ji 540,000, and .0248 when Ji 980,000 as shown in Figs. 10 and 11,
respectively.
123
1558 S. Kansal et al.
Fig. 9 User’ utility for job length 980,000 and users’ request for resources as given in Table 6
For the comprehensive analysis of the proposed framework, different sets of the
users’ requests are taken that vary in job length, deadline time, amount of storage
and memory. Along with that, different processing capacities available with provider
are also considered. Experimental results indicate that for same users’ request, more
number of processor cores with lower capacity result in less pricing instead of less
number of processor cores having higher capacity. The proposed DGA-based pric-
ing framework fixes the prices dynamically and more efficiently than the existing
pricing UBP model. The proposed framework’s cost minimization efficiency is much
higher than the existing pricing model and also increases the utility of the cloud
users.
With the existence of multiple homogenous cloud service providers in the market
and growing requirement for on-demand cloud services, it has become extremely
critical to effectively price the cloud services. For the efficient pricing of the cloud
services, this paper presents two phase price minimization model. In the first phase,
the demand-based dynamic pricing model is proposed that can model the dynamics of
123
Genetic algorithm-based cost minimization pricing model… 1559
Fig. 10 User’ utility for job length 540,000 and users’ request for resources as given in Table 6
pricing of cloud services with the variation in the demand for the cloud services.
In the second phase, genetic algorithm is deployed to minimize the cost of exe-
cution of user’s tasks. For the evaluation of the proposed framework, comparative
analysis is carried out with utility-based pricing model. Experimental results exhibit
considerable variation in the prices of the cloud services and user’s utility using
proposed framework, when the service requirements of the users are substantially
higher.
In this paper, the variable transaction factors that greatly affect the prices of the
cloud services are considered. Dynamic price variation of the memory, storage, job
length, processing capacity and deadline time is analyzed. Dynamic behavior of the
network is not addressed by the proposed model. As the future work, this framework
123
1560 S. Kansal et al.
Fig. 11 User’ utility for job length 980,000 and users’ request for resources as given in Table 6
can be extended by considering the others factors like inbound and outbound data
transfer, energy cost, transmission to analyze the variation of prices with the change
in the number of VMs
References
1. Galante G, De Bona LCE, Mury AR, Schulze B, da Rosa Righi R (2016) An analysis of public clouds
elasticity in the execution of scientific applications: a survey. J Grid Comput 14(2):193–216
2. Armbrust M, Fox A, Griffith R, Joseph AD, Katz R, Konwinski A, Lee G, Patterson D, Rabkin A,
Stoica I, Zaharia M (2010) A view of cloud computing. Commun ACM 53(4):50–58
3. Armbrust M, Fox A, Griffith R, Joseph AD, Katz RH, Konwinski A, Lee G, Patterson D, Rabkin A,
Stoica I, Zaharia M (2009) Above the clouds: a berkeley view of cloud computing, Vol 4, pp 506–522.
Technical Report UCB/EECS-2009-28, EECS Department, University of California, Berkeley
4. Cloud Harmony (2016). https://cloudharmony.com/status
5. Pal R, Hui P (2013) Economic models for cloud service markets: pricing and capacity planning. Theor
Comput Sci 496:113–124
6. Amazon EC2 (2016). https://aws.amazon.com/ec2/pricing/
7. Chun SH, Choi BS (2014) Service models and pricing schemes for cloud computing. Clust Comput
17(2):529–535
8. Suleiman B, Sakr S, Jeffery R, Liu A (2012) On understanding the economics and elasticity challenges
of deploying business applications on public cloud infrastructure. J Internet Serv Appl 3(2):173–193
9. Kaur S, Singh S, Kaushal S, Sangaiah AK (2016) Comparative analysis of quality metrics for com-
munity detection in social networks using genetic algorithm. Neural Netw World 26(6):625
123
Genetic algorithm-based cost minimization pricing model… 1561
10. Sangaiah AK, Thangavelu AK, Gao XZ, Anbazhagan N, Durai MS (2015) An ANFIS approach for
evaluation of team-level service climate in GSD projects using Taguchi-genetic learning algorithm.
Appl Soft Comput 30:628–635
11. Rathore S, Sangaiah AK, Park JH (2017) A novel framework for internet of knowledge protection in
social networking services. J Comput Sci. https://doi.org/10.1016/j.jocs.2017.12.010
12. Prodan R, Wieczorek M, Fard HM (2011) Double auction-based scheduling of scientific applications
in distributed grid and cloud environments. J Grid Comput 9(4):531–548
13. Yeo CS, Venugopal S, Chu X, Buyya R (2010) Autonomic metered pricing for a utility computing
service. Future Gen Comput Syst 26(8):1368–1380
14. Altmann J, Kashef MM (2014) Cost model based service placement in federated hybrid clouds. Future
Gen Comput Syst 41:79–90
15. Truong HL, Dustdar S (2010) Composable cost estimation and monitoring for computational applica-
tions in cloud computing environments. Proc Comput Sci 1(1):2175–2184
16. Buell K, Collofello J (2011) Transaction level economics of cloud applications. In: 2011 IEEE World
Congress on Services (SERVICES), pp 515–518. IEEE
17. Mills KL, Dabrowski C (2008) Can economics-based resource allocation prove effective in a compu-
tation marketplace? J Grid Comput 6(3):291–311
18. Kansal S, Singh G, Kumar H, Kaushal S (2014) Pricing models in cloud computing. In: Proceedings
of the 2014 International Conference on Information and Communication Technology for Competitive
Strategies, p 33
19. Macias M, Guitart J (2010) Using resource-level information into non-additive negotiation models for
cloud market environments. In: 2010 IEEE Network Operations and Management Symposium-NOMS,
pp 325–332
20. Lu H, Wu X, Zhang W, Liu J (2012) Optimal pricing of multi-model hybrid system for PaaS cloud
computing. In: Cloud and Service Computing (CSC), 2012 International Conference, pp 227–231
21. Son S, Sim KM (2012) A price-and-time-slot-negotiation mechanism for cloud service reservations.
IEEE Trans Syst Man Cybern Part B (Cybern) 42(3):713–728
22. Rohitratana J, Altmann J (2012) Impact of pricing schemes on a market for Software-as-a-Service and
perpetual software. Future Gen Comput Syst 28(8):1328–1339
23. Agmon Ben-Yehuda O, Ben-Yehuda M, Schuster A, Tsafrir D (2013) Deconstructing amazon EC2
spot instance pricing. ACM Trans Econ Comput 1:16
24. Li CF (2011) Cloud computing system management under flat rate pricing. J Netw Syst Manag
19(3):305–318
25. Wang H, Jing Q, Chen R, He B, Qian Z, Zhou L (2010) Distributed systems meet economics: pricing
in the cloud. HotCloud 10:1–6
26. Allenotor D, Thulasiram RK (2008) Grid resources pricing: a novel financial option based quality of
service-profit quasi-static equilibrium model. In: Proceedings of the 2008 9th IEEE/ACM International
Conference on Grid Computing, IEEE Computer Society, pp 75–84
27. Martens B, Walterbusch M, Teuteberg F (2012) Costing of cloud computing services: a total cost of
ownership approach. In: 2012 45th Hawaii International Conference on System Science (HICSS), pp
1563–1572. IEEE
28. Kaufmann A, Dolan K (2015) Price comparison: Google cloud platform vs. Amazon web services.
Enterprise Strategy Groups Lab White Paper
29. Martens B, Walterbusch M, Teuteberg F (2012) Costing of cloud computing services: a total cost of
ownership approach. In: Proceedings of the 2012 45th Hawaii International Conference on System
Sciences (HICSS’12). IEEE Computer Society, Washington, DC, USA, pp 1563–1572. http://dx.doi.
org/10.1109/HICSS.2012.186
30. Mitchell M (1998) An introduction to genetic algorithms. MIT Press, Cambridge
31. https://github.com/WorkflowSim/WorkflowSim-1.0. Accessed 23 May 2017
32. Yeo CS, Buyya R (2007) Pricing for utility-driven resource management and allocation in clusters. Int
High Perform Comput Appl 21(4):405–418
123