Starch Characterization and Ethanol Production of Sorghum

May 23, 2011 - Department of Biological and Agricultural Engineering, Kansas State University, ... Plant Introduction Station Farm (Ames, IA) in 2008...
4 downloads 0 Views 130KB Size
On Finding a Solution in the Core of a Multicommodity Flow Game on a Spider Toshinori Yamada and Kazuhiro Karasawa Division of Mathematics, Electronics and Informatics, Graduate School of Science and Engineering, Saitama University 255 Shimo-Okubo, Sakura-ku, Saitama-shi, Saitama 338-8570, Japan Email: [email protected] Abstract— Motivated by the development of an ef£cient and stable routing scheme for the Internet, Papadimitriou introduced a multicommodity ¤ow game and raised the problem of whether the core of a multicommodity ¤ow game is always nonempty. Markakis and Saberi settled the problem af£rmatively. However, thier proof is not constructive, and it is not known how to £nd a solution in the core of the game, to the best of my knowledge. This paper presents a polynomial-time algorithm for £nding a multicommodity ¤ow game if G is a spider. Keywords—multicommodity ¤ow game, coalitional game, core, polynomial-time algorithm

I. I NTRODUCTION The Internet is a network of interconnected networks. An autonomous system(AS) is a network or group of networks under a common administration and with common routing policies. The Border Gateway Protocol(BGP) is used to exchange routing information between ASes and is the protocol used for routing between ASes. Each AS is usually managed by a single entity, and follows a routing policy consistent with its own bene£t. In particular, each AS would like to carry local traf£c (that occurs or is terminated at it or its customers), and to avoid carrying transit traf£c (that is neither originated at nor destined to it or its customers). However, avoiding transit traf£c may leads to instability in the network. It is an important problem to £nd an ef£cient and stable routing scheme for the Internet. Papadimitriou[2] formalized this problem as a coalitional game (without transferable payoff), called a multicommodity ¤ow game. A multicommodity ¤ow game consists of a graph G, a capacity c i associated with vertex i on G, and a demand di,j between two vertices i and j on G. Given a graph with multicommodity ¤ow, satisfying the capacity and demand constraints, the payoff of a vertex is the total ¤ow originated or terminated at the vertex. An outcome of the game is in the core if there exists no subset S of vertices on G such that every member in S can obtain a better payoff in a subgraph of G induced by S. Markakis and Saberi[1] proved that the core of this game is always non-empty. However, the proof by Markakis and Saberi[1] is not constructive, and it is not known how to £nd a solution in the core of the game, to the best of our knowledge.

This paper presents a polynomial-time algorithm for £nding a solution in the core of a multicommodity ¤ow game if G is a spider. II. P RELIMINARIES A. Coalitional Games A coalitional game without transferable payoff consists of a set of players N = {1, 2, . . . , n} and a mapping U that maps a non-empty subset S ⊆ N to a subset of RS for every coalition S ⊆ N , where RS denotes R|S| such that each entry of an element in R|S| is associated with each i ∈ S. This coalitional game is denoted by (N, U ). S ⊂ N is said to dominate u ∈ U (N ) if there exists some u ∈ U (S) such that ui > ui for every i ∈ S. The core of a coalitional game (N, U ) is the set of payoff vectors u ∈ U (N ) such that no S ⊂ N dominate u. B. Multicommodity Flow Games Let G be an undirected graph with n vertices labeled by 1, 2, . . . , n. Let ci denote the capacity on vertex i and di,j denote the demand between vertices i and j for any two vertices i, j of G. Let fp denote the ¤ow along a path p. the set of paths connecting vertices i and Let Pi,j denote j. Let fi,j = p∈Pi,j fp . f = (fp ) is called a feasible multicommodity ¤ow for G, d, and c if the following three conditions  are satis£ed: fp ≤ ci for any vertex i; 1) p:i∈p

2) fi,j ≤ di,j for any two vertices i, j; 3) fp ≥ 0 for any path p on G. Let F(G, d, c) be the set of feasible multicommodity ¤ows. Let FS (G, d, c) be the set of feasible multicommodity ¤ows for G[S], d, and c, where G[S] denotes the subgraph of G induced by S. Let ui (f ) be the payoff of vertex i, that is  ui (f ) = fi,j j=i

and u(f ) be the payoff vector of f , that is u(f ) = (u1 (f ), u2 (f ), . . . , un (f )). Then, a coalitional game is obtained by putting N = {1, 2, . . . , n} and U (S) = {u(f ) : f ∈ FS (G, d, c)}.

1011 c 1-4244-0387-1/06/$20.00 2006 IEEE

This game is called a multicommodity ¤ow game and denoted by (G, d, c). The core of the multicommodity ¤ow game (G, d, c) is denoted by core(G, d, c). The following theorem is proved in [1]. Theorem I: [1] core(G, d, c) = ∅ for any graph G with capacity c and demand d. The proof of Theorem I is not constructive, and it is an important open problems to £nd an f with u(f ) ∈ core(G, d, c) in a polynomial time. In the next section, we present a polynomial-time algorithm for £nding a multicommodity ¤ow f with u(f ) ∈ core(G, d, c) if G is a spider. III. P OLYNOMIAL -T IME A LGORITHM FOR A S OLUTION C ORE OF A M ULTICOMMODITY F LOW G AME ON A S PIDER

IN THE

A spider is a tree such that at most one vertex in the tree has degree greater than two. A vertex with degree greater than two is called the head of the spider. We present an algorithm on a spider with no head, that is a path, in Sec.IIIA and then one for a spider with one head in Sec.III-B. It is easy to see the following lemma: Lemma 1: If S ⊆ V (G) dominates f ∈ F(G, d, c) then there exists some S  ⊆ S such that S  dominates f and G[S  ] is connected.

V (Pn ) = [1, n];

E(Pn ) = {(i, j) : |i − j| = 1}.

In this section, we prove that the algorithm in Figure 1 £nd a ¤ow f with u(f ) ∈ core(P n , d, c) for any positive integer n and for any capacity c and demand d on Pn . In Fiture 1, Ci represents the residual capacity of vertex i for any i ∈ [1, n], and we use fi,j as a ¤ow on a path p connecting i and j instead of fp because p is unique. algorithm Core of Path Game input: # vertices n, capacity c, demand d; output: ¤ow f ; begin for i ← 1 to n do Ci ← ci ; for j ← 2 to n do for i ← j − 1 to 1 do begin fi,j ← min{Ci , Ci+1 , . . . , Cj , di,j }; for k ← i to j do Ck ← Ck − fi,j ; end end Fig. 1.

c3=5

c4=2

1

2

3

4

Fig. 2.

Multicommodity Flow Game on Path

In the rest of this section, we prove the following theorem. Theorem 2: u(f ) ∈ core(Pn , d, c). 1) Proof of Theorem 2: For any positive integers i, j with i < j ≤ n and any positive integer x with x ≤ n, let Cx− (i, j) and Cx+ (i, j) denote the values of Cx just before and after algorithm Core of Path Game in Figure 1 computes fi,j , respectively. By a simple calculation, Cx− (i, j) and Cx+ (i, j) is estimated as follows: For any x ∈ [1, i − 1], Cx− (i, j) = Cx+ (i, j) = cx −

x−1 

fk,x −

j−1 x  

fk,l ;

k=1 l=x+1

k=1

For any x ∈ [i, j − 1], Cx− (i, j) = cx −

x−1 

fk,x −

j−1 x  

fk,l −

fk,j ,

k=i+1

k=1 l=x+1

k=1

x 

Cx+ (i, j) = Cx− (i, j) − fi,j = cx −

x−1 

fk,x −

j−1 x  

fk,l −

k=1 l=x+1

k=1

x 

fk,j ;

k=i

For x = j, Cj− (i, j) = cj −

j−1 

fk,j ,

k=i+1

Cj+ (i, j) = Cj− (i, j) − fi,j = cj −

j−1 

fk,j ;

k=i

For any x ∈ [j + 1, n], Cx− (i, j) = Cx+ (i, j) = cx . It is easy to see the following: Lemma 2: Let s, t, i, j be positive integers satisfying either of the following two condtions: “t < j” or “t = j and i ≤ s.” Then, Cx− (s, t) ≥ Cx− (i, j) and Cx+ (s, t) ≥ Cx+ (i, j) for any x ∈ [1, n]. Since − fi,j = min{Ci− (i, j), Ci+1 (i, j), . . . , Cj− (i, j), di,j },

Algorithm Core of Path Game

It is easy to see the following: Theorem 1: Algorithm Core of Path Game in Figure 1 computes f in O(n3 ) time.

1012

c2=3

d1,2=1, d1,3=2, d1,4=1, d2,3=0, d2,4=2, d3,4=1

A. Paths For any integers i and j, let [i, j] = {i, i + 1, . . . , j} if i ≤ j, and [i, j] = ∅ otherwise. The n-vertex path Pn is the graph de£ned as follows:

c1=4

we have the following lemma. Lemma 3: For any positive integers i, j with i < j ≤ n, at least one of the following two equalities holds: + • Cx (i, j) = 0 for some x ∈ [i, j]; • fi,j = di,j . Lemma 4: Let s, t, i, j be positive integers with i ≤ s < t ≤ j. If Cx+ (i, j) > 0 for every x ∈ [s, t] then fs,t = ds,t . Proof: Since Cx+ (s, t) ≥ Cx+ (i, j) > 0 by Lemma 2, we conclude that fs,t = ds,t by Lemma 3.

APCCAS 2006

d1,2=1 C1=4

C2=3

1

d2,3=0 C3=5

C4=2

C1=3

4

1

2 3 f1,2=min{4,3,1}=1

C2=2

2 3 f2,3=min{2,5,0}=0

(a) (i, j) = (1, 2) C2=0

1

C3=3

C1=1

4

1

C2=0

By Lemma 1, in order to prove that u(f ) ∈ core(Pn , d, c), it suf£ces to show that there exists no positive integers i, j with i < j ≤ n such that S = [i, j] dominates f , that is for any S ⊆ [1, n] and f  ∈ FS (Pn , d, c), there exists some k ∈ S with uk (f ) ≥ uk (f  ). Since Cx+ (i, j) ≥ 0 for any x ∈ [i, j], there are three cases, (Case 1)–(Case 3). (Case 1) Cj+ (i, j) = 0: In this case, we have j−1 

k=1 l=x+1

k=1

x max

C1=1

4

1

C2=0

C3=2

fk,j = cx .

k=i

j 

C4=1

2 3 4 f1,4=min{1,0,2,1,1}=0

(f) (i, j) = (1, 4)

 fk,l >

xmax −1

fk,l .

k=1 Proof: We have fx max ,l ≤ dxmax ,l = fxmax ,l by the  de£nition of z min , and fk,l ≤ dk,l = fk,l for any k ∈ [xmax + 1, j] − {l} by Lemma 6. Since ul (f  ) > ul (f ), xmax −1

l−1 

 fk,l = ul (f  ) −

k=i

 fk,l −

> ul (f ) −

l−1 

fk,l = cxmax .

k=1 l=xmax +1

xmax −1

fk,l +

xmax −1

 fl,m

j 

fk,l −

fl,m

m=l+1 n 

fl,m

m=j+1

k=1



j  m=l+1

k=xmax

=

Then, fk,j = 0 for any k ∈ [1, i − 1], and so fk,xmax +

C4=1

k=i

fk,j = uj (f ).

x 

4

(c) (i, j) = (1, 3)

xmax −1

(Case 2) Cj+ (i, j) > 0 and Cx+ (i, j) = 0 for some x ∈ [i, j − 1]: Let xmax be the maximum of x such that Cx+ (i, j) = 0, that is

xmax −1

2 3 f1,3=min{3,2,5,2}=2

k=xmax

fk,l +

C4=2

Let zmin be the minimum of z ∈ [xmax + 1, j] such that fxmax ,z = dxmax ,z . If such a z does not exist, let zmin = j+1. Then we have the following lemma. Lemma 7: For any l ∈ [xmax + 1, zmin − 1],

k=i

k=1

C3=5

Output of Algorithm Core of Path Game for Figure 2

Lemma 5: Let s, t, i, j be positive integers such that s < t ≤ n, i < j ≤ n, and [s, t] ⊂ [i, j]. If Cx− (i, j) > 0 for every x ∈ [s, t] then fs,t = ds,t . Proof: Notice that j ≥ i + 2 since s < t and [s, t] ⊂ [i, j]. Thus, Cx+ (i + 1, j) = Cx− (i, j) > 0. Since “t < j” or “t = j and i + 1 ≤ s,” we conclude that Cx+ (s, t) ≥ Cx+ (i + 1, j) > 0, and hence fs,t = ds,t by Lemma 3.

j−1 x  

1

(e) (i, j) = (2, 4) Fig. 3.

fk,x +

4

C2=2

d1,4=1

C3=2

2 3 f2,4=min{0,2,1,2}=0

(d) (i, j) = (3, 4)

x−1 

C1=3

d2,4=2

C4=2

2 3 f3,4=min{3,2,1}=1

uj (f  ) ≤ cj =

C4=2

(b) (i, j) = (2, 3)

d3,4=1 C1=1

d1,3=2

C3=5

fk,l .

k=1

Lemma 8: fk,l = 0 for any k ∈ [1, xmax − 1] and l ∈ [zmin , j]. Proof: Assume that fk,l > 0. Since k < xmax , zmin ≤ l, and Cx− (k, l) ≥ fk,l > 0 for any x ∈ [k, l], we conclude that fxmax ,zmin = dxmax ,zmin by Lemma 5. On the other hand, fxmax ,zmin = dxmax ,zmin by the de£nition of z min , which is a contradiction. Hence, fk,l = 0. Corollary 1: For any l ∈ [zmin , j],

Assume that ux (f  ) > ux (f ) for any x ∈ [xmax + 1, j]. Then, we prove that uxmax (f  ) ≤ uxmax (f ). Lemma 6: fs,t = ds,t for any positive integers s, t with [s, t] ⊆ [xmax + 1, j]. Proof: By the maximality of xmax , we have Cx+ (i, j) > 0 for any x ∈ [xmax + 1, j]. Since [s, t] ⊆ [xmax + 1, j], we conclude that fs,t = ds,t by Lemma 4.

APCCAS 2006

xmax −1 k=i

 fk,l ≥

Proof: By Lemma 8, xmax −1 k=i

xmax −1

fk,l .

k=1

 fk,l ≥0=

xmax −1

fk,l

k=1

1013

for any l ∈ [zmin , j]. Lemma 9: uxmax (f  ) ≤ uxmax (f ). Proof: Since xmax −1

j 

x max

 + fk,x max

|| head ||

 fk,l ≤ cxmax ,

||

k=i l=xmax +1

k=i









we have uxmax (f  ) =

xmax −1

≤ cxmax − xmax −1

fx max ,l

Fig. 4.

xmax −1

j 

k=i

l=xmax +1

 fk,l



k=i

xmax −1

Core of Path Game in Figure 1 for each leg of the spider. Thus, we have the following theorem.

 fk,l .

fk,l

k=1

for any l ∈ [xmax + 1, j] by Lemma 7 and Corollary 1, we conclude that uxmax (f  ) ≤ cxmax − =

xmax −1

xmax −1

j 

k=1

l=xmax +1

fk,xmax +

k=1

fk,l

j 

fxmax ,l

l=xmax +1

= uxmax (f ). (Case 3) Cx+ (i, j) > 0 for every x ∈ [i, j]: In this case, we have fs,t = ds,t for any positive integers s, t with [s, t] ⊆ [i, j] by Lemma 4. Hence, we conclude that uk (f  ) ≤ uk (f ) for any k ∈ [i, j]. By (Case 1)–(Case 3), there exists no f  ∈ FS (Pn , d, c) such that uk (f  ) > uk (f ) for every k ∈ S. Hence, u(f ) ∈ core(Pn , d, c). B. Spiders with Head A leg of a spider is a path with one end at the head and the other at one of the degree-one vertices. For any m integers, n1 , n2 , . . . , nm ≥ 2, let T (n1 , n2 , . . . , nm ) denote the spider with m legs, each of which has ni vertices (i = 1, 2, . . . , m). That is, T (n1 , n2 , . . . , nm ) is the graph de£ned as follows: V (T (n1 , n2 , . . . , nm )) = { x, y : x ∈ [1, m], y ∈ [1, nx ]}; E(T (n1 , n2 , . . . , nm )) = {( x, y , x, y  ) : |y − y  | = 1},

algorithm Core of Spider Game input: # vertices of legs n1 , n2 , . . . , nm , capacity c, demand d; output: ¤ow f ; begin C1 ← c1,1 ; for i ← 1 to m do begin for j ← 2 to ni do Cj ← ci,j ; for k ← 2 to ni do begin for j ← k − 1 to 1 do fi,j,i,k ← min{Ci , Ci+1 , . . . , Cj , di,j,i,k }; for x ← j to k do Cx ← Cx − fi,j,i,k ; end end end Fig. 5.

Algorithm Core of Spider Game

Theorem 3: Algorithm Core of Spider Game in Figure 5 m computes f in O( i=1 n3i ) time. We can prove the following theorem, but omit the proof due to space limitation. Theorem 4: u(f ) ∈ core(T (n1 , n2 , . . . , nm ), d, c). IV. C ONCLUDING R EMARKS It can be proved easily that if f is a maximum multicommodity ¤ow on a complete graph K n on n vertices with capasity c and demand d then u(f ) ∈ core(Kn , d, c). However, it still remains open to £nd a ¤ow f with u(f ) ∈ core(G, d, c) even if G is a tree or cycle. R EFERENCES

where 1, 1 , 2, 1 , . . . , m, 1 represent the head of T (n1 , n2 , . . . , nm ). In this section, we prove that the algorithm in Figure 5 £nd a ¤ow f with u(f ) ∈ core(T (n 1 , n2 , . . . , nm ), d, c) for any m positive integers n1 , n2 , . . . , nm ≥ 2 and for any capacity c and demand d on T (n1 , n2 , . . . , nm ). Notice that algorithm Core of Spider Game in Figure 5 uses

1014

Spider T (n1 , n2 , . . . , nm )

l=xmax +1

k=i

Since

j 

 + fk,x max

[1] E. Markakis and A. Saberi, “On the core of the multicommodity ¤ow game,” in Proc. 4th ACM Conference on Electronic Commerce (EC’03), pp. 93–97, 2003. [2] C. Papadimitriou, “Algorithms, games, and the internet,” in Proc. 33rd ACM Symposium on Theory of Computing (STOC’01), pp. 749–753, 2001.

APCCAS 2006