A fair multi-attribute combinatorial double auction model for resource allocation in cloud computing

A fair multi-attribute combinatorial double auction model for resource allocation in cloud computing

Accepted Manuscript A fair multi-attribute combinatorial double auction model for resource allocation in cloud computing Gaurav Baranwal , Deo Prakas...

2MB Sizes 3 Downloads 140 Views

Accepted Manuscript

A fair multi-attribute combinatorial double auction model for resource allocation in cloud computing Gaurav Baranwal , Deo Prakash Vidyarthi PII: DOI: Reference:

S0164-1212(15)00127-2 10.1016/j.jss.2015.06.025 JSS 9530

To appear in:

The Journal of Systems & Software

Received date: Revised date: Accepted date:

21 February 2015 7 May 2015 9 June 2015

Please cite this article as: Gaurav Baranwal , Deo Prakash Vidyarthi , A fair multi-attribute combinatorial double auction model for resource allocation in cloud computing, The Journal of Systems & Software (2015), doi: 10.1016/j.jss.2015.06.025

This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

ACCEPTED MANUSCRIPT

Highlights Considers multi-attribute combinatorial double auction for winner determination Imposes penalty on provider offering false QoS assurance and compensate the users Reputation of provider is also being considered to prevent the cheating Fairness to reduce the dissatisfaction of bidders is also included in the model Evaluation by simulation and on auction properties shows the effectiveness of model

AC

CE

PT

ED

M

AN US

CR IP T

    

ACCEPTED MANUSCRIPT

A Fair Multi-attribute Combinatorial Double Auction Model for Resource Allocation in Cloud Computing

CR IP T

Gaurav Baranwal1, Deo Prakash Vidyarthi2 School of Computer and Systems Sciences, Jawaharlal Nehru University, New Delhi, India 1 [email protected], [email protected]

Corresponding author: Deo Prakash Vidyarthi, School of Computer and Systems Sciences,

AN US

Jawaharlal Nehru University, New Delhi-110067, India, Ph. +91 11 26704738 Email- [email protected]

Abstract

PT

ED

M

In recent, Cloud computing has emerged as a market where computing related resources are treated as a utility and is priced. There is a big competition amongst the Cloud service providers and therefore, the providers offer the services strategically. Auction, a market based resource allocation strategy, has received the attention amongst the Cloud researchers in recent. The auction principal of resource allocation is based on demand and supply. This work proposes a multi-attribute combinatorial double auction for the allocation of Cloud resources, which not only considers the price but other quality of service parameters also. Auctioneer extends some of the parameters to the offered bids from the bidders in order to provide fairness and robustness. In case of not meeting the assured quality, a penalty is imposed on the provider and customer is compensated. The reputation of the provider also diminishes in the forthcoming rounds. Performance study of the proposed model is done by simulation which reflects the usefulness of the method.

AC

CE

Keywords Cloud resources, Double auction, Fairness, Penalty, Quality of Service (QoS), Resource attribute

ACCEPTED MANUSCRIPT

1 Introduction

CR IP T

Cloud computing is becoming most popular IT service delivery model in recent and is still evolving. NIST defines five essential characteristics of Cloud computing as; Resource ondemand, Elasticity, Resource pooling, Broad network access and Measured service [1]. These characteristics have made the Cloud very popular. Various other computing technologies, evolved over the years, do constitute the Cloud computing. This includes Virtualization, Distributed Computing, Utility computing, Service-Oriented Architecture, Networking, Storage etc.

AN US

Cloud computing is basically a business model which offers a plethora of pricing schemes for its variety of services in order to attract its customers. Economy based resource allocation mechanisms have been well pursued in different scenario of resource allocation in Distributed Computing [2,3], Grid Computing [4-6] and Cloud Computing [7,8]. Fixed pricing, Bargaining, Auction and Distributive justice are some famous economic approaches for pricing and allocation of resources.

PT

ED

M

Static pricing schemes have been widely used for the allocation and pricing of the resources because of its simplicity in the nascent stage of Cloud. A drawback in static pricing is that the prices of the computing resources cannot be increased or decreased for under and overutilization of the resources respectively. This encouraged the service providers to offer the dynamic pricing schemes to its customers. In dynamic pricing, prices of the resources varies and depends on the usability and availability of the resources. It results in the improvement of the resource utilization and revenue both. For example, Amazon EC2 [9] has introduced a Spot market (a real approach of dynamic pricing), where it sells the residual resources on the basis of demand and supply of market after reserved and on-demand resource allocation to the customers. This increases the utilization of the resource and the revenue of the providers. But such dynamism creates difficulties to the providers in deciding the prices of the resources. Also, customers find it difficult in accepting the price decided by the providers with planning of their budget.

AC

CE

Auction is the process that may overcome such difficulties. In auction, prices of the resources are decided by the bidder’s (customers) willingness to pay and the provider would not face the uncertainty of the best resource price. Also, in auction, winners’ praise their winning abilities and losers blame other bidders not the auctioneer for the loss [10]. In auction, the price of a resource is determined by the current supply and existing demand at any moment, so it seems to be an appropriate mechanism for the Cloud resources. It is because of this, the concept of auction in Cloud computing is not new. In an auction mechanism, called Spot market introduced by Amazon EC2 [9], if the users’ bid price exceed the spot price (decided by the provider on the basis of demand and supply), user gets the Spot instances (VMs). Meanwhile, when spot price exceeds customer’s bid, resources will be aborted from the current users and the Spot prices are re-updated. Though, this seems to be a drawback of the spot pricing, the popularity of the Spot pricing in the current Cloud market as well as the amount of research work for pricing and allocation of Cloud resources proves that auction has relatively a greater role to play in the Cloud market.

ACCEPTED MANUSCRIPT

AN US

CR IP T

Auction aims to optimize the payoff of the participants (customers and providers in this case). Providers’ payoff is to maximize the revenue in the long run and customers’ payoff is to execute the job with least pricing and the expected QoS. In auction, revenue maximization in long run is directly related to the number of bidders in the Cloud market. It has been proved that revenue in case of k bidders is at least as high as in case of k-1 bidders [11]. Thus, for revenue maximization in the long run, the designer of the auction mechanism should ensure sufficient number of participants in the market. Since auction in Cloud comes under recurrent auction [12] (computing resources are re-allocated once free), a bidder (customer in the case) may leave the auction in two cases: first when a bidder is repeatedly losing because of low bidding and second if bidder is not attaining the required QoS. In the former case, bidders with high bidding remain in the market and may create oligopoly (some powerful bidders control the market and provoke a fall in the resource pricing). The act of bidders leaving in recurrent auction because of dissatisfaction (due to oligopoly) is also called bidder drop problem [13]. Inclusion of fairness measures in auction can increase bidders’ interest in auction, an approach known as egalitarian social welfare approach. Inclusion of fairness measures attracts more customers in the Cloud market, making it a competitive market and increasing the global performance of the auction system.

ED

M

Reason for leaving the auction in later case is not meeting the expected QoS. To the authors’ best knowledge, most of the current research works related to auction in Cloud proposes the auction mechanisms based on price only. It rarely gives emphasis, if customers do not get the required resources based on the desired QoS (e.g. response time). Thus, truthful bidding based on the price only is not a good solution. Therefore, auction mechanism designer should consider various other attributes in auction. Service providers are always encouraged for the truthful bidding though it is quite possible that a provider may give false QoS assurance to win an auction e.g. not meeting the expected response time after allocation of resources to the customers. To avoid such false bidding, a concept of penalty imposition may be introduced.

AC

CE

PT

The proposed work deals with the allocation and the pricing of the resources in Cloud computing and is named Fair Multi-attribute Combinatorial Double Auction Model (FMCDAM). This work is an extension of the work CDARA which uses a double combinatorial auction model proposed by [26]. It considers a number of attributes such as fairness, reputation etc. and introduces the concept of imposing penalty on the providers making a false QoS assurance in order to win the auction. The outline of the paper is as follows. After the introduction in section1, section 2 introduces some current related work on Cloud auction. In section 3, the proposed FMCDAM model is formulated along with a view of cloud market for FMCDAM. The considered multiple attributes in auction or FMCDAM is also briefed in section 3. Performance of the FMCDAM is evaluated in section 4 based on the experiments and auction properties. Finally section 5 makes a discussion on the work in line with the experiments and concludes the work.

ACCEPTED MANUSCRIPT 2. Related Work Auction, a concept of economics, is very popular for allocation of the resource and pricing in a competitive multi-agent system [14]. Different types of available auction eases its adaptation for various types of situations. In Cloud computing, varied auction mechanisms e.g. single sided auction, double sided auction, first price auction, second price auction etc. are used in different situations for resource allocation and pricing. Spot pricing [9], an auction mechanism proposed by Amazon, is successfully accepted in the current Cloud market and literature [15-17]. This section lists some recent research works related to Cloud auction.

AN US

CR IP T

[18] and [19] give a helpful insight about the framework for Cloud auction market. A framework of multi-attribute combinatorial auction market in Cloud computing is proposed in [18] in which it is assumed that the attributes related to the Cloud resources can be quantified to some integer values resulting in final pricing of the resources. Providers may offer the resources individually or in form of a bundle along with the attributes of the resources. The work in [18] discusses some matching algorithms that can be used to find a best match of provider and customer. Similar to [18], [19] also proposes a Cloud market framework which allocates the resources based on a double auction. Although both these works provide a flexible and competitive framework, no formulation of the problem as well as its implementation and analysis is done in these works.

M

Second-pricing auction mechanism is proposed in [20 which uses the concept of marginal bid to decide the price of the Cloud resources where marginal bid is the highest bid among all the unsuccessful bids. Thus, in case of large number of users and resources, the model in [20] overcomes strategic deviation and revenue inferiority defined in [20].

PT

ED

[21] used a combinatorial one-to-many auction for pricing and VM allocation and proposed two mechanisms for auction; CA-LP (Combinatorial Auction – Linear Programming) and CA-GREEDY (Combinatorial Auction - Greedy). It compared CA-LP and CA-GREEDY with fixed pricing scheme and observed that the proposed schemes performs better. The drawback of one-to-many auction is the monopoly of one side.

AC

CE

A model called Reverse Batch Making Auction (RBMA) is proposed in [22]. It uses an immune evolutionary algorithm for optimal resource allocation for three evaluation metric; market efficiency, user satisfaction and quality of service. RBMA also used twicepunishment mechanism to punish the malicious bidders based on the historical information of the service quality. A periodical auction model, based on limited English combinatorial model for allocation of resources to determine the resource prices between providers and users is proposed in [23]. It aims to allocate the resources optimally using genetic algorithm with the objectives to maximize the profit of the provider and reduction in job execution time in the determination of a winner. A combinatorial auction, based on one sided auction model, is proposed in [24] in which user submits her requirements and providers submit their offers as bids. The conspicuous feature

ACCEPTED MANUSCRIPT of this model is that providers use the concept of mutual business relationship and form a group. This group acts as a single bidder. Such collaboration, among the providers in group formation, reduces the conflicts among them. Although [24] considers QoS as an effective parameter in auction, in the problem formulation it did not clearly define that how the QoS is used in a winner determination.

CR IP T

Double auction is widely accepted many-to-many auction that prevents monopoly. It is more efficient than one-to-many auction as in this both sides submit their bids. To form a standard for interoperability, a challenging issue in Cloud, [25] first proposed a framework for forming global Cloud market and then proposed a knowledge-based continuous double auction (CDA) model that uses a learning algorithm (based on historical trading information) to determine the price of the cloud resources.

AN US

In [26], a Combinatorial Double Auction Resource Allocation (CDARA) model is proposed. CDARA consideres two models proposed by [21] and [27] and efficiently allocates the Cloud resources. Involved economic efficiency and incentive compatibility were two criteria which were used in [26]. Experiments on CDARA exhibits that the model is efficient, cost effective and intensive for user as well as provider.

ED

M

A multi-attribute double auction, with three entities Resource Consumer (RC), Resource Provider (RP) and Auction Organizer (AO), is proposed in [28]. In this, bidders (RCs and RPs) submit their bids alongwith the price values predicted using SVM (Support Vector Machine) algorithm. The work of AO is to transfer the non-price attributes of bidders (e.g. Quality of experience, level of delivery etc.) into a quality index and integrate this with price attribute to allocate the resources with the aim to maximize the satisfaction of bidders. The problem with [26] and [28] is the sorting of the bidders based on the price only. There is no provision for penalty imposition if a provider does not deliver the agreed upon services. Also there is no method to provide fairness among bidders.

AC

CE

PT

Most of the above-mentioned works [18-21, 23-26, 28] do not implement any mechanism for imposition of penalty in case if a service is not delivered as per the agreement. [22] has implemented a punishment schemes for the malicious bidders but does not offer any compensation to the affected customers. Also, to the best of the author’s knowledge there is no work which provides the robustness and fairness in the Cloud auction market. Though, some works have implemented multi-attribute auction, most of them do not consider those attributes to prioritize the bidders. 3. Fair Multi-attribute Combinatorial Double Auction: The Proposed Model The proposed multi-attribute combinatorial double auction model with fairness is an extension of two existing models in [26] and [29]. In [26], a combinatorial double auction is proposed for the Cloud resource allocation whereas in [29], a reverse auction with multidimensional fairness for the allocation of the resources is proposed. The proposed model considers various attributes and imposes a penalty on the providers in case of not meeting an agreed-upon QoS. The idea of multi-dimensional fairness is borrowed from [29] in the proposed model. Result is a novel and robust model for Cloud resource allocation.

ACCEPTED MANUSCRIPT 3.1 Why Multi-Attribute Combinatorial Double Auction The three adjectives used in the model, multi-attribute, combinatorial and double for the auction method are discussed below. Why multi-attribute

AN US

CR IP T

There is a tough competition in the Cloud market and vendors are bound to offer better services making Cloud an attractive paradigm. If a provider does not meet the expectation of the customers, it will be rejected altogether [30]. Most of the works, related to resource auction in Cloud, use uni-attribute auction where bidders bid on price only. These works do not consider other QoS offered by the providers which is not appropriate being quality an equally important issue [31]. In a Cloud market, many other parameters such as reputation, experience etc. cannot be ignored. So, to incorporate the QoS and some other important parameters in auction, multi-attribute auction is considered in the proposed work which allows bidders to bid on various attributes of resources in addition to the price. The auctioneer selects the winner on the basis of the defined multi-attributes e.g. reputation, offered QoS defined by the bidders and price defined in the bids. Why combinatorial

AC

CE

PT

ED

M

Most of the Cloud service providers offer computing resources in form of virtual machine (VM) instances by specifying CPU, memory, storage etc. For example, R3 instances provided by Amazon is suitable for memory intensive applications and r3.large, a model of R3, is a combination of 2 vCPU, 3.75 GB Memory and 2×16 GB SSD Storage. There are various types of extended auction mechanisms of which combinatorial auction is most suitable extended form of auction for Cloud where auctioneer offers a collection of resources in form of bundles and bidders bid for these bundles [32]. Benefit of combinatorial auction is that it enables customers to express required resources which are dependent and complimentary. Bundling of available resources is an important issue in combinatorial auction and a research challenge [33]. In literature, some decision tools like iAuctionMaker [33] and iBundler [34] are available which help to group the resources into promising bundles on the basis of some constraints to produce high revenue. Bundling requires understanding of the auction’s dynamic, accurate knowledge of experience and interest of customers in bundles [33]. Bundling, on the basis of interest of customers in current market with maximization of profit is itself a big research issue and this work is focused on solving the winner determination problem. So, this work does not consider the bundling exclusively. Why double

When there are multiple providers and customers in a Cloud market, it is better to adapt the double auction where both providers and customers submit their bids. In literature, two types of double auction are defined based on the clearing time of auction namely Call market [35] and Continuous double auction [36, 37]. In Call market, bidders submit their bids over a specified deadline at which auctioneer matches over the entire set of bids and clears the auction. In Continuous double auction, auctioneer continuously clears the auction by a new

ACCEPTED MANUSCRIPT delivered bid with the existing bids. Current scenario of Cloud computing, where multiple Cloud providers and multiple Cloud customers are present, double auction is more suited. This work assumes that auctioneer defines a deadline (auction clearing time) similar to Call market. Advantage of double auction is its acceptance of multiple providers and customers concurrently making it more efficient than several single sided auction. Also, it prevents providers’ monopolies [38]. 3.2 FMCDAM: A View

ED

M

AN US

CR IP T

The FMCDAM considers a Cloud auction market where Cloud providers and Cloud customers submit their bids to the Cloud auctioneer. Cloud auctioneer acts as a market maker, called mediator between Cloud provider and Cloud customer. An study in Economics says that presence of market maker increases the liquidity and economic efficiency in the market [39]. Market maker not only acts as a mediator but in case of resource availability (in form of bundle) helps the providers to identify new trends in bundle making etc. with its repository of the historical transactions [14]. Cloud auctioneer uses FMCDAM for resource allocation to customers as well as payment settlement among providers and customers. The proposed work also introduces a concept of penalty i.e. if a provider is not able to meet the promised QoS during service delivering, it has to pay some penalty to the affected customer. Therefore, it is assumed that auctioneer implements a proper payment service to ensure that in case of SLA (Service Level Agreement) violation customer pays the correct price i.e. penalty is deducted from the original price. It also creates a repository for storing the historical information of bidders’ past auction to provide robustness and fairness. Though current Cloud market does not support the above scenario, this is an upcoming idea as some proposed work supports the idea of Cloud markets [40-42] and their practical approach. Its popularity may make it feasible for real Cloud implementation in future. In FMCDAM model mainly four entities are considered whose descriptions are given below.

PT

Cloud Customers

CE

Customers are basically the users willing to avail the Cloud services. Cloud Brokers

AC

Each customer has one broker which participate in the auction process on behalf of customer. Broker is also responsible for bid formation (making bundle of resources), deciding its price and job execution. Cloud Providers Cloud providers offer the services in form of resources in the Cloud market in order to make money. It also prepares bid to participate in the auction. After winning the auction, it allocates the resources to the users and run their jobs. Cloud Auctioneer

ACCEPTED MANUSCRIPT Cloud auctioneer is the most important entity of the proposed model. It accepts the bids from the Cloud Brokers and Cloud Providers and run the auction process. It informs the participated providers and brokers about the result obtained from the auction process. It is assumed that auctioneer has a repository to store log records of bidders, experience of customers about the providers and experience of providers about the customers. This helps to quantify the reputation, feedback and other attributes of the bidders. It also acts for the settlement of the payment between Cloud Broker and Cloud Provider. During payment settlement, it takes care of the penalty on the Cloud Provider, if any.

CR IP T

Sequence diagram of the proposed model with entities (Cloud Broker, Cloud Provider and Cloud Auctioneer) is given in figure 1. Steps involved in the sequence diagram are as follows. 0. Begin 1. Cloud Auctioneer starts the auction.

AN US

2. Cloud Auctioneer informs Cloud Providers and Cloud Brokers about the auction. 3. Cloud Providers and Cloud Brokers submit their bids to the Cloud Auctioneer.

4. Cloud Auctioneer sends acknowledgement to Cloud Providers and Cloud Brokers of their bids.

M

5. Cloud Auctioneer closes the auction

6. Cloud Auctioneer informs Cloud Providers and Cloud Brokers about closing of auction.

ED

7. Cloud Auctioneer extends the obtained bids with some new attributes such as fairness, reputation etc.

PT

8. Cloud Auctioneer performs winner determination and reports the allocation of resources, to Cloud Providers and Cloud Brokers.

CE

9. Cloud Providers assigns the resources to Cloud Brokers. 10. Cloud Brokers run their tasks on allocated resources.

AC

11. Cloud Brokers get the results. 12. Cloud Brokers inform the Cloud Auctioneer about the delivered QoS of allocated resource. 13. Cloud Auctioneer calculates final trade price based on allocated resources and their QoS. 14. Cloud Auctioneer informs Cloud Providers and Cloud Brokers about final trade price. 15. Cloud Brokers pay final price to Cloud Providers.

ACCEPTED MANUSCRIPT

PT

ED

M

AN US

CR IP T

16. End

CE

Figure 1: Sequence Diagram of FMCDAM

3.3 FMCDAM Formulation

AC

Before the formulation of FMCDAM, the notation used are given in table 1.

Notation 𝑐 𝐵 𝑝 𝑛 𝑚 𝑎 𝑙

Description Customer Broker Provider Number of customers Number of providers Attribute of resource Number of VMs type

Table 1: Notation Notation 𝑒𝑥𝑡𝐵𝑖𝑑 𝑀 𝐵𝐷 𝑟𝐵𝐷 𝑒𝑓()

Description Extended bid Total number of resources with multiplication of their attributes Bid density Revised bid density in case of false QoS Evaluation function

ACCEPTED MANUSCRIPT

𝑝𝑝 𝑟𝑝𝑝 𝑄 𝑧 𝑇 𝑎𝑡𝑟 𝑎𝑢 𝑜

𝑥 𝑡𝑞 𝑎𝑝𝑐 𝑎𝑝𝑝 𝑓𝑡𝑝 𝑎𝑞 𝑤

Resultant of evaluation function Total quantity of requests/offers Average price of customer Average price of provider Final trade price Allocated quantity of resource Tunable parameter in case of imposing penalty Price paid by customer 𝑝𝑐𝑝 Delivered QoS 𝑅𝑄 Difference of promised QoS and 𝐷𝑅𝑄 delivered QoS 𝑄 Tunable parameter for QoS 𝑤 𝑅𝑒𝑝𝑢𝑡𝑎𝑡𝑖𝑜𝑛 Reputation of bidder Fitness of bid 𝑓 Number of winners 𝑛𝑜_𝑤

CR IP T

𝑡

Quantity of virtual machine Bundle Offered price by customer for bundle Time unit for customer needs bundle Quoted price by provider for bundle Revised quoted price by provider in case of false QoS Quality of service metric Number of QoS metrics Deadline of bidding Attribute considered by auctioneer to extend bid Number of attributes considered by auctioneer

AN US

𝑞 𝑏 𝑝𝑐

Start of Auction

Cloud Auctioneer starts the auction and informs the Cloud customers and providers. To maintain a standard it is assumed that auctioneer informs the providers about the QoS also that it offers in their bids.

M

Submission of Bids

CE

PT

ED

Let there be 𝑛 customers (𝑐1 , 𝑐2 , 𝑐3 , … , 𝑐𝑛 ) and 𝑚 providers (𝑝1 , 𝑝2 , 𝑝3 , … , 𝑝𝑚 ) in the Cloud market. For each customer there is one broker from (𝐵1 , 𝐵2 , 𝐵3 , … , 𝐵𝑛 ) and each customer 𝑐𝑖 sends the request to its corresponding broker 𝐵𝑖 which participates in the auction on behalf of 𝑐𝑖 . Let 𝑙 be the types of virtual machines in the system characterized by v number of attributes 𝑖. 𝑒. (𝑎1 , 𝑎2 , 𝑎3 , … , 𝑎𝑣 ) where, 𝑎1 ≤ 𝑎2 ≤ 𝑎3 ≤ ⋯ ≤ 𝑎𝑣 .

AC

Users’ Bid Definition

Let 𝑏 𝑖 be the required quantity (bundle) of set of 𝑙 types of resource by customer i i.e. 𝑏 𝑖 = (𝑞1𝑖 , 𝑞2𝑖 , 𝑞3𝑖 , … , 𝑞𝑙𝑖 ). 𝑞1𝑖 is the quantity of type 1 VM required by customer 𝑖 and so on. Let 𝑝𝑐 𝑖 be the expected price by customer 𝑖 for bundle 𝑏 𝑖 and 𝑡 𝑖 be the time period for which customer 𝑖 needs the bundle 𝑏 𝑖 . The 𝐵𝑖𝑑𝑐𝑖 , a bid of customer 𝑖 contains bundle 𝑏 𝑖 , offered price 𝑝𝑐 𝑖 and time 𝑡 𝑖 as shown in equation (1). 𝐵𝑖𝑑𝑐𝑖 = (𝑏 𝑖 , 𝑝𝑐 𝑖 , 𝑡 𝑖 ) Providers’ Bid Definition

(1)

ACCEPTED MANUSCRIPT Let 𝑏 𝑗 be the available quantity (bundle) of set of 𝑙 types of resource i.e. 𝑗

𝑗

𝑗

𝑗

𝑏 𝑗 = (𝑞1 , 𝑞2 , 𝑞3 , … , 𝑞𝑙 ) with provider 𝑗. Let 𝑝𝑝 𝑗 be the quoted price by provider 𝑗 for bundle 𝑗

𝑗

𝑗

𝑗

𝑏 𝑗 and (𝑄1 , 𝑄2 … , 𝑄𝑧 ) be the set of QoS metric of bundle 𝑏 𝑗 . The 𝐵𝑖𝑑𝑝 , a bid of provider 𝑗 𝑗

𝑗

𝑗

contains bundle 𝑏 𝑗 , quoted price 𝑝𝑝𝑖 and QoS (𝑄1 , 𝑄2 … , 𝑄𝑧 ) as shown in equation (2). 𝑗

𝑗

𝑗

𝑗

𝐵𝑖𝑑𝑝 = (𝑏 𝑗 , 𝑝𝑝 𝑗 , 𝑄1 , 𝑄2 … , 𝑄𝑧 )

(2)

Closing of Auction

CR IP T

Cloud auctioneer defines a time period 𝑇 for bidding and starts the auction notifying the brokers and the providers about 𝑇. All the brokers and providers submit their bids containing the entities defined in equations (1) and (2) respectively within deadline 𝑇. After 𝑇 time period, auctioneer closes the auction i.e. bids are not accepted anymore. Extension of Bids

AN US

After accepting the bids, auctioneer extends the bid with some new attributes in auction such as fairness, reputation, experience etc. in the determination of the winner. These attributes are used as modifier of obtained bids. Let (𝑎𝑡𝑟1𝑎𝑢 , 𝑎𝑡𝑟2𝑎𝑢 … , 𝑎𝑡𝑟𝑜𝑎𝑢 ) be 𝑜 number of attributes considered by the auctioneer for bid extension. The extended bid of customer 𝑖 can now be written as in equations (3) and (4).

M

𝑒𝑥𝑡𝐵𝑖𝑑𝑐𝑖 = (𝐵𝑖𝑑𝑐𝑖 , 𝑎𝑡𝑟1𝑎𝑢 , 𝑎𝑡𝑟2𝑎𝑢 … , 𝑎𝑡𝑟𝑜𝑎𝑢 ) (3) 𝑒𝑥𝑡𝐵𝑖𝑑𝑐𝑖 = (𝑐𝑜𝑚𝐵𝑖𝑑𝑐𝑖 , 𝐴𝑡𝑡𝑟𝑐𝑖 )

(4)

ED

Where, 𝑐𝑜𝑚𝐵𝑖𝑑𝑐𝑖 = (𝑏 𝑖 , 𝑝𝑐 𝑖 , 𝑡 𝑖 ) and 𝐴𝑡𝑡𝑟𝑐𝑖 = (𝑎𝑡𝑟1𝑎𝑢 , 𝑎𝑡𝑟2𝑎𝑢 … , 𝑎𝑡𝑟𝑜𝑎𝑢 ) Similarly, extended bid of provider 𝑗 can be written as in equations (5) and (6). 𝑗

𝑗

CE

PT

𝑒𝑥𝑡𝐵𝑖𝑑𝑝 = (𝐵𝑖𝑑𝑝 , 𝑎𝑡𝑟1𝑎𝑢 , 𝑎𝑡𝑟2𝑎𝑢 … , 𝑎𝑡𝑟𝑜𝑎𝑢 ) (5)

𝑗

𝑗

𝑗

𝑗

𝑒𝑥𝑡𝐵𝑖𝑑𝑝 = (𝑐𝑜𝑚𝐵𝑖𝑑𝑝 , 𝐴𝑡𝑡𝑟𝑝 ) 𝑗

𝑗

𝑗

(6)

𝑗

where 𝑐𝑜𝑚𝐵𝑖𝑑𝑝 = (𝑏 𝑗 , 𝑝𝑝 𝑗 ) and 𝐴𝑡𝑡𝑟𝑝 = (𝑄1 , 𝑄2 … , 𝑄𝑧 , 𝑎𝑡𝑟1𝑎𝑢 , 𝑎𝑡𝑟2𝑎𝑢 … , 𝑎𝑡𝑟𝑜𝑎𝑢 )

AC

Winner Determination After obtaining the extended bids, auctioneer decides on the winners for the assignment of the Cloud resources. Auctioneer sorts the customers’ bids in decreasing order and providers’ bids in increasing order, to prioritize the higher bids of customers and lower bids of providers. For sorting the bids in combinatorial auction √𝑀 – approximation algorithm, proposed in [43], is successfully applied [21, 26] where 𝑀 is the total number of resources to be allocated. √𝑀 – approximation algorithm calculates the bid density of a bid on the basis of information in the bundle and the price provided in the bid. Bids are sorted on the basis of the bid density. Since considered auction model is combinatorial, extended bid of customer 𝑖 is

ACCEPTED MANUSCRIPT broken into two parts: 𝑐𝑜𝑚𝐵𝑖𝑑𝑐𝑖 and 𝐴𝑡𝑡𝑟𝑐𝑖 as given in equation (4). Same is done for 𝑗

𝑗

extended bid of provider 𝑗: 𝑐𝑜𝑚𝐵𝑖𝑑𝑝 and 𝐴𝑡𝑡𝑟𝑝 as given in equation (6). Now auctioneer 𝑗

calculates bid density 𝐵𝐷𝑐𝑖 of customer 𝑖 and bid density 𝐵𝐷𝑝 of provider 𝑗 using 𝑐𝑜𝑚𝐵𝑖𝑑𝑐𝑖 𝑗

𝑗

𝑗

and 𝑐𝑜𝑚𝐵𝑖𝑑𝑝 respectively. It then replaces 𝑐𝑜𝑚𝐵𝑖𝑑𝑐𝑖 and 𝑐𝑜𝑚𝐵𝑖𝑑𝑝 with 𝐵𝐷𝑐𝑖 and 𝐵𝐷𝑝 respectively in the corresponding extended bid. The extended bids of customer 𝑖 and provider 𝑗 can be written now as given in equations (7) and (8). 𝑒𝑥𝑡𝐵𝑖𝑑𝑐𝑖 = (𝐵𝐷𝑐𝑖 , 𝐴𝑡𝑡𝑟𝑐𝑖 ) = (𝐵𝐷𝑐𝑖 , 𝑎𝑡𝑟1𝑎𝑢 , 𝑎𝑡𝑟2𝑎𝑢 … , 𝑎𝑡𝑟𝑜𝑎𝑢 ) (7) 𝑗

𝑗

𝑗

𝑗

𝑗

𝑗

𝑗

CR IP T

𝑒𝑥𝑡𝐵𝑖𝑑𝑝 = (𝐵𝐷𝑝 , 𝐴𝑡𝑡𝑟𝑝 ) = (𝐵𝐷𝑝 , 𝑄1 , 𝑄2 … , 𝑄𝑧 , 𝑎𝑡𝑟1𝑎𝑢 , 𝑎𝑡𝑟2𝑎𝑢 … , 𝑎𝑡𝑟𝑜𝑎𝑢 ) (8)

To calculate the bid density, the method proposed in [26] a generalization of √𝑀 – approximation algorithm, is used in this work. Bid density of customer 𝑖 is calculated as in equation (9) and bid density of provider 𝑗 is calculated as in equation (11). 𝐵𝐷𝑐𝑖 = (𝑝𝑐 𝑖 ⁄√𝑀𝑐𝑖 ) × 𝑡 𝑖

AN US

(9)

Where, 𝑀𝑐𝑖 = ∑𝑙𝑘=1 (𝑎𝑘𝑖 × 𝑞𝑘𝑖 ) 𝑗

𝑗

𝐵𝐷𝑝 = (𝑝𝑝 𝑗 ⁄√𝑀𝑝 ) 𝑗

𝑗

(10)

and

(11)

𝑗

(12)

M

Where, 𝑀𝑝 = ∑𝑙𝑘=1 (𝑎𝑘 × 𝑞𝑘 )

AC

CE

PT

ED

In traditional uni-attribute auction, highest priced bidder wins. But in multi-attribute auction, several combinations of attributes values are used that increases the complexity of the winner determination. Imposition of monetary penalty on the providers also is to be implemented. Both these can be done using some suitable evaluation function. The evaluation function must be a real-valued multi-attribute function i.e. a function which takes extended bid as input and generates a single value as output. Also, it must be monotonic increasing so that output grows asymptotically when value of any attribute improves and vice versa. The function must be bijective so that penalty can be imposed on the provider in terms of money. Some of the evaluation functions, containing the above characteristics for multi-attribute auction, are product, weighted sum, mathematical norms, and weighted sum of functions [44]. Evaluation function 𝑒𝑓 of the extended bid 𝑒𝑥𝑡𝐵𝑖𝑑𝑐𝑖 of customer 𝑖 may be written as given in equation (13). 𝑒𝑓(𝑒𝑥𝑡𝐵𝑖𝑑𝑐𝑖 ) = 𝑒𝑓(𝐵𝐷𝑐𝑖 , 𝐴𝑡𝑡𝑟𝑐𝑖 ) = 𝑥𝑐𝑖

(13)

𝑗

Also, evaluation function of extended bid 𝑒𝑥𝑡𝐵𝑖𝑑𝑝 of provider 𝑗 may be written as given in equation (14). 𝑗

𝑗

𝑗

𝑗

𝑒𝑓(𝑒𝑥𝑡𝐵𝑖𝑑𝑝 ) = 𝑒𝑓(𝐵𝐷𝑝 , 1/𝐴𝑡𝑡𝑟𝑝 ) = 𝑥𝑝

(14)

ACCEPTED MANUSCRIPT Now auctioneer sorts the customers’ requests in decreasing order on the basis of 𝑥𝑐𝑖 and 𝑗

providers’ offers in increasing order on the basis of 𝑥𝑝 . Importance of bijective characteristic of function has been explained during the imposition of penalty.

CR IP T

After sorting the customers and the providers, auctioneer compares the requirements of first resource type of first customer from the sorted customer’s list with offered first resource type of first provider from the sorted provider’s list. If first provider has first resource type at least as per need of the first customer, resource is granted to the first customer. If all the requests of user are not fulfilled by first provider, second provider is chosen for the comparison and so on until all the request of first customer is fulfilled. The above process continues for the consecutive customers until all customers’ requirements are compared or all the offered resources by the providers are exhausted. Finally, auctioneer informs the provider and the customer about the resource allocation status obtained from the auction. Pricing Model

M

AN US

Customer pays the provider for the resources, so pricing model should be fair enough to encourage both the provider and the customers to participate in auction. For pricing, a method proposed in [26] is used in this work. Suppose a customer 𝑖 is ready to take resources from a provider 𝑗. Average price is calculated by dividing bid value by total number of resources in the bid for both provider and customer separately and then average of provider’s average price and customer’s average price is taken as the final price. Total quantity of requested resource 𝑡𝑞𝑐𝑖 by customer 𝑖 can be written as in equation (15). 𝑡𝑞𝑐𝑖 = ∑𝑙𝑘=1 𝑞𝑘𝑖

(15)

ED

Average price of customer, 𝑎𝑝𝑐 𝑖 , can be calculated as given in equation (16).

PT

𝑎𝑝𝑐 𝑖 = 𝑝𝑐 𝑖 ⁄𝑡𝑞𝑐𝑖

(16)

𝑗

CE

Total quantity of requested resource 𝑡𝑞𝑝 by provider 𝑗 can be written as given in equation (17). 𝑗

𝑗

𝑡𝑞𝑝 = ∑𝑙𝑘=1 𝑞𝑘

(17)

AC

Average price of provider, 𝑎𝑝𝑝 𝑗 , can be calculated as given in equation (18). 𝑗

𝑎𝑝𝑝 𝑗 = 𝑝𝑝 𝑗 ⁄𝑡𝑞𝑝

(18)

Final trade price between customer 𝑖 and provider 𝑗 is calculated as given in equation (19). 𝑗

𝑓𝑡𝑝𝑖 = (𝑤1 × 𝑎𝑝𝑐 𝑖 + 𝑤2 × 𝑎𝑝𝑝 𝑗 )⁄(𝑤1 + 𝑤2 )

(19)

Here, 𝑤1 and 𝑤2 are weight parameters of auctioneer to impose penalty such that 𝑤1 + 𝑤2 = 1. Importance of these parameters is discussed during the imposition of penalty. For this work, 𝑤1 = 𝑤2 = 0.5 i.e. average is taken for all the purposes.

ACCEPTED MANUSCRIPT 𝑗

Price to be paid by customer 𝑖 to provider 𝑗 for using the allocated quantity of resources 𝑎𝑞𝑖 is as given in equation (20). 𝑗

𝑗

𝑗

𝑝𝑐𝑝𝑖 = 𝑓𝑡𝑝𝑖 × 𝑎𝑞𝑖

(20)

Auctioneer performs the above process and notifies the customer and the provider about the final pricing. Though, payment between provider and customer is settled only after analysing the QoS delivery by the provider when the job finishes.

CR IP T

Allocation of Resources Providers allocate the resources to the customers as per the decision on winner by the auction. Customers use the resources for the time period as specified in the bid. After the execution, broker collects the information on QoS of the delivered services by the providers and send this information to the auctioneer.

AN US

Imposition of Penalty

Auctioneer checks whether the QoS offered by the provider is greater than or equal to what the provider promised in the bid. If yes, customer pays to the provider the final traded price 𝑗

calculated 𝑝𝑐𝑝𝑖 . Otherwise, auctioneer imposes some penalty on the provider by deducting 𝑗

some cost from 𝑝𝑐𝑝𝑖 which the customer pays. 𝑗

𝑗

M

Consider a case when a provider 𝑗 does not deliver the promised QoS i.e. 𝑗

𝑄 = (𝑄1 , 𝑄2 … , 𝑄𝑧 ) specified in the bid to a customer 𝑖. Delivered QoS i.e. 𝑗

𝑗

𝑗

ED

(𝑅𝑄1 , 𝑅𝑄2 … , 𝑅𝑄𝑧 ) is different. As discussed, auctioneer has repository to save the 𝑗

information of auction like value of 𝑥𝑝 calculated using equation (14) during winner determination corresponding to provider 𝑗. Since the actual delivered QoS is different from 𝑗

PT

the promised QoS, value of 𝐵𝐷𝑝 also must be changed resulting in a change in the quoted price by the provider in the bid to reduce the loss of the customer.

AC

CE

In the proposed work, penalty is imposed only for those QoS values which are less as compared to promised corresponding QoS. Two types of QoS metrics are considered here; First is 𝑀1 metric where higher value is more suitable e.g. availability and second is 𝑀2 metric where lower value is more suitable e.g. response time. Algorithmically, these steps are written as below. 𝑗

𝑓𝑜𝑟 𝑒𝑎𝑐ℎ 𝑅𝑄𝑦 , 𝑤ℎ𝑒𝑟𝑒 𝑦 𝜖 {1,2 … , 𝑧} 𝑗

𝑖𝑓(𝑅𝑄𝑦 𝜖 𝑀1 ){ 𝑗

𝑗

𝑖𝑓(𝑅𝑄𝑦 ≥ 𝑄𝑦 ){ 𝑗

𝑗

𝑅𝑄𝑦 = 𝑄𝑦

ACCEPTED MANUSCRIPT } 𝑗

𝑗

𝑒𝑙𝑠𝑒 𝑅𝑄𝑦 = 𝑅𝑄𝑦 } 𝑗

𝑖𝑓(𝑅𝑄𝑦 𝜖 𝑀2 ){ 𝑗

𝑗

𝑖𝑓(𝑅𝑄𝑦 ≤ 𝑄𝑦 ){ 𝑗

𝑗

CR IP T

𝑅𝑄𝑦 = 𝑄𝑦 } 𝑗

𝑗

𝑒𝑙𝑠𝑒 𝑅𝑄𝑦 = 𝑅𝑄𝑦

AN US

}

This way, the updated vector of delivered QoS by the provider 𝑗 can be written as in equation (21). 𝑗

𝑗

𝑗

𝑅𝑄 𝑗 = (𝑅𝑄1 , 𝑅𝑄2 … , 𝑅𝑄𝑙 )

(21)

𝑗

Since 𝑒𝑓 is bijective, partial anti-function 𝑒𝑓 −1 exists. If 𝑥𝑝 , calculated during auction and 𝑗

𝑗

𝑗

𝑗

𝑗

M

real delivered QoS i.e. (𝑅𝑄1 , 𝑅𝑄2 … , 𝑅𝑄𝑙 ) are known, revised value of respective 𝐵𝐷𝑝 i.e.

ED

𝑟𝐵𝐷𝑝 , can be calculated using 𝑒𝑓 −1 as in equation (22). 𝑗

𝑗

𝑗

𝑗

𝑗

𝑒𝑓 −1 (𝑥𝑝 , 1/𝑅𝑄1 , 1/𝑅𝑄2 … , 1/𝑅𝑄𝑙 ) = 𝑟𝐵𝐷𝑝

(22)

CE

PT

Since bid density calculation (using production function) uses a bijective function, revised value of price that must be quoted by the provider in the bid is calculated from the equation (12) and is given in equation (23). 𝑗

𝑗

𝑟𝑝𝑝 𝑗 = 𝑟𝐵𝐷𝑝 × √𝑀𝑝

(23) 𝑗

𝑗

AC

From equation (22) and equation (23), it can be observed that 𝑟𝐵𝐷𝑝 < 𝐵𝐷𝑝 and 𝑟𝑝𝑝 𝑗 < 𝑝𝑝 𝑗 in case provider 𝑗 tries to cheat. Using 𝑟𝑝𝑝 𝑗 as 𝑝𝑝 𝑗 in equation (18), auctioneer again calculates 𝑎𝑝𝑝 𝑗 . Value of 𝑎𝑝𝑐 𝑖 can be found from repository of auctioneer or can be calculated using equations (15) and (16). Now equation (19) is used as weighted average such that (𝑤1 ≥ 𝑤2 , 𝑖𝑓 𝑎𝑝𝑝 𝑗 ≥ 𝑎𝑝𝑐 𝑖 ) and (𝑤1 ≤ 𝑤2 , 𝑖𝑓 𝑎𝑝𝑝 𝑗 ≤ 𝑎𝑝𝑐 𝑖 ). Parameters, 𝑤1 and 𝑤2 give some freedom to the auctioneer to decide 𝑗

on the penalty for the provider. Auctioneer calculates 𝑝𝑐𝑝𝑖 using equation (20) and informs 𝑗

the customer 𝑖 about the revised price 𝑝𝑐𝑝𝑖 that 𝑖 should pay to the provider 𝑗. Broker pays the price to the provider as per auctioneer’s suggestion.

ACCEPTED MANUSCRIPT 3.4 The Attributes in FMCDAM Attributes, used in FMCDAM, are classified into two classes; Attribute provided by the bidders and Attribute provided by the auctioneer. 3.4.1 Attributes by the Bidders

CR IP T

Providers’ bid contains offered bundle of resources, quoted price for the bundle and attributes related to the bundle e.g. response time, availability etc. Customers’ bid contains required bundle of resources, price ready to pay for the bundle and the time duration for which customers need that bundle. As the customer is the user of the service, the attributes of the customer is not that significant.

AN US

Providers may include various QoS metrics as attributes in their bids as per the need of the users and the guidance of the auctioneer. However, included metrics must be quantified for a numeric value used as input in evaluation function 𝑒𝑓. Some research works [45, 46], for best Cloud provider selection, not only defines QoS metrics but also proposed methods to quantify them. 3.4.2 Attributes by the Auctioneer

ED

M

After receiving the bids from the provider and the customer, auctioneer decides on the winners. Before this, the inclusion of fairness is also incorporated to reduce the bidder’s drop problem as discussed earlier. Since all the auction process goes through the auctioneer, the information regarding the auction may be stored for the future use. The computation of some of the attributes such as reputation, robustness, fairness etc., which are based on the historical information, becomes easy. The attributes provided by the auctioneers have been discussed as follows.

PT

a. Reputation

AC

CE

Reputation is a measurement of the trustworthiness of the bidders. Reputation of a customer depends on the providers’ experience regarding the customer e.g. whether the provider gets the payment on time or not. Similarly, reputation of a provider depends on the experience of the customers for the provider e.g. whether the provider delivers the resources as agreed or not. Different customers may have different experience with the same provider and vice versa. Reputation factor can be defined for both; customer and provider. Formulation of reputation in itself is a complex research issue [47-50] so, in this work, only reputation of provider is considered to exhibit the effectiveness of this attribute. A provider may cheat by offering high false value of QoS. Although penalty is imposed by the auctioneer on the provider, it is insufficient as the provider may get benefit even after the imposition of penalty. It is assumed that customers inform the auctioneer about the QoS provided by a provider after utilizing the services. Using this information, auctioneer calculate the reputation of that provider. Reputation of each winning provider calculated at the end of round 𝑟 is used as an auctioneer provided attribute in the next auction rounds. Thus, if a provider cheats during a round 𝑟, it may be benefited in round 𝑟 but in the following auction rounds it may lose depending on the reputation function.

ACCEPTED MANUSCRIPT Difference of promised QoS 𝑄 𝑗 and delivered QoS 𝑅𝑄 𝑗 (obtained from equation (21)) by provider 𝑗 can be written as in equation (24) and equation (25). 𝑗

𝑗

𝑗

𝑗

𝑗

𝑗

𝐷𝑅𝑄 𝑗 = ((𝑅𝑄1 − 𝑄1 ), (𝑅𝑄2 − 𝑄2 ), … , (𝑅𝑄𝑧 − 𝑄𝑧 )) (24) 𝑗

𝑗

𝑗

𝐷𝑅𝑄 𝑗 = (𝐷𝑅𝑄1 , 𝐷𝑅𝑄2 … , 𝐷𝑅𝑄𝑧 ) (25) Reputation may be defined by a linear function. But to highly discourage the providers to become winners with false bidding, reputation of a provider should decrease exponentially as 𝑗

𝑗

𝑗

CR IP T

the difference between 𝑅𝑄𝑖 and 𝑄𝑖 i.e. 𝐷𝑅𝑄𝑖 increases for 𝑖 𝜖 {1,2, … , 𝑧}. So, an exponential function is used to define the reputation. To calculate the reputation, weighted sum of 𝐷𝑅𝑄 𝑗 i.e. 𝑅𝑡𝑒𝑚𝑝 is obtained as given in equation

AN US

(26) where 𝑤1𝑄 , 𝑤2𝑄 , … , 𝑤𝑧𝑄 are tunable parameters for QoS. A variable 𝑅𝑟 is taken in such a way that for the very first round of auction it will be equal to 𝑅𝑡𝑒𝑚𝑝 but onwards it will depend on 𝑅𝑡𝑒𝑚𝑝 as well as its value in previous auction as given in equation (27). 𝐴 is a tunable parameter to give weightage to the reputation of the provider in previous auctions and current auction i.e. reputation of provider increases, if provider 𝑗 provides promised QoS in the following auction rounds and vice versa. Reputation of provider 𝑗 i.e. 𝑅𝑒𝑝𝑢𝑡𝑎𝑡𝑖𝑜𝑛𝑗 in auction round 𝑟 can be calculated as given in equation (28) where 𝐿 defines how fast the reputation decreases. 𝑗

𝑗

𝑗

M

𝑅𝑡𝑒𝑚𝑝 = 𝑤1𝑄 ∗ 𝐷𝑅𝑄1 + 𝑤2𝑄 ∗ 𝐷𝑅𝑄2 + ⋯ + 𝑤𝑧𝑄 ∗ 𝐷𝑅𝑄𝑧

ED

𝑖𝑓 (𝑟 = 1)

(26)

{

}

PT

𝑅𝑟 = 𝑅𝑡𝑒𝑚𝑝

CE

𝑒𝑙𝑠𝑒

AC

{

𝑅𝑟 = (𝑅𝑡𝑒𝑚𝑝 + 𝑅𝑟−1 )/𝐴

(27)

} 𝑅𝑒𝑝𝑢𝑡𝑎𝑡𝑖𝑜𝑛 𝑗 = 1/exp(𝐿 ∗ 𝑅𝑟 )

(28)

b. Egalitarian Social Welfare (Fairness) Bidder drop problem has been discussed before and inclusion of fairness measures reduces this problem because every bidder has the possibility of winning from time to time. It may seem that inclusion of fairness in auction is not good for short-term benefit, but it has been

ACCEPTED MANUSCRIPT found that participants are benefited by it as it maintains the interest of the bidders in the market [51, 52]. In this work, it is assumed that all the participants in auction are interested in the long term benefit.

ED

M

AN US

CR IP T

There are many ways to consider fairness in auction e.g. priority and reservation price [13]. For this work, priority is considered in which priority is assigned to each bidder on the basis of the historical data of the bidder of previous auction. The idea behind the priority is to encourage the low bid value bidders by giving them higher priority which increases their probability to win and at the same time decreasing the probability of high bid value bidders by assigning them the low priority. Priority can be defined on the basis of number of auction won and number of auctions lost [11, 13, 29, 52]. This approach considers only number of victories and defeats; it does not consider the quality of the bid. This may be considered as the drawback of this approach as a bidder may provide dummy bids to lose in the current auction for winning upcoming auction and a bidder with almost winning bid gets annoyed because there is no involvement of quality of bid in securing the higher priority. Till now, fairness is discussed in order to encourage low bid value bidders for their participation in auction. But if a high bid value bidder is not winning an auction because of inclusion of priority, the high bid value bidder may starve by losing its dominance in auction. However, there is a possibility that high bid value bidder provides high quality bid i.e. good composition of price and attribute [29], inclusion of priority and maintaining the status quo both are important so that high bid value bidders and low value bidders can keep interest in the market. Status quo can be maintained by updating the priority of bidders by probabilistic approach and stochastic approach [29]. Probabilistic approach is not suitable because bidders may predict their priority using some machine learning approaches in the recurrent auction. Thus, this work considers stochastic approach which is inspired by [29] for the reverse auction.

CE

PT

Let 𝑒𝑥𝑡𝐵𝑖𝑑 𝑖 be the extended bid of bidder 𝑖, 𝑒𝑥𝑡𝐵𝑖𝑑 𝑤 be the extended bid of winning bidder, 𝑛𝑜_𝑤 be the number of winners, 𝑓 𝑖 be the fitness of bid 𝑒𝑥𝑡𝐵𝑖𝑑 𝑖 . Since more than one winner may exist in the proposed auction, average of 𝑒𝑓(.) of all the winners will be taken as given in equation (29). For winners, fitness of bid will be one. Fitness of other bidders can be defined as given in equation (30).

AC

𝑤 𝑎𝑣𝑒𝑟𝑎𝑔𝑒(𝑒𝑥𝑡𝐵𝑖𝑑 𝑤 ) = ∑𝑛𝑜_𝑤 𝑤=1 𝑒𝑓(𝑒𝑥𝑡𝐵𝑖𝑑 )/𝑛𝑜_𝑤

(29)

𝑖𝑓(𝑖 𝑖𝑠 𝑤𝑖𝑛𝑛𝑒𝑟) { 𝑓𝑖 = 1 } 𝑒𝑙𝑠𝑒 { 𝑓 𝑖 = 𝑓𝑢𝑛𝑐𝑡𝑖𝑜𝑛(𝑒𝑓(𝑒𝑥𝑡𝐵𝑖𝑑 𝑖 ), 𝑎𝑣𝑒𝑟𝑎𝑔𝑒(𝑒𝑥𝑡𝐵𝑖𝑑 𝑖 )) (30) }

ACCEPTED MANUSCRIPT As discussed before, a customer with higher bid value and a provider with lower bid value get preference, fitness 𝑓 𝑖 should be different for the customer and the provider. Fitness of bid of customer 𝑖, 𝑓 𝑖 is written as in equation (31). 𝑓𝑐𝑖 = 𝑒𝑓(𝑒𝑥𝑡𝐵𝑖𝑑𝑐𝑖 ) ⁄𝑎𝑣𝑒𝑟𝑎𝑔𝑒(𝑒𝑥𝑡𝐵𝑖𝑑𝑐𝑤 )

(31)

Fitness of bid of provider 𝑗, 𝑓 𝑗 is written as in equation (32). 𝑗

𝑗

(32)

CR IP T

𝑓𝑝 = 𝑎𝑣𝑒𝑟𝑎𝑔𝑒(𝑒𝑥𝑡𝐵𝑖𝑑𝑝𝑤 ) ⁄𝑒𝑓(𝑒𝑥𝑡𝐵𝑖𝑑𝑝 )

AN US

Before going for the current auction, auctioneer updates the priority of bidders on the basis of the saved historical information. A time window is used to define the number of previous auctions from the current auction for using the historical information in calculating the priority of bidders. If length of this time window is high, there is no significance of priority because auction will be same as the traditional auction without fairness where winners are the bidders with the high budget. Let 𝑝𝑟𝑖 𝜖 [0,1] be the priority of bidder 𝑖 and 𝑡w be the time window i.e. number of previous auction. Priority can be calculated as in equation (33). 𝑖 𝑖 𝑝𝑟𝑖 = 1 − ((1 + 𝑛𝑡𝑤𝑜𝑛 )⁄(1 + ∑𝑡𝑤 𝑗=0 𝑓𝑗 ))

(33)

M

𝑖 Where, 𝑛𝑡𝑤𝑜𝑛 is number of times bidder 𝑖 has won the auction in previous 𝑡𝑤 auctions. 𝑗 is 𝑐 when 𝑖 is broker otherwise 𝑝.

ED

To maintain the status quo using stochastic approach as given below, auctioneer updates the priority of the bidder 𝑖 according to a probability 𝑝𝑟𝑜𝑏 𝜖 [0,1]. 𝑓𝑜𝑟 𝑎𝑙𝑙 𝑏𝑖𝑑𝑑𝑒𝑟 𝑖 {

PT

𝑖𝑓(𝑟𝑎𝑛𝑑𝑜𝑚 (0,1) < 𝑝𝑟𝑜𝑏){

CE

𝑢𝑝𝑑𝑎𝑡𝑒 𝑝𝑟𝑖𝑜𝑟𝑖𝑡𝑦 𝑜𝑓 𝑖 𝑖. 𝑒. 𝑝𝑟𝑖

}

AC

}

This way, using stochastic approach bidders will not be certain about their priority and fairness is included without annoying the bidders with higher bidding value. 3.5. The Time Complexity of FMCDAM The time complexity of FMCDAM, in worst case, is discussed as in [53]. The whole process consists of three phases which is considered to compute the time complexity of the FMCDAM. First phase is sorting of participants by the auctioneer after accepting the bids. Second phase is solving the winner determination problem and the third phase is the pricing

ACCEPTED MANUSCRIPT mechanism (after the report by the winning customers about the delivered QoS by the winning provider) and updation of reputation and fairness. In first phase, complexity to sort 𝑛 number of customers is 𝑂(𝑛2 ) and to sort 𝑚 number of providers is 𝑂(𝑚2 ). So, the complexity of the first phase is 𝑂(𝑛2 + 𝑚2 ).

CR IP T

In the second phase, 𝑙 is number of VM types requested by the customers and offered by the providers. So maximum required resources types by all the users are 𝑙 × 𝑛 and maximum offered resources by providers are 𝑙 × 𝑚. Since each VM type is compared with each provider in sorted list one by one until a request is fulfilled, computational complexity of the winner determination problem (i.e. resource allocation) is 𝑂(𝑙 2 𝑛𝑚).

AN US

In the third phase, after running the tasks customers inform about the QoS to the auctioneer. Let q be the maximum quantity required by any type of VM by any customer, maximum possible number of requested VMs by all customers are 𝑞 × 𝑙 × 𝑛. For each VM, there are 𝑧 number of QoS metrics that need to be observed by the Auctioneer for the imposition of penalty. So, the computational complexity of pricing including imposition of penalty is 𝑂(𝑞𝑙𝑛𝑧). Complexity of reputation and fairness calculation is 𝑂(𝑚). So complexity of third phase is 𝑂(𝑞𝑙𝑛𝑧).

M

Though, winner determination problem in combinatorial auction is a NP-hard problem [54], time complexity of FMCDAM in worst case is 𝑂(𝑛2 + 𝑚2 + 𝑙 2 𝑛𝑚 + 𝑞𝑙𝑛𝑧). The dominating factor will decide the complexity. 4. Performance Evaluation of FMCDAM

AC

CE

PT

ED

For the performance study of a model in Cloud computing, a real Cloud environment is required. Creation of a real Cloud environment, for the study of a system in a repeatable and controllable manner with different required configuration, is not only expensive but also tedious and time consuming [55]. Simulation tools dedicated to a Cloud environment are better alternative to evaluate the proposed model in a repeatable and controllable environment without paying much. Auction models are also evaluated based on the auction properties. In section 4.1, FMCDAM is evaluated based on the experiments and in section 4.2, the model is evaluated based on the auction properties.

4.1 Experimental Evaluation of FMCDAM To illustrate the behaviour and to study the performance of FMCDAM, CloudAuction [56] is used for the simulation. CloudAuction, an extension of CloudSim [55], supports auctioning in Cloud by creating an environment of combinatorial double auction for allocation of virtual machines and their pricing. Various relevant attributes are considered to provide an environment close to a real one as per perspective of Cloud providers and Cloud customers. In CloudAuction, virtual machines are represented by CPUs in MIPS, RAM in Mega Bytes

ACCEPTED MANUSCRIPT

CR IP T

(MB), Storage in Mega Bytes (MB) and bandwidth in Bits per second (B/S). Only CPU is considered for the cost of virtual machine on the basis of MIPS. Other properties are only for matching the request. For simulation of FMCDAM, CloudAuction is extended in such a way that extended CloudAuction can handle the multi-attribute auction. Simulation parameters (table 2) and other data, for simulation of FMCDAM, are taken from CDARA [26] as given in annexure A. CDARA is the latest model of combinatorial double auction available in literature, so for the effectiveness of FMCDAM, it is compared with CDARA. Comparison of FMCDAM with CDARA shows that FMCDAM is more effective in handling some serious issues such as QoS inclusion, imposition of penalty when provider cheats etc. in auction which is not in CDARA. Table 2: Simulation Parameters

Description 4 (VM1, VM2, VM3, VM4) [220, 1000] MIPS [256, 512, 1024, 2048]MB [1500, 40000]MB [12, 1000] B/S $[0.012, 0.1046] cost/MI [10, 60] minutes 7 20

M

AN US

Parameters Types of VMs Processor Speed Range Memory Range Storage Range Bandwidth Range Bid Range Time Range Number of Providers Number of Customers (Broker)

AC

CE

PT

ED

Complete behaviour of FMCDAM is observed for four different scenarios. For each scenario, experiment is performed and analysed. This work considers product as an evaluation function for multi-attribute auction [44]. Seven providers are represented as P1, P2, P3, P4, P5, P6 and P7. Twenty brokers are represented as B1, B2, B3,…, B20. VMs are resources so QoS metric defined for VMs must be considered as QoS. But in bid, metrics should be included in the quantified form. Currently, there are many methods [45, 46] to quantify QoS metrics. So, without loss of generality, it is assumed that QoS by the providers are present in the quantified form. For various experiments, range of QoS is taken in [0.8, 1.5] in such a way that the dynamic behaviour and effectiveness of the proposed model can be depicted. Here, utility of a provider is defined as the profit earned i.e. total obtained money by the provider in auction minus bid value of that provider as given in equation (44). 𝑢𝑡𝑖𝑙𝑖𝑡𝑦𝑝 = 𝑜𝑏𝑡𝑎𝑖𝑛𝑒𝑑 𝑚𝑜𝑛𝑒𝑦 − 𝑏𝑖𝑑 𝑣𝑎𝑙𝑢𝑒

(44)

While in case of broker (customer), utility is defined as money that a broker saves i.e. bid value of broker minus paid price for the resources as given in equation (45). 𝑢𝑡𝑖𝑙𝑖𝑡𝑦𝑐 = 𝑏𝑖𝑑 𝑣𝑎𝑙𝑢𝑒 − 𝑝𝑎𝑖𝑑 𝑝𝑟𝑖𝑐𝑒

(45)

Utility of the provider may be negative, because provider offers a bid value i.e. price for the whole bundle while it may be possible that only a subset of bundle gets allocated at the end of the winner determination process. For each to be discussed scenario, utilities of providers and

ACCEPTED MANUSCRIPT brokers are calculated using equation (44) and (45) respectively where bid value of each participant is obtained from the data in annexure A as mentioned before. Results obtained for different scenarios are shown by the utility of winning participants only because losers always get zero utility. Scenario 1: Effect of QoS Inclusion in Provider’s Bid

Providers' utility 0.04

AN US

0.02 0 P1

CR IP T

When providers include QoS in their bids, their priority may change. In CDARA, QoS is not considered i.e. all providers are offering same QoS. To understand the effect of QoS inclusion, it is assumed that QoS provided by P1=1, QoS provided by P2=1.5, QoS provided by P3=1, QoS provided by P4=1, QoS provided by P5=1, QoS provided by P6=0.8, QoS provided by P7=1.2. Result obtained from this experiment is shown in figure 2 and figure 3.

P2

P4

Utility -0.02

P6

P7

FMCDAM CDARA

M

-0.04

P5

-0.06

ED

-0.08

PT

Figure 2: Utility of Providers with QoS Inclusion

Brokers' Utility

CE

0.018 0.016

AC

0.014

Utility

0.012 0.01

FMCDAM

0.008

CDARA

0.006 0.004 0.002 0 B1

B3

B7

B9

B10 B14 B17 B18 B20

Figure 3: Utility of Brokers with QoS Inclusion

ACCEPTED MANUSCRIPT From figure 2, it can be observed that provider P2 does not win in case of CDARA though it provides highest QoS but in case of FMCDAM, P2 wins. Other providers’ and Brokers’ utilities are changed in case of FMCDAM compared to CDARA. It is because FMCDAM considers QoS additionally, for the sorting of the providers and the customers in comparison to CDARA. Thus, it can be concluded that QoS affects the ordering of the participants. Scenario 2: Effect of Penalty Inclusion

AN US

CR IP T

If all the providers offer true QoS in their bids, utility of all the participants with FMCDAM and CDARA is same. So, to compare the FMCDAM with CDARA, it is assumed that value of QoS offered by all the providers is equal to 1. At the end of the service, reported QoS by brokers are generated randomly in the range of [0.8, 1.2]. If randomly generated values of QoS are less than 1, corresponding provider is charged some penalty. Otherwise, provider receives same trade price as in CDARA. Since the Cloud resources are virtual machines, random values of reported QoS is generated for each allocated virtual machines. Data generated, thus, is given in table 3. First column represents winning brokers and second column represents providers offering VMs to a winning broker. Third column represents the calculated trade price in FMCDAM i.e. imposition of penalty on providers who cheat. Fourth column represents the trade price obtained from CDARA i.e. without imposition of penalty. Fifth column represents the delivered QoS of each VM by the provider. Table 3: Description of Resource Allocation and Pricing

B1

P1 P1 P4 P1 P6 P6 P6 P4 P4 P4 P1 P7 P4 P6 P6 P6 P7 P1 P1 P1 P4 P4 P4

CE

B7

PT

B3

AC

B9

B10

B14

Trade Price with penalty 0.0086 0.0085 0.0067 0.0076 0.0073 0.0073 0.0073 0.0089 0.0089 0.0086 0.0075 0.0068 0.0063 0.0080 0.0080 0.0080 0.0077 0.0069 0.0075 0.0073 0.0057 0.0057 0.0054

M

Provider

ED

Broker

Trade Price without penalty 0.0088 0.0088 0.0070 0.0076 0.0073 0.0073 0.0073 0.0089 0.0089 0.0089 0.0075 0.0069 0.0065 0.0080 0.0080 0.0080 0.0077 0.0075 0.0075 0.0075 0.0057 0.0057 0.0057

QoS 0.96 0.91 0.84 1.03 1.01 1.19 1.03 1.06 1.02 0.84 1.17 0.96 0.84 1.08 1.07 1.14 1.03 0.83 1.14 0.94 1.16 1.08 0.83

ACCEPTED MANUSCRIPT P1 P6 P1 P7 P7 P4 P4 P5 P5 P6 P6

B18

B20

0.0084 0.0077 0.0070 0.0065 0.0063 0.0061 0.0060 0.0076 0.0076 0.0077 0.0075

0.0087 0.0083 0.0075 0.0069 0.0069 0.0063 0.0063 0.0076 0.0076 0.0077 0.0077

0.92 0.81 0.85 0.86 0.81 0.87 0.84 1.11 1.06 1.04 0.91

CR IP T

B17

AN US

Entries of the table 3 are explained through an example. Broker B9 gets one virtual machine each from P1 and P7. P1 delivers virtual machine with QoS value of 1.17 and P7 delivers virtual machine with QoS value of 0.96. So, P1 gets no penalty and the trade price is 0.0075 while P7 is charged with penalty and the trade price reduces from 0.0069 to 0.0068. Obtained money of provider and paid price of broker is obtained from table 3 by summing trade price of their corresponding VMs. Utility of the providers and bidders are shown in figures 4 and 5.

Providers' Utility

0.02 0 Utility -0.02

P5

P6

P7

FMCDAM CDARA

PT

-0.04

P4

ED

P1

M

0.04

-0.06

CE

-0.08

AC

Figure 4: Utility of Providers with Imposition of Penalty

ACCEPTED MANUSCRIPT

Brokers' Utility 0.018 0.016 0.014 0.012 Utility

0.01

FMCDAM

0.008

CDARA

0.004 0.002 0 B1

B3

B7

B9

CR IP T

0.006

B10 B14 B17 B18 B20

AN US

Figure 5: Utility of Brokers with Imposition of Penalty

PT

ED

M

From figure 4, it is observed that utility of P5 is same in both FMCDAM and CDARA because delivered QoS by P5 is greater than or equal to the offered QoS. In figure 5, again B3 gets same utility with FMCDAM and CDARA as QoS obtained by B3 from providers P1 and P6 are as per expectation (observed from table 3). Utility of other providers i.e. P1, P4, P6 and P7 is less in FMCDAM as compared to CDARA because they are charged a penalty of not delivering their promised QoS. Except B3, utility of all winning brokers improves in FMCDAM in comparison to CDARA. It is because they did not get promised QoS and in lieu, are compensated with reduced trade price. This proves that a provider gets penalty in case if it offers high false QoS value to win the auction and affected brokers get compensation.

Scenario 3: Effect of Reputation

AC

CE

Effect of reputation can be observed in different rounds of auction. If simulation parameters are changed in every round of auction, it wouldn’t be effective. For example, suppose a provider has provided a false high QoS value in its bid, its reputation is decreased. But, if in next round of auction it provides resources with lowest price and with highest true QoS value, it seems logical if its wins again. A scenario has been conceived in such a way that it must reflect the effect of reputation. It is assumed that true value of QoS for each provider is equal to 1. Firstly, result is obtained from true QoS value in which each provider offers their true QoS value i.e. 1. This auction round is represented as round 0. Then it is assumed that P4 and P6 offered QoS values equal to 1.2 and 1.3 respectively in their bids to win the auction while both could ultimately provide QoS equal to 1. Since P4 and P6 offered false high QoS value to win the auction, their reputation is reduced in upcoming auction i.e. next rounds. To simulate this scenario, values of parameters 𝐴 and 𝐿 are taken as 2 and 6 respectively.

ACCEPTED MANUSCRIPT In first round of auction (round 1) each provider has the same reputation, but P4 and P5 provided false QoS. So, they are likely to get penalty. To understand the effect of reputation, auctions are held in many rounds and same simulation parameters are used in each round except the reputation. It is assumed that P4 and P5 provide true QoS value i.e. 1 in all upcoming auction rounds. Auction is performed in many rounds until obtained result is same as the first one. Obtained results from different rounds are shown in figure 6.

Providers' Utility in different round of auction

CR IP T

0.04 0.02 0

Round 0 Round1 Round2 Round3 Round4 Round5 Round6 Round7 Round8 Utility -0.02

AN US

-0.04 -0.06 -0.08

P1 P4 P5 P6 P7

Auction round

M

Figure 6: Utility of Providers in Different Round of Auction

CE

PT

ED

From figure 6, it is observed that P4 gets negative utility in round 2. After round 2, P4 gets same utility as in round 0. Reason for this is less false QoS value it provides as compared to P6 and with same reputation P4 has lowest bid density i.e. P4 offers the resources with minimum price over the QoS in comparison to other providers. P6 gets negative utility in round 2 to 7. In round 8, P4 gets same utility as in round 0. Other providers’ utility changed in different rounds of auction because resources are allocated in each round as per the obtained sorted list in each round. This experiment concludes that if a provider cheats in the current auction, the provider gets penalty in current auction and reputation of that provider is reduced affecting its participation in future auctions. Scenario 4: Effect of Fairness

AC

Fairness is included in the proposed model to reduce the bidder drop problem. To show the effects of fairness, same simulation parameters (as in scenario 2) are used in each auction round except fairness just like scenario 3. It is assumed that all the providers offer the same QoS and their reputations are same. Auctions are performed in 100 rounds. Quality of bids of winning bidders are very high in comparison to losers for considered data so value of 𝑝𝑟𝑜𝑏 is considered as 1 to give more chances to the losers. The results are shown in figures 7 and 8.

ACCEPTED MANUSCRIPT

Number of Auctions Won by Providers 120 100 80 60

Number of Won Auction

20 0 P1

P2

P3

P4

P5

P6

P7

CR IP T

40

AN US

Figure 7: Number of Auctions Won by Providers in 100 Rounds

Number of Auctions Won by Brokers 120 100

M

80 60

ED

40

CE

B1 B2 B3 B4 B5 B6 B7 B8 B9 B10 B11 B12 B13 B14 B15 B16 B17 B18 B19 B20

PT

20 0

Number of Won Auction

Figure 8: Number of Auctions Won by Brokers in 100 Rounds

AC

From figures 4 and 5, it is clear that in first round of auction, P1, P4, P5, P6 and P7 are the winning providers whereas B1, B3, B7, B9, B10, B14, B17, B18 and B20 are winning brokers. From figures 7 and 8, it is observed that when same auction is repeated 100 times with consideration of fairness, P2, P3, B12, B13 and B16 also wins while those participants who won in first round also wins in all rounds. Other participants B4, B5, B6, B8, B11, B15 and B19 do not win even a single time because their QoS of offered bids are very low in comparison to others. From this experiment, it can be concluded that inclusion of fairness reduces the bidder drop problem and very low quality bidder does not win the auction. 4.2 Evaluation of FMCDAM based on Auction Properties

ACCEPTED MANUSCRIPT An auction model can be evaluated based on various properties. The proposed model has been evaluated based on various auction properties as follows. Bidders’ Optimality

CR IP T

In uni-attribute one sided auction, seller’s expected utility is defined as revenue maximization [57]. In other words, seller gets maximum revenue when it avails best available price in the market for its resource. In case of multi-attribute oauction, it is not justified to define seller’s utility on the basis of price only. Since, this work considers multi-attribute double auction and both Cloud provider and Cloud customers are bidders, a new term Bidders’ Optimality is coined which is an extension of seller’s expected utility from uni-attribute one sided auction. Bidders’ Optimality is defined as multi-attribute double auction when pricing method of auction gives best available price in the market as output considering the importance of various attributes involved in the auction.

M

AN US

In this work, attributes such as QoS by the provider, priority of bidders, reputation etc. are considered. Bids provided by the providers are sorted in ascending order and bids provided by the customers are sorted in descending order on the basis of bid density. In this work, bids are sorted on the basis of price and various other attributes and then first bid from both the lists (providers and customers) are selected i.e. best quoted price for customer and best offered price for provider. Final trade price is fixed as the average of both the prices. Definitely, this would be the best available price in the market that both customer and provider will accept. Therefore, proposed auction mechanism is bidders’ optimal. Non-dominance

ED

Uni-attribute auction is efficient when only winning bidder has best bid to offer [58]. This property of auction is named as non-dominance in multi-attribute auction [58]. A multiattribute auction is non-dominant when only winning bidder has non-dominated bid.

CE

PT

In the proposed model, an effective function 𝑒𝑓 is considered for the valuation of the bids. 𝑒𝑓 is a real-valued monotonic function. Monotonicity of 𝑒𝑓 ensures that proposed model is nondominant [58].

AC

Individual Rationality An auction is individual rational, when participant obtains zero or positive utility with participation in auction and obtains no negative utility without participation in auction. The proposed model is not individual rational, because initially bundle of VMs are offered by the provider and the provider is asked for the estimated price of the whole bundle in its bid. But auction process may allocate only some resources to the customers. So, it may be possible that provider allocates only some resources to its customers in bundle and get price for only those resources. This obtained price may be less than quoted price of the bundle. Utility is computed as difference of obtained price and quoted price, which may be negative.

ACCEPTED MANUSCRIPT Though, when utility is calculated on the basis of average price as given in equation (18), FMCDAM will be individual rational. Budget Balance An auction is budget balance, if sum of money transfer of all the participants is equal to zero. Since, in the proposed work, provider receives all the money paid by the customer, proposed model ensures budget balance property.

CR IP T

Robustness According to [59], a combinatorial auction is robust if it has a repair solution with a bounded loss in revenue when bid-withdrawn problem occurs. Bid-withdrawn may occur because of QoS agreement failure, overdue of payment etc.

Incentive Compatibility

M

AN US

The proposed model resolves the issue of QoS agreement failure. If provider does not provide delivered QoS in comparison to a specified QoS in the bid, a penalty is imposed on the provider which reduces the utility loss of customer (as described in section 3.3). So FMCDAM has a repair solution in case QoS agreement fails. To resolve the problem of overdue of payment, auctioneer can introduce a new attribute in the extension of bids (just like reputation as discussed in 3.4.2) that takes care of those customers who does not pay on time. As FMCDAM is equipped with a repair solution because of its ability to resolve Bidwithdrawn related issues like QoS agreement failure and overdue of payment, the proposed model ensures the robustness.

PT

ED

An auction mechanism ensures incentive compatibility when no participants get higher utility by untruthful bidding than truthful bidding. To decide whether the proposed model is incentive compatible or not, all possible cases, as below, are analysed. 1. If provider offers high QoS in comparison to its real QoS to win the auction

CE

In this case, provider may win the auction but imposition of penalty by the auctioneer will reduce the paid price by the customer which in turn reduces the utility of the provider leading to even negative utility. It also affects the reputation of the provider in the market.

AC

2. If provider offers less QoS in comparison to its real QoS It reduces the value of the bid of the provider i.e. reduces the chances of winning the auction and obtained utility may be reduced to zero. 3. If provider’s quoted price is less than true price It increases the chances of auction winning for the provider and provider may get a chance to trade with higher bid customer. But this case may force the provider to provide resources at the cost lesser than the true cost of the resources which may cause obtaining negative utility by the provider.

ACCEPTED MANUSCRIPT 4. If provider’s quoted price is greater than true price It decreases the chances of winning the auction for the provider and provider may lose the auction i.e. provider obtains zero utility. If provider wins, it trades with low bid customer with an exception i.e. if provider’s quoted price is greater than the true price but less than second best quoted price in auction, provider 𝑗

5. If customer’s offered price is less than true price

CR IP T

may get a chance to increase final trade price i.e. 𝑓𝑡𝑝𝑖 as in equation (19) which in turn increases the utility of the provider.

It decreases the chances of winning the auction for the customer and customer may lose the auction i.e. customer obtains zero utility. If customer wins the auction, it trades with higher bid provider with an exception i.e. if customer’s offered price is less than true price but greater than second best offered price in 𝑗

AN US

auction, the customer may get a chance to decrease final trade price i.e. 𝑓𝑡𝑝𝑖 from equation (19) which in turn increases the utility of the customer. 6. If customer’s offered price is greater than true price

M

It increases the chances of winning the auction for the customer and customer may get a chance to trade with the low bid provider. But this may force the customer to get the resources at the cost higher than the true cost evaluated by the customer for the resources which may result in negative utility by the customer.

CE

PT

ED

From the above discussion, it can be concluded that bidders may get better utility by the untruthful bidding as in case 4 and 5. Thus, the proposed model is not incentive compatible. This model is bidder’s optimal as an auction mechanism cannot be incentive compatible and bidder’s optimal both [57] at the same time. The proposed model encourage bidders to bid truthfully as it is a sealed bid auction and truthful bidding never decreases the chances to win the auction.

AC

Egalitarian Social welfare Social welfare can be used as a measure to evaluate the quality of the resource allocation. Social welfare can be observed at different point of view [14]: Utilitarian social welfare maximizes the sum of utility of all bidders and Egalitarian social welfare maximizes welfare of the individual bidder. In other words, utilitarian social welfare maximizes the revenue of bidders without bothering for the difference created among the bidders, while egalitarian social welfare reduces the differences among the bidders (rich bidder and poor bidder). The proposed model maximizes the utility of the bidders by considering the fairness aspect among the bidders thus ensures egalitarian social welfare property.

ACCEPTED MANUSCRIPT 4.2.1 Comparative Study Based on Auction Properties Based on the properties, discussed above, the proposed model has been compared with some existing works.

CR IP T

Though, all the properties are discussed before some properties which require more clarification for better understanding of comparison are as follows. Incentive Compatible (IC) is observed on the basis of sufficient conditions such as Exactness, Monotonicity, Critical and Participation for truthfulness as discussed in [43]. For observing Individual Rationality (IR), utility is considered as defined in equations (44) and (45). In case of multi-attribute auction, efficient property is considered as non-dominance. Comparative study is given in table 4. Table 4: Comparison of Auction Models

Auction Properties CA MA DS IC BO E IR BB R ESW           [20]           [21]          [22]        [23]           [24]           [25]           [26]           [28]           FMCDAM Combinatorial Auction (CA), Multi-Attribute (MA), Double sided (DS), Incentive Compatible (IC), Bidder’s Optimality (BO), Efficient (E), Individual Rationality (IR), Budget Balance (BB), Robustness (R), Egalitarian Social Welfare (ESW).

ED

M

AN US

Model/Reference

5 Discussion and Conclusion

CE

PT

In this work, a Fair Multi-attribute Combinatorial Double Auction Model named as FMCDAM is proposed for the allocation of the resources and their pricing in Cloud computing. Related works are explained and also compared with the proposed FMCDAM in section 4.2.1 in table 4 on the basis of various auction properties. Novelties and technical contributions of FMCDAM are as follows which differentiate it from other related works.

AC

 This work considers multi-attribute in auction for winner determination.  This work imposes penalty on the provider which offers false QoS assurance in order to win the auction and at the same time offers compensation to the affected customers adding robustness in auction.  This work considers reputation of provider in winner determination to prevent the cheating by the provider in form of false QoS assurance.  This work also implements fairness in auctioning to reduce the dissatisfaction of bidders. In auction, there is no guarantee that customer gets the resources. Besides uncertainty in fetching the resource, another problem with spot market is abrupt termination of instances

ACCEPTED MANUSCRIPT

CR IP T

because of out-of-bid condition. So, spot instances are well suited only for those applications that have flexible start and stop times such as data analysis, batch jobs, background processing, and optional tasks etc. [9]. Application without having flexible start and stop time require some fault-tolerant schemes. Some works [15-17] suggest check-pointing as faulttolerant mechanism, however check-pointing is a high computational task and frequency of check-pointing and storage for check-pointing are themselves an overhead [15]. In the proposed model, customers also include the time period in their bids for which customers need bundle. For the same time period, there is no interruption (assuming that there is no hardware failure) i.e. no fault-tolerant mechanism required. So, the proposed model supports all the applications supported by the Spot market including those applications (without having flexible start and stop times and without having fault-tolerant mechanisms) which may wait for some time for the resource but once they get the resources there will be no stopping e.g. multi-tier web applications, multi-threaded applications, workflow applications, map-reduce applications etc.

PT

ED

M

AN US

Though, Cloud has emerged mostly as a business model, accounting of only price in auction for allocation of resource is not justified. The expected QoS by the customers cannot be ignored. The proposed FMCDAM considers several attributes in the winner determination and the pricing of the resources. Penalty is imposed on such providers who furnish false QoS assurance in order to win the auction. In turn, victims also get a compensation for not getting the desired QoS. This makes the system robust. Fairness and reputation attributes are defined on the basis of history of the bidders. Fairness reduces the bidder drop problem and reputation prevents the system from false QoS assurance by the providers. The proposed model ensures auction properties like bidders’ optimality, non-dominance, robustness, egalitarian social welfare etc. The performance of the proposed model is evaluated by simulation. It has also been compared with some recent available auction model in Cloud computing. Simulation shows that in case of jeopardized QoS, FMCDAM performs very well in comparison to other models. The experiments justify the features incorporated in FMCDAM and its possible implementation in Cloud resource provisioning. Consideration of multi-attribute encourages the researchers to focus on area of multi-attribute auction.

AC

CE

Though the proposed model considers several metric, it is not exhaustive. Most of the models, including the proposed one, make the quantity and quality of the resources static. Future work would identify some more metrics and extend the proposed model to allow configurable offers. References [1]

P. Mell, T. Grance, The NIST definition of cloud computing. National Institute of Standards and Technology, 53(6) (2009): 50.

[2]

A. AuYoung, B. Chun, A. Snoeren, A. Vahdat, Resource allocation in federated distributed computing infrastructures, In Proceedings of the 1st Workshop on Operating System and Architectural Support for the On-demand IT InfraStructure (Vol. 9) (2004, October).

ACCEPTED MANUSCRIPT D. O. Stahl, A. B. Whinston, A general economic equilibrium model of distributed computing, In New directions in computational economics Springer Netherlands (1994) 175-189.

[4]

R. Buyya, Economic-based distributed resource management and scheduling for grid computing, arXiv preprint cs/0204048 (2002).

[5]

R. Buyya, D. Abramson, J. Giddy, H. Stockinger, Economic models for resource management and scheduling in grid computing, Concurrency and computation: practice and experience, 14(13‐15) (2002) 1507-1542.

[6]

K. L. Mills, C. Dabrowski, Can economics-based resource allocation prove effective in a computation marketplace?, Journal of Grid Computing, 6(3) (2008) 291-311.

[7]

B. Xu, C. Zhao, E. Hu, B. Hu, Job scheduling algorithm based on Berger model in cloud environment, Advances in Engineering Software, 42(7) (2011) 419-425. Job scheduling algorithm based on Berger model in Cloud environment

[8]

R. Buyya, C. S. Yeo, S. Venugopal, J. Broberg, I. Brandic, Cloud computing and emerging IT platforms: Vision, hype, and reality for delivering computing as the 5th utility, Future Generation computer systems, 25(6) (2009) 599-616.

[9]

http://aws.amazon.com/ec2/purchasing-options/spot-instances/

[10]

T. A. Suter, D. M. Hardesty, Maximizing earnings and price fairness perceptions in online consumer-to-consumer auctions, Journal of Retailing, 81(4) (2005) 307-317.

[11]

J. Murillo, V. Muñoz, B. López, B., D. Busquets, A fair mechanism for recurrent multi-unit auctions, In Multiagent System Technologies Springer Berlin Heidelberg, (2008) 147-158.

[12]

J. S. Lee, B. K. Szymanski, Auctions as a dynamic pricing mechanism for e-services, In Service Enterprise Integration Springer US, (2007) 131-156.

[13]

J. Murillo, B. López, V. Muñoz, D. Busquets, Fairness in recurrent auctions with competing markets and supply fluctuations, Computational Intelligence, 28(1) (2012) 24-50.

AC

CE

PT

ED

M

AN US

CR IP T

[3]

[14]

Y. Chevaleyre, P. E. Dunne, U. Endriss, J. Lang, M. Lemaitre, N. Maudet, N., ... P. Sousa, Issues in multiagent resource allocation, Informatica (Slovenia), 30(1) (2006) 3-31.

[15]

S. Yi, A. Andrzejak, D. Kondo, Monetary cost-aware checkpointing and migration on Amazon cloud spot instances, IEEE Transactions on Services Computing, 5(4) (2012) 512-524.

ACCEPTED MANUSCRIPT D. Jung, S. Chin, K. Chung, H. Yu, J. Gil, An efficient checkpointing scheme using price history of spot instances in cloud computing environment, In Network and Parallel Computing (2011) 185-200, Springer Berlin Heidelberg.

[17]

S. Yi, D. Kondo, A. Andrzejak, Reducing costs of spot instances via checkpointing in the amazon elastic compute cloud, In Cloud Computing (CLOUD), 2010 IEEE 3rd International Conference on, IEEE, (2010, July) 236-243.

[18]

A. S. Alrawahi, K. Lee, Multi-attribute combinatorial marketplaces for cloud resource trading, In Cloud and Green Computing (CGC), 2012 Second International Conference on, IEEE, (2012, November) 81-88.

[19]

S. Shang, J. Jiang, Y. Wu, Z. Huang, G. Yang, W. Zheng, DABGPM: A double auction Bayesian game-based pricing model in cloud market, In Network and Parallel Computing Springer Berlin Heidelberg, (2010) 155-164).

[20]

W. Y. Lin, G. Y. Lin, H. Y. Wei, Dynamic auction mechanism for cloud resource allocation, In Cluster, Cloud and Grid Computing (CCGrid), 2010 10th IEEE/ACM International Conference on, IEEE, (2010, May) 591-592.

[21]

S. Zaman, D. Grosu, Combinatorial auction-based allocation of virtual machine instances in clouds, Journal of Parallel and Distributed Computing, 73(4) (2013) 495508.

[22]

X. Wang, J. Sun, M. Huang, C. Wu, X. Wang, A resource auction based allocation mechanism in the cloud computing environment, In Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), 2012 IEEE 26th International, IEEE, (2012, May) 2111-2115.

[23]

W. Xing-Wei, W. Xue-yi, H. Min, A resource allocation method based on the limited English combinatorial auction under cloud computing environment. In Fuzzy Systems and Knowledge Discovery (FSKD), 2012 9th International Conference on, IEEE, (2012, May) 905-909.

[24]

B. Song, M. M. Hassan, E. N. Huh, A novel cloud market infrastructure for trading service, In Computational Science and Its Applications, 2009, ICCSA'09, International Conference on, IEEE, (2009, June) 44-50.

AC

CE

PT

ED

M

AN US

CR IP T

[16]

[25]

S. Shang, J. Jiang, Y. Wu, G. Yang, W. Zheng, A knowledge-based continuous double auction model for cloud market, In Semantics Knowledge and Grid (SKG), 2010 Sixth International Conference on, IEEE, (2010, November) 129-134.

[26]

P. Samimi, Y. Teimouri, M. Mukhtar, A combinatorial double auction resource allocation model in cloud computing, Information Sciences (2014).

[27]

L. Li, Y. A. LIU, K. M. LIU, Y. A. N. G. Ming, Pricing in combinatorial double auction-based grid allocation model, The Journal of China Universities of Posts and Telecommunications, 16(3), (2009) 59-65.

ACCEPTED MANUSCRIPT J. Sun, X. Wang, M. Huang, C. Gao, A Cloud Resource Allocation Scheme Based on Microeconomics and Wind Driven Optimization, In ChinaGrid Annual Conference (ChinaGrid), 2013 8th, IEEE, (2013, August) 34-39.

[29]

A. Pla, B. López, J. Murillo, Multi-dimensional fairness for auction-based resource allocation, Knowledge-Based Systems, 73 (2015) 134-148.

[30]

T. Hobfeld, R. Schatz, M. Varela, C. Timmerer, Challenges of QoE management for cloud applications. Communications Magazine, IEEE, 50(4) (2012) 28-36.

[31]

A. Abdelmaboud, D. N. Jawawi, I. Ghani, A. Elsafi, B. Kitchenham, Quality of service approaches in cloud computing: A systematic mapping study, Journal of Systems and Software, 101 (2015) 159-179.

[32]

P. Cramton, Y. Shoham, R. Steinberg, Combinatorial Auctions, The MIT Press, 2005.

[33]

A. Reyes-Moro, J. A. Rodríguez-Aguilar, iAuctionMaker: A decision support tool for mixed bundling, In Agent-Mediated Electronic Commerce VI. Theories for and Engineering of Distributed Mechanisms and Systems, Springer Berlin Heidelberg, (2005) 202-214.

[34]

A. Giovannucci, J. A. Rodríguez-Aguilar, J. Cerquides, A. Reyes, F. X. Noria, iBundler: An agent-based decision support service for combinatorial negotiations. In AAAI (2004, July) 1012-1013.

[35]

Y. Engel, M. P. Wellman, K. M. Lochner, Bid expressiveness and clearing algorithms in multiattribute double auctions, In Proceedings of the 7th ACM conference on Electronic commerce, ACM, (2006) 110-119.

[36]

E. Fink, J. Johnson, J. Hu, Exchange market for complex goods: Theory and experiments, Netnomics, 6(1) (2004) 21-42.

[37]

J. Gong, Exchanges for complex commodities: Search for optimal matches. M.S. dissertation. University of South Florida, (2002).

[38]

B. Stiller, D. Hausheer, Design of Economic Grid Traffic Management and Security Mechanisms, Rn, 1, 2008, R1.

AC

CE

PT

ED

M

AN US

CR IP T

[28]

[39]

R. A. Bourne, R. Zaidi, A quote-driven automated market, In Proc. AISB Symposium on Information Agents for E-Commerce, AISB, (2001).

[40]

S. K. Garg, C. Vecchiola, R. Buyya, Mandi: a market exchange for trading utility and cloud computing services, Journal of Supercomputing, 64(3) (2011) 1153–1174.

[41]

J. Altmann, C. Courcoubetis, G. D. Stamoulis, M. Dramitinos, T. Rayna, M. Risch, C. Bannink, GridEcon: A market place for computing resources, In Grid Economics and Business Models, Springer Berlin Heidelberg, (2008) 185-196.

ACCEPTED MANUSCRIPT D. Neumann, J. Stoesser, A. Anandasivam, N. Borissov, SORMA–building an open grid market for grid resource allocation, In Grid Economics and Business Models, Springer Berlin Heidelberg, (2007) 194-200.

[43]

D. Lehmann, L.I. Oćallaghan, Y. Shoham, Truth revelation in approximately efficient combinatorial auctions, Journal of the ACM (JACM), 49(5) (2002) 577-602.

[44]

A. Pla, B. Lopez, J. Murillo, Multi criteria operators for multi-attribute auctions, In Modeling Decisions for Artificial Intelligence, Springer Berlin Heidelberg (2012) 318-328.

[45]

S. K. Garg, S. Versteeg, R. Buyya, A framework for ranking of cloud computing services, Future Generation Computer Systems, 29(4) (2013) 1012-1023.

[46]

G. Baranwal, D. P. Vidyarthi, A framework for selection of best cloud service provider using ranked voting method, In Advance Computing Conference (IACC), 2014 IEEE International, IEEE, (2014, February) 831-837.

[47]

S. Pearson, A. Benameur, Privacy, security and trust issues arising from cloud computing, In Cloud Computing Technology and Science (CloudCom), 2010 IEEE Second International Conference on, IEEE, (2010, November) 693-702.

[48]

K. Popovic, Z. Hocenski, Cloud computing security issues and challenges, In MIPRO, 2010 proceedings of the 33rd international convention, IEEE, (2010, May) 344-349.

[49]

M. Alhamad, T. Dillon, E. Chang, Sla-based trust model for cloud computing, In Network-Based Information Systems (NBiS), 2010 13th International Conference on, IEEE, (2010, September) 321-324.

[50]

F. G. Mármol, M. Q. Kuhnen, Reputation‐based Web service orchestration in cloud computing: A survey, Concurrency and Computation: Practice and Experience, (2013).

[51]

J. S. Lee, B. K. Szymanski, A novel auction mechanism for selling time-sensitive eservices, In E-Commerce Technology, 2005, CEC 2005, Seventh IEEE International Conference on, IEEE, (2005, July) 75-82.

[52]

J. Murillo, V. Muñoz, D. Busquets, B. López, Schedule coordination through egalitarian recurrent multi-unit combinatorial auctions, Applied Intelligence, 34(1) (2011) 47-63.

[53]

T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein, Introduction to algorithms, 2 (2001), Cambridge: MIT press.

[54]

T. Sandholm, Algorithm for optimal winner determination in combinatorial auctions, Artificial Intelligence 135 (1) (2002) 1–54.

AC

CE

PT

ED

M

AN US

CR IP T

[42]

ACCEPTED MANUSCRIPT R. N. Calheiros, R. Ranjan, A. Beloglazov, C. A. De Rose, R. Buyya, CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms, Software: Practice and Experience 41(1) (2011) 23-50.

[56]

CloudAuction, http://www.cloudbus.org/cloudsim/

[57]

A. Likhodedov, T. Sandholm, Auction mechanism for optimally trading off revenue and efficiency, In Proceedings of the 4th ACM conference on Electronic commerce, ACM, (2003, June) 212-213.

[58]

M. J. Bellosta, S. Kornman, D. Vanderpooten, Preference-based english reverse auctions, Artificial Intelligence, 175(7) (2011) 1449-1467.

[59]

A. Holland, B. O'Sullivan, Robust solutions for combinatorial auctions, In Proceedings of the 6th ACM conference on Electronic commerce, ACM, (2005, June) 183-192.

AN US

CR IP T

[55]

M

Gaurav Baranwal is PhD student in Computer Science at the School of Computer and Systems Sciences, Jawaharlal Nehru University, New Delhi, India. His research interests include resource provisioning and service coordination in cloud computing.

AC

CE

PT

ED

Deo Prakash Vidyarthi is Professor in the School of Computer & Systems Sciences, Jawaharlal Nehru University, New Delhi. He was lecturer with the Department of Computer Science of Banaras Hindu University, Varanasi for more than 12 years and joined JNU in the year 2004 as Associate Professor. Dr. Vidyarthi has published around 55 research papers in various peer reviewed International Journals and Transactions (including IEEE, Elsevier, Springer, Wiley, World Scientific etc.) and around 35 research papers in proceedings of various peer-reviewed conferences in India and abroad. Dr. Vidyarthi has two books (research monograph) to his credit. One entitled “Technologies and Protocols for the Future Internet Design: Reinventing the Web” published by IGI-Global (USA) released in Feb. 2012, and another entitled “Scheduling in Distributed Computing Systems: Design, Analysis and Models” published by Springer, USA released in 2009. He also has contributed chapters in many edited books. He is in the editorial board and in the reviewer’s panel of many International Journals. Dr. Vidyarthi is the member of the IEEE, Senior member of the International Association of Computer Science and Information Technology (IACSIT), Singapore, International Society of Research in Science and Technology (ISRST), USA and International Association of Engineers. Research interest includes Parallel and Distributed System, Grid and Cloud Computing, Mobile Computing and Evolutionary Computing.

ACCEPTED MANUSCRIPT

Appendix A Table 1: The requested items of each user/broker

B5

B6

B7

B8

B9

B10

B11

AC

B12

B13

B14

B15

B16

B17

capacity

VM3 Quantity

capacity

3

1

2

1

1

400 512 3000 120 1000 2048 9000 250 400 512 10000 450 1000 1024 30000 500

2

1

2

1

2

400 1024 15000 350 900 512 3500 400 500 1024 4000 500 500 256 1500 250 400 512 3000 140 400 512 3600 256 390 512 9000 350 500 512 9000 350 400 512 9000 350 390 512 9000

3

2

1

1

1

1

1

500 1024 15000 500

1

1000 512 3000 400

1

1

4

3

3

2

1

1000 512 3000 450 1000 2048 7500 500 500 256 1500 300 1000 512 3800 450 500 256 1900 280 1000 256 1900 280 500 256 1900 280

Time(minute)

0.0308

53

20

0.0318

42

0.0134

18

0.0263

27

0.01288

10

0.0422

60

0.0224

23

0.0155

25

1

0.0471

50

2

0.0359

28

0.0359

37

1

0.0443

45

2

0.0461

48

1

0.0338

30

2

0.0357

40

0.0201

39

1

1

1000 2048 30000 8500

1

2

1

2

Bid (Cost/MI)$

0.015

1

3

1

500 1024 15000 500

VM4 Quantity

CR IP T

VM2 Quantity 1

AN US

B4

capacity 500 256 1500 250

M

B3

VM1 Quantity 2

ED

B2

CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage

capacity 250 256 10000 400 500 512 4000 300 240 256 1700 130 500 512 6500 200 250 512 2500 150 330 512 7000 200 220 256 2000 100 250 256 1800 120 240 256 1700 100 230 256 5000 300 350 512 7000 250 300 512 4000 180 240 256 1800 100 300 256 1800 100 400 256 1800 100 300 256 1800 100 300 256 1800

PT

B1

VM

CE

Broker

1

1000 512 3500 400

1

ACCEPTED MANUSCRIPT

B19

B20

BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW

100 300 256 1800 100 300 256 1800 100 300 256 1800 100

350 390 512 9000 350 390 512 9000 350 390 512 9000 350

1

1

1

1

500 256 1900 280

1

3

4

500 256 1900 280

1

0.0233

33

0.0169

15

0.0533

55

CR IP T

B18

Table 2: The offered items of each cloud provider

d3

d4

d5

d6

3

6

5

2

2

2

AC

CE

PT

d7

VM1 Quantity 5

capacity 400 512 10000 400 350 512 8000 250 400 512 4000 150 1000 512 4000 500 400 512 4000 300 400 512 4000 300 400 512 4000 300

VM2 Quantity 3

capacity 500 1024 20000 600 400 1024 16000 400 500 1024 7000 200 1

VM3 Quantity 3

capacity 1000 2048 40000 1000 1

AN US

d2

CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW CPU Memory Storage BW

capacity 250 256 10000 400 300 512 4000 200 250 256 2000 100 500 256 2000 300 250 256 2000 150 300 256 2000 150 250 256 2000 150

5

3

5

4

M

d1

VM

ED

Cloud provider

2

3

500 1024 5000 500 500 1024 5000 500 500 1024 5000 500

2

2

0

4

3

4

VM4 Quantity 3

Bid (Cost/MI)$ 0.1035

0

0.0798

1000 2048 10000 300 1

1

0.1046

0

0.0375

1000 2048 10000 600 1000 2048 10000 600

2

0.0760

2

0.0601

0.0548