1 of 48

Juan VIDAL-PUGA Eric BAHEL María GÓMEZ-RÚAUniversidade de Vigo Virginia Tech Universidade de Vigo 13 JULY 2023

Stability in shortest path problems

(old title)

ADVANCED ANALYTICS FOR A BETTER WORLD

2 of 48

Juan VIDAL-PUGA Eric BAHEL María GÓMEZ-RÚAUniversidade de Vigo Virginia Tech Universidade de Vigo 13 JULY 2023

Stable and weakly additive cost sharing in shortest path problems

Formerly Stability in shortest path problems

ADVANCED ANALYTICS FOR A BETTER WORLD

3 of 48

Outline

  1. Shortest path problems
    1. Motivation
    2. Model
  2. Core selection and other basic properties
  3. Cost sharing rules
  4. Cost Additivity and other properties
  5. Characterization results

4 of 48

Motivation

  • Consider a group of agents located at different geographical points who need to ship their demands of some homogeneous good from a fixed point (the source) to their respective locations.
  • We can construct a network where each node represents one agent and each arc the cost of shipping one unit of the good through this connection.
  • The cost on each arc of the network is linear in the total demand crossing it.
  • Each agent can transport her demand directly from the source to her location, or indirectly (through intermediary nodes) if it turns out to be cheaper.
  • The intermediaries have property rights over their respective locations and may refuse to provide access in order to ship the demand of a particular demander.

5 of 48

Motivation

  • Cost Sharing Problem: the demanders have to determine the cheapest route (or shortest path) allowing to ship their demands, and the group has to decide how to reward intermediaries (who allow other to connect to the source at a lower

cost)

  • Examples of applications: public transportation networks, airlines networks, resource supply chains, package delivery, ...
  • An optimal network configuration obtains when each agent ships her demand through one of her shortest paths, that is, the path (from the source to the agent) that minimizes the unitary shipping cost.

6 of 48

The model

A Shortest Path Problem (SPP) is a tuple P = (N, c, x), where:

  • N = {1, ..., n} is the set of agents who need to ship units of some commodity from a fixed point 0 (source) to their locations.
  • c = {c(i, j) : iN∪{0}, jN, ij} is a cost matrix of nonnegative numbers giving the unit cost of shipping demands through each arc (i, j).
  • x ∈ ℝ+N is the demand vector: each agent i ∈ N has a demand xi+ (of the commodity) to ship from the source to her location.

The set of SPP will be denoted as ℙ.

Since x and c depend on N, we can denote a SPP as P = (c, x).

7 of 48

The model

A Shortest Path Problem (SPP) is a tuple P = (N, c, x), where:

  • N = {1, ..., n} is the set of agents who need to ship units of some commodity from a fixed point 0 (source) to their locations.
  • c = {c(i, j) : iN∪{0}, jN, ij} is a cost matrix of nonnegative numbers giving the unit cost of shipping demands through each arc (i, j).
  • x ∈ ℝ+N is the demand vector: each agent i ∈ N has a demand xi+ (of the commodity) to ship from the source to her location.

Note that:

  1. The source (0) is not an agent.
  2. The unit costs c(i,j) need not be symmetric. If c(i,j) = c(j,i) for any i, j N, we say that the SPP has symmetric arcs.

8 of 48

The model

Given iN, a path (of length K) to agent i is a sequence p ≡ (pk)k=0,....,K such that:

  1. pk ∈ N, for k = 1, 2, . . . , K
  2. p0 = 0 and pk = i
  3. pkpk′ for any distinct k, k′

Note that all paths p originate from the source 0 and cross each node pk only once.

We denote as Pi the set containing all paths to agent i.

Given P = (c, x), for any path p (of length K) to agent i,

c(p) k=1,...,Kc(pk1, pk)

Thus, c(p) is the cost of shipping one unit from the source to agent i via path p.

For any iN, we call shortest path to agent i to any path iPi that solves the problem

min{c(p) : pPi}.

9 of 48

The model

We define the cost of any nonempty coalition SN as:

CP(S) ≡ min{jS xj c(pj) : pjPj and [pj] ⊆ S, ∀j ∈ S}

where [p] denote the set of agents in the range of p, that is:

[p] ≡ {iN : pk = i for some k = 1,... , K}.

CP(S) is the lowest possible cost of shipping (from the source) the respective

demands of the members of S when using only the connections available in S.

In particular, CP(S) = 0 whenever xS = 0 (there is no demand to ship).

We also adopt the usual convention that CP(∅) = 0.

10 of 48

The model

  • A cost sharing rule (CSR) is a mapping y: N that assigns to each P a cost allocation y(P) ∈ N such that iN yi = CP(N).

A cost sharing rule is a mechanism which, for any given problem P, allows to divide

between agents the total cost CP(N) of satisfying their respective demands and assuring efficiency.

Note that we allow for negative cost shares.

11 of 48

Core selection

Given a shortest path problem P = (c, x), the core of P is the set

Core(P) {yN : iN yi = CP(N), iS yiCP(S), ∀SN}.

  • A cost sharing rule y satisfies Core Selection if y(P) ∈ Core(P) for all P ∈ ℙ.

The selected cost allocation should not allow any subgroup of players to profitably defect from the grand coalition (in other words, using only the connections available to the players in this subgroup to fulfill their demands should result in a higher cost than the join cost share of the subgroup).

12 of 48

Another basic properties

For every jN, denote by ejN the vector of demands characterized by ejj = 1

and eji = 0, if iN\{j}.

We call the SPP (c, ej) an elementary SPP.

• A cost sharing rule y satisfies Demand Additivity if y(P) = ∑jN xj y(c, ej) for all (c, x) ∈ ℙ.

This property allows to extend a cost allocation rule from elementary problems (where only one agent demands a single unit, which is typically shipped via intermediaries) to general problems (where each agent has an arbitrary demand).

13 of 48

Another basic properties

Given a bijection σ: NN and given P = (c, x), P′ = (c′, x′) ∈ ℙ, we say that P′ is σ-equivalent to P if it holds that:

(a) xi = xσ(i) for all iN, and

(b) c′(i, j) = c(σ(i), σ(j)) for all i,jN and c′(0, i) = c(0, σ(i)) for all iN.

• A cost sharing rule y satisfies Anonymity if, for all bijection σ: NN and all P, P′ such that P′ is σ-equivalent to P, yi(P′) = yσ(i)(P) for all iN.

Given two problems that are identical up to a permutation σ of the players’ labels, each agent i should pay the same cost share in P′ as its counterpart σ(i) pays in the equivalent problem P.

14 of 48

Basic properties

• A cost sharing rule y satisfies Core Selection if y(P) ∈ Core(P) for all P.

• A cost sharing rule y satisfies Demand Additivity if y(P) = ∑iN xi y(c, ei) for all P=(c, x)∈ℙ.

• A cost sharing rule y satisfies Anonymity if, for all bijection σ: NN and all P, P′ ∈ ℙ such that P′ is σ-equivalent to P, yi(P′) = yσ(i)(P) for all iN.

We first focus on cost sharing rules that satisfy these three properties.

We call any cost sharing rule in this family an Anonymous Demand-Additive Core Selector (ADACS)

15 of 48

Demander rule

Each agent pays the cost of their shortest path for each unit demanded.

ydi(c, x) = xi min{c(p) : pPi}, for all (c, x)∈ and iN.

Agents who demand zero pay nothing.

This rule is favorable to demanders.

yd = (180, 0, 80).

16 of 48

Demander rule

Each agent pays the cost of their shortest path for each unit demanded.

ydi(c, x) = xi min{c(p) : pPi}, for all (c, x)∈ and iN.

Agents who demand zero pay nothing.

This rule is favorable to demanders.

yd = (180, 0, 80).

17 of 48

Demander rule

Each agent pays the cost of their shortest path for each unit demanded.

ydi(c, x) = xi min{c(p) : pPi}, for all (c, x)∈ and iN.

Agents who demand zero pay nothing.

This rule is favorable to demanders.

yd = (180, 0, 80).

18 of 48

Supplier rule

For each P = (c, x) ∈ and iN, ysi(P) is the demand additivity CSR defined as:

  • ysi(Pj) = min{c(p) : pPj\{j}} if i = j
  • ysi(Pj) = (c(j) − min{c(p) : pPj\{j}}/(|j| − 1) if i [j]\{j}
  • ysi(Pj) = 0 if i[j]

where j denotes (one of) the shortest path(s) to jN under the cost matrix c and

Pj ≡ (c, ej).

The supplier rule charges to each demander j the cost of her second shortest path,

and equally splits between all suppliers of j the excess payment thus collected.

19 of 48

Supplier rule. An example

  • The cost of the shortest path to agent 1 is c(0231) = 90 and that of the of the second shortest paths is c(021) = 60 + 70 = 130. The difference between the cost of both paths is 130 − 90 = 40.
  • There are two intermediaries (agent 2 and agent 3) who help agent 1 to connect ot the source on path 1 = 0231. Hence, ys(P1) = (130, −20, −20).
  • For agent 3, the costs of the shortest path and the second shortest path are respectively c(023) = 80 and c(03) = 120.
  • There is only one intermediary (agent 2) on path 3 = 023.�Hence, ys(P3) = (0, −40, 120).
  • Thus, �ys(P) = 2·(130, −20, −20) + 1·(0, −40, 120) = (260, 80, 80)

20 of 48

Supplier rule. An example

  • The cost of the shortest path to agent 1 is c(0231) = 90 and that of the of the second shortest paths is c(021) = 60 + 70 = 130. The difference between the cost of both paths is 130 − 90 = 40.
  • There are two intermediaries (agent 2 and agent 3) who help agent 1 to connect ot the source on path 1 = 0231. Hence, ys(P1) = (130, −20, −20).
  • For agent 3, the costs of the shortest path and the second shortest path are respectively c(023) = 80 and c(03) = 120.
  • There is only one intermediary (agent 2) on path 3 = 023.�Hence, ys(P3) = (0, −40, 120).
  • Thus, �ys(P) = 2·(130, −20, −20) + 1·(0, −40, 120) = (260, 80, 80)

21 of 48

Supplier rule. An example

  • The cost of the shortest path to agent 1 is c(0231) = 90 and that of the of the second shortest paths is c(021) = 60 + 70 = 130. The difference between the cost of both paths is 130 − 90 = 40.
  • There are two intermediaries (agent 2 and agent 3) who help agent 1 to connect ot the source on path 1 = 0231. Hence, ys(P1) = (130, −20, −20).
  • For agent 3, the costs of the shortest path and the second shortest path are respectively c(023) = 80 and c(03) = 120.
  • There is only one intermediary (agent 2) on path 3 = 023.�Hence, ys(P3) = (0, −40, 120).
  • Thus, �ys(P) = 2·(130, −20, −20) + 1·(0, −40, 120) = (260, 80, 80)

22 of 48

Supplier rule. An example

  • The cost of the shortest path to agent 1 is c(0231) = 90 and that of the of the second shortest paths is c(021) = 60 + 70 = 130. The difference between the cost of both paths is 130 − 90 = 40.
  • There are two intermediaries (agent 2 and agent 3) who help agent 1 to connect ot the source on path 1 = 0231. Hence, ys(P1) = (130, −20, −20).
  • For agent 3, the costs of the shortest path and the second shortest path are respectively c(023) = 80 and c(03) = 120.
  • There is only one intermediary (agent 2) on path 3 = 023.�Hence, ys(P3) = (0, −40, 120).
  • Thus, �ys(P) = 2·(130, −20, −20) + 1·(0, −40, 120) = (260, 80, 80)

23 of 48

Supplier rule. An example

  • The cost of the shortest path to agent 1 is c(0231) = 90 and that of the of the second shortest paths is c(021) = 60 + 70 = 130. The difference between the cost of both paths is 130 − 90 = 40.
  • There are two intermediaries (agent 2 and agent 3) who help agent 1 to connect ot the source on path 1 = 0231. Hence, ys(P1) = (130, −20, −20).
  • For agent 3, the costs of the shortest path and the second shortest path are respectively c(023) = 80 and c(03) = 120.
  • There is only one intermediary (agent 2) on path 3 = 023.�Hence, ys(P3) = (0, −40, 120).
  • Thus, �ys(P) = 2·(130, −20, −20) + 1·(0, −40, 120) = (260, 80, 80)

24 of 48

Supplier rule. An example

  • The cost of the shortest path to agent 1 is c(0231) = 90 and that of the of the second shortest paths is c(021) = 60 + 70 = 130. The difference between the cost of both paths is 130 − 90 = 40.
  • There are two intermediaries (agent 2 and agent 3) who help agent 1 to connect ot the source on path 1 = 0231. Hence, ys(P1) = (130, −20, −20).
  • For agent 3, the costs of the shortest path and the second shortest path are respectively c(023) = 80 and c(03) = 120.
  • There is only one intermediary (agent 2) on path 3 = 023.�Hence, ys(P3) = (0, −40, 120).
  • Thus, �ys(P) = 2·(130, −20, −20) + 1·(0, −40, 120) = (260, 80, 80)

25 of 48

Alexia rule

Fix a bijection π : N{1,2,...,n}.

Focusing on an elementary problem (c, ej) ∈ ℙ, let j be a shortest path to the demander j and let m |[j] \ {j}|.

We define a particular cost allocation denoted as yπ.

In the trivial cases where m=0 or π(j) = 1, we have yπj(c, ej) = c(j) and yπi(c, ej) = 0

for all iN \ {j}.

Otherwise, we write without loss of generality

{1π , . . . , mπ} ≡ {i ∈ [j] \ {j} : π(i) < π(j)} ≠∅.

26 of 48

Alexia rule

  • First, call pj1 (one of) the cheapest path(s) to j among those that do not contain agent 1π; and then assign to player 1π the cost share yπ1π(c, ej) = c(j) − c(pj1) = α0α1 ≤ 0.
  • Next, consider the reduced SPP (N \ {1π}, c1 , ej), where the cost matrix c1 is defined by: for all k ∈ (N \ {1π})∪{0}, kN \ {1π} (with kl), �c1(k, l) = min(c(k, l), c(k, 1π) + c(1π, l) − yπ1π).

In words, any two agents of the reduced problem have the option to connect via agent 1π after paying to it the fee yπ1π in case they find it beneficial.

  • Then, mimicking the first step for this reduced problem, one can assign to agent 2π the cost share yπ2π(Pj) = c1(j1) − c1(pj2) = α1α2.
  • We repeat the update of the cost matrix and compute the cost shares until all intermediaries {1π,..., mπ} have been served.
  • Finally, one must assign to the demander j a cost share that covers the cost of the shortest path and the fees paid to all intermediaries:�yπj(c, ej) = c(j) − yπ1π(c, ej) − ... − yπ (c, ej).

27 of 48

Alexia rule

For each P = (c, x) ∈ ℙ, yai(P) is the demand additivity CSR defined as:

ya(c, ej) = ∑𝜋∈𝛱yπ(c, ej)/|𝛱|

where 𝛱 is the set of all bijections π : N ⟶ {1,2,...,n}.

28 of 48

Alexia rule. An example

Fix bijection π = [321] and agent j = 1. Let consider the elementary problem (c, e1).

  • t = 1. Recall that 1 = 0231 is the shortest path to agent 1. Then m = |[1] \ {1}| = 2 (i.e., the number of agents in the range of 1 \ {1}).

Moreover 1π = 3. �We denote α0 = c(1) = 60 + 20 + 10 = 90.

  • Let α1 be the lowest cost of serving agent j = 1 while excluding agent 3 (c(pj1)). In this case, c1(021) = 60 + 70 = 130 = α1.

We define

yπ (c, e1) = c(j) − c(pj1) = α0α1 ≤ 0, i.e.,

yπ (c, e1) is the difference between the cost of the

shortest path to agent 1 (c(1)) and c(p11).

Thus, yπ3(c, e1) = 90 − 130 = 40.

29 of 48

Alexia rule. An example

Fix bijection π = [321] and agent j = 1. Let consider the elementary problem (c, e1).

  • t = 1. Recall that 1 = 0231 is the shortest path to agent 1. Then m = |[1] \ {1}| = 2 (i.e., the number of agents in the range of 1 \ {1}).

Moreover 1π = 3. �We denote α0 = c(1) = 60 + 20 + 10 = 90.

  • Let α1 be the lowest cost of serving agent j = 1 while excluding agent 3 (c(pj1)). In this case, c1(021) = 60 + 70 = 130 = α1.

We define

yπ (c, e1) = c(j) − c(pj1) = α0α1 ≤ 0, i.e.,

yπ (c, e1) is the difference between the cost of the

shortest path to agent 1 (c(1)) and c(p11).

Thus, yπ3(c, e1) = 90 − 130 = 40.

30 of 48

Alexia rule. An example

Fix bijection π = [321] and agent j = 1. Let consider the elementary problem (c, e1).

  • t = 1. Recall that 1 = 0231 is the shortest path to agent 1. Then m = |[1] \ {1}| = 2 (i.e., the number of agents in the range of 1 \ {1}).

Moreover 1π = 3. �We denote α0 = c(1) = 60 + 20 + 10 = 90.

  • Let α1 be the lowest cost of serving agent j = 1 while excluding agent 3 (c(pj1)). In this case, c1(021) = 60 + 70 = 130 = α1.

We define

yπ (c, e1) = c(j) − c(pj1) = α0α1 ≤ 0, i.e.,

yπ (c, e1) is the difference between the cost of the

shortest path to agent 1 (c(1)) and c(p11).

Thus, yπ3(c, e1) = 90 − 130 = 40.

31 of 48

Alexia rule. An example

  • t = 2: We consider the reduced SPP (N\{1π}, c1, ej), where the cost matrix c1 is defined by:�c1(k, l) = min(c(k, l), c(k, 1π) + c(1π, l) − yπ1π), �for all k ∈ (N \ {1π}) ∪ {0}, k ∈ (N \ 1π) (with kl).

In this case:

  • c1(0, 1) = min(c(0, 1), c(0, 3) + c(3, 1)−yπ3) �= min(200, 120 + 10 − (−40)) = 170.
  • c1(0, 2) = min(c(0, 2), c(0, 3) + c(3, 2)−yπ3) �= min(60, 120 + 20 − (−40)) = 60.
  • c1(2, 1) = min(c(2, 1), c(2, 3) + c(3, 1)−yπ3) �= min(70, 20 + 10 − (−40)) = 70.

32 of 48

Alexia rule. An example

  • t = 2: We consider the reduced SPP (N\{1π}, c1, ej), where the cost matrix c1 is defined by:�c1(k, l) = min(c(k, l), c(k, 1π) + c(1π, l) − yπ1π), �for all k ∈ (N \ {1π}) ∪ {0}, k ∈ (N \ 1π) (with kl).

In this case:

  • c1(0, 1) = min(c(0, 1), c(0, 3) + c(3, 1)yπ3) �= min(200, 120 + 10 − (−40)) = 170.
  • c1(0, 2) = min(c(0, 2), c(0, 3) + c(3, 2)−yπ3) �= min(60, 120 + 20 − (−40)) = 60.
  • c1(2, 1) = min(c(2, 1), c(2, 3) + c(3, 1)−yπ3) �= min(70, 20 + 10 − (−40)) = 70.

33 of 48

Alexia rule. An example

  • t = 2: We consider the reduced SPP (N\{1π}, c1, ej), where the cost matrix c1 is defined by:�c1(k, l) = min(c(k, l), c(k, 1π) + c(1π, l) − yπ1π), �for all k ∈ (N \ {1π}) ∪ {0}, k ∈ (N \ 1π) (with kl).

In this case:

  • c1(0, 1) = min(c(0, 1), c(0, 3) + c(3, 1)−yπ3) �= min(200, 120 + 10 − (−40)) = 170.
  • c1(0, 2) = min(c(0, 2), c(0, 3) + c(3, 2)yπ3) �= min(60, 120 + 20 − (−40)) = 60.
  • c1(2, 1) = min(c(2, 1), c(2, 3) + c(3, 1)−yπ3) �= min(70, 20 + 10 − (−40)) = 70.

34 of 48

Alexia rule. An example

  • t = 2: We consider the reduced SPP (N\{1π}, c1, ej), where the cost matrix c1 is defined by:�c1(k, l) = min(c(k, l), c(k, 1π) + c(1π, l) − yπ1π), �for all k ∈ (N \ {1π}) ∪ {0}, k ∈ (N \ 1π) (with kl).

In this case:

  • c1(0, 1) = min(c(0, 1), c(0, 3) + c(3, 1)−yπ3) �= min(200, 120 + 10 − (−40)) = 170.
  • c1(0, 2) = min(c(0, 2), c(0, 3) + c(3, 2)−yπ3) �= min(60, 120 + 20 − (−40)) = 60.
  • c1(2, 1) = min(c(2, 1), c(2, 3) + c(3, 1)yπ3) �= min(70, 20 + 10 − (−40)) = 70.

35 of 48

Alexia rule. An example

  • t = 2 (cont.): Mimicking the fist step for this reduced problem, we obtain:

α1 = c1(1) = c1(021) = 130 (cost of the shortest path to 1 in c1); and

α2 = c1(p12) = 170 (lowest cost of the shortest cost of serving agent 1 in c1 while excluding agent 2).

We assign to agent 2π = 2,

yπ2(c, e1) = α1α2 = 130 − 170 = −40.

  • Finally, we get

yπ1(c, e1) = c(1) − yπ1π(c, e1) − yπ2π(c, e1) = 90 − (−40) − (−40) = 170.

That is to say, yπ(c, e1) = (170, −40, −40).

36 of 48

Alexia rule. An example

  • t = 2 (cont.): Mimicking the fist step for this reduced problem, we obtain:

α1 = c1(1) = c1(021) = 130 (cost of the shortest path to 1 in c1); and

α2 = c1(p12) = 170 (lowest cost of the shortest cost of serving agent 1 in c1 while excluding agent 2).

We assign to agent 2π = 2,

yπ2(c, e1) = α1α2 = 130 − 170 = −40.

  • Finally, we get

yπ1(c, e1) = c(1) − yπ1π(c, e1) − yπ2π(c, e1) = 90 − (−40) − (−40) = 170.

That is to say, yπ(c, e1) = (170, −40, −40).

37 of 48

Alexia rule. An example

  • t = 2 (cont.): Mimicking the fist step for this reduced problem, we obtain:

α1 = c1(1) = c1(021) = 130 (cost of the shortest path to 1 in c1); and

α2 = c1(p12) = 170 (lowest cost of the shortest cost of serving agent 1 in c1 while excluding agent 2).

We assign to agent 2π = 2,

yπ2(c, e1) = α1α2 = 130 − 170 = −40.

  • Finally, we get

yπ1(c, e1) = c(1) − yπ1π(c, e1) − yπ2π(c, e1) = 90 − (−40) − (−40) = 170.

That is to say, yπ(c, e1) = (170, −40, −40).

38 of 48

Alexia rule. An example

  • t = 2 (cont.): Mimicking the fist step for this reduced problem, we obtain:

α1 = c1(1) = c1(021) = 130 (cost of the shortest path to 1 in c1); and

α2 = c1(p12) = 170 (lowest cost of the shortest cost of serving agent 1 in c1 while excluding agent 2).

We assign to agent 2π = 2,

yπ2(c, e1) = α1α2 = 130 − 170 = −40.

  • Finally, we get

yπ1(c, e1) = c(1) − yπ1π(c, e1) − yπ2π(c, e1) = 90 − (−40) − (−40) = 170.

That is to say, yπ(c, e1) = (170, −40, −40).

39 of 48

Alexia rule. An example

Proceeding as before, we obtain the cost shares yπ described by the following table, for each bijection πΠ and each elementary problem Pj.

Order

yπ(c, e1)

yπ(c, e2)

yπ(c, e3)

123

(90, 0, 0)

(0, 60, 0)

(0, −40, 120)

132

(90, 0, 0)

(0, 60, 0)

(0, 0, 80)

213

(130, −40, 0)

(0, 60, 0)

(0, −40, 120)

231

(170, −40, −40)

(0, 60, 0)

(0, −40, 120)

312

(130, 0, −40)

(0, 60, 0)

(0, 0, 80)

321

(170, 0, −40)

(0, 60, 0)

(0, 0, 80)

Average

(130, −20, −20)

(0, 60, 0)

(0, −20, 0)

That is,

ya(c, e1) = (130, −20, −20), ya(c, e3) = (0, −20, 100).

Hence, ya(P) = x1 ya(c, e1) + x3 ya(c, e3) = 2ya(c, e1) + ya(c, e3) = (260, −60, 60).

40 of 48

Family ADACS

Theorem

The demander rule yd is an ADACS

Theorem

The supplier rule ys is an ADACS.

Theorem

The alexia rule ya is an ADACS.

41 of 48

Cost additivity

We may request cost shares to be additive in the cost matrix.

  • A cost sharing rule y satisfies Cost Additivity if �y(c+c′, ej) = y(c, ej) + y(c′, ej) �for any two elementary problems (c, ej), (c′, ej)∈ℙ.

However, no cost sharing rule satisfies this property.

Take for example N = {1,2} and c, c’ given by the figures. Then, for any jN, C(c,ej )(N) = C(c′,ej) (N) = 0 whereas C(c+c′,ej)(N) = 1.

Hence, this property is incompatible with efficiency.

42 of 48

Cost additivity

  • A cost sharing rule y satisfies One-path Cost Additivity if �y(c+c′, ej) = y(c, ej) + y(c′, ej)

when (c, ej), (c′, ej) ∈ℙ are elementary problems with a common shortest path to agent j.

43 of 48

Theorem

If n > 2, then the demander rule yd is the unique cost sharing rule satisfying Core Selection and One-path Cost Additivity.

If instead n = 2 (say, N = {1, 2}), then a cost sharing rule y satisfies Core Selection and One-path Cost Additivity if and only if there exists a function α : ℝ+N→ [0, 1]2 such that, for all (c, x) ∈ ℙ,

y(c, x) = α1(x) · ys(c, x) + (1 − α1(x)) · yd(c, x), if c(0, 2) > c(0, 1) + c(1, 2);

y(c, x) = α2(x) · ys(c, x) + (1 − α2(x)) · yd(c, x), otherwise.

First characterization

44 of 48

Cost additivity

  • A cost sharing rule y satisfies Two-path Cost Additivity if �y(c+c′, ej) = y(c, ej) + y(c′, ej)

when (c, ej), (c′, ej) ∈ℙ are elementary problems with a common shortest path and a common second-shortest path to agent j.

45 of 48

Other properties

  • A cost sharing rule y satisfies Supplier Equal Change if �yi(c, ej) − yi(c, ej) = yk(c′, ej) − yk(c′, ej) for all i, k ∈ [j] \ j

when (c, ej), (c, ej) ∈ℙ are elementary problems with a common shortest path j to agent j.

If the shortest path to agent j remains the same from the cost matrix c to the cost matrix c′, then all suppliers of agent j should see their cost shares change in the same way.

46 of 48

Other properties

  • A cost sharing rule y satisfies Path Independence if �yj(c, ej) = yj(c′, ej) for all jN

when (c, ej), (c′, ej) ∈ℙ are elementary problems with |N| > 1, c(jc) = c′(jc′) and �min{c(pj) : pjPj\{jc}} = min{c′(pj) : pjPj\{jc’}}.

A demander should pay the same subsidy to its respective groups of suppliers (under c and c′) if these groups have the same added-value. In other words, what should determine the amount paid to the suppliers is the reduction in the demander’s shipping cost rather than the size or composition of the group of suppliers.

47 of 48

Second characterization

Theorem

An ADACS y satisfies Two-path Cost Additivity, Supplier Equal Change, and Path Independence if and only if it is a convex combination of the supplier rule and the

demander rule, that is to say, if and only if y = α·ys + (1 − αyd for some α ∈ [0, 1].

48 of 48

ADVANCED ANALYTICS FOR A BETTER WORLD