A Utility- and Price-Based Resource Allocation Model for Large-Scale Distributed Systems


Computational, data, and service grids, peer to peer systems, and wireless communication systems are examples of open systems where the distinction between providers and consumers of resources is blurred. Individual members of the community contribute computing cycles, storage, services, and communication bandwidth to the pool of resources available to the entire community. While the popularity of such systems increases, their resource management models seldom take into account the utility for the consumers of the resources, and the incentives to provide resources. We propose a resource allocation model which takes into account the utility of the resources for the consumers and the pricing structure imposed by the providers.

We use: (i) a utility function, 0<u(r)<1, to represent the utility provided to an individual consumer, where r represents the amount of allocated resources; (ii) a price function, p(r), imposed by a resource provider, and (iii) a satisfaction function, s(u(r), p(r)), 0<s<1, to quantify the level of satisfaction; the satisfaction depends on both the provided utility and the paid price.

The utility function could be a sigmoid

where ζ and ω are constants provided by the consumer , ζ>2, and ω>0. Clearly, 0<u(r)<1 and u(ω) =1/2.

The price could be a linear function of the amount of resources:

where is the unit price.

The satisfaction function could be:

where Κ, μ, and ε are appropriate positive constants.

Figure 1 shows the utility- and price-based resource allocation model involving a broker and consumers and providers of resources. In this model, the broker mediates between the selfish interests of the producers and the providers, and societal interests, such as efficient resource utilization in the system, through some parameters, i.e., the target utility (τ) and the satisficing choices (σ). 

Figure 1. The utility- and price-based resource allocation model.

The algorithm performed by the broker is shown in Figure 2.

Figure 2. The brokering algorithm performed by the broker.

We conducted a simulation for the utility- and price-based resource allocation model in the YAES simulation environment. The simulation results (e.g., Figure 3 and Figure 4) show the behavior of the system with respect to various parameters.

Figure 3. Average consumer satisfaction vs. time (in seconds).

Figure 4. Average consumer utility vs. time (in seconds).


Author: Xin Bai (xbai@cs.ucf.edu)

Package: yaes.application.gridbrokerage, yaes.application.gridbrokerage2, and yaes.application.gridbrokerage3.