Paper Menu >>
Journal Menu >>
J. Service Science & Management, 2010, 3, 345-351 doi:10.4236/jssm.2010.33040 Published Online September 2010 (http://www.SciRP.org/journal/jssm) Copyright © 2010 SciRes. JSSM 345 Pricing Services in a Grid of Computers Using Priority Segmentation Emmanuel Fragnière1, Francesco Moresino2 1School of Management of the University of Bath; 2Haute École de Gestion de Genève. Email: francesco.moresino@hesge.ch Received May 27th, 2010; revised July 1st, 2010; accepted August 6th, 2010. ABSTRACT In the past decade many grids of computers have been built among non-profit institutions. These grids are built on a voluntary participation and the resources are not charged to the users. When a resource is given free of charge its al- location is in general not optimal. In this paper, we propose an original mechanism that allows an optimal resource allocation without cash exchanges. We develop a pricing scheme where the service is segmented according to the prior- ity level. The optimal prices of the different services are obtained by solving a Markov Decision Process (MDP). Each participant receives a credit that is proportional to its contribution that enables him to have access to services offered by the grid. Keywords: Service Pricing, Grid Economy 1. Introduction Grid computing has become increasingly important in recent years with ever increasing demand of computing and storage resources [1]. Sharing, selection and collection of geographically distributed resources such as super computers, storage systems, data resources and specialized devices are made possible by grid network for solving large-scale re- source-intensive problems in science, engineering and commerce. Organizations that are looking for extremely high computing power for short periods of time, but which do not necessarily want to invest further in their own computing resources are finding grid computing as an attractive alternative. Several large firms such as IBM, Unilever, Ericsson and Hitachi are investing large sums of money in developing grid computing initiatives [2]. The idea of creating a grid to share resources which seems to be very intuitive now was originally borrowed from electrical power grid. In the mid-1990 scientists began to explore the design and development of an infra- structure which was analogous to electric grid due to its pervasiveness, ease of use and reliability [3]. The moti- vation for computational grids was initially driven by large scale, resource-intensive (computational and data) scientific applications that require more power than a single computer (PC, workstation, supercomputer, or clu- ster) [1]. In most grid projects, the connected PCs are generally made available at no cost. Indeed it serves the needs of research projects requiring huge computing power. However, economic theory tells us that if prices are set in a fair manner between the provider and the user of the service, this should lead to an optimal allocation of re- sources. For users, the value of a grid is higher than its accounting value. Indeed, the grid offers more than soft- ware and hardware: it offers a service. In practice, the pricing of services is mainly based on the cost structure, which does not take into account the real value provided to the client. In this paper, we propose an original mechanism that provides an optimal resource allocation without involv- ing cash exchanges. We propose a pricing scheme where the service is segmented according to the notion of prior- ity level. The optimal prices of the different services are obtained by solving a Markov Decision Process (MDP). Each participant receives a credit that is proportional to its contribution that enables her/him to have access to services proposed by the grid. This paper is organized as follows. In Section 2, we present the particular nature of grid pricing services. In Section 3, we explain notions of market based resources in the context of shared grid computing. In Section 4, we present the pricing model using priority segmentation. In Pricing Services in a Grid of Computers Using Priority Segmentation 346 Section 5, we illustrate our model with a simple instance and present numerical results. Finally, in Section 6, we indicate further research directions. 2. Service Proposal and Pricing for Grid Users What could be done for pricing grid services? Most of the pricing techniques applied to the service sector are devoted to service commodities like airplane seats or hotel rooms. Service activities are traditionally described with the help of the IHIP paradigm (intangibility, het- erogeneity, instantaneity and perishability). Intangibility and heterogeneity make the pricing scheme not easy to model services. The pricing of a service relies upon three pillars: internal organizational costs, the competitors’ pri- ces and the perceived value by the customers. In this re- search, we focus our attention on the latter, i.e. the value perceived by the customers in the service experience. As a matter of fact the question of pricing is essential to analyzing the system of service production. Pricing directly impacts how the service is positioned, and influ- ences equally how clients and coproducers will interact. The paradigm of the price/quantity economic model can not be fully realized in the service world, however. Quan- tity is replaced by the idea of value perception, which naturally impacts the conventional production model. Grid services fall in the category of knowledge based services. Consequently, a service plan based on know- how and expertise depends on the following: a thorough and clear understanding of the needs and expectations of clients, the ability to elaborate a diagnosis of client needs from limited information, the outline of a specific service proposal, the efficient use of delivery processes and of existing products (or product modules), and finally a custom-made solution that incorporates perceived value- added (often referred to as problem resolution). Very often, delivering more value in the knowledge- based services means delivering more tangibility and more customization. Customization has been defined as the ability of the service delivery system and its employ- ees to attend flexibly to customer needs [4]. Customiza- tion may also induce more risky operations as services would become inherently variable in how they are con- ducted, and according to [5], it is to be expected that problems will occur. Therefore, how to make attractive and price service operations that increase tangibility and customization for the customer while reducing (or main- taining) the complexity of managing real heterogeneity? In recent research, we are exploring the potential pric- ing schemes that could be established and the relevant criteria that should be used to determine a fair price in the context of grid services taking into account the point of views of providers and consumers of knowledge-based services. To answer to this question, we must develop a grid service model based on the main attributes (also called salient attributes of the service in the share of choice model terminology [6]) as perceived by the user. In our case, we could retained several attributes such as the capacity made available to the user (three formats - small, medium and large), the proper priority manage- ment of jobs executed (the objective that is to be retained in the model presented hereafter), or reporting relevant information to the users. In this paper we will assume that priority management is a salient attribute of grid services, which is perceived as important in terms of value. However it is clear that in a subsequent research, we need to investigate through survey techniques what represent the most important salient attributes for grid users. In this project, we intend to develop a pricing scheme based on the perceived value by the user of an actual grid application. This contribution is based on interdiscipli- nary research. Indeed, our pricing model essentially bor- rows academic findings arising from Marketing and Ser- vice Science. The solution relies on a number of different fields: Operations Research, Game Theory and Negotia- tion Theory. We can consider three cases that are rele- vant for different situations: 1. the grid is managed by a central agency, 2. the actors in the grid are competing without cooperation, 3. the actors in the grid are compet- ing but cooperation is possible. In this paper, we will solely tackle the case where the grid is managed by a central agency. For instance, we have already explored the shadow prices approach through an optimization problem called the share of choice model [6]. This latter model attempted to optimize the design of a service by selecting its attributes according to the per- ceived value of a sample of clients. Perceived values were expressed as utility functions obtained from con- joint analysis. Conjoint analysis techniques permit the construction of path-worth or utility functions for each respondent regarding the different attributes of the ser- vice. Regarding what has been presented, our goal is to compute a price for the utilization of the resources such as CPU, RAM, bandwidth, libraries, etc. However, the price will be differentiated as a function of the quality of the service (in particular, privileged users that can have priority for their jobs) and also as a function of the level of demand (different prices for rush hours and off-peak hours). 3. Market Based Resource Management There has been extensive research on how to manage the resources in an efficient way, optimize its usage, balance the load and reach maximum user satisfaction. Sharing Copyright © 2010 SciRes. JSSM Pricing Services in a Grid of Computers Using Priority Segmentation347 resources fairly with economic efficiency, where effi- ciency can be defined as ratio of the actual total benefit for all users to optimal total benefit, at a low cost still remains a challenge [7]. The fact that consumers have dif- ferent goals, preferences and policy further adds to the complexity of resources management [8]. Software agents such as automatic scheduling programs and negotiation agents can play an essential role in realizing this vision of the grid. Numerous economic models for grid resource management such as commodity market models, auction, contract-net/tendering models, bargaining models, posted price models, bid-based proportional resource sharing models, cooperative bartering models, and monopoly and oligopoly had been proposed in the literature [9]. While some of the more commonly referenced work focused on commodity markets, auctions and fixed budget based marketing mechanism for the resource management [10], auctioning has long been an important aspect of many economies. Indeed, it provides a fair trading environment as a decentralized structure, are easier to implement than other economic models and respect the autonomy of re- source owners [11]. In Another variant of auctioning fixed budget mechanism efficiency and fairness of the allocation of resources at equilibrium is evaluated through the measures of “utility uniformity” and “envy-freshness”. The grid resource allocation model is based on Continu- ous Double Auctions (CDA). Different scheduling strate- gies have been analyzed which can be applied by the user to execute workflows in such an environment, and try to identify the general behavioral patterns that can lead to a fast and cheap workflow execution [12]. In history based pricing model consumers and produc- ers determine their bid and Ask prices using a sophisti- cated history-based dynamic pricing strategy and the auctioneer follows a discriminatory pricing policy which sets the transaction price individually for each matched buyer-seller pair. The pricing strategy presented gener- ally simulates human intelligence in order to define a logical price by local analysis of the previous trade cases. Here the authors employ a continuous double auction protocol as an economic-based approach to allocate idle processing resources among the demanding nodes [13]. In the economic model the center point is the interac- tion between grid users and providers. While most mar- ket models have been based on auctions, commodity market models have also been interesting research topic. Markets are considered to be based on commodity where applications can treat computational and storage re- sources as interchangeable and not as specific machines and disk systems. Obviously, prices are a key element of this model [14-16]. An alternative approach to market based and economy based models is finance based model. Various grid re- sources such as memory, storage, software, and compute cycles are seen as individual commodities and pricing of the resources is done in isolation and in combination of various resources. A quality of service (QoS)-profit equi- librium model has been proposed for pricing grid re- sources that is based on finance concepts [17]. Two shortcomings in a grid economic environment have been identified in [18]. The first shortcoming is that there are no standards for pricing schemes, caused by a large difference in the units that are traded (e.g. CPU cycles or virtual clusters) in grid computing. The second shortcoming is the lack of models for managing the pric- ing of intangible elements (e.g. software applications) and computational elements (e.g. virtual machines, which comprise resources such as CPU, memory, disk space, network bandwidth). 3.1. A Pricing Scheme Adapted to the Particular Nature of Grid Services This paper further presents a pricing service for grid com- puting services, which resolves these shortcomings by introducing a general pricing scheme for informational and computational elements. We describe the functional requirements, architecture, and the interfaces of the pric- ing service. The pricing service allows expressing the proposed general pricing scheme as an XML document, which can be linked to the Service Level Agreements (SLA). Contrary to other proposals on pricing, the pric- ing service is separated from the functionality of meter- ing, accounting, and payment. Various kinds of solutions to grid resource discovery have been suggested, including centralized and hierar- chical information server approaches. However, both of these approaches have serious limitations in regard to scalability, fault tolerance, and network congestion. To overcome these limitations, indexing resource informa- tion using a decentralized, for instance peer to peer, net- work model has been actively proposed in the past few years [19]. A new infrastructure called Grid Bank provides ser- vices for accounting of the grid resources thus filling the gap of these needed services. The support of computa- tional economy and accounting services can lead to a self-regulated accountability in grid computing. This paper presents requirements of grid accounting and dif- ferent economic models within which it can operate and proposes a Grid Accounting Services Architecture to meet them [20]. Practically, we intend to focus on a particular salient attribute of typical grid services which represents in our case an intangible element of perceived value by the user. This makes our approach original compared to previous papers on grid pricing. The salient attribute developed in Copyright © 2010 SciRes. JSSM Pricing Services in a Grid of Computers Using Priority Segmentation 348 our model corresponds to the idea that priorities of jobs executed on the grid are most of the time satisfied. In- deed services provide users with benefits that are per- ceived with more or less value. Consequently, we assume that the management of priorities in the execution of jobs is perceived as an important element of value. In logistic terms, the quality of this management corresponds in the model to our service level. To be able to obtain a pricing strategy leading to the best priority management of jobs executed, we have developed a mathematical program- ming model. It aims at minimizing inconveniences due to mismanagement of priorities while taking into account grid capacity constraints. As probabilities of a given job being put “on hold” exist, we treat capacity constraints of the grid as a Markov Decision Process (MDP). In the following section, we present the detailed model that we have developed for illustrative purposes. 4. The Model 4.1. Description of the Model The grid is shared by U different users described by the variable u = 1, ..., U. The jobs are classified in J different categories according to the level of urgency. Categories are described by the variable j = 1, ..., J. Category j = 1 includes very urgent jobs and category j = J includes job that are not urgent at all. The grid can process jobs with P different priority levels. The highest priority is p = 1 whereas the lowest priority is p = P. For each user, jobs arrive randomly following an ex- ponential distribution. Let j u be the parameter of the distribution for the job’s category j and for user u. The job’s size is random and follows also an exponential dis- tribution. Let j u be the parameter of the distribution for the job’s category j and for user u. Each user is rewarded at each period with a certain amount of monetary units that permits him to pay the services provided by the grid. Let u be the amount received at each period by user u. This repartition should reflect the contribution of user u to the grid (i.e. number of computers, IT specialist, etc. offered by user u to the grid’s community). The services provided by the grid are charged accord- ing to the CPU time used and priority level p requested. Let p be the price per CPU time for jobs with priority p. The objective of the grid manager is to provide the best service to the users with the actual capacity of the grid. The service quality is measured by a penalty func- tion, the lowest the function the highest the quality. This function increases each time a job is not completed on time. This function can, for example, measure the per- centage of jobs done with a delay. The grid manager has to find the optimal prices p in order to have the lowest penalty function. The objective of the user is to minimize its own pen- alty function choosing the right priority for each job. They are two possible actions for a user. Firstly, when a new job arrives he has to decide which level of priority will be chosen. Secondly, when a job is in the queue, he can decide to change the level of priority of the job. Of course each decision is taken knowing the load of work of the grid. The set of all possible actions is denoted with A. 4.2. The Model’s Equations This model is described by a MDP where budget con- straints are added. The only possibility to solve this en- riched MDP is to use the linear programming approach. Value iteration or policy iteration algorithms are not adequate for this enriched MDP. At this point, we must say that the description of the selfish behavior of each user should be done using Nash equilibrium rather than a MDP. However, this would conduct to a stochastic variational inequality that is very difficult to solve. In order to mimic the selfish behavior, additional constraints are included in the MDP model. For each user u, let ,, x ujp be the number of jobs of category j with priority p that is currently in the sys- tem. Denote with ,,Sxujp ,,ujp the possible states of the system. Let ,,qssa be the generator of the MDP. For the cases s s , ,,sa qs is computed from the corre- sponding j u and j u . For the other cases, we have ,,qssa,,ss aqs . It is important to realize that the main difficulty in modeling a MDP is to compute its generator. For example, the capacity constraints of the grid are included in the generator. Modeling capacity constraint in a MDP model is less intuitive than modeling capacity constraints in a linear programming model. Let , s u be the price charged to user u for his jobs that are currently treated by the grid. It depends of course on the prices p . The linear program associated with this enriched MDP is , min ,, sa Csa Ysa subject to , ,,,0 sa qssa YsasS , ,1 sa Ysa , ,, 1,..., u sa s aYsau U Copyright © 2010 SciRes. JSSM Pricing Services in a Grid of Computers Using Priority Segmentation349 ,0 , Ysas SaA The first equations represent the flow constraints and the second equation is the normalization of the probabili- ties. The last inequalities represent the budget constraints for each user. From this model, the steady state proba- bilities are computed as follows ,Ps Ysa a and the optimal policy is given by , ,Ysa Dsa Ps ,Dsa1 0 if policy a is implemented when the state is s (otherwise ). Note that random policies could be possible. In this case we have ,Dsa 0,Dsa1 and . ,1 s s As S has to be finite, we impose reflection conditions on the boundaries. The interested readers can find a de- tailed description of the modeling methods offered by the MDP paradigm in [21] and [22]. Ds a If the prices p are taken as a variable, the model is a quadratic program with a non positive definite matrix. In this case, standard software cannot solve the model. To avoid this problem, we consider the prices as pa- rameters. In this case, the model is a linear program that is easily solved if not too big. As the model is not convex in p we use a uniform space covering method in order to find the global optimum. 5. Numerical Illustration The aim of this illustration is to present a numerical ap- plication of the general model. Our goal is just to show the efficiency and implementability of the method. We have thus on purpose simplified it. In this small model, we assume to have two categories of jobs: urgent and not urgent ones. We have two kinds of priorities: high and low priority. This model attempts to describe users that need a huge number of computers for running their jobs. In this ex- ample we suppose that each job need the third of the grid resources. This means that maximum three jobs can be processed simultaneously without congestion. In case of congestion, jobs with high priority are processed first. If there are more than 3 jobs with high priority, the last coming jobs are sending in the queue. Doing so, jobs are always processed at full speed or send in the queue. For this numerical illustration, we assume to have two different kinds of users. The first kind of users expect a lot of urgent jobs that are on average small whereas the second users expect less urgent jobs that are on average big. In this numerical experiment the objective is to maxi- mize the service level, which is the percentage of jobs that are done without delay. Table 1 indicates the main parameters employed in the instance developed for the model presented in the previ- ous section. The model was written in AMPL and solved with the software MOSEK. Table 2 presents the optimal solution for different prices. Prices are given in monetary units per CPU time. We ran the model for more prices but show only few representative results. We see distinctly that the price policy has an effect on the service level. Indeed, choosing the right prices per- mits the community to avoid wasting the resources and as a consequence to increase the service quality. In this example, the maximal service level can be attained with several price policies. More than the results, this small model show the applicability of this method. However, we must emphasize that MDPs are subject to the “curse of dimensionality”. For bigger models, the state’s set S can become too big. In this case it is neces- sary to reduce the size of the model, applying, for ins- tance, a decomposition and parallel processing method [23]. 6. Conclusions and Future Research In this paper, we propose a new approach to share opti- mally the resources of a grid of computers. This ap- proach is based on a segmentation of the service where different prices are computed using an enriched MDP model. The method is versatile and can be adapted to numerous problems. Here, the service is segmented accor- Table 1. Data inputs for the model. Parameter Value α11 0.02 α21 0.05 α12 0.2 α22 0.1 β11 0.005 β21 0.005 Table 2. Service level for different prices. Price for high priority jobs Price for low priority jobs Jobs on time 1 0.2 97.8% 1 0.4 97.8% 1.2 0.2 91.8% 1.2 0.4 90.2% 1.4 0.6 81.9% 2 0.2 80% Copyright © 2010 SciRes. JSSM Pricing Services in a Grid of Computers Using Priority Segmentation 350 ding to the priority level. The service level corresponds to the percentage of jobs executed without delay, but it could be any other kind of utility functions. As a matter of fact, we have also implemented a more comprehensive model where the service is segmented according to the quality of the computers (speed and size of the memory). Stochastic models described with MDPs can have a huge size and therefore very difficult to solve. A solution to this problem consists of applying a decomposition and parallel processing method. The structure of the MDP could be exploited to decompose the model into U (i.e. the number of users) smaller single user models. These U smaller models are then linked together with a coupling linear program. As we mentioned earlier, the selfish behavior of each user is mimic including in the MDP model additional constraints. Unfortunately, this way of doing is only an approximation. To perfectly describe this behavior, we should incorporate in the model game theory. The model should be described by a Nash equilibrium rather than a MDP. However, this would lead to a stochastic varia- tional inequality that can be challenging to solve. 7. Acknowledgements This work has been sponsored by the project Virtual EZ-Grid from the Swiss national fund AAA/SWITCH. A preliminary version of this paper has been presented in the proceedings of IEEE/INFORMS International Con- ference on Service Operations, Logistics and Informatics. We thank Nabil Abdennadher and Aarti Agrawal for their help. REFERENCES [1] R. Buyya, D. Abramson and S. Venugopal, “The Grid Economy,” Proceedings of the IEEE, IEEE Press, New York, 2005, Vol. 93, No. 3, pp. 698-714. [2] S. Das, “Market Mechanism for Grid Computing,” Ph.D. Dissertation, University of Connecticut, 2007. [3] I. Foster and C. Kesselman, “The Grid: Blueprint for a Future Computing Infrastructure,” Morgan Kaufmann, San Mateo, 1999. [4] K. Mayer, J. Bowen and M. Moulton, “A Proposed Model of the Descriptors of Service Process,” Journal of Services Marketing, Vol. 17, No. 6, 2003, pp. 621-639. [5] J. L. Heskett, W. E. Sasser and C. W. L. Hart, “Service Breakthroughs: Changing the Rules of the Game,” The Free Press, New York, 1990. [6] E. Fragniere, C. Heitz and F. Moresino, “The Concept of Shadow Price to Monetarize the Intangible Value of Ex- pertise,” IEEE Conference on Service Operations and Logistics, and Informatics, Beijing, 2008, pp. 1736-1741. [7] K. Lai, “Markets are Dead, Long Live Markets,” Sigecom Exchanges, Vol. 5, No. 4, 2005, pp. 1-10. [8] K. M. Sim, “A Survey of Bargaining Model for Grid Resource Allocation,” ACM SIGecom Exchanges, Vol. 5, No. 5, 2006, pp. 22-32. [9] K. M. Sim, “From Market-Driven Agents to Maket-Ori- ented Grids,” ACM SIGecom Exchanges, Vol. 5, No. 2, 2004, pp. 45-53. [10] R. Buyya, et al., “Economic Models for Resource Mana- gement and Scheduling in Grid Computing,” Journal of Concurrency: Practice and Experience, Vol. 14, No. 13-15, 2002, pp. 1507-1542. [11] S. K. Garg, S. Venugopal and R. Buyya, “A Meta-schedu- ler with Auction Based Resource Allocation for Global Grids,” 14th IEEE International Conference on Parallel and Distributed Systems, Melbourne, 2008, pp. 187-194. [12] M. Feldman, K. Lai and L. Zhang, “A Price-Anticipating Resource Allocation Mechanism for Distributed Shared Clusters,” Proceedings of the 6th ACM Conference on Electronic Commerce, Vancouver, 2005, pp. 127-136. [13] B. Pourebrahimi, S. A. Ostadzadeh and K. Bertels, “Re- source Allocation in Market-Based Grids Using a His- tory-Based Pricing Mechanism,” In: T. Sobh, Ed., Ad- vances in Computer and Information Sciences and Engi- neering, Springer, 2008, pp. 97-100. [14] K. Abdelkader, J. Broeckhove and K. Vanmechelen, “Com- modity Resource Pricing in Dynamic Computational Gr- ids,” Proceedings of the IEEE/ACS International Con- ference on Computer Systems and Applications, Doha, 2008, pp. 422-429. [15] R. Wolski, J. Plank, J. Brevik and T. Bryan, “Analyzing Market-Based Resource Allocation Strategies for the Computational Grid,” International Journal of High Per- formance Computing Applications, Vol. 15, No. 3, 2001, pp. 258-281. [16] K. Vanmechelen, G. Stuer and J. Broeckhove, “Pricing Substitutable Grid Resources Using Commodity Market Models,” Proceedings of the 3rd International Workshop on Grid Economics and Business Models, World Scien- tific, Singapore, 2006, pp. 103-112. [17] R. K. Thulasiram, “A Grid Resources Pricing Model Based on Financial Option Concept,” Proceedings of 16th International Conference on Advanced Computing and Communications, Chennai, 2008, p. 1. [18] A. Caracas, “A Pricing Information Service for Grid Com- puting,” Proceedings of the 5th International workshop on Middleware for grid computing, California, 2007. [19] R. Ranjan, A. Harwood and R. Buyya, “The University of Melbourne Peer-to-Peer-Based Resource Discovery in Global Grids: A Tutorial,” IEEE Communications Sur- veys & Tutorials, Vol. 10, No. 2, 2008, pp. 6-33. [20] A. Barmouta, “GridBank: A Grid Accounting Services Architecture (GASA) for Distributed Systems Sharing and Integration,” Proceedings of the International Paral- lel and Distributed Processing Symposium, Nice, 2003, p. 245a. [21] M. L. Puterman, “Markov Decision Processes,” Wiley, Copyright © 2010 SciRes. JSSM Pricing Services in a Grid of Computers Using Priority Segmentation Copyright © 2010 SciRes. JSSM 351 New York, 1994. [22] H. J. Kushner and P. G. Dupuis, “Numerical Methods for Stochastic Control Problems in Continuous Time,” Sprin- ger Verlag, New York, 1992. [23] A. Haurie and F. Moresino, “Two-Time Scale Controlled Markov Chains: A Decomposition and Parallel Process- ing Approach,” IEEE Transactions on Automatic Control, Vol. 52, No. 12, 2007, pp. 2325-2331. |