mechanism design for a multicommodity flow game in service network alliances

5
Operations Research Letters 36 (2008) 520–524 Contents lists available at ScienceDirect Operations Research Letters journal homepage: www.elsevier.com/locate/orl Mechanism design for a multicommodity flow game in service network alliances Richa Agarwal * , Özlem Ergun H. Milton Stewart School of Industrial and Systems Engineering, Georgia Institute of Technology, 765 Ferst Drive, NW, Atlanta, GA 30332-0205, United States article info Article history: Received 15 August 2007 Accepted 2 April 2008 Available online 11 June 2008 Keywords: Mechanism design Multicommodity flow game Inverse optimization abstract We study a collaborative multicommodity flow game where individual players own capacity on the edges of the network and share this capacity to deliver commodities. We present membership mechanisms, by adopting a rationality based approach using notions from game theory and inverse optimization, to allocate benefits among the players in such a game. © 2008 Elsevier B.V. All rights reserved. 1. Introduction In the transportation industry carriers form alliances to design collaborative service networks. They bring their assets, such as ships in sea cargo transportation, in to a pool and operate them to- gether to provide capacity on the edges of the network and route their demand in the network. Collaborative networks help carriers to improve asset utilization, share capital costs, gain economies of scale and explore new markets. This situation where multiple par- ticipants/players utilize the underlying collaborative network to si- multaneously route their revenue maximizing demand appears in other application areas as well. In the case of the Internet, the back- bone infrastructure is provided by a set of companies and end users utilize the capacity on the network to route their data by paying fees to the network owner(s). Similarly, in procurement networks common capacity needs to be allocated among multiple commodi- ties sourced through common suppliers [3]. In a centralized setting, for instance when there is a single decision-maker who makes all the decisions, a maximum multi- commodity flow problem can be solved to identify the set of revenue maximizing demands to satisfy. However, in real life applications where multiple players interact, although individual players form alliances to take advantage of the synergies that exist among their operations, usually only part of the decisions regarding the alliance’s operations are determined jointly. For example, given the capacities in the underlying collaborative network, individual carriers selfishly make their own routing * Corresponding address: H. Milton Stewart School of Industrial and Systems Engineering, Georgia Institute of Technology, 2016 NE Katsura St, 98029 Issaquah, WA, United States. Tel.: +1 404 822 7123. E-mail addresses: [email protected], [email protected] (R. Agarwal), [email protected] (Ö. Ergun). decisions to satisfy their demand and maximize their own revenue. Also, they collect the revenue generated by satisfying their own demand and exchange capacity on the assets at some pre- determined prices. Specifically, a player does not allow other players to freely utilize his capacity. In this paper, we provide a mechanism to regulate the interaction among the players by determining capacity exchange costs. These exchange prices guide the individual players’ profit maximizing behavior towards the solution of the centralized multicommodity flow problem. Flow games were first considered by [8,9] for networks with a single commodity where each arc is owned by an unique player. [5] extended this result by studying multiple commodities with a common source and a sink. More recently, [10] studies the coalitional multicommodity game in which players are the nodes of the given network who own capacity in terms of the maximum flow allowed through that node. In general, the focus of these papers is to first obtain the optimal flow in the network by solving the centralized problem and then allocate the revenue among the players in a ‘‘fair’’ way. This strategy assumes a centralized planner as the individual players have no control on the system operations and at the end they receive an overall payoff from the central planner. The centralized systems are very efficient as the decision-maker chooses the optimal solution for the collaboration and allocates the overall benefits in a fair manner so that the collaboration is stable. However, in many settings designing fully centralized systems is not realistic. In decentralized system the incentives within the system must be designed in such a way that the individual players are motivated to choose solutions that are collectively optimal for the collaboration and the revenue obtained is close to the maximum revenue that can be obtained with a fully centralized system. Decentralized systems such as the one for the shortest path problems have been studied in literature [11,6]. In this paper, we consider a more general network as compared to the literature as we allow multiple players to own capacity 0167-6377/$ – see front matter © 2008 Elsevier B.V. All rights reserved. doi:10.1016/j.orl.2008.04.007

Upload: richa-agarwal

Post on 21-Jun-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mechanism design for a multicommodity flow game in service network alliances

Operations Research Letters 36 (2008) 520–524

Contents lists available at ScienceDirect

Operations Research Letters

journal homepage: www.elsevier.com/locate/orl

Mechanism design for a multicommodity flow game in service network alliancesRicha Agarwal ∗, Özlem ErgunH. Milton Stewart School of Industrial and Systems Engineering, Georgia Institute of Technology, 765 Ferst Drive, NW, Atlanta, GA 30332-0205, United States

a r t i c l e i n f o

Article history:Received 15 August 2007Accepted 2 April 2008Available online 11 June 2008

Keywords:Mechanism designMulticommodity flow gameInverse optimization

a b s t r a c t

We study a collaborativemulticommodity flow gamewhere individual players own capacity on the edgesof the network and share this capacity to deliver commodities. We present membership mechanisms,by adopting a rationality based approach using notions from game theory and inverse optimization, toallocate benefits among the players in such a game.

© 2008 Elsevier B.V. All rights reserved.

1. Introduction

In the transportation industry carriers form alliances to designcollaborative service networks. They bring their assets, such asships in sea cargo transportation, in to a pool and operate them to-gether to provide capacity on the edges of the network and routetheir demand in the network. Collaborative networks help carriersto improve asset utilization, share capital costs, gain economies ofscale and explore newmarkets. This situation where multiple par-ticipants/players utilize the underlying collaborative network to si-multaneously route their revenue maximizing demand appears inother application areas aswell. In the case of the Internet, the back-bone infrastructure is provided by a set of companies and end usersutilize the capacity on the network to route their data by payingfees to the network owner(s). Similarly, in procurement networkscommon capacity needs to be allocated amongmultiple commodi-ties sourced through common suppliers [3].

In a centralized setting, for instance when there is a singledecision-maker who makes all the decisions, a maximum multi-commodity flow problem can be solved to identify the set ofrevenue maximizing demands to satisfy. However, in real lifeapplications where multiple players interact, although individualplayers form alliances to take advantage of the synergies thatexist among their operations, usually only part of the decisionsregarding the alliance’s operations are determined jointly. Forexample, given the capacities in the underlying collaborativenetwork, individual carriers selfishly make their own routing

∗ Corresponding address: H. Milton Stewart School of Industrial and SystemsEngineering, Georgia Institute of Technology, 2016 NE Katsura St, 98029 Issaquah,WA, United States. Tel.: +1 404 822 7123.

E-mail addresses: [email protected], [email protected] (R. Agarwal),[email protected] (Ö. Ergun).

0167-6377/$ – see front matter© 2008 Elsevier B.V. All rights reserved.doi:10.1016/j.orl.2008.04.007

decisions to satisfy their demand andmaximize their own revenue.Also, they collect the revenue generated by satisfying their owndemand and exchange capacity on the assets at some pre-determined prices. Specifically, a player does not allow otherplayers to freely utilize his capacity. In this paper, we providea mechanism to regulate the interaction among the players bydetermining capacity exchange costs. These exchange prices guidethe individual players’ profit maximizing behavior towards thesolution of the centralized multicommodity flow problem.

Flow games were first considered by [8,9] for networks with asingle commodity where each arc is owned by an unique player.[5] extended this result by studying multiple commodities witha common source and a sink. More recently, [10] studies thecoalitional multicommodity game in which players are the nodesof the given network who own capacity in terms of the maximumflow allowed through that node. In general, the focus of thesepapers is to first obtain the optimal flow in the network by solvingthe centralized problem and then allocate the revenue amongthe players in a ‘‘fair’’ way. This strategy assumes a centralizedplanner as the individual players have no control on the systemoperations and at the end they receive an overall payoff from thecentral planner. The centralized systems are very efficient as thedecision-maker chooses the optimal solution for the collaborationand allocates the overall benefits in a fair manner so that thecollaboration is stable. However, in many settings designing fullycentralized systems is not realistic. In decentralized system theincentives within the system must be designed in such a way thatthe individual players are motivated to choose solutions that arecollectively optimal for the collaboration and the revenue obtainedis close to the maximum revenue that can be obtained with a fullycentralized system. Decentralized systems such as the one for theshortest path problems have been studied in literature [11,6].

In this paper, we consider a more general network as comparedto the literature as we allow multiple players to own capacity

Page 2: Mechanism design for a multicommodity flow game in service network alliances

R. Agarwal, Ö. Ergun / Operations Research Letters 36 (2008) 520–524 521

on a single edge and consider multiple commodities with theirrespective sources and sinks. The contribution of this paperis the design of a mechanism to distribute the benefits ofcollaboration among the players in a decentralized setting ofthe multicommodity flow game. As the players are selfish,an individual player follows a strategy which maximizes hisown revenue. We model this strategy explicitly as a linearprogram (LP). The mechanism drives each individual player’sLP towards the collaborative optimal solution using inverseoptimization techniques. Specifically, the mechanism computescapacity exchange costs on the edges of the network so that giventhese costs the routing and capacity exchange decisions eachplayermakes selfishly results in the collaborative optimal flow. Themechanism allows a player to collect the revenue from satisfyinghis own demand and charge (pay) other players for utilizingcapacity owned by him (them).We show that for the decentralizedmulticommodity flow game, capacity exchange costs can alwaysbe found efficiently. Further, for a special case of the problem, i.e.when each edge in the network has an unique owner, we provethat the net revenue received by the players operating under themechanism provides a ‘‘fair’’ allocation.

The rest of the paper is organized as follows: in the next sectionwe review some relevant key game theoretic concepts. In Section 3we present the formal problem definition. In Section 4 we providea basic core allocation. The design of the mechanism and relatedresults are discussed in Section 5. Our conclusions are presented inSection 6.

2. Game theory basics

A cooperative game is defined by a set N of players and acharacteristic function V : 2N

→ R. V(S) maps a value to everysubset/coalition S ⊂ N , interpreted as the total gain the membersof S can achieve by cooperating. We assume that V(∅) = 0. Theset N itself is referred to as the grand coalition. The central problemin cooperative game theory is how to allocate the total gain V(N)among the individual players i ∈ N in a ‘‘fair’’ way. One of themost prominent and widely accepted notions of fairness is the‘‘core’’ of the game. A payoff allocation in the core represents a verystrong type of stability that is not threatened by its sub-coalitions.However, frequently the core of a game is empty. Mathematically,a payoff vector x ∈ R, where xi is the payoff to player i, is said to bein the core if:∑i∈N

xi = V(N) (budget balance property) (1)∑i∈S

xi ≥ V(S) ∀S ⊂ N(stability property). (2)

Given a set of players N and a set O of possible outcomes forthese players, let vi(o) be the valuation of outcome o for player i.The goal ofmechanism design is to design an algorithm that choosesan outcome, o ∈ O and an n-tuple of side payments {s1, . . . , sn}(such that the total payment, xi, to player i is xi = vi(o) + si)which makes the solution o attractive to the players. For a detaileddiscussion of mechanism design we refer the reader to [11].

3. Problem definition

We define the maximum multicommodity flow (MCF ) gameas follows: let G = (V , E) be a directed graph on a set of nodesV and a set of edges E. Let N be the set of players. Each playeri ∈ N has a demand set Di where d(o,d,i) denotes the maximumamount of existing demand from node o to node d for player i andr(o,d,i) denotes the revenue generated by delivering a unit of thisdemand. Each edge e ∈ E has a capacity ce, γ i

e denotes the fraction

of capacity that player i owns on edge e and∑

i∈N γ ie = 1. In the

multicommodity setting, each demand triplet (o, d, i) is referredto as a different commodity. An outcome of the game is a feasiblemulticommodity flow, subject to demand and capacity constraints,that maximizes the overall revenue generated, denoted by V(N),and an allocation, x ∈ Rn, of the total revenue among the players.For a set S ⊂ N , we denote by V(S) the maximum revenuegenerated by the network induced by players in set S. Linearprogram (PN ) computes the flow that maximizes the revenuegenerated by the grand coalition.

(PN) : V(N) = max∑

(o,d,i)∈D

f (o,d,i)(d,o,i) r(o,d,i) (3)

such that∑

{e:e∈IEdges(v)}

f (o,d,i)e −

∑{e:e∈OEdges(v)}

f (o,d,i)e ≤ 0

∀v ∈ V ∀(o, d, i) ∈ D (4)∑(o,d,i)∈D

f (o,d,i)e ≤ ce ∀e ∈ E (5)

f (o,d,i)(d,o,i) ≤ d(o,d,i) ∀(o, d, i) ∈ D (6)

f ≥ 0. (7)

In (PN ), for each (o, d, i), f (o,d,i)e denotes the amount of flow of

commodity (o, d, i) on edge e. IEdges(v) denote the set of incomingedges into node v and OEdges(v) denote the set of outgoing edgesfrom node v. The objective function (3) maximizes the revenueobtained by satisfying demand. Constraint (4) is a flow balanceconstraint at every node of the network. Constraint (5) is a capacityconstraint on each edge and constraint (6) is a demand constraintfor every commodity. Let (DN) denote the dual of the linearprogram (PN ). Let π = {π (o,d,i)

v : π ≥ 0, ∀v ∈ V , ∀(o, d, i) ∈ D},α = {αe : αe ≥ 0, ∀e ∈ E} and β = {β(o,d,i) : β(o,d,i) ≥

0, ∀(o, d, i) ∈ D} be the dual variables associated with constraints(4), (5) and (6) respectively.

4. An allocation in the core

For cooperative games when the players are concerned with anoverall payoff only, utilizing the dual optimal solution to the grandcoalition’s optimization problem is a common strategy to obtain anallocation for the players. [12] showed that for linear productiongames this provides an allocation in the core. [9] showed thatfor simple networks (single commodity flow networks whereeach edge has a single unit of capacity), every core allocationcorresponds to an optimal dual solution for the correspondingoptimization problem. [4] provides an extension of [9].

Theorem 1. The core of the multicommodity flow game definedabove is non-empty and a payoff allocation in the core can beconstructed in polynomial time by solving the dual program (DN).However, the core of this game is not fully characterized by these dualsolutions.Proof. This theorem can be proved by considering an optimal dualsolution (π, α, β) and a payoff vector x = {x1, . . . , xn}:

xi =

∑e∈E

γ ieceαe +

∑(o,d,i)∈Di

d(o,d,i)β(o,d,i). (8)

The core of the MCF game cannot be fully characterized by thedual payoff vector (8). Consider a network with two nodes 1 and 2,edge (1, 2) and two players A and B such that player A owns 2 unitsof capacity on edge (1, 2) and player B has a unit demand from 1to 2 generating a unit revenue. Clearly, the optimal solution valueis one unit and (xA = 0.5, xB = 0.5) is an allocation in the core.However this payoff vector does not correspond to any dual payoffvector (8) since every dual payoff vector will assign zero units toplayer A. �

Page 3: Mechanism design for a multicommodity flow game in service network alliances

522 R. Agarwal, Ö. Ergun / Operations Research Letters 36 (2008) 520–524

5. Mechanism design

Let the optimal collaborative flow in the network be f ∗,an optimal solution to (PN ). In many applications, given anoptimal flow in the network, players are concerned with not onlytheir overall payoffs but also the flow decisions. For examplewhen carriers collaborate in transportation networks, each carriercollects the revenue fromhis customers by satisfying their demandand evaluates the valuation of solution f ∗ for himself as vi(f ∗) =∑

(o,d,i)∈Di r(o,d,i)f∗(o,d,i)(d,o,i) . Note that it is in the best interest of the

collaboration that playersmake their demand routing and capacityexchange decisions as implied by f ∗. However, the computation ofoptimal flow f ∗ ignores the ownership of capacity on the edgesby the players. That is, it assumes the players readily exchangecapacity on the edges of the network.

We now present a mechanism that provides incentives tothe players to route their flows and exchange capacity amongthemselves as prescribed by f ∗. The incentive is provided in theform of capacity exchange costs, denoted by the vector cost . Thenet profit generated by a player i is calculated by adding vi(f ∗) tothemoney player i receives from the other players using capacitieson his edges minus the money i pays to others for using theircapacities. We now present a linear program, representing theperspective of an individual player.

5.1. Single player problem

The key difficulties inmodeling the individual player’s perspec-tive in an alliance are in determining: how should the player ac-count for the flow of other players in the network andwhat portionof their capacities can he use for routing his own flow. We assumethat if a player i owns γ i

e fraction of capacity on edge e then he isallowed to collect γ i

e fraction of the cost payed by other players forusing capacity on edge e. We assume that a player can route all theflow in the network to maximize his profit. However in practice,an individual player can only make decisions regarding his ownflow. In this sense our approach is a conservative one, since themaximum revenue that player i can obtain will always be less thanthe optimal value of this model. However, as described later, thismodel leads to allocations with desirable properties. Inmathemat-ical termswe represent the optimization problem solved by playeri in the alliance as:

(PS i) : max∑

(o,d,i)∈Di

f (o,d,i)(d,o,i) r(o,d,i)

+

∑e∈E

coste

γ ie

∑(o,d,i) 6∈Di

f (o,d,i)e −

(1 − γ i

e

) ∑(o,d,i)∈Di

f (o,d,i)e

(9)

such that∑

e:e∈IEdges(v)

f (o,d,i)e −

∑e:e∈OEdges(v)

f (o,d,i)e ≤ 0

∀v ∈ V ∀(o, d, i) ∈ D (10)∑(o,d,i)∈D

f (o,d,i)e ≤ ce ∀e ∈ E (11)

f (o,d,i)(d,o,i) ≤ d(o,d,i) ∀(o, d, i) ∈ D (12)

f ≥ 0. (13)

The objective function (9) consists of three terms. The firstterm maximizes the revenue generated by satisfying demand. Thesecond term computes the cost paid to player i by other players forusing capacity on an edge owned by player i. Similarly, the thirdterm represents the cost paid by player i to other players for usingcapacity on their edges. Constraints (10)–(13) are network flowconstraints.

5.2. Computation of allocations using inverse optimization

Our aim is to motivate player i and find a vector cost so thatthe collaborative solution f ∗ is optimal for PS i. The problem fitswell in the inverse optimization framework where given a feasiblesolution (flow vector f ∗) to the problem, we wish to identify theparameters of the problem (cost vector cost) which will make thegiven solution (f ∗) optimal for the problem. Inverse problems havebeen studied in a variety of fields. [2] provides a unified frameworkfor studying many inverse optimization problems on networks.

For player i, let (π i), (αi) and (β i) denote the dual variablesassociated with constraints (10), (11) and (12) respectively and(DPS i) denote the dual program corresponding to (PS i). Linearprogramming optimality conditions state that the primal solutionf ∗ and a dual solution (π i, λi, ωi) are optimal for their respectiveproblems if f ∗ is feasible for (PS i) and (π i, λi, ωi) is feasible for(DPS i), and together they satisfy the complementary slacknessconditions. We say that a cost vector, cost , is inverse feasible withrespect to f ∗ if f ∗ is an optimal solution to (PS i) with cost vectorcost . Let E = {e ∈ E :

∑(o,d,i) f

∗(o,d,i)e = ce}, D = {(o, d, i) ∈

D : f ∗(o,d,i)(d,o,i) = d(o,d,i)}, and F = {f ∗(o,d,i)

e : f ∗(o,d,i)e > 0}. Using the

above notation, following gives us a characterization of the inversefeasible cost vector for player i:

(I i) : (π i)(o,d,i)v − (π i)(o,d,i)u + (αi)e ≥ −(1 − γ ie)coste

(o, d, i) ∈ Di e ∈ E : f ∗(o,d,i)e 6∈ F (14)

(π i)(o,d,i)v − (π i)(o,d,i)u + (αi)e = −(1 − γ ie)coste

(o, d, i) ∈ Di e ∈ E : f ∗(o,d,i)e ∈ F (15)

(π i)(o,d,i)v − (π i)(o,d,i)u + (αi)e ≥ γ iecoste

(o, d, i) 6∈ Di e ∈ E : f ∗(o,d,i)e 6∈ F (16)

(π i)(o,d,i)v − (π i)(o,d,i)u + (αi)e = γ iecoste

(o, d, i) 6∈ Di e ∈ E : f ∗(o,d,i)e ∈ F (17)

(π i)(o,d,i)o − (π i)(o,d,i)d + (β i)(o,d,i) ≥ r(o,d,i)

(o, d, i) ∈ Di: f ∗(o,d,i)

(d,o,i) 6∈ F (18)

(π i)(o,d,i)o − (π i)(o,d,i)d + (β i)(o,d,i) = r(o,d,i)

(o, d, i) ∈ Di: f ∗(o,d,i)

(d,o,i) ∈ F (19)

(π i)(o,d,i)o − (π i)(o,d,i)d + (β i)(o,d,i) ≥ 0

(o, d, i) 6∈ Di: f ∗(o,d,i)

(d,o,i) 6∈ F (20)

(π i)(o,d,i)o − (π i)(o,d,i)d + (β i)(o,d,i) = 0

(o, d, i) 6∈ Di: f ∗(o,d,i)

(d,o,i) ∈ F (21)

(αi)e = 0 ∀e 6∈ E (β i)(o,d,i) = 0 ∀(o, d, i) 6∈ D (22)

(π i)(o,d,i)v ≥ 0 ∀v ∈ V , ∀(o, d, i) ∈ D;

(αi)e ≥ 0 ∀e ∈ E; (β i)(o,d,i) ≥ 0 ∀(o, d, i). (23)

However, our aim is to determine a cost vector such that f ∗

is an optimal flow for all single player problems (PS i). Extendingthe above arguments for all the players gives us the overallinverse feasibility problem, INVP , as the union of all the individualplayers’ inverse problems connected together with the commoncost vector.

(INVP) :

⋃i∈N

(I i). (24)

To prohibit players from colluding to form sub coalitions, werequire a cost vector such that for any subset S ⊂ N of players f ∗ is

Page 4: Mechanism design for a multicommodity flow game in service network alliances

R. Agarwal, Ö. Ergun / Operations Research Letters 36 (2008) 520–524 523

an optimal solution for the corresponding problem PSS . However,there are an exponential number of such subsets and including theinverse problem corresponding to each of them in INVP will causeINVP to become exponential in size. The next theorem shows thatit is sufficient to consider only individual players’ problems in INVPto determine a suitable cost vector.

Theorem 2. The inverse problem (INVP) identifies a cost vector suchthat f ∗ is optimal for any PSS such that S ⊂ N .

Proof. Let((π i∗)i∈N , (αi∗)i∈N , (β i∗)i∈N , cost∗

)denote a feasible

solution to INVP . Consider a subset S ⊂ N . Let,

(π S∗) =

∑i∈S

(π i∗)

(αS∗) =

∑i∈S

(αi∗)

(βS∗) =

∑i∈S

(β i∗).

Our claim is that for the inverse problem, IS , correspondingto the problem PSS modeling the selfish behavior of subset S,((π S∗), (αS∗), (βS∗), cost∗

)is a feasible solution. That is, cost∗

is inverse feasible for IS . Consider a constraint similar to (14)for IS . Let (o, d, k) ∈ Dk, k ∈ S and f ∗(o,d,k)

e 6∈ F . Since((π i∗)i∈N , (αi∗)i∈N , (β i∗)i∈N , cost∗

)is a feasible solution for INVP

we have:

(π k∗)(o,d,k)v − (π k∗)(o,d,k)u + (αk∗)e ≥ −(1 − γ ke )cost∗e

(π i∗)(o,d,k)v − (π i∗)(o,d,k)u + (αi∗)e ≥ γ iecost

e i 6= k, i ∈ S.

After summing these inequalities and rearranging the terms weget:∑i∈S

(π i∗)(o,d,i)v −

∑i∈S

(π k∗)(o,d,i)u +

∑i∈S

(αk∗)e

≥ −

(1 −

∑i∈S

γ ie

)cost∗e . (25)

If for demand (o, d, k) and edge e, f ∗(o,d,k)e ∈ F then in INVP

constraints corresponding to f ∗(o,d,k)e will be at equality and hence

we will get equality in (25). Similarly,((π S∗), (αS∗), (βS∗), cost∗

)satisfies other constraints in IS . �

To summarize, the inverse problem is a feasibility problem toidentify the cost vector cost∗ and the overall payoff assigned by ourmechanism to player i is:

xi =

∑(o,d,i)∈Di

r(o,d,i)f∗(o,d,i)(d,o,i) + si (26)

where the vector of side payments is

si =

∑e∈E

cost∗e

γ ie

∑(o,d,i) 6∈Di

f ∗(o,d,i)e −

(1 − γ i

e

) ∑(o,d,i)∈Di

f ∗(o,d,i)e

∀i ∈ N. (27)

The vector of payoffs (26) is such that∑

i∈N xi = V(N). This iseasy to see since once a feasible solution is found for INVP , the flowin the network is same as the optimal flow f ∗. Also note that thevector of side payments {s1, s2, . . . , sn} is such that

∑i∈N si = 0.

Next, we prove that the inverse problem INVP is feasible and thusthe mechanism can always be used to find a cost structure on theedges of the network.

Theorem 3. The inverse problem INVP is feasible.

Proof. This theorem can be proved by using duality and realizingthat the zero vector is a feasible solution to the dual of INVP .

Next, we examine what influences the cost of an edge. Considera path p used to satisfy demand (o, d, i) ∈ Di and the edges on p.Considering the inverse problem (I i) and summing constraints (14)and (15) on the edges of path pwe obtain

(π i)(o,d,i)d − (π i)(o,d,i)o +

∑e∈p

(αi)e ≥ −

∑e∈p

(1 − γ ie)coste. (28)

Combining (28) and (18) we obtain

r(o,d,i) − (β i)(o,d,i) −

∑e∈p

(αi)e ≤

∑e∈p

(1 − γ ie)coste. (29)

Similarly, by considering the inverse problem (I j) for player j (6= i),for path pwe obtain

(β j)(o,d,i) +

∑e∈p

(αj)e ≥

∑e∈p

γ jecoste. (30)

The above inequalities provide bounds on the vector cost , whenconsidering path p. Since an edge can be part of many paths usedfor satisfying different demands, the cost of an edge e is influencedby the set of such paths, revenue generated by the demand satisfiedusing these paths and dual variables α and β . From (29) we deducethat the cost on edges used for satisfyinghigher revenue generatingdemands is expected to be higher. However, if two different pathsare used to satisfy the same demand then the path with lower costwill be utilized first, to full capacity. Also, the fraction of capacitythat a player owns on an edge influences the cost vector. Forexample, for a path p = {e} if γ i

e = 1, then constraints due to playeri’s demand (o, d, i) on path p do not influence the edge cost, as theplayer is utilizing the capacity himself and thus making a paymentto himself. (Consider constraints (29) and (30) for explanation.)

Recall that the vector cost∗ makes f ∗ optimal for PS i ∀i. Thus, ifthe flow vector f ∗ is such that player i sells his capacity on an edge(rather than utilize it to satisfy his own demand) then the vectorcost∗ is such that the revenue generated by the player by utilizingthe edge for satisfying his own demand is less than the revenuegenerated by selling it to other players.

It is guaranteed that the payoff xi as given by (26) is non-negative for every player i because for any cost vector cost , flowvector f = 0 is a feasible solution for PS i with objective functionvalue 0. The inverse problem INVP finds a cost vector cost∗ thatmakes f ∗ optimal for PS i ∀i. Thus for every i, the objective functionvalue in PS i, or the payoff xi to player i, with vector cost∗ andflow vector f ∗ is non-negative. The overall payoff of a playeris composed of two terms—the revenue generated by satisfyingdemand and the net payment received by the player as a resultof capacity exchanges. A player who has a very high revenuegenerating demand set will receive a high payoff in the alliance bysatisfying this demand. However, if he does not have ownership ofcapacity on the edges, along the paths that can be utilized to satisfyhis demand, he will need to make payments to the players whoown this capacity, hence reducing his overall payoff. Thus in thealliance, players who do not have any demand to satisfy but owncapacity on the edges that are utilized to satisfy revenue generatingdemand also receive a positive payoff.

5.3. Multicommodity flow game with a unique owner on each edge

In this section, we consider a special case of the multicommod-ity flow game in which for every edge of the network, the capacityon the edge belongs to an unique player. We denote by E i the setof edges owned by player i.

Theorem 4. If each edge of the network has an unique owner, thepayoff vector x = {x1, . . . xn} where xi is given by (26) lies in the coreof the multicommodity flow game.

Page 5: Mechanism design for a multicommodity flow game in service network alliances

524 R. Agarwal, Ö. Ergun / Operations Research Letters 36 (2008) 520–524

Proof. Recall that the payoff obtained by themechanism is budgetbalance. Hence, we only need to show the stability of payoff.Consider a subset S of players. Let (PS) denote the linear program(similar to program (PN ) in Section 3) on the network induced bythe players in set S and let (DS) denote its dual.

(DS) : V(S) = min∑i∈S

∑e∈Ei

ceαe +

∑i∈S

∑(o,d,i)∈Di

d(o,d,i)β(o,d,i) (31)

such that π (o,d,i)v − π (o,d,i)

u + α(u,v) ≥ 0

∀(u, v) ∈

⋃i∈S

E i, (o, d, i) ∈

⋃i∈S

Di (32)

π (o,d,i)o − π

(o,d,i)d + β(o,d,i) ≥ r(o,d,i)

∀(o, d, i) ∈

⋃i∈S

Di (33)

π (o,d,i)v ≥ 0 ∀v ∈ V , ∀(o, d, i) ∈

⋃i∈S

Di;

αe ≥ 0 ∀e ∈

⋃i∈S

E i (34)

β(o,d,i) ≥ 0 ∀(o, d, i) ∈

⋃i∈S

Di. (35)

Consider (π S∗, αS∗, βS∗). Since it is a feasible solution for (IS),as proved in Theorem 2, it satisfies constraint (33). For an edge e ∈

Ek, and (o, d, i) ∈ Di such that k, i ∈ S we have (by consideringconstraints corresponding to constraints (14) and (15) in IS)

(π S∗)(o,d,i)v − (π S∗)(o,d,i)u + (αS∗)e ≥ −

(1 −

∑j∈S

γ je

)cost∗e . (36)

Since player k is the unique owner of edge e,∑

j∈S γje = 1 and

thus constraint (32) is satisfied. Thus, (π S∗, αS∗, βS∗) is feasible for((DS)).

∑i∈S

∑e∈Ei

ce(αS∗)e +

∑i∈S

∑(o,d,i)∈Di

d(o,d,i)(βS∗)(o,d) ≥ V(S). (37)

Since d(o,d) ≥ 0, ce ≥ 0, (αS∗) ≥ 0 and (βS∗) ≥ 0 we have∑i∈N

∑e∈Ei

ce(αS∗)e +

∑i∈N

∑(o,d,i)∈Di

d(o,d,i)(βS∗)(o,d,i)

∑i∈S

∑e∈Ei

ce(αS∗)e +

∑i∈S

∑(o,d,i)∈Di

d(o,d,i)(βS∗)(o,d,i) (38)

but left hand side in (38) is same as∑

i∈S xi from strong duality

applied to (PSS) and (DPSS). From (37), (38) and above argumentwe get

∑i∈S x

i≥ V(S). �

6. Concluding remarks

In this paper we presented a mechanism that regulatesinteraction among the players in a multicommodity flow gameby computing capacity exchange costs. This scheme can be usedin transportation and communications systems when multiplebusinesses and organizations use a collaborative service networkto satisfy demand.

We considered a particular behavioral model to capture theselfish perspective of an individual player. Other behavioralmodelshave also been considered in [1,7]. Different behavioral modelslead to different capacity exchangepriceswith different properties.Whether the payoff given by (26) provides an allocation in the coreor not in the general case, that is when the edges have multipleowners, remains an open question.

Acknowledgments

Özlem Ergun was supported in part under NSF grants DMI-0238815 and DMI-0427446.

References

[1] R. Agarwal, L. Houghtalen, O. Ergun, O. Ozener, Collaboration in cargo routing,in: A. Chaovalitwongse, F. Roberts(Eds.), Optimization and Logistics Challengesin the Enterprise, Springer-Verlag, 2008 (in press).

[2] R.K. Ahuja, J.B. Orlin, Inverse optimization, Operations Research 49 (5) (2001)771–783.

[3] T.S. Chandrashekar, Y. Narahari, Procurement network formation: A coopera-tive game approach, Working paper, 2006.

[4] X. Deng, T. Ibaraki, H. Nagamochi, Combinatorial optimization games,in: Proceedings of the Eighth Annual ACM-SIAM Symposium on DiscreteAlgorithm, ACM Press, New York, NY, USA, 1997, pp. 720–729.

[5] J.J.M. Derks, S.H. Tijs, Stable outcomes for multicommodity flow games,Methods of Operations Research 50 (1985) 493–504.

[6] J. Hershberger, S. Suri, Vickery prices and shortest paths: What is an edgeworth? in: Annual IEEE Symposium on Foundation of Computer Science, 2001.

[7] L. Houghtalen, O. Ergun, J. Sokol, Designing allocation mechanisms for carrieralliances, Working paper, 2008.

[8] E. Kalai, E. Zemel, Generalized network problems yielding totally balancedgames, Operations Research 30 (5) (1981) 998–1008.

[9] E. Kalai, E. Zemel, Totally balanced games and games of flow, Mathematics ofOperations Research 7 (3) (1982) 476–478.

[10] E. Markakis, A. Saberi, On the core of the multicommodity flow game, in: EC’03: Proceedings of the 4th ACM Conference on Electronic Commerce, ACMPress, New York, USA, 2003, pp. 93–97.

[11] N. Nisan, A. Ronen, Algorithmic mechanism design, Games and EconomicBehavior 35 (2001) 166–196.

[12] G. Owen, On the core of linear production games, Mathematical Programming9 (3) (1975) 358–370.