An economics-based negotiation scheme among mobile devices in mobile grid

An economics-based negotiation scheme among mobile devices in mobile grid

Computer Standards & Interfaces 33 (2011) 220–231 Contents lists available at ScienceDirect Computer Standards & Interfaces j o u r n a l h o m e p ...

890KB Sizes 3 Downloads 32 Views

Computer Standards & Interfaces 33 (2011) 220–231

Contents lists available at ScienceDirect

Computer Standards & Interfaces j o u r n a l h o m e p a g e : w w w. e l s ev i e r. c o m / l o c a t e / c s i

An economics-based negotiation scheme among mobile devices in mobile grid Li Chunlin ⁎, Li Layuan Department of Computer Science, Wuhan University of Technology, Wuhan 430063, PR China

a r t i c l e

i n f o

Article history: Received 16 January 2009 Received in revised form 1 April 2010 Accepted 28 April 2010 Available online 13 May 2010 Keywords: Mobile grid Negotiation Energy allocation

a b s t r a c t In this paper, we propose an economics-based distributed negotiation scheme among mobile devices in mobile grid. In our model, there are energy negotiation and transactions between buyer devices and seller devices. Dynamic allocation of energy resources in mobile grid is performed through online transactions within markets. Mobile devices can be sellers and buyers that use optimization algorithms to maximize predefined utility functions during their transactions. Seller device agents sell the underlying energy resources of the mobile device. Buyer device agent makes buying decisions within the budget constraints to acquire energy resources. An economics-based negotiation algorithm among mobile devices is proposed. The proposed algorithm decomposes mobile grid system optimization problem into a sequence of two subproblems. In the simulation, the performance evaluation of economics-based negotiation algorithm is evaluated. © 2010 Elsevier B.V. All rights reserved.

1. Introduction Conventionally, a grid environment consists of an aggregation of networked computers forming a scale-distributed system that can be exploited to solve computational and data intensive problems. Most of grid environment do not take mobile devices into consideration, for next generation Grids to be truly pervasive and mobile, we need to allow for the integration of mobile devices, and in order to leverage available resources and broaden the range of supplied services. Mobile devices are often resource limited: processing power is low, battery life is finite, and storage space is constrained. These restrictions slow application execution, and hinder operability. The use of mobile devices in grid environments may have two interaction aspects: devices are considered as users of grid resources or as grid resources providers. Due to the limitation constraints on energy and processing capacity of mobile devices, their integration into the Grid as resource providers and not just consumers is very difficult [1,6,7,12]. In order to fully integrate mobile devices to mobile grid, it is important to exploit services in mobile devices to support mobile services in mobile grid where mobile devices can be both consumers and providers of services. Such integration could open up interesting possibilities in exploiting the mobile nature of these devices in grid computing environment. Currently, seldom research focuses on mobile devices as resource providers in mobile grid environment. In this paper, we consider mobile devices acting as both resource providers and consumers.

⁎ Corresponding author. E-mail addresses: [email protected] (L. Chunlin), [email protected] (L. Layuan). 0920-5489/$ – see front matter © 2010 Elsevier B.V. All rights reserved. doi:10.1016/j.csi.2010.04.004

Limiting the energy consumption of mobile devices is an important objective in mobile system. The capabilities of mobile devices are limited by their modest sizes and the finite lifetimes of the batteries that power them. As a result, minimizing the energy usage in mobile devices continues to pose significant challenges in mobile grid. In mobile grid, mobile devices are usually battery-driven. A limited energy budget restricts the computation and communication capacity of mobile device. In mobile grid, energy resources distribution and computation workloads are not balanced within mobile devices. Some mobile devices have spare energy; some mobile devices are energy exhausted. Devices that expend all their energy can only be recharged when they leave the network. Therefore, it is beneficial to redistribute spare energy resources to satisfy unevenly distributed workloads. If a mobile device can't execute tasks that are too computation and power intensive, the mobile device can transfer these tasks to devices with spare energy and time. So, mobile devices need interactions between each other to complete the task, both mobile buyer devices and mobile seller devices benefit from collaborations. In this paper, we investigate the cooperation among mobile devices to balance the energy consumption and computation workloads in mobile grid. Mobile devices can have different roles such as energy buyers and sellers. In the mobile grid, the energies of mobile devices are uneven, energy-poor devices can exploit other devices with spare energy. Grid jobs are transferred between devices via economics-based distributed negotiation scheme. When additional energy is required, buyer devices and seller devices negotiate energy prices within grid markets. Buyer devices pay seller devices for energy consumption to complete jobs. Our model consists of two actors: A buyer device agent represents a mobile device that intends to purchase energy from other devices. A seller device agent represents a mobile device that is willing to sell spare energy to other devices.

L. Chunlin, L. Layuan / Computer Standards & Interfaces 33 (2011) 220–231

The objective of optimal energy allocation in mobile grid is to maximize the utility of the system without exceeding the energy capacity, expense budget and the deadline. For example, in mobile grid, a mobile client PDA, laptop etc. runs a streaming multimedia application such as MPEG player while traversing a series of cells (in a cellular network), and it can receive video streams from various grid resource providers including laptops. When some laptops with little energy receive requests for video streams from client, they will act as buyer device agents and pay other laptops with spare energy to execute tasks for them. The laptops earning money from other buyers are seller device agents. To our knowledge, in the research area of the integration of mobile devices into the Grid, this is the first solution that uses an economicsbased approach for balancing the energy consumption among mobile devices that act as both resource providers and consumers in mobile grid. The rest of the paper is structured as followings. Section 2 discusses the related works. Section 3 presents an economics-based distributed negotiation scheme among mobile devices in mobile grid. Section 4 describes the algorithm. In Section 5, the experiments are conducted and discussed. Section 6 gives the conclusions to the paper. 2. Related works There are a number of current efforts to integrate mobile devices into the Grid, but they focus on considering mobile devices as consumers [1–5]. The potential benefit and challenges of this integration has been studied in many other papers and research projects [1–12], but none of these considers mobile devices as both resource providers and consumers and propose economics-based negotiation among mobile devices in mobile grid. Srinivasan, S.H. et al. [1] study the usage scenarios of current and future wireless devices and proposes hardware and software architecture. Wireless devices are considered as pure access devices without need for storage, display, etc. All the resources are obtained from the pervasive wireless grid-a mix of wired and wireless grids. The resource-rich wired grid performs several tasks like providing structure to stored documents, personalization, aggregation, etc. Eunjeong Park et al. [2] propose to exploit a grid infrastructure to extend the battery life of mobile devices based on the contexts of mobile applications, devices, and grid systems. They present a framework, called SGA (selective grid access), to optimally utilize the limited resources of mobile devices and grids. SGA aims to reconfigure the placement of mobile applications on either the mobile device or grid nodes and to adjust QoS level according to the current context of the residual energy and the resource availability of the grids. In [3], the concept of a decentralized job scheduler has been proposed which supports the integration of unstable mobile devices as computational grid resources. The concept has been applied to the demanding scenario of mobile ad-hoc grids. Scheduling decisions are delegated to the self-monitoring mobile worker peers that decide based on rules specified by policies. Otebolaku A. M et al. [4] presented the current state of our work on mobile Grid clients' adaptation mechanism and modeling. The overall goal of this adaptation mechanism is to reduce the response time between when a service request is made and when service is delivered to the service consumer. The model and adaptation mechanism would be able to considerably reduce the response time of the Grid service. V. Vetri Selvi et al. [5] presented trace based mobility model in mobile ad hoc grid to obtain the probable position and stability time of a node in order to build a stable grid. They analyzed the performance of mobile ad hoc grid both by using a theoretical model and by simulation. In the approach introduced by Chu et al. [6] for a mobile OGSI.NET, each of the mobile devices runs its own Web server, and is, thus, a full-fledged participant in the grid. Kasula, Venkata Durga Kiran [7] proposes a layered system model to bridge the gap between mobile and grid

221

computing world. The model divides the complexities in mobile grid integration, among different components of different layers of the proposed model. The paper presents an efficient algorithm which addresses the problem of scheduling and disconnection. In paper [8], Sze-Wing Wong et al. presented the performance evaluation of Mobile Grid Services developed by using the MGS applicationprogramming interface. The MGS API, constructed by combining an existing mobile agent system (JADE) and a generic grid system toolkit (Globus), is proposed to support the development of Mobile Grid Services (extended Grid services with mobility during execution). Konstantinos Katsaros et al. [9] investigated the fundamental issues rising in the path towards the realization of the Mobile Grid paradigm. They discussed various approaches in literature and pointed out the problems introduced by node mobility. They studied the performance of a hierarchical, campus-wide networking architecture based on appropriate traces. Energy efficiency for high performance computing and communication system has recently become hot research area. Many works have been carried out on conserving energy, but considering energy in grid computing is few. Y. Huang et al. [10] present techniques for exploiting intermittently available resources in grid infrastructures to support QoS-based multimedia applications on mobile devices. They integrate power aware admission control, grid resource discovery, dynamic load-balancing and energy adaptation techniques to enable power deficient devices such as to run distributed multimedia applications. Kyong Hoon Kim et al. [11] provide power-aware scheduling algorithms for bag of tasks applications with deadline constraints on DVS enabled cluster systems in order to minimize power consumption as well as to meet the deadlines specified by application users. In paper [12], IMOGA is targeted to gather and share data that can be collected by ubiquitous mobile devices that can employ different kind of sensors such as Global Positioning System (GPS), temperature, health monitoring and pollution. Tao Guan et al. [13] present a system infrastructure that allows local mobile devices to interact with the Grid. Central to this infrastructure is a proxy with the ability of dual connectivity to transfer the request from the mobile device to the Grid. This system infrastructure combines the mobility of mobile devices with the processing power of the Grid. The paper [14] presents an architecture that employs the workflow concept for providing automated and coordinated features for executing applications in grid configurations. The architecture, coined as SuMMIT, enabled to consume less battery energy of mobile devices for submitting and monitoring several tasks in comparison with some related works. Rosado, D.G.A et al. [15] propose a methodology of development for secure mobile Grid computing based systems. They design and construct a secure Grid system with support for mobile devices. Hiroyuki Morohoshi et al. [16] present a bridge linking the devices to Grid services named BtoG (Bridge to Grid). L. Shang et al. [17] present a new economics-based power-aware protocol, called the distributed economic subcontracting protocol that dynamically distributes task computation among mobile devices in an ad-hoc wireless network. The experimental results indicate that markets based on the protocol and decisionmaking algorithms fairly and effectively allocate energy resources among different tasks in both cooperative and competitive scenarios. Tao Guan et al. [18] present a service approach that extends pervasive devices with semantic Grid services by using a device-proxy-Grid system infrastructure. Ahsan Ikram et al. [19] describe the development, features, and performance aspects of a grid enabled analysis environment designed for handheld devices. They also describe some differences in the technologies required to run these applications on desktop machines and handheld devices. Hassan Jameel et al. [20] present a middleware architecture that addresses the issues of job delegation to a Grid service, support for offline processing, secure communication, interaction with heterogeneous mobile devices and presentation of results formatted in accordance with the device specification. Chang-Qin Huang et al. [33] address power-Aware

222

L. Chunlin, L. Layuan / Computer Standards & Interfaces 33 (2011) 220–231

hierarchical scheduling in wireless Grids. The first level scheduler is responsible for mapping tasks among proxy-nodes and other fixed grid nodes; the second level scheduler conducts scheduling in each proxy-centric wireless domain. In the second-level scheduling algorithm, mobile node selection is targeted to minimize the energy consumed. The authors' previous works [21–25] mainly deal with resource allocation, QoS optimization in the computational grid and don't consider the integration of mobile devices into the Grid. The main differences between above related works and our work are from two aspects. Firstly, the objective of optimal resource selection scheme is to maximize the utility of the mobile grid system, which jointly considers the benefits of mobile buyer devices and seller devices. Buyer devices begin with an endowment to spend to complete its task and wish to minimize the total time taken to complete jobs and payments. The objective of seller devices is to maximize the revenue under the constraints of their provided resource amounts. Secondly, the paper uses optimization decomposition approach to solve primal utility optimization problem, each sub problems can be solved independently. Above two contributions don't appear in other related works. 3. An economics-based negotiation scheme among mobile devices in mobile grid 3.1. Model description In our model, there are energy negotiation and transactions between buyer devices and seller devices. Dynamic allocation of energy resources in mobile grid is performed through online transactions within markets. Mobile devices can be sellers and buyers that use optimization algorithms to maximize predefined utility functions during their transactions. Our model consists of two actors: A buyer device agent represents a mobile device that intends to purchase energy from other devices. A seller device agent represents a mobile device that is willing to sell spare energy to other devices. The buyer device agent analyzes its jobs, remaining energy and remaining money. Based on this information, it decides whether to execute a job locally or pay other mobile devices to execute the job for it. In the absence of a central controller, mobile devices must make their own energy purchasing decisions. Communication energy and price often conflict with each other. Communication energy is the energy expended by the buyer agent to send the task to other powerful mobile device and receive the resulting data from seller device for remote computation. The communication energy overhead is related to the communication distance. Energy price is related with the energy scarcity of the seller devices. Increasing the number of sellers in a market will reduce the price available. It is necessary to decide upon a broadcast range that results in a good tradeoff between energy price and communication energy. Buyer device agents will make a decision to choose a nearby seller device with high price and a more distant one that has a lower price. In order to reduce communication energy, buyers prefer sellers that are close; buyers will tolerate higher prices from such sellers. Nearby sellers can take advantage of this and request higher prices than other more distant seller devices. The mobile grid system consists of two types of agent and market institution that allocates energy resources in response to the selling of seller device agent and buying behavior of the buyer device agents. Buyer device agents and seller device agents do not communicate directly with one another or amongst themselves. All interactions are by the means of grid market. The grid market also broadcast the prices at which trades are agreed, so the agents have more information upon which to adjust their trading behavior. The negotiation between buyer device agents and seller device agents is mediated by means of grid market. It allows multiple buyer device agents and seller device agents to negotiate simultaneously, it provides a set of market price information and it allows supply and demand to be reconciled at the

same time. Grid markets provides a means to complete bargaining between the sellers and buyers using iterated algorithms. The grid markets use economics-based distributed negotiation algorithm that will be described in Section 4. In this algorithm an initial set of prices is announced to the buyer device agent. In each iteration, buyer device agents individually determine their optimal payment and communicate their results to the seller device agents. Seller device agents then update their prices and communicate the new prices to the buyer device agents and the cycle repeats. Grid market has information about the locations of current seller device agents in the mobile grid and their prices. Whenever a seller device agent in the grid decides to sell its resources, change its pricing structure, or update available capacity, it will spawn an agent to find grid markets and update the advertised information. The grid market then provides this information to other buyer device agents wishing to know about seller devices. Whenever a new buyer device agent is created, it is first given an endowment of electronic cash to spend to complete its job. We assume that when a buyer device agent purchases a portion of the energy resource, it is guaranteed that the buyer device agent continues to receive energy resource uninterrupted from the seller device agent until its job is completed. The buyer device agent makes decision by keeping up-to-date on the energy resources and prices offered by seller device agents on the mobile grid. This can be done by periodically spawning agents that travel to grid markets and return with price and energy resource quotes. The seller device agents have varied computational resource capacity and energy capacity, and the computational resource capacity and energy capacity can be shared among the buyer device agents. The seller device agents charge the buyer device agents for the portion of the energy resource capacity occupies. We assume that the seller device agents of mobile grid does not cooperate, probably due to high messaging and processing overheads associated with cooperative allocating. Instead, they act non-cooperatively with the objective of maximizing their individual profits. The seller device agents compete among each other to serve the buyer device agents. The buyer device agents do not collaborate either, and try to maximize their net benefit. The agents communicate by means of a simple set of signals that encapsulate offers, prices, commitments, and payments for energy resources. We couple the energy resources and payments with the offers and requests respectively. This reduces the number of steps involved in a transaction (committing agents to their payments and offers ahead of the market outcome), and so increases the speed of the system's decision making. To enforce these rules the interactions between the two agent types are mediated by means of market mechanisms. In our market mechanisms, agent communication is restricted to setting a price on a single unit of energy capacity. Therefore, seller device agents set their prices solely on the basis of their implicit perception of supply and demand of the energy at a given time. When the energy is scarce, buyer device agents have to increase the payment to buy the energy, just as seller device agents decrease the price at which they are willing to offer the energy resource. Seller device agents sell the underlying energy resources of the mobile device. A buyer device agent makes buying decisions within the budget constraints to acquire energy resources. Buyer devices buy energy resources solely on the basis of the most recent price information they have. The buyer device agent retains a vector of payments that it is willing to pay for energy resources. The payment for each seller device agent should be as low as possible without failing to obtain the energy resource. Therefore the buyer device agent makes a request for energy resource, if a request was rejected, the buyer device agent increases the payment that will be sent to seller device agent at the next negotiation. If a request was accepted, the buyer device agent reduces the payment it pays for that energy resource in subsequent negotiations. The collaboration among mobile agents in mobile grid is shown in Fig. 1.

L. Chunlin, L. Layuan / Computer Standards & Interfaces 33 (2011) 220–231

223

Fig. 1. Collaboration among mobile agents in mobile grid.

A mobile commerce scenario has been presented to illustrate collaboration among mobile agents for efficient energy allocation in mobile grid. For example, in mobile grid, a mobile client PDA, laptop etc. runs a streaming multimedia application such as MPEG player while traversing a series of cells (in a cellular network), and it can receive video streams from various grid resource providers. Video providers acted as grid resource nodes can be a laptop etc., which provides storage to store the multimedia data, CPU for multimedia transcoding, decompression buffer memory. Energy distribution and computation workloads are not balanced within laptops. Some laptops acted as video resource providers have spare energy; some laptops are energy exhausted. When some laptops with little energy receive requests for video streams from client, they will act as buyer device agents and pay other laptops with spare energy to execute tasks for them. The laptops earning money from other buyers are seller device agents. The buyer device agent analyzes its jobs, remaining energy, and remaining money. Based on this information, it decides whether to execute a job locally or pay other mobile laptop to execute the job for it. 3.2. Problem formulation In this section, we set up the mathematical models for collaboration among mobile agents for efficient energy allocation in mobile grid. First gives notations to be used in the following sections: j

ei pj Bi Ej j ui qil til Ti

energy obtained by buyer device i from seller device j the price of the energy unit in mobile seller device j. the expense budget given to a mobile buyer device i the energy capacity of jth mobile seller device money paid to the mobile seller device j by mobile buyer device i the expected energy required to complete the job l the time taken by mobile buyer device i to complete job l time limits given by mobile buyer device i to complete all jobs

Suppose Ej is the capacity of energy units of jth mobile seller j device, which can be exploited by other mobile buyer devices. Let ei be the energy units allocated to mobile buyer device i by mobile seller device j. We assume that mobile device has an associated utility j j function U(ei ) if the allocated energy unit is ei . The utility of the system Usystem is defined as the sum of buyer device utilities.   N j Usystem = ∑ U ei : i=1

The objective of optimal energy allocation in mobile grid is to maximize the utility of the system Usystem without exceeding the

energy capacity, expense budget and the deadline. We formalize the problem using nonlinear optimization theory; the optimal energy allocation in mobile grid can be formulated as follows.   N j MaxUsystem = Max ∑ U ei i=1 M

j

s:t:Bi ≥ ∑ ui j=1 N

ð3:1Þ j

Ej ≥ ∑ ei i=1 L

l

Ti ≥ ∑ ti : l=1

The constraint implies that the aggregate energy units do not exceed the total energy capacity of jth mobile seller device Ej; the total payment can't exceed the expense budget Bi. By non-linear optimij zation theory, there exists a maximizing value of argument ei for the above optimization problem (3.1), and we can apply the Lagrangian method to solve such a problem. The Lagrangian approach is used to solve constrained optimization problems. Luh and Hoitomt [26] successfully adopted the Lagrangian approach by breaking the overall manufacturing problem into a series of sub-problems. This approach combines Lagrangian relaxation techniques with scheduling heuristics. Let us consider the Lagrangian form of this optimization problem (3.1): ! ! !     N N L M j j j l j L ei ; λ = ∑ U ei −γ ∑ ei −Ej −λ ∑ ti −Ti −β ∑ ui −Bi i=1

i=1

l=1

j=1

ð3:2Þ where λ, β, γ are the Lagrange multipliers of mobile device, γ is also j energy price. Hence, at a maximum of L over ei the following j conditions hold: U’(ei ) = γ. Since the Lagrangian is separable, this j maximization of Lagrangian over {ei } can be conducted in parallel at each mobile device Di. Thus, given that the mobile grid knows the utility functions U of all mobile devices, this optimization problem can be mathematically tractable. In order to optimize utility functions U of all mobile devices, it requires global information of the mobile grid. The mobile grid environment is a dynamic environment; each device has only imperfect information it is not likely to know each mobile device's utility, thus obtaining an optimal solution is not possible in a centralized fashion. Solving the objective function (3.1) requires global coordination of all mobile devices, which is impractical in distributed environment such as the mobile grid. In the paper, maximization formulation of the mobile device's utility adopts a network utility maximization (NUM) framework [27] in which each application has an associated utility function. In [27], an optimization framework leads to a decomposition of the overall

224

L. Chunlin, L. Layuan / Computer Standards & Interfaces 33 (2011) 220–231

system problem into a separate problem for each user, in which the user chooses a charge per unit time that the user is willing to pay, and one for the network. The network's optimization problem leads to two classes of algorithm, which may be interpreted in terms of either congestion indication feedback signals or explicit rates based on shadow prices. It was shown that a system optimum is achieved when users' choices of charges and the network's choice of allocated rates are in equilibrium. In order to achieve a distributed solution to the optimal energy allocation in mobile grid formulated in Eq. (3.1), we decompose the problem (3.1) into the following two problems BD in Eq. (3.3) and SD in Eq. (3.4), seek a distributed solution where the mobile seller device does not need to know the utility functions of mobile buyer device. Suppose that mobile buyer device i may choose the payment per unit j j j time, ui , and receives energy units ei proportional to ui , the relation can be represented as j

j

ei =

ui

 pj

where pj is regarded as a charge per unit energy for mobile buyer device i. For a completed time, the mobile buyer device optimization problem (BD) can be written as Eq. (3.3).   j MaxU ui L

l

ti : ðBDÞ s:t: Ti ≥l∑ =1 M

ð3:3Þ

j

Bi ≥ ∑ ui j=1

The constraints are deadline constraint and expense budget constraint; deadline constraint denotes that the aggregate sum of all times of each job of mobile buyer device cannot exceed its total time limits. Ti is time limits given to a mobile buyer device. The total payments can't exceed expense budget Bi. The objective of mobile j buyer device optimization problem is to choose optimal ui to maximize the utility. In competitive mobile grid, seller devices have the goal of maximizing their total profits subject to their energy capacity constraint. So the mobile seller device's optimization problem can be formulated as follows: N

Max ∑ ðSDÞ

i=1

j ui

  log eij + 1 N

under the constraints of their provided energy amounts. Mobile seller devices can't sell the energies to buyer devices more than total capacity Ej. In Problem BD, the mobile buyer device adaptively adjusts its payments to seller device based on the current energy condition on the market, while in Problem SD, the mobile seller device adaptively allocates energy required by the buyer device in the Problem BD. The interaction between two sub-problems is controlled through the use of the price variable γ, which is the energy price, charged from mobile buyer device by mobile seller device. The interaction between two sub-problems also coordinates the mobile buyer device's payment and the energy supply of mobile seller device. 3.3. Mathematical solution Mobile buyer devices want to complete a set of jobs by purchasing energies from mobile seller devices located throughout the mobile grid. A mobile buyer device begins with an endowment of Bi to spend to complete its task and wishes to minimize the total time taken to complete jobs under its budget constraint. j Let ui be the price paid to jth seller device agent per time unit by the ith buyer device agent. Let ui be the total investment of the ith buyer device agent. N buyer device agents compete for energy resources with finite capacity provided by seller device agent. The energy resource is allocated using a market mechanism, where the partitions depend on the relative payments sent by the buyer device j agents. We assume that each buyer device agent submits ui to the j j j seller device agent. Then, u = [u1......uN] represents all payments of buyer device agents for jth seller device agent. Let pj denote the price of the unit energy resource in seller device agent j. Let the pricing policy, p = (p1, p2, ⋯, pn), denote the set of unit energy resource prices of all the seller device agents in the mobile grid.

j

ui = ∑j ui : j

Let ei be the fraction of energy resource units allocated to buyer device agent i by seller device agent j. If i-th buyer device agent's j payment for the jth seller device agent is ui , then the total energy resource units allocated to buyer device agent i is j

ei = :

uij pj

ð3:4Þ

j

s:t:Ej ≥ ∑ ei i=1

We assume that the utility function of mobile seller device is concave. Intuitively, initial increases in price do not substantially reduce sales, allowing an increase in total profit. Eventually, price increases result in a significant reduction in sales, reducing total profit. The point between these regions is the unit price resulting in maximal profit. In our model, we choose the log function as the utility function of seller device because the benefit increases quickly from zero as the total allocated energy resource increases from zero and then increases slowly. Moreover, log function is analytically convenient, increasing, strictly concave and continuously differentiable. The benefits of seller devices are affected by payments of buyer devices and allocated energy units. It means that the profit of the seller device increases with increasing allocated energy and increasing payment. Different mobile seller devices compute optimal energy allocation for maximizing the profit of their own. Mobile buyer device i submits the j j j payment ui to the mobile seller device j. ui log (ei + 1) presents the profit obtained by mobile seller device j from mobile buyer device i. j j The objective of mobile seller device is to maximize ui log (ei + 1)

The i-th buyer device agent receives energy proportional to its payment relative to the sum of the seller device agent's revenue, Ej is j the capacity in energy units of jth seller device agent. ui is the amount j that the ith buyer device agent pays for energy j, ri is the capacity that i-th buyer device agent receives. j

ri = Ej

uij : pj

Buyer device agent needs to complete jobs in a specified amount of time, Ti, while minimizing the cost accrued. The goal of each buyer device agent is to complete its job as quickly as possible when spending the least possible amounts of money. qil is the expected energy required to complete the job l. Ej is the capacity in energy units of jth seller device agent. The time taken by the ith buyer device agent to complete lth job is:

l

ti =

qil pj Ej uij

:

L. Chunlin, L. Layuan / Computer Standards & Interfaces 33 (2011) 220–231 j

We substitute Eq. (3.9) into Eq. (3.8) to obtain Eq. (3.10)

The utility function U(ui ) of the buyer device agent is defined as follows.   M L qil pj j j U ui = − ∑ ui −K ∑ −Ti j j=1 l = 1 Ej u i

M

! ð3:5Þ

j

where ui is the money which buyer device agent i paid to the buyer device agent j, K is the relative importance of costs and times to complete grid task, the buyer device agent with larger value of K would indicate a greater preference to reduce its completion time. When K is 1, meaning that costs and times are equally important. Let's consider buyer device agent's optimization. The buyer device agent optimization problem (BD) can be rewritten as follows. M

j

L

qil pj

l=1

Ej uij

Max − ∑ ui −K ∑ j=1

L

ðBDÞ

s:t: Ti ≥ ∑

l=1 M

225

!1 = 2 ∑

qil pj Ej

j⁎

ui =

k=1

  qil pk 1 = 2 Ek Ti

ð3:10Þ

j⁎

ui is the unique optimal solution to the buyer device agent's optimization problem (BD). Secondly, let's consider seller device agent's optimization.   N j Max ∑ ui log eij + 1 i=1

For ðSDÞ

N

:

ð3:11Þ

j

s:t:Ej ≥ ∑ ei

!!

i=1

−Ti

j

We take derivative and second derivative with respect to ei : :

l ti

ð3:6Þ

j

   j uj U ′ ei = i

   j uj U ″ ei = − i ðeij

eij + 1

Bi ≥ ∑ ui

+ 1Þ

2

:

j=1

j

j

j

We take derivative and second derivative of U(ui ) with respect to ui :     L dU uij qil pj 0 j = K ∑  2 −1 U ui = l=1 E uj duij j i

j

U″(ei ) b 0 is negative due to 0 b ei . The extreme point is the unique value maximizing the revenue of seller device agents. The Lagrangian for SD problem is L(e)     N N j j L eij = ∑ ui log eij + 1 + γ Ej − ∑ ei i=1

    d2 U uij L pj qil 00 j U ui =  2 = −K ∑  3 j l=1 E u j d ui j i j

j

!

L

! l

+ λ T i − ∑ ti l=1

where λ is the Lagrangian constant. From Karush-Kuhn-Tucker . j =0 Theorem we know that the optimal solution is given ∂Lðei Þ ∂eij for λ N 0. ∂Lðeij Þ

M

∂Lð

Þ

∂uij

Let ∂Lðui Þ j

j ui

=

. ∂uij

Let ∂Lðei Þ j

j

ei =

uij −γ

ð3:13Þ

= 0 to obtain

 :

1 N j ∑ u −n γ k=1 k N

γ= :

∂eij

−γ

Using this result in the constraint equation, we can determine γ as Ej =

!1 = 2

.

γ

= 0 to obtain

ðK−λÞqil pj ð1 + βÞEj

 eij + 1

j

j=1

qil pj qil pj = −1 + K  2 −λ  2 −β j Ej ui Ej uij

uij

= ∂eij

+ β Bi − ∑ ui

where λ, β are the Lagrangian constant. From Karush-Kuhn-Tucker . = 0 for Theorem we know that the optimal solution is given ∂LðuÞ ∂u λ N 0. 



!

ð3:7Þ

j ui

ð3:12Þ

i=1

U″(ui ) b 0 is negative due to 0 b ui . The extreme point is the unique value minimizing the buyer device agent's cost under the budget and deadline constraint. The Lagrangian for the buyer device agent's utility is L(u).   M L qil pj j j L ui = − ∑ ui −K ∑ −Ti j j=1 l = 1 Ej u i

i=1

    j j j = ∑ ui log ei + 1 −γei + γEj N

!

ð3:14Þ

j

∑ uk

k=1

Ej + n

:

ð3:15Þ

ð3:8Þ We substitute Eq. (3.14) into Eq. (3.15) to obtain Eq. (3.16)

Using this result in the constraint equation, we can determine θ = K − λ as

j⁎ ei

=

  uij Ej + n N

−1:

ð3:16Þ

∑ uik

k=1 1 = 2

ðθÞ

=

Ti

M



k=1

 pk qil Ek

1 = 2 :

ð3:9Þ

j⁎

ei is the unique optimal solution to the seller device agent's optimization problem (SD).

226

L. Chunlin, L. Layuan / Computer Standards & Interfaces 33 (2011) 220–231

3.4. Considerations of security and fault tolerance in negotiation scheme among mobile devices In mobile grid, mobile devices have various problems such as instability of wireless communication, intermittent connection, limit of power supply, and low communication bandwidth. In order to reduce these problems, fault tolerance and security are important factors in mobile grids. Trust model can be used to identify malicious nodes and prevent various dangers in mobile grid resource trading; on the other hand, trust-based allocation strategy can ensure that the nodes of high trust degrees get more profits, and give nodes incentives to improve the QoS. We introduce a secure and fault-tolerant negotiation scheme among mobile devices in mobile grid based on trust model and adaptive job replication. Trust is defined as the dynamic evaluation in the interaction process of the mobile device to other devices to complete certain necessary services. The dynamic evaluation makes the mobile devices deepen the understanding of other mobile devices' capacity during the interactive process, so as to deduce whether those mobile devices can complete the follow-up services. And it uses such deduction to guide the follow-up behavior, and allows the mobile grid system to avoid the possible risks to the maximum extent and obtain better QoS. When negotiation begins, we first assign a security demand to a job of buyer device agent when buyer device agent submitted it. The trust model assesses the seller device agent's trust level. The job can be successfully finished when security demand and trust level satisfy a security assurance condition when scheduling the jobs. When negotiation event occurs, the grid market first computes the security demand of the buyer device agent's jobs and the trust level of the seller device agent. Then, the grid market schedules jobs of buyer device agent to seller device agent. If a job failure is detected, an alternative seller device agent in the mobile grid will be selected. If the grid market receives a job completion message from one of the seller device agents, it will notify all other remote seller device agents to stop the execution of the job replication. If all replications of the job have not been scheduled, the grid market monitors the availability of seller device agents it reserved by listening to them. As soon as one becomes available, the grid market schedules a replication to the seller device agent. If a job is successfully done, the grid market sends termination message to each seller device it has reserved such that these seller device agents can be used for running later jobs.

1) Buyer device agents request the grid marketplace for admission to the negotiation. If they are accepted, they receive rules specifying how the negotiation takes place. 2) Buyer device agents submit energy request to grid marketplace according to the rules of the negotiation received at admission. 3) If the energy request is valid, the request is forwarded to the seller device agent. During negotiation, the grid marketplace informs buyer device agents of the current status of the negotiation by sending some short messages such as the current energy prices provided by seller device agent. 4) After negotiation completes, the grid marketplace closes the negotiation local, and determines any final results. The process of negotiation among mobile devices in mobile grid is described in Fig. 2. 4.2. Algorithm description The objective of economics-based negotiation algorithm among mobile devices is to maximize the utility of the mobile grid system without exceeding the energy capacity, expense budget and the deadline. The proposed algorithm decomposes mobile grid system optimization problem into a sequence of two sub-problems via an iterative algorithm. In each iteration, in sub problem of buyer device, the buyer device agent computes the unique optimal payment to seller device agent to maximize the buyer device agent's satisfaction. The buyer device agent individually solves its fees to pay for energy resources to complete its all jobs, adjusts its energy demand and notifies the seller device agent about this change. In sub problem of seller device, different seller device agents compute optimal energy allocation for maximizing the revenue of their own. Seller device agent updates its price according to optimal payments from buyer device agent, and then sends the new prices to the buyer device agents and allocates the energy resource for buyer device agent, and the cycle repeats. The iterative algorithm that achieves economics-based negotiation algorithm among mobile devices in mobile grid (ENA) is described as follows. Algorithm 1. Economics-based negotiation algorithm among mobile devices in mobile grid (ENA) Routine 1 (n) Input: new price pj from various seller device agent j j⁎(n+ 1)

4. An economics-based negotiation algorithm among mobile devices in mobile grid

Step 1: Calculates optimal payment ui to seller device agent j for energy resource to maximize the buyer device agent's j utility MaxU(ui ) n  o j = Max U ui ;

⁎ðn + 1Þ

j

4.1. Negotiation among mobile devices Negotiation is the process by which buyer device agent and seller device agents interact to reach an agreement through grid market. There are two main roles in negotiation — mobile device agents and grid marketplace. The mobile device agents are subdivided into buyer device agent and seller device agents. The grid marketplace is responsible for enforcing the protocol and rules of negotiation. The marketplace is often a third party outside the negotiation. Negotiation consists of the sending of a series of proposals to the negotiation marketplace. Proposals may be sent at any time. If a proposal does not conflict with the negotiation rules, the grid marketplace will accept and process the proposal appropriately. If the proposal does conflict with the rules, the grid marketplace may simply ignore the proposal or it may explicitly reject the proposal. However, in general, the information about the acceptance or rejection of the proposal can be inferred from the information about the negotiation that is made available by the negotiation marketplace to the participants of the negotiation. In general, negotiation among mobile devices in mobile grid consists of the following steps:

ui

Step 2: If Bi ≥ ∑ uij j

j⁎(n+ 1)

Then Return payment ui Else Return Null;

to seller device agent j;

j⁎(n+ 1)

Output: optimal payments ui to seller device agent j; Routine 2 j⁎(n) Input: optimal payments ui from buyer device agent i

Fig. 2. The process of negotiation among mobile devices.

L. Chunlin, L. Layuan / Computer Standards & Interfaces 33 (2011) 220–231 j(n+ 1)⁎

Step 1: Calculates its optimal energy resource ei j

ðn + 1Þ

*

ei

n  o j j = Max ∑ui log ei + 1 (n+ 1)

Step 2: Computes a new energy price pj ðn + 1Þ

pl j

I

n  o ðnÞ l ðnÞ = max ε; pl + η e pj −Ej ;

j

==e =∑ ei ;η N 0 is a small step size parameter; n is iteration number: i=1

(n+ 1)

Step 3: Return new energy price pj Output: new energy price

(n+ 1) pj

to all buyer device agents;

227

Table 1 Simulation parameters. Simulation Parameter

Value

Number of nodes Network area Mobility model Average speed of each device Total number of buyer device agents Total number of seller device agents Initial price of computing power (grid dollar) Deadline Expense Budget Energy Budget Energy capacities

200 500 m*500 m Random-walking mobility 5 m/s 85 40 [10, 500] [100,400] [100,1500] [0.1,1.0] [50,500]

of seller device agent.

5. Performance evaluation 5.1. Simulation environment In this section, we evaluate the performance of the economicsbased negotiation algorithm among mobile devices using the JAVASIM [28] simulator. Network generator BRITE [29] generates the computer network topology. We simulate a mobile grid environment with a 2 dimension area of 500 m 500 m to study mobile device's behavior. Each mobile device in the simulated environment has a maximal radio range of 100 m, and moves following a random-walking mobility model. The average speed of each mobile device is 5 m per second. The average distance between neighboring devices is 25 m. Mobile devices dynamically enter and leave the mobile grid. These devices move and trade energy with each other using economics-based distributed negotiation algorithm described in Section 4. There are a number of parameters associated with each device such as an energy budget, an expense budget, and a two-dimension position value. Each mobile device's battery capacity is initialized with a random value in the range of [700, 800], and reduced automatically by a random value in the range of [0, 5] in each iteration. There are five mobile derives clusters each one servicing 25 mobile devices, all of which contribute resources to the Grid community. There are 85 buyer devices and 40 seller devices. A LAN consisting of 90 nodes all of which contribute resources to the grid. The LAN acts as the main Grid infrastructure into which we want to integrate mobile devices. Device schedulers residing in WLANs, acting as the interface point between the mobile devices. All Wi-Fi interfaces operate at a rate of 11 Mb/s. All Ethernet interfaces operate at a rate of 10G b/s. The selective grid applications for simulation are computation-intensive applications such as image processing applications and mpeg players. Energy consumption is represented as a percentage of the total energy required to meet all job deadlines [31,32]. Assume that the maximum power, Pmax, corresponds to running all jobs with the maximum processing frequency. The maximum frequency is assumed to be fmax = 1 and the maximum frequency-dependent power is Pmax = 1. When the energy budget for each interval is limited, we can only consume a fraction of Pmax when processing requests during a given interval. Jobs arrive at each site si, i = 1, 2,…, n according to a Poisson process with rate α. The capacities of the energy resources were chosen uniformly in the interval [50,500]. The energy cost can be expressed in grid dollar that can be defined as unit energy processing cost. The initial price of energy is set from 10 to 500 grid dollars. Users submit their jobs with varying deadlines. The deadlines of buyer device agent are chosen from 100 ms to 400 ms. The budgets of buyer device agents are set from 100 to 1500 grid dollars. Each measurement is run 6 times with different seeds. Simulation parameters are listed in Table 1. The samples of seller device agents are listed in Table 2, the samples of buyer device agents are listed in Table 3. In the simulator, different agents are used namely seller device agents, buyer device agents and grid market agent. The grid market

agent starts a listening thread that listens to the requests from buyer device agents. It receives the requirements of buyer device agents and puts them into the queue. While the queue is not empty, the grid market agent starts the negotiation algorithm to find the right match. When seller device agent updates its energy price, the seller device agent forwards the energy price to buyer device agents; the energy price is put in a packet. Whenever the new price packet passes to buyer device agent, the buyer device agent calculates the utility. According to the negotiation algorithm, if the price becomes higher than its maximum willingness to pay, buyer device agent does not buy energy from seller device agents. The buyer device agent can be informed the price for the next iteration by the next price packets. 5.2. Comparisons The experiments are conducted to compare our economics-based negotiation algorithm among mobile devices in mobile grid (ENA) with power-aware hierarchical scheduling algorithm in wireless grid [33]. Energy and deadline constrained scheduling have been studied in mobile ad-hoc networks [17], cluster system [11], embedded system [30] and heterogeneous computing systems [32]. Currently in mobile grid or wireless grid, energy and deadline constrained resource allocation and scheduling are seldom studied. Some works focus on energy consumption [9,10], some works focus on deadline or other metrics and don't consider energy consumption in the mobile devices [7,8]. Few works in grid resource allocation and scheduling consider both energy and deadline as the constraints. The reason for choosing reference [33] as the comparison is that both our work and reference [33] consider energy and deadline as the constraints for mobile grid. Reference [33] focuses on task scheduling and resource allocation in a wireless grid, where the primary objective is to improve the wireless QoS and minimize the total battery energy used to successfully accomplish a task, as well as optimize time deadline. In reference [33], a power-aware hierarchical scheduling model is proposed to efficiently utilize the energy of wireless nodes with respect to Quality of Service (QoS). The first level scheduler is responsible for mapping tasks among proxy-nodes and other fixed grid nodes; the second will conduct scheduling in each wireless

Table 2 Samples of seller device agents. Seller device agents

Energy capacity

Unit Price (grid dollar)

1 2 3 4 5 6 7 8

50 200 150–450 200–500 150–500 200–350 100–400 50–350

300–500 10–100 200–500 100–500 20–200 10–100 200–500 20–200

228

L. Chunlin, L. Layuan / Computer Standards & Interfaces 33 (2011) 220–231

Table 3 Samples of buyer device agents. Buyer device agents

Deadline

1 2 3 4 5 6 7 8 9 10

100 200 300 400 100 400 200 100 300 200

Budget

1500 500 100 500 1000 500 1500 1000 1500 100

Energy consumption Min

Max

0.3 0.3 0.2 0.2 0.2 0.1 0.2 0.1 0.3 0.2

0.6 0.6 0.5 0.4 0.5 0.3 0.4 0.3 0.6 0.4 Fig. 3. Energy allocation efficiency under various expense budget.

domain. The first level performs overall scheduling based on the FIFS algorithm (First Input First Service). A revised Min-Min heuristic algorithm is enforced to the second level in order to efficiently map tasks to wireless devices. In the second level algorithm, mobile node selection is targeted to minimize the energy consumed due to communication and computation. Ref. [33] adopts Min-Min algorithm, and the operation of the algorithm in Ref. [33] is described as follows: A list of scheduling subtasks is created. Initially this list consists of subtasks with no predecessors. For each subtask i in the above list, across all wireless nodes, it finds the node j that gives the subtask its minimum value Ofpower, which is defined as the percentage of energy consumed by each node to complete the entire task, ignoring other subtasks in the list. From among all the subtask/ node pairs, it finds the pair that gives the minimum value Ofpower, while meeting deadline D. The subtask found in the above step is then removed from the list of scheduling subtasks and is mapped to its paired machine. Update the time and energy availability of the wireless node on which the subtask is scheduled and also across all nodes that send global data items to the scheduled subtask. The set of scheduling subtasks is updated to include any other new subtasks. In the simulation, we compare economics-based negotiation algorithm among mobile devices in mobile grid (ENA) with poweraware hierarchical scheduling algorithm (denoted as PHSA in the simulation) [33] in terms of energy allocation efficiency, execution success ratio, energy consumption ratio and response time. Energy allocation efficiency (EAE) is defined as the percentage of allocated energy among total available energy resources of seller devices. Execution success ratio (ES) is the percentage of jobs executed successfully before their deadline. Energy consumption ratio (EC) is defined as the percentage of consumed energy of grid users (buyer device agents) to complete the job. We compare two algorithms by varying expense budget, system load and job deadline to study how they affect the performance of ENA and PHSA algorithms. The job expense budget (B) is set from 100 to 1500. The job deadline (T) is set from 100 to 400. System load is defined as the ratio of the total number of requests arrived in one interval over the number of requests that can be handled by the system within one interval. The value of system load expresses the extent to which the whole system is busy. If in a certain period of time the number of jobs submitted to the system is small, the system load is light; otherwise, the system load is heavy. System load influences the performance of scheduling inherently. Load factor (LF) varies from 0.1 to 0.9.

Fig. 4. Execution success ratio under various expense budget.

Fig. 5. Energy consumption ratio under various expense budget.

5.3. Result analysis Figs. 3–6 illustrate the effects of expense budget on energy allocation efficiency, execution success ratio, energy consumption ratio and response time. The expense budget (B) is set from 100 to 1500. Considering the energy allocation efficiency, from the results in Fig. 3, when increasing budget values by B = 1000, the energy

Fig. 6. Response time under various expense budget.

L. Chunlin, L. Layuan / Computer Standards & Interfaces 33 (2011) 220–231

229

allocation efficiency of ENA is 32% more than that by B = 100. Under same budget value (B = 1000), the energy allocation efficiency of ENA becomes 23% higher than PHSA. A larger budget brings out higher energy allocation efficiency. Because more buyer device agents can use expensive energy resources gotten from seller device agents to complete the jobs within the deadline, seller device agents can maximize its profits and get higher energy allocation efficiency. Compared with PHSA, the energy allocation efficiency of ENA decreases slowly than PHSA when the expense budget decreases. When expense budget is 800 (B = 800), energy allocation efficiency of PHSA increases to 61%, energy allocation efficiency of ENA is up to 90%. Fig. 4 is to show the effect of expense budget on execution success ratio. When increasing budget values, the execution success ratio becomes higher. A larger expense budget enables buyer device agents to afford more expensive resources to complete the job before its deadline. When the budget increases (B = 1000), execution success ratio of PHSA is as much as 35% more than that with B = 100. Under the same expense budget (B = 800), ENA has 21% higher execution success ratio than PHSA. Fig. 5 shows the energy consumption ratio under different expense budgets. A larger budget enables buyer device agent to use more energy resources with high price to complete the job before its deadline. When expense budgets are high, energy consumption ratio is high. When B = 1000, the energy consumption ratio of ENA is 10% more than energy consumption ratio by B = 100. Compared with PHSA, the energy consumption ratio of ENA is close to PHSA when the expense budget increases. When expense budget is 1000 (B = 1000), energy consumption ratio of PHSA is 8% more than ENA. Considering the response time, Fig. 6 represents the impact of different budget constraint on the response time, when the budgets are small, both ENA and PHSA spend more time to complete jobs, because the buyer device agents can't buy expensive energy resources from seller device agents. When the budget increases, ENA outperforms PHSA in term of response times, because the buyer device agents can afford more expensive energy resources; the objective of ENA is to maximize the utility as long as they can complete jobs within deadline. When expense budget is 1000 (B = 1000), response time of PHSA is 19% more than ENA. The following four figures (Figs. 7–10) are to study energy allocation efficiency, execution success ratio, energy consumption ratio and response time under different load factor (LF) respectively. Load factor varies from 0.1 to 0.9. Fig. 7 shows when load factor increases (LF = 0.5), energy allocation efficiency of ENA is as much as 12% less than that with LF = 0.1. The energy allocation efficiency is larger when the load factor (LF) is smaller. When load factor increases, system load increases; some buyer device agent's requirements can't be processed on time. The buyer device agents with low budget don't have enough money to buy energy and can't complete jobs before deadline; this leads to low energy allocation efficiency. When load factor is 0.5 (LF = 0.5), energy allocation efficiency of ENA is 22% more than PHSA. Compared with PHSA, the energy allocation efficiency of

ENA decreases slowly than PHSA when the load factor increases. When the load factor is 0.6 (LF = 0.6), the energy allocation efficiency of PHSA decreases to 55%, the energy allocation efficiency of ENA decreases to 75%. Considering the execution success ratio, from the results in Fig. 8, when load factor is 0.5 (LF = 0.5), the execution success ratio of PHSA is 28% less than that using ENA. When load factor increases, execution success ratio of PHSA deteriorates quickly. PHSA scheduling algorithm doesn't consider optimization of both resource providers and grid users, it wants to minimize the runtime of jobs or minimize the energy usage. ENA has higher execution success ratio than PHSA. When the load factor increases, fewer requests from buyer device agents can be admitted into the system due to the increase of system burden, so, fewer requests from buyer device agents can be executed successfully before their deadline. Fig. 9 shows the energy consumption ratio under different system loads. When system load increases, more requests need to be processed within one interval and the energy consumption ratio increases. When increasing the load factor by LF = 0.7, the energy consumption ratio of ENA is as much as 19% more than LF = 0.4. Under same load factor (LF = 0.8), the energy consumption ratio of ENA is 10% less than that of PHSA. Fig. 10 shows the effect of load factor on the response time. The smaller is LF, the lower is the response time. When LF = 0.7, the response time of ENA is as much as 30% more than that by LF = 0.20. The value of LF is low, the system is lightly loaded, the unit price of the energy provided by seller device agent is cheap; buyer device agents can choose cheap energy resources to complete jobs under the deadline, so the satisfaction of the buyer device agent is high. When the system is heavily loaded, the unit price of the energy resource is expensive; the satisfaction of the buyer device agent is less. How the deadline effects on energy allocation efficiency, execution success ratio, energy consumption ratio and response time were illustrated in Figs. 11–14 respectively. Fig. 11 shows the energy allocation efficiency varies under different deadlines. From the results in Fig. 11, the energy allocation efficiency increases when the deadline increases. When the deadline is low, the job with low budget can't buy

Fig. 7. Energy allocation efficiency under various load factor.

Fig. 9. Energy consumption ratio under various load factor.

Fig. 8. Execution success ratio under various load factor.

230

L. Chunlin, L. Layuan / Computer Standards & Interfaces 33 (2011) 220–231

Fig. 12. Execution success ratio under various deadline. Fig. 10. Response time under various load factor.

expensive energy resource; this leads to low energy allocation efficiency. When the deadline is 400 (T = 400), the energy allocation efficiency of ENA is 42% higher than T = 100. Compared with PHSA, the allocation efficiency of ENA decreases slowly than PHSA when the deadline decreases. When deadline is 100 (T = 100), energy allocation efficiency of PHSA decreases to 32%, energy allocation efficiency of ENA decreases to 61%. Fig. 12 is to show the effect of the deadline on execution success ratio. When the deadline is low, execution success ratios of PHSA and ENA are low. When increasing deadline, execution success ratios of ENA and PHSA become higher. Because under low deadline, more jobs can't be completed on time. When deadline is 100 (T = 100), execution success ratio of PHSA falls to 41%, execution success ratio of ENA falls to 50%. Fig. 13 is to show the effect of the deadline on energy consumption ratio. From the results in Fig. 13, when the deadline is low, there is intensive demand for the resources in short time, so the buyer device agents should choose more energy resource to process the jobs, energy consumption ratio is high. However, when the deadline changes to higher, it is likely that jobs can be completed before deadline, so grid job considers using the energy saving resources to complete tasks to maximize the utility, energy consumption ratio is low. When deadline is 100 (T = 100), energy consumption ratio of PHSA is 82%; energy consumption ratio of ENA is 76%. From the results in Fig. 14, the response time decreases when the deadline decreases. When the deadline is low, jobs need to be completed in short time, so buyer device agent chooses more expensive energy resources to process the jobs. However, when the deadline changes to higher, it is likely that jobs can be completed before deadline, so buyer device agent considers using the cheaper energy resources to complete jobs, the response time is high. When the deadline is 400 (T = 400), the response time of ENA is 17% higher than T = 200. The response time of ENA is close to PHSA. From above simulation results, we can get some conclusions. Our economics-based negotiation algorithm among mobile devices in mobile grid (ENA) jointly considers both the benefits of the buyer device agents and seller device agents. ENA algorithm considers two aspects of the utility function: one is the utility function for

Fig. 11. Energy allocation efficiency under various deadline.

maximizing the benefits of buyer device agents and the other is for optimizing the revenue of seller device agents. PHSA is a user-centric scheduling, which mainly considers user's benefit. The objective of PHSA is to minimize the total battery energy used to successfully accomplish a job, as well as optimize time deadline. Energy allocation efficiency is the performance metrics for seller device agents (grid resource providers), energy consumption ratio, execution success ratio and response time are the performance metrics for buyer device agents (grid users). So from above simulation results, the energy allocation efficiency and execution success ratio of ENA are better than PHSA, energy consumption ratio and response time of ENA are close to PHSA. 6. Conclusions In this paper, we investigate the cooperation among mobile devices to balance the energy consumption in mobile grid environment. In the mobile grid, the energies of mobile devices are uneven, energy-poor devices can exploit other devices with spare energy. Our model consists of two actors: A buyer device agent represents a mobile device that intends to purchase energy from other devices. A seller device agent represents a mobile device that is willing to sell spare energy to other devices. The objective of optimal energy allocation in mobile grid is to maximize the utility of the system without exceeding the energy capacity, expense budget and the deadline. An economics-based negotiation algorithm among mobile devices is proposed. The proposed algorithm decomposes mobile grid system optimization problem into a sequence of two sub-problems. In the simulation, the performance evaluation of economics-based negotiation algorithm among mobile devices is evaluated. In the future, we will consider moving our method to a real platform to test its feasibility. Acknowledgements The authors thank the editor and the anonymous reviewers for their helpful comments and suggestions. The work was supported by

Fig. 13. Energy consumption ratio under various deadline.

L. Chunlin, L. Layuan / Computer Standards & Interfaces 33 (2011) 220–231

[16]

[17]

[18]

[19] Fig. 14. Response time under various deadline. [20]

the National Natural Science Foundation of China (NSF) under grants (No. 60773211, and No. 60970064), Program for New Century Excellent Talents in University, China (NCET-08-0806), the National Science Foundation of HuBei Province under Grant No. 2008CDB335, Open Fund of the State Key Laboratory of Software Development Environment under Grant No. SKLSDE-2009KF-2-02, Fok Ying-Tong Education Foundation, China (Grant No. 121067), and Scientific and Technological Project in WuHan under Grant No.201010621207 and the Fundamental Research Funds for the Central Universities (2010-II003). Any opinions, findings, and conclusions are those of the authors and do not necessarily reflect the views of the above agencies.

[21]

[22]

[23]

[24] [25] [26]

References [1] S.H. Srinivasan, Pervasive wireless grid architecture, Wireless On-demand Network Systems and Services, 2005, WONS 2005. Second Annual Conference, 19-21 Jan. 2005, pp. 83–88. [2] Eunjeong Park, Heonshik Shin, Seung Jo. Kim, et al., Selective grid access for energy-aware mobile computing, in: J. Indulska (Ed.), Proceedings of UIC 2007, LNCS 4611, 2007, pp. 798–807. [3] KarinAnna Hummel, Gerda Jelleschitz, A robust decentralized job scheduling approach for mobile peers in ad-hoc grids, cluster computing and the grid, CCGRID 2007. Seventh IEEE International Symposium on, May 2007, 2007, pp. 461–470. [4] A.M. Otebolaku, M.O. Adigun, J.S. Iyilade, O. Ekabua, On modeling adaptation in context-aware mobile grid systems, Third International Conference on Autonomic and Autonomous Systems (ICAS 2007), IEEE Press, 2007. [5] V. Vetri Selvi, Shakir Sharfraz, Ranjani Parthasarathi, Mobile ad hoc grid using trace based mobility model, in: C. Cérin, K.-C. Li (Eds.), GPC 2007, LNCS 4459, 2007, pp. 274–285. [6] D. Chu, M. Humphrey, Mobile OGSI.NET: grid computing on mobile devices, 5th IEEE/ACM International Workshop on Grid Computing - GRID2004, Pittsburgh, PA, Nov 8 2004. [7] Venkata Durga Kiran Kasula, Performance analysis of layered architecture to integrate mobile devices and grid computing with a resource scheduling algorithm, conference on computational intelligence and multimedia applications, 2007, International Conference on Volume 4, 13-15, Dec. 2007, pp. 352–356. [8] Sze-Wing Wong, Kam-Wing Ng, Performance evaluation of mobile grid services, in: N.T. Nguyen, et al., (Eds.), KES-AMSTA 2008, LNAI 4953, 2008, pp. 557–566. [9] K. Katsaros, G.C. Polyzos, Optimizing operation of a hierarchical campus-wide mobile grid for intermittent wireless connectivity, IEEE LAN/MAN Workshop (LANMAN 2007), 2007. [10] Y. Huang, S. Mohapatra, N. Venkatasubramanian, An energy-efficient middleware for supporting multimedia services in mobile grid environments, IEEE International Conference on Information Technology, 2005. [11] Kyong Hoon Kim, Rajkumar Buyya, Jong Kim, Power aware scheduling of bag-oftasks applications with deadline constraints on DVS-enabled clusters, Proceedings of the Seventh IEEE International Symposium on Cluster Computing and the Grid, IEEE Computer Society, Washington, DC, USA, 2007, pp. 541–548. [12] Ersan Ozturk, D. Turgay Altilar, IMOGA: an architecture for integrating mobile devices into grid applications, Mobile and Ubiquitous Systems: Networking & Services, 2007, MobiQuitous 2007. Fourth Annual International Conference, , 6-10 Aug. 2007, pp. 1–8. [13] Tao Guan, Ed. Zaluska, David De Roure, A grid service infrastructure for mobile devices, Proceedings of the First International Conference on Semantics, Knowledge and Grid , Beijing 27-29, Nov, 2005, pp. 42–47. [14] V.C.M. Borges, J.S. Dias, A.G.M. Rossetto, M.A.R. Dantas, SuMMIT an architecture for mobile devices to coordinate the execution of applications in grid environments enabling technologies: infrastructure for collaborative enterprises, 2007, WETICE 2007. 16th IEEE International Workshops, 18-20 June 2007, pp. 217–222. [15] D.G. Rosado, E.M. Fernandez, J. Lopez, M. Piattini, PSecGCM: process for the development of secure grid computing based systems with mobile devices

[27]

[28] [29] [30]

[31]

[32]

[33]

231

availability, reliability and security, 2008. ARES 08, Third International Conference on Volume , Issue , 4-7, March 2008, pp. 136–143. Hiroyuki Morohoshi, Runhe Huang, Jianhua Ma, Ying Huang, A bridge linking ubiquitous devices and grid services, AINA 2007, Proceedings of the 21st International Conference on Advanced Networking and Applications, 2007, pp. 747–753. L. Shang, R.P. Dick, N.K. Jha, An economics-based power-aware protocol for computation distribution in mobile ad-hoc networks, Proc. IASTED International Conference on Parallel and Distributed Computing and Systems, Nov. 2002, pp. 344–349. Tao Guan, Ed. Zaluska, David De. Roure, Extending pervasive devices with the semantic grid: a service infrastructure approach, Sixth IEEE International Conference on Computer and Information Technology (CIT'06), 2006, pp. 113–118. Ahsan Ikram, Arshad Ali, Ashiq Anjum, Conrad Steenberg, Harvey B. Newman, Julian J. Bunn, Michael Thomas, Tahir Azim, Grid enabled data analysis on handheld devices, Networking and Communication Conference, 2004, INCC 2004. International, 11-13 June 2004, pp. 158–164. Hassan Jameel, Umar Kalim, Ali Sajjad, Sungyoung Lee, Taewoong Jeon, Mobile-togrid middleware: bridging the gap between mobile and grid environments, in: P. M.A. Sloot, et al., (Eds.), EGC 2005, LNCS 3470, 2005, pp. 932–941. Chunlin Li, Layuan Li, Multi Economic agent interaction for optimizing the aggregate utility of Grid Users In Computational Grid, Applied Intelligence, vol. 25/2, Springer-Verlag, Heidelberg, October, 2006, pp. 147–158. Chunlin Li, Layuan Li, A distributed utility-based two level market solution for optimal resource scheduling in computational grid, Parallel Computing, vol. 31/34, Elsevier, USA, March-April, 2005, pp. 332–351. Chunlin Li, Layuan Li, Utility based QoS optimisation strategy for multi-criteria scheduling on the grid, Journal of Parallel and Distributed Computing, vol. 67/2, Elsevier, USA, February, 2007, pp. 142–153. Chunlin Li, Layuan Li, Joint QoS optimization for layered computational grid, Information Sciences, vol. 177/15, Elsevier, August 2007, pp. 3038–3059. Chunlin Li, Layuan Li, Agent framework to support computational grid, Journal of Systems and Software, vol. 70/1-2, Elsevier, February, 2004, pp. 177–187. P.B. Luh, D.J. Hoitomt, Scheduling of manufacturing systems using the Lagrangian relaxation technique, IEEE Transactions on Automation and Control 38 (7) (1993) 1066–1079. Frank Kelly, Aman Maulloo, David Tan, Rate control for communication networks: shadow prices, proportional fairness and stability, Journal of the Operational Research Society 49 (3) (1998) 237–252. JAVASIM, http://javasim.ncl.ac.uk. BRITE, http://www.cs.bu.edu/brite. V. Swaminathan, K. Chakrabarty, Real-time task scheduling for energy-aware embedded systems, Journal of the Franklin Institute 338 (September 2001) 729–750. Dakai Zhu, Rami Melhem, Daniel Mosse, Energy efficient configuration for QoS in reliable parallel servers, Proc. of the Fifth European Dependable Computing Conference, LNCS 3463, Apr. 2005, pp. 122–139. J.-K. Kim, H.J. Siegel, A.A. Maciejewski, R. Eigenmann, Dynamic mapping in energy constrained heterogeneous computing systems, parallel and distributed processing symposium, Proceedings. 19th IEEE International 04-08, April, 2005, 2005. Chang-Qin Huang, Zhi-Ting Zhu, Yong-He Wu, Zheng-Hong Xiao, Power-aware hierarchical scheduling with respect to resource intermittence in wireless grids, Proceedings of the Fifth International Conference on Machine Learning and Cybernetics, Dalian, 13-16 August 2006, 2006, pp. 693–698.

Li Chunlin received her ME in Computer Science from Wuhan Transportation University in 2000, and her PhD in Computer Software and Theory from Huazhong University of Science and Technology in 2003. She now is a Professor of Computer Science in Wuhan University of Technology. Her research interests include computational grid, distributed computing and mobile agent. Li Layuan received his BE from Harbin Institute of Military Engineering, in 1970 and his ME from Huazhong University of Science and Technology, in 1982. He academically visited Massachusetts Institute of Technology, in 1985 and 1999. Currently, he has been with the Wuhan University of Technology, where he is a Professor and a PhD Tutor of Computer Science and Editor-in-Chief of the Journal of WUT. His research interests include high speed computer networks and protocol engineering. He has published over 150 papers and is the author of six books. He was awarded the National Special Prize by the Chinese Government in 1993.