[1]\fnmToby \surWillis

\equalcont

These authors contributed equally to this work.

[1]\orgdivDepartment of Automatic Control and Systems Engineering, \orgnameUniversity of Sheffield, \orgaddress\streetStreet, \citySheffield, \postcode100190, \stateSouth Yorkshire, \countryUK

Oligopoly Game Stabilisation Through Multilayer Congestion Dynamics

[email protected]    \fnmGiuliano \surPunzo [email protected] *
Abstract

International trade and logistics are subject to factors including geopolitical instability, climate change, and black swan events such as the unforeseen closure of the Suez Canal. The problem of predicting local price change under modification of an underlying transport network or change in supply characteristics unites elements of game theory, network theory and transport. The Cournot Oligopoly models economic actors as rational players attempting to maximise profit by optimising supply quantities with analytical results now consolidated about equilibrium characteristics where transport conditions are fixed. Similarly, where supply and demand are fixed, the routing of goods in a transport network can be analytically solved through a traffic assignment problem. Hence we can solve the coupled Cournot-congestion problem by means of a 2-layer network. Where the layers are linked, inter-layer feedback wherein players attempt to maximise their utility occurs. In this respect we find players benefit from taking advantage of non-simultaneous responses to the market rather than moving to a new equilibrium. We draw conclusions about the nature of equilibria, finding that the concave utility curve property results in unique and stable equilibrium for each uncoupled layer, while linked layers have a non-unique stable equilibria for which general solutions are stated.

keywords:
Multilayer Network Theory, Oligopoly, Wardrop Equilibrium, Nash Equilibrium, Transport Theory, Algorithmic Convergence
{xltabular}

l X Description of Variables
Variable Definition and Description
\endfirstheadVariable Definition and Description
\endhead\endfoot

\mathcal{M}caligraphic_M The multilayer network

𝒢𝒢\mathcal{G}caligraphic_G The layers of the multilayer network

αβsubscript𝛼𝛽\mathcal{E_{\alpha\beta}}caligraphic_E start_POSTSUBSCRIPT italic_α italic_β end_POSTSUBSCRIPT The inter-layer edges of the multilayer network

Gαsubscript𝐺𝛼G_{\alpha}italic_G start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT The upper layer, on which a Multimarket Cournot Game is played

Gβsubscript𝐺𝛽G_{\beta}italic_G start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT The lower layer, on which there are congestion dynamics

xiXsubscript𝑥𝑖𝑋x_{i}\in Xitalic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ italic_X A goods seller and a player of the game across both layers

yiYsubscript𝑦𝑖𝑌y_{i}\in Yitalic_y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ italic_Y A market receiving goods from the multimarket Cournot game

N𝑁Nitalic_N The number of players

M𝑀Mitalic_M The number of markets

viαVαsuperscriptsubscript𝑣𝑖𝛼subscript𝑉𝛼v_{i}^{\alpha}\in V_{\alpha}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ∈ italic_V start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT A node in the upper layer.

ei,jαEαsuperscriptsubscript𝑒𝑖𝑗𝛼subscript𝐸𝛼e_{i,j}^{\alpha}\in E_{\alpha}italic_e start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ∈ italic_E start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT An edge between seller xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and market yjsubscript𝑦𝑗y_{j}italic_y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT representing the amount of goods sold between one pair

viβEβsuperscriptsubscript𝑣𝑖𝛽subscript𝐸𝛽v_{i}^{\beta}\in E_{\beta}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β end_POSTSUPERSCRIPT ∈ italic_E start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT A node in the lower layer, representing a physical location

ei,jβEβsuperscriptsubscript𝑒𝑖𝑗𝛽subscript𝐸𝛽e_{i,j}^{\beta}\in E_{\beta}italic_e start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β end_POSTSUPERSCRIPT ∈ italic_E start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT An edge between viβsuperscriptsubscript𝑣𝑖𝛽v_{i}^{\beta}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β end_POSTSUPERSCRIPT and vjβsuperscriptsubscript𝑣𝑗𝛽v_{j}^{\beta}italic_v start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β end_POSTSUPERSCRIPT

pi,jksuperscriptsubscript𝑝𝑖𝑗𝑘p_{i,j}^{k}italic_p start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT The khtsuperscript𝑡{}^{t}hstart_FLOATSUPERSCRIPT italic_t end_FLOATSUPERSCRIPT italic_h set of edges in the lower layer between viβsuperscriptsubscript𝑣𝑖𝛽v_{i}^{\beta}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β end_POSTSUPERSCRIPT and vjβsuperscriptsubscript𝑣𝑗𝛽v_{j}^{\beta}italic_v start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β end_POSTSUPERSCRIPT

R𝑅Ritalic_R The reserve price function, giving sale price per good as a function of goods sold to the market

siSisubscript𝑠𝑖subscript𝑆𝑖s_{i}\in S_{i}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ italic_S start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT The strategy of player xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT

Sisubscript𝑆𝑖S_{-i}italic_S start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT The strategy of all players except xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT

Ai(S)subscript𝐴𝑖𝑆A_{i}(S)italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_S ) The profit made by player xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT in the upper layer

Bi(S)subscript𝐵𝑖𝑆B_{i}(S)italic_B start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_S ) The loss made by player xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT in the lower layer

ai,j()subscript𝑎𝑖𝑗a_{i,j}(\cdot)italic_a start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT ( ⋅ ) The profit function for player i𝑖iitalic_i in market j𝑗jitalic_j

bi,j()subscript𝑏𝑖𝑗b_{i,j}(\cdot)italic_b start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT ( ⋅ ) The congestion function for edge eijsubscript𝑒𝑖𝑗e_{ij}italic_e start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT in the lower layer

Q𝑄Qitalic_Q The profit per good in a market when there are no sales

u(xi,t)𝑢subscript𝑥𝑖𝑡u(x_{i},t)italic_u ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_t ) The utility function for player xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT at time t𝑡titalic_t

thsubscript𝑡t_{h}italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT The time horizon that players are optimising for. They consider utility before and including this time, but not afterwards

g𝑔gitalic_g The profit at time 0 for player xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT

snsubscript𝑠𝑛s_{n}italic_s start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT The sequence of profits made by player x1subscript𝑥1x_{1}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT

sPsubscript𝑠𝑃s_{P}italic_s start_POSTSUBSCRIPT italic_P end_POSTSUBSCRIPT A pareto optimal strategy profile

T𝑇Titalic_T The fixed total transport

f()𝑓f(\cdot)italic_f ( ⋅ ) A function giving the amount of transport on an edge

Pi,jsubscript𝑃𝑖𝑗P_{i,j}italic_P start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT A map** from ei,jαsuperscriptsubscript𝑒𝑖𝑗𝛼e_{i,j}^{\alpha}italic_e start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT in the upper layer to each set of edges in the lower layer which are a transport solution for that edge

μi,jsubscript𝜇𝑖𝑗\mu_{i,j}italic_μ start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT The set of edges in the upper layer with use edge ei,jβsuperscriptsubscript𝑒𝑖𝑗𝛽e_{i,j}^{\beta}italic_e start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β end_POSTSUPERSCRIPT

ΛΛ\Lambdaroman_Λ A set of λsubscript𝜆\lambda_{\dots}italic_λ start_POSTSUBSCRIPT … end_POSTSUBSCRIPT which gives the amount of edges which transport each type of traffic

Gβksuperscriptsubscript𝐺𝛽𝑘G_{\beta}^{k}italic_G start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT The kthth{}^{\mbox{th}}start_FLOATSUPERSCRIPT th end_FLOATSUPERSCRIPT subgraph of Gβsubscript𝐺𝛽G_{\beta}italic_G start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT

fi(ej)subscript𝑓𝑖subscript𝑒𝑗f_{i}(e_{j})italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) The amount of flow player i𝑖iitalic_i uses on edge ejsubscript𝑒𝑗e_{j}italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT.

ci()subscript𝑐𝑖c_{i}(\cdot)italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( ⋅ ) The cost of market saturation

l(ej)𝑙subscript𝑒𝑗l(e_{j})italic_l ( italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) The length of edge ejsubscript𝑒𝑗e_{j}italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT

1 Introduction

Initially designed for modeling duopolistic scenarios, the Cournot competition model is an economic framework that is applicable to oligopolistic situations where multiple firms compete in the same markets for products, such as oil [1] or grain [2]. In Cournot competitions, a player’s rewards from selling goods are contingent on the actions of other players, as these actions influence the selling price of such goods. Players strive to maximize their profits through their strategic choices, and their counterparts select strategies in response, as illustrated in the Cournot model [3]. Cournot competitions are often referred to as Cournot games due to their strategic nature. These games model markets by establishing a relationship between the quantity of goods produced and the resulting prices. In terms of market dynamics, a considerable body of research has focused on single-market Cournot games. The literature, [4], [5] has yielded insights into the characteristics of equilibria in these contexts. [6] introduced a unique approach by partitioning the players and the market, which resulted in equilibria for Cournot competition. In this novel framework, players are linked to particular markets through a bipartite network. [7], [8], and [9] independently achieved results in this area, wherein they defined an equilibrium allocation as a collection of strategies in which companies realize zero marginal profit. Notably, Cournot competitions do not incorporate factors related to variable transportation costs or consider the physical distances between players and the markets in which they engage in competition.

The widely recognized selfish routing problem takes into account the expenses associated with traversing physical distances. In this context, players navigate a network from a start to a destination node. In this network, each edge incurs a cost, which is influenced by the volume of players utilizing it. As more individuals opt for the same edge, its cost increases, thereby reducing the overall benefit or utility experienced by the players [10]. Within selfish routing problems, a Wardrop equilibrium is characterized by the collection of routing strategies employed by players, where no player has any motivation to independently alter their chosen route. This equilibrium concept plays a pivotal role in the traffic assignment problem, to the extent that observed flows are frequently regarded as the naturally arising equilibrium and serve as an initial basis for deriving the origin-destination matrix. This is accomplished by reconstructing the costs linked to each edge through congestion functions [11]. Congestion functions are mathematical representations that very often exhibit convexity and monotonic increase. They establish a relationship between the travel time along a specific road segment (often used as a proxy for cost) and the volume of traffic present on that segment. While distinct from Cournot games, selfish routing problems have also been explored within the context of multilayer networks. In these scenarios, each layer of the network corresponds to different modes of transportation or performance attributes, such as long-range, high-speed journeys in contrast to shorter-range, slower transfers. In the realm of multilayer transportation systems, [12] conducted an investigation and offered algorithms designed to compute Wardrop equilibria, thereby addressing the equilibrium solutions for this complex transport setting.

A multilayer setting lends itself well to the representation of different dynamic systems, with each system abstracted as a network and interacting with others. Specifically, exploration of network Cournot competition [13] can be integrated with a separate transport layer, where the selfish routing problem concerning the transportation of goods from players to markets is investigated.

In this context, it becomes necessary to consider the Nash equilibrium of the Cournot game in conjunction with the Wardrop equilibrium of the selfish routing problem, as either or both of these equilibria may be achieved. Under certain appropriate assumptions, it’s worth noting that where a Nash-Cournot equilibrium is defined and conditions for existence and uniqueness of it are given, then the asymptotic behavior of this equilibrium is shown to yield a total flow vector corresponding to a Wardrop equilibrium [14]. This corresponds to the similarity between traffic assignment and Cournot where player market-share is infinitesimal.

The first layer of the two layer model introduces a Cournot competition conducted within a bipartite network involving players and markets, while the second layer presents a selfish routing problem akin to a congestion game played on the physically embedded transportation network.

Results about the nature of linked oligopoly-transport system are given in [15] which delves into a capacity-constrained oligopoly problem and identifies that a reduction in transportation costs can have a detrimental effect on the profits of all firms involved. It’s important to note that their approach differs from the one presented in this paper, as transportation within a network is not considered. Transportation is instead assigned a functional cost.

In this study, we build upon the Cournot competition framework introduced in [13] and leverage the insights from [12] for the congestion game aspect. The synergy between these two components yields original outcomes, particularly in the emergence of equilibrium points where individual players lack any incentive to alter the quantities of goods they sell in each market or the routing choices for ship** these goods. It is worth mentioning that differently from [19], results about optimal response under different patience characteristics, the effect of player collusion and an analysis of numerical results on equilibrium formation in a 3-player game are given.

While both network Cournot cases and transportation problems are well-documented topics in the literature, there exists a notable void concerning the interplay between these issues. This paper fills that gap by exploring the dynamics of the bilayer model.

In this paper, we present the following original contributions:

  • We build on existing network oligopoly models e.g. [13], and develop them through the introduction of a second layer following congestion based transport dynamics. While these dynamics rely on classical network congestion games, for example, [16], their effect is to change the oligopoly competition in unexplored ways. The market prices are influenced by the cost of transport to those markets. The volume of traffic through the transport layer is influenced by the market conditions.

  • We establish the existence and uniqueness of equilibrium points within each layer, considering the hypothesis of stationary conditions in the other layer. Additionally, we demonstrate the stability of these equilibrium points individually within each layer for fixed total production.

  • We conduct an analysis of the coupled co-evolving dynamics between both layers. Specifically, we identify the equilibrium points that emerge from this interplay and provide rigorous proofs of their uniqueness and stability. This analysis sheds light on the intricate dynamics of the interconnected layers in our model.

This study primarily centers on the analytical facets of the Cournot-congestion game. However, it also delves into applied research inquiries related to the intricate connection between market competition and transportation expenses. This theme holds significant practical significance, influencing strategic decisions related to crucial areas like food security and supply chain resilience [17].

The transition from the theoretical model to real-world applications is facilitated by conceiving the global market as a routing problem, where firms act as competing agents striving to optimize their individual utility. This conceptual bridge underscores the relevance and broader implications of our research.

2 Model Formulation

2.1 Mode and Network Formulation

The bi-layer model captures the impact on the price in the markets in the upper layer of transport through the lower layer. Players sell good attempting to maximise their profit, evaluating with respect to both the price of goods in the various markets and the cost of transporting goods to those markets. The players attempt to maximise their total profit, captured by the costs of transporting goods and the profit from selling to the various markets.

Refer to caption

Figure 1: An example model with 2 players, 2 markets and a 5 node transport layer

We shall consider a multilayer network with two distinct layers, referred to as a bilayer network. The formulation follows the multilayer convention established in [18].

A bilayer network is a pair represented as:

=(𝒢,αβ)𝒢subscript𝛼𝛽\mathcal{M}=(\mathcal{G},\mathcal{E}_{\alpha\beta})caligraphic_M = ( caligraphic_G , caligraphic_E start_POSTSUBSCRIPT italic_α italic_β end_POSTSUBSCRIPT ) (1)

Here, the indices α𝛼\alphaitalic_α and β𝛽\betaitalic_β are used to reference the layers, and the family of undirected weighted graphs denoted as 𝒢=(Gα,Gβ)𝒢subscript𝐺𝛼subscript𝐺𝛽\mathcal{G}=(G_{\alpha},G_{\beta})caligraphic_G = ( italic_G start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT , italic_G start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT ) is referred to as the “layers" of the network \mathcal{M}caligraphic_M. In the context of Figure 1, the graph Gαsubscript𝐺𝛼G_{\alpha}italic_G start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT is also colloquially called the “Upper Layer," while Gβsubscript𝐺𝛽G_{\beta}italic_G start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT is referred to as the “Lower Layer".

Layer α𝛼\alphaitalic_α is the graph given by Gα=(Vα,Eα)subscript𝐺𝛼subscript𝑉𝛼subscript𝐸𝛼G_{\alpha}=\left({V_{\alpha}},{E_{\alpha}}\right)italic_G start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT = ( italic_V start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT , italic_E start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT ) where Vα={viα,i=1,2Nα}V_{\alpha}=\{v_{i}^{\alpha},i=1,2\dots N_{\alpha}\}italic_V start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT = { italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT , italic_i = 1 , 2 … italic_N start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT } with Nαsubscript𝑁𝛼N_{\alpha}italic_N start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT the number of nodes in layer α𝛼\alphaitalic_α. Nα=N+Msubscript𝑁𝛼𝑁𝑀N_{\alpha}=N+Mitalic_N start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT = italic_N + italic_M where N𝑁Nitalic_N is the number of players (sellers) and where M𝑀Mitalic_M is the number of markets.

ai,j=(viα,vjα)Eαsubscript𝑎𝑖𝑗superscriptsubscript𝑣𝑖𝛼superscriptsubscript𝑣𝑗𝛼subscript𝐸𝛼a_{i,j}=(v_{i}^{\alpha},v_{j}^{\alpha})\in E_{\alpha}italic_a start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT = ( italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT , italic_v start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ) ∈ italic_E start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT where Eαsubscript𝐸𝛼E_{\alpha}italic_E start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT is the set of intra-edges and ai,jsubscript𝑎𝑖𝑗a_{i,j}italic_a start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT is a single edge. With viαXsuperscriptsubscript𝑣𝑖𝛼𝑋v_{i}^{\alpha}\in Xitalic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ∈ italic_X and vjαYsuperscriptsubscript𝑣𝑗𝛼𝑌v_{j}^{\alpha}\in Yitalic_v start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ∈ italic_Y.

The upper layer’s nodes can be partitioned into two sets: X𝑋Xitalic_X, consisting of N𝑁Nitalic_N players (sellers), and Y𝑌Yitalic_Y, consisting of M𝑀Mitalic_M markets.

A bipartite assumption is appropriate since there is no exchange of traffic between groups of sellers or among groups of markets.

As layer α𝛼\alphaitalic_α is bipartite, the following relations are true.

XY=𝑋𝑌X\cap Y=\emptysetitalic_X ∩ italic_Y = ∅

and

Vα=XY.subscript𝑉𝛼𝑋𝑌V_{\alpha}=X\cup Y.italic_V start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT = italic_X ∪ italic_Y .

An ordering exists on the elements of Vαsubscript𝑉𝛼V_{\alpha}italic_V start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT with v1α=x1,,vNα=xN,vN+1α=y1,vNαα=yMformulae-sequencesuperscriptsubscript𝑣1𝛼subscript𝑥1formulae-sequencesubscriptsuperscript𝑣𝛼𝑁subscript𝑥𝑁formulae-sequencesubscriptsuperscript𝑣𝛼𝑁1subscript𝑦1subscriptsuperscript𝑣𝛼subscript𝑁𝛼subscript𝑦𝑀v_{1}^{\alpha}=x_{1},\dots,v^{\alpha}_{N}=x_{N},v^{\alpha}_{N+1}=y_{1}\,\dots,% v^{\alpha}_{N_{\alpha}}=y_{M}italic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT = italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_v start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_N end_POSTSUBSCRIPT = italic_x start_POSTSUBSCRIPT italic_N end_POSTSUBSCRIPT , italic_v start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_N + 1 end_POSTSUBSCRIPT = italic_y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT … , italic_v start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_N start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT end_POSTSUBSCRIPT = italic_y start_POSTSUBSCRIPT italic_M end_POSTSUBSCRIPT. Similarly, in layer β𝛽\betaitalic_β we have the (non-bipartite) graph Gβ=(Vβ,Eβ),subscript𝐺𝛽subscript𝑉𝛽subscript𝐸𝛽G_{\beta}=\left({V_{\beta}},{E_{\beta}}\right),italic_G start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT = ( italic_V start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT , italic_E start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT ) , where Vβ={viβ,i=1,2Nβ}V_{\beta}=\{v_{i}^{\beta},i=1,2\dots N_{\beta}\}italic_V start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT = { italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β end_POSTSUPERSCRIPT , italic_i = 1 , 2 … italic_N start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT } and bi,j=(viβ,vjβ)Eβsubscript𝑏𝑖𝑗superscriptsubscript𝑣𝑖𝛽superscriptsubscript𝑣𝑗𝛽subscript𝐸𝛽b_{i,j}=(v_{i}^{\beta},v_{j}^{\beta})\in E_{\beta}italic_b start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT = ( italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β end_POSTSUPERSCRIPT , italic_v start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β end_POSTSUPERSCRIPT ) ∈ italic_E start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT with Nβsubscript𝑁𝛽N_{\beta}italic_N start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT the number of nodes in layer β𝛽\betaitalic_β.

Each node on the upper layer (and accordingly every member of these sets) is associated to at most one node in Gβsubscript𝐺𝛽G_{\beta}italic_G start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT. The discrete ‘location’ map [19]

L()=viβ:𝐕α𝐕β:𝐿superscriptsubscript𝑣𝑖𝛽subscript𝐕𝛼subscript𝐕𝛽L(\cdot)=v_{i}^{\beta}:\mathbf{V_{\alpha}}\rightarrow\mathbf{V_{\beta}}italic_L ( ⋅ ) = italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_β end_POSTSUPERSCRIPT : bold_V start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT → bold_V start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT (2)

gives the geographical embedding of any player or market onto Gβsubscript𝐺𝛽G_{\beta}italic_G start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT and for each vkαGαsuperscriptsubscript𝑣𝑘𝛼subscript𝐺𝛼v_{k}^{\alpha}\in G_{\alpha}italic_v start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ∈ italic_G start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT, there exists ekαβ={ek:ek=(vkα,L(vkα))}subscript𝑒𝑘subscript𝛼𝛽conditional-setsubscript𝑒𝑘subscript𝑒𝑘superscriptsubscript𝑣𝑘𝛼𝐿superscriptsubscript𝑣𝑘𝛼e_{k}\in\mathcal{E}_{\alpha\beta}=\{e_{k}:e_{k}=(v_{k}^{\alpha},L(v_{k}^{% \alpha}))\}italic_e start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ∈ caligraphic_E start_POSTSUBSCRIPT italic_α italic_β end_POSTSUBSCRIPT = { italic_e start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT : italic_e start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT = ( italic_v start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT , italic_L ( italic_v start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ) ) }. L()𝐿L(\cdot)italic_L ( ⋅ ) is not an injective function so there is no limitation requiring players and markets to be in different nodes.

It has been given that Eαsubscript𝐸𝛼E_{\alpha}italic_E start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT and Eβsubscript𝐸𝛽E_{\beta}italic_E start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT are the sets of intra-layer edges. αβsubscript𝛼𝛽\mathcal{E}_{\alpha\beta}caligraphic_E start_POSTSUBSCRIPT italic_α italic_β end_POSTSUBSCRIPT is defined to be the set of inter-layer edges between layers α𝛼\alphaitalic_α and β𝛽\betaitalic_β.

The weights of the edges in Eαsubscript𝐸𝛼E_{\alpha}italic_E start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT given by

w():Eα+:𝑤subscript𝐸𝛼subscriptw(\cdot):E_{\alpha}\rightarrow\mathbb{R}_{+}italic_w ( ⋅ ) : italic_E start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT → blackboard_R start_POSTSUBSCRIPT + end_POSTSUBSCRIPT (3)

represent the amount of goods being sold by a player to a market.

Transportation dynamics appear within the lower layer Gβsubscript𝐺𝛽G_{\beta}italic_G start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT, with its nodes and edges representing a real world transportation system. The edges in the lower layer have lengths l:Eβ+:𝑙subscript𝐸𝛽subscriptl:E_{\beta}\rightarrow\mathbb{R}_{+}italic_l : italic_E start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT → blackboard_R start_POSTSUBSCRIPT + end_POSTSUBSCRIPTand capacities, c:Eβ+:𝑐subscript𝐸𝛽subscriptc:E_{\beta}\rightarrow\mathbb{R}_{+}italic_c : italic_E start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT → blackboard_R start_POSTSUBSCRIPT + end_POSTSUBSCRIPT.

Finally, the set αβsubscript𝛼𝛽\mathcal{E_{\alpha\beta}}caligraphic_E start_POSTSUBSCRIPT italic_α italic_β end_POSTSUBSCRIPT of inter-layer edges represents the geographical embedding of the elements of the upper layer into the lower layer.

2.2 Transport Routing

The implementation of transport paths which appears below follows the implementation appearing in [19].

Transport on the lower layer must satisfy the demand in the upper layer. In other words, the quantity of goods transferred between a player and a market in the upper layer must correspond to the travel demand between the respective player and market locations in the transport layer. While there is only a single path between xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and yjsubscript𝑦𝑗y_{j}italic_y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT in the upper layer, there can be multiple paths between L(xi)𝐿subscript𝑥𝑖L(x_{i})italic_L ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) and L(yj)𝐿subscript𝑦𝑗L(y_{j})italic_L ( italic_y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) in the lower layer. Each feasible route is denoted as a path pi,jksuperscriptsubscript𝑝𝑖𝑗𝑘p_{i,j}^{k}italic_p start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT, which represents an ordered sequence of edges in the lower layer. Here, i𝑖iitalic_i and j𝑗jitalic_j signify the indices of the elements in sets X𝑋Xitalic_X and Y𝑌Yitalic_Y that the path connects, and k𝑘kitalic_k serves as the path index.

The set of all paths between L(xiα)𝐿superscriptsubscript𝑥𝑖𝛼L(x_{i}^{\alpha})italic_L ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ) and L(yjα)𝐿superscriptsubscript𝑦𝑗𝛼L(y_{j}^{\alpha})italic_L ( italic_y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ) is referred to as Pi,jsubscript𝑃𝑖𝑗P_{i,j}italic_P start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT, and the collection of all path sets between L(X)𝐿𝑋L(X)italic_L ( italic_X ) and L(Y)𝐿𝑌L(Y)italic_L ( italic_Y ) in the lower layer is defined as P𝑃Pitalic_P. This is structured as follows:

P=(P1,1,,P1,M,P2,1,,PN,1,,PN,M)𝑃subscript𝑃11subscript𝑃1𝑀subscript𝑃21subscript𝑃𝑁1subscript𝑃𝑁𝑀P=\left(P_{1,1},\dots,P_{1,M},P_{2,1},\dots,P_{N,1},\dots,P_{N,M}\right)italic_P = ( italic_P start_POSTSUBSCRIPT 1 , 1 end_POSTSUBSCRIPT , … , italic_P start_POSTSUBSCRIPT 1 , italic_M end_POSTSUBSCRIPT , italic_P start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT , … , italic_P start_POSTSUBSCRIPT italic_N , 1 end_POSTSUBSCRIPT , … , italic_P start_POSTSUBSCRIPT italic_N , italic_M end_POSTSUBSCRIPT ) (4)

and

Pi,j=(pi,j1,pi,j2,,pi,jNPi,j),subscript𝑃𝑖𝑗superscriptsubscript𝑝𝑖𝑗1superscriptsubscript𝑝𝑖𝑗2superscriptsubscript𝑝𝑖𝑗subscript𝑁subscript𝑃𝑖𝑗P_{i,j}=\left(p_{i,j}^{1},p_{i,j}^{2},\dots,p_{i,j}^{N_{P_{i,j}}}\right),italic_P start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT = ( italic_p start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , italic_p start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT , … , italic_p start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ) ,

where NPi,jsubscript𝑁subscript𝑃𝑖𝑗N_{P_{i,j}}italic_N start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT signifies the count of paths in the lower layer between node L(xiα)𝐿superscriptsubscript𝑥𝑖𝛼L(x_{i}^{\alpha})italic_L ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ) and L(yjα)𝐿superscriptsubscript𝑦𝑗𝛼L(y_{j}^{\alpha})italic_L ( italic_y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ).

The transportation through the lower layer must adhere to the transportation requirements as described by the edge flow in the upper layer. Consequently,

f(ai,j)=k=1NPi,jpi,jk.𝑓subscript𝑎𝑖𝑗superscriptsubscript𝑘1subscript𝑁subscript𝑃𝑖𝑗superscriptsubscript𝑝𝑖𝑗𝑘f(a_{i,j})=\sum_{k=1}^{N_{P_{i,j}}}p_{i,j}^{k}.italic_f ( italic_a start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT ) = ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT end_POSTSUPERSCRIPT italic_p start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT . (5)

Note that, with a slight abuse of notation, we’ve defined pi,jksuperscriptsubscript𝑝𝑖𝑗𝑘p_{i,j}^{k}italic_p start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT to represent both the path (an ordered set of edges between L(xiα)𝐿superscriptsubscript𝑥𝑖𝛼L(x_{i}^{\alpha})italic_L ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ) and L(yjα)𝐿superscriptsubscript𝑦𝑗𝛼L(y_{j}^{\alpha})italic_L ( italic_y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT )) and the flow of goods routed through them.

2.3 The Cournot Oligopoly Game

A Cournot competition, as originally outlined in [3] describes the dynamics of the players in the upper layer with respect to each market as the following conditions are satisfied:

  • The game has multiple players;

  • there is no collusion between players;

  • each player has market power, that is, each player strategy changes the price in the market they participate in;

  • The number of players and markets are fixed and the goods sold by all players are homogeneous;

  • players choose the quantity of goods to sell rather than their price, which is a consequence of the total amount of good sold;

  • players engage in rational behaviour.

The condition of fixed total production, with players assigning goods to each market results in players engaging in parallel Cournot competition across the markets.

A reserve price (or the indifference price) is the minimum price a market is willing to pay for a good. In each market it is assumed there will be a range of reserve prices held by the spectrum of buyers. This leads to a functional relationship between the supply of goods and the price at which they will all be sold. This will be the same price for all buyers, meaning that buyers potentially willing to pay more for the same goods will be better off. Associated with each market yjsubscript𝑦𝑗y_{j}italic_y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT is a reserve price function Ai,yjsubscript𝐴𝑖subscript𝑦𝑗A_{i,y_{j}}italic_A start_POSTSUBSCRIPT italic_i , italic_y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT of the form

Ai,yj():+:subscript𝐴𝑖subscript𝑦𝑗subscriptA_{i,y_{j}}(\cdot):\mathbb{R}_{+}\rightarrow\mathbb{R}italic_A start_POSTSUBSCRIPT italic_i , italic_y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( ⋅ ) : blackboard_R start_POSTSUBSCRIPT + end_POSTSUBSCRIPT → blackboard_R

from a positive supply to a profit (which could be negative). As supply increases price will be monotonically decreasing. Players seek to maximise their profit by splitting their sales between the available markets in order to receive maximal utility. The relationship between supply and price per unit can be seen in figure 2.

Refer to caption


Figure 2: A sample reserve price curve with profit in green and excess profit in orange

2.4 Game Dynamics

Every player, denoted as i𝑖iitalic_i, strives to optimize the difference between their income and the costs incurred in selling their goods. This multilayer game, originally presented [19] appears here for clarity. The key aspects of this game include:

The costs incurred relate to the utilization of transport links, and these costs increase as the transport links become more congested due to higher usage.

Income is derived from selling goods to markets, and players earn profit based on the supply and demand dynamics in the markets they sell to.

The utility function for each player is defined as follows:

u(si,si):Si×Si+.:𝑢subscript𝑠𝑖subscript𝑠𝑖subscript𝑆𝑖subscript𝑆𝑖subscriptu(s_{i},s_{-i}):S_{i}\times S_{-i}\rightarrow\mathbb{R}_{+}.italic_u ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) : italic_S start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT × italic_S start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT → blackboard_R start_POSTSUBSCRIPT + end_POSTSUBSCRIPT . (6)

Here, sisubscript𝑠𝑖s_{i}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT represents the current strategy of player xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, Sisubscript𝑆𝑖S_{i}italic_S start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is the set of all possible strategies for player xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, sisubscript𝑠𝑖s_{-i}italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT is the current strategy of all other players, and Sisubscript𝑆𝑖S_{-i}italic_S start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT is the set of all possible strategies for all players.

This is a dynamic game with players moving asynchronously. Players sequentially update their strategies to optimize their responses to the strategies chosen by all other players. Players consider not just the immediate future but seek to maximize their utility over multiple rounds, taking into account the future strategies of other players. The update order starts with player 1 (located at x1subscript𝑥1x_{1}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT), followed by player 2, and so on, loo** back to player 1 after player N𝑁Nitalic_N has updated their strategy.

Each player’s strategy is a combination of actions from both an upper layer and a lower layer, which includes:

  1. 1.

    Choosing an allocation of markets to sell goods in the upper layer. This involves a mixed strategy in the form of (w(ai,1),w(ai,2),,w(ai,M))𝑤subscript𝑎𝑖1𝑤subscript𝑎𝑖2𝑤subscript𝑎𝑖𝑀(w(a_{i,1}),w(a_{i,2}),\dots,w(a_{i,M}))( italic_w ( italic_a start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT ) , italic_w ( italic_a start_POSTSUBSCRIPT italic_i , 2 end_POSTSUBSCRIPT ) , … , italic_w ( italic_a start_POSTSUBSCRIPT italic_i , italic_M end_POSTSUBSCRIPT ) ) for ai,jEαsubscript𝑎𝑖𝑗subscript𝐸𝛼a_{i,j}\in E_{\alpha}italic_a start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT ∈ italic_E start_POSTSUBSCRIPT italic_α end_POSTSUBSCRIPT.

  2. 2.

    Selecting a mixed strategy for the paths they will use to transport goods, ensuring they fulfill their origin-destination pairings.

This results in a strategy represented as:

si=([ai,1,ai,2,,ai,M][pi,11,,pi,1(NPi,1),,pi,m1,,pi,Nc(NPi,m)])subscript𝑠𝑖matrixsubscript𝑎𝑖1subscript𝑎𝑖2subscript𝑎𝑖𝑀superscriptsubscript𝑝𝑖11superscriptsubscript𝑝𝑖1subscript𝑁subscript𝑃𝑖1superscriptsubscript𝑝𝑖𝑚1superscriptsubscript𝑝𝑖subscript𝑁𝑐subscript𝑁subscript𝑃𝑖𝑚s_{i}=\begin{pmatrix}[a_{i,1},a_{i,2},\hfil\hfil\textstyle\dots,a_{i,M}]\ [p_{% i,1}^{1},\hfil\hfil\textstyle\dots,p_{i,1}^{(N_{P_{i,1}})},\hfil\hfil% \textstyle\dots,p_{i,m}^{1},\hfil\hfil\textstyle\dots,p_{i,N_{c}}^{(N_{P_{i,m}% })}]\end{pmatrix}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( start_ARG start_ROW start_CELL [ italic_a start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT , italic_a start_POSTSUBSCRIPT italic_i , 2 end_POSTSUBSCRIPT , … , italic_a start_POSTSUBSCRIPT italic_i , italic_M end_POSTSUBSCRIPT ] [ italic_p start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , … , italic_p start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( italic_N start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) end_POSTSUPERSCRIPT , … , italic_p start_POSTSUBSCRIPT italic_i , italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , … , italic_p start_POSTSUBSCRIPT italic_i , italic_N start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( italic_N start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_i , italic_m end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) end_POSTSUPERSCRIPT ] end_CELL end_ROW end_ARG ) (7)

The utility for a player xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is calculated as:

ui(si,si)=Ai(si,si)Bi(si,si)subscript𝑢𝑖subscript𝑠𝑖subscript𝑠𝑖subscript𝐴𝑖subscript𝑠𝑖subscript𝑠𝑖subscript𝐵𝑖subscript𝑠𝑖subscript𝑠𝑖u_{i}(s_{i},s_{-i})=A_{i}(s_{i},s_{-i})-B_{i}(s_{i},s_{-i})italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) = italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) - italic_B start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) (8)
Ai(si,si)=j=1MAi,mj(si,si)subscript𝐴𝑖subscript𝑠𝑖subscript𝑠𝑖superscriptsubscript𝑗1𝑀subscript𝐴𝑖subscript𝑚𝑗subscript𝑠𝑖subscript𝑠𝑖A_{i}(s_{i},s_{-i})=\sum_{j=1}^{M}A_{i,m_{j}}(s_{i},s_{-i})italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) = ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_M end_POSTSUPERSCRIPT italic_A start_POSTSUBSCRIPT italic_i , italic_m start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) (9)

Here, Ai(si,si)subscript𝐴𝑖subscript𝑠𝑖subscript𝑠𝑖A_{i}(s_{i},s_{-i})italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) represents the total profit made in the upper layer by player i𝑖iitalic_i, and Ai,mj(si,si)subscript𝐴𝑖subscript𝑚𝑗subscript𝑠𝑖subscript𝑠𝑖A_{i,m_{j}}(s_{i},s_{-i})italic_A start_POSTSUBSCRIPT italic_i , italic_m start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) denotes the profit made by player i𝑖iitalic_i in market j𝑗jitalic_j. Bi(si,si)subscript𝐵𝑖subscript𝑠𝑖subscript𝑠𝑖B_{i}(s_{i},s_{-i})italic_B start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) accounts for the congestion cost paid by player i𝑖iitalic_i. The choice of congestion functions is not restricted beyond requiring a monotone increase, continuity and convexity.

3 Time and Player Independence

Consider a group of players aiming to profit from various markets. They receive updates on the current market state sequentially and aim to maximize their utility. The cost of market saturation cisubscript𝑐𝑖c_{i}italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for each player i𝑖iitalic_i is determined as follows in a 2-player 2-market game:

ci=fi(e1)(fi(e1)+jiNfj(e1))+(1fi(e1))((1fi(e1))+(N1)jiNfj(e1))subscript𝑐𝑖subscript𝑓𝑖subscript𝑒1subscript𝑓𝑖subscript𝑒1superscriptsubscript𝑗𝑖𝑁subscript𝑓𝑗subscript𝑒11subscript𝑓𝑖subscript𝑒11subscript𝑓𝑖subscript𝑒1𝑁1superscriptsubscript𝑗𝑖𝑁subscript𝑓𝑗subscript𝑒1c_{i}=f_{i}(e_{1})\left(f_{i}(e_{1})+\sum_{j\neq i}^{N}f_{j}(e_{1})\right)+(1-% f_{i}(e_{1}))\left((1-f_{i}(e_{1}))+(N-1)-\sum_{j\neq i}^{N}f_{j}(e_{1})\right)italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ( italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) + ∑ start_POSTSUBSCRIPT italic_j ≠ italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT italic_f start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ) + ( 1 - italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ) ( ( 1 - italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ) + ( italic_N - 1 ) - ∑ start_POSTSUBSCRIPT italic_j ≠ italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT italic_f start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ) (10)

In this equation, fi(ek)subscript𝑓𝑖subscript𝑒𝑘f_{i}(e_{k})italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_e start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) represents the amount of traffic that player i𝑖iitalic_i assigns to route k𝑘kitalic_k, and N𝑁Nitalic_N is the total number of players. The choice of an inverse linear demand function, as expressed in equation 10, is a commonly used assumption in the literature [20] [21]. Extension to additional players and markets requires an expansion of this equation. This results in the general form

ci=i=1Mfi(e1)(jNfj(e1)).subscript𝑐𝑖subscript𝑖superscript1𝑀subscript𝑓𝑖subscript𝑒1superscriptsubscript𝑗𝑁subscript𝑓𝑗subscript𝑒1c_{i}=\sum_{i}=1^{M}f_{i}(e_{1})\left(\sum_{j}^{N}f_{j}(e_{1})\right).italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ∑ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = 1 start_POSTSUPERSCRIPT italic_M end_POSTSUPERSCRIPT italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ( ∑ start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT italic_f start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ) .
Remark 1.

This model is time independent and is symmetric to all players. As such, all players will follow the same strategy as on their turn they consider the same problem.

Players update their responses sequentially beginning with player 1, continuing to player N𝑁Nitalic_N and returning to player 1 afterwards. Beginning with player 1111, the situation before player 1111 changes strategy is considered to be the set of strategies at time t=0𝑡0t=0italic_t = 0. Accordingly at the time step tksubscript𝑡𝑘t_{k}italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT, the player i𝑖iitalic_i has just updated where ti=i(modN)subscript𝑡𝑖𝑖𝑚𝑜𝑑𝑁t_{i}=i(modN)italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_i ( italic_m italic_o italic_d italic_N ).

As player i𝑖iitalic_i gets to update their strategy again at time step tk+Nsubscript𝑡𝑘𝑁t_{k}+Nitalic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + italic_N they are only interested in their received utility at time steps tk,tk+1,,tk+(N1)subscript𝑡𝑘subscript𝑡𝑘1subscript𝑡𝑘𝑁1t_{k},t_{k}+1,\dots,t_{k}+(N-1)italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + 1 , … , italic_t start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT + ( italic_N - 1 ). Without loss of generality we can consider the player who is about to respond to be player 1111 at t=0𝑡0t=0italic_t = 0. Given a starting situation [,s2,s3,,sN]subscript𝑠2subscript𝑠3subscript𝑠𝑁[-,s_{2},s_{3},\dots,s_{N}][ - , italic_s start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT , … , italic_s start_POSTSUBSCRIPT italic_N end_POSTSUBSCRIPT ] player 1111 wants to choose the strategy sisubscript𝑠𝑖s_{i}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT which minimises their costs at time steps 1,2,,N12𝑁1,2,\dots,N1 , 2 , … , italic_N.

4 Uncoupled Dynamics Results

We shall first consider the characteristics of the layers when examined individually (such that there is no feedback from the other layer) to then understand the behaviour of the model as a whole.

4.1 Upper Layer Dynamics - Approach to Cournot Equilibrium

To analyse the dynamics within the upper layer, let’s begin by establishing an assumption that will later be relaxed: the allocation of flows across all paths in the lower layer connecting the same origin and destination remains fixed. In other words, for all k𝑘kitalic_k and l𝑙litalic_l within the range of 1111 to Npijsubscript𝑁subscript𝑝𝑖𝑗N_{p_{ij}}italic_N start_POSTSUBSCRIPT italic_p start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT, and for all i𝑖iitalic_i and j𝑗jitalic_j within the range of 1111 to N𝑁Nitalic_N and 1111 to M𝑀Mitalic_M respectively, it holds that pijk=pijlsuperscriptsubscript𝑝𝑖𝑗𝑘superscriptsubscript𝑝𝑖𝑗𝑙p_{ij}^{k}=p_{ij}^{l}italic_p start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT = italic_p start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT. Furthermore, this allocation remains constant and unaffected by the quantity of goods a player sells in a specific market.

This situation means that while the transportation costs have an impact on a player’s utility, the dynamics in the lower layer are unresponsive to changes in the upper layer. In essence, a player can adjust the volume of goods they sell in each market, but they lack the ability to alter the distribution of flow among paths with the same origin and destination. As a result, the game unfolds exclusively in the upper layer, although it is influenced by the costs generated in the lower layer.

If we assume that the game commences from a non-equilibrium state and the players progressively respond optimally to the strategies of other players, we can analyze the utilities over multiple rounds.

The Cournot Game has a unique equilibrium where the utility function is twice differentiable, concave, and strictly decreasing and the costs of production are twice differentiable, convex and increasing [13, Theorem 1]. The assumption is made that there is no cost for production in the upper layer. As such, this cost function is given by the 0-function which satisfies the conditions outlined in theorem 1 in [13]. Consider the two player two markets case with a profit function Ai,mj(si,si)subscript𝐴𝑖subscript𝑚𝑗subscript𝑠𝑖subscript𝑠𝑖A_{i,m_{j}}(s_{i},s_{-i})italic_A start_POSTSUBSCRIPT italic_i , italic_m start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) generally defined as

Ai,mj(si,si)=w(ai,j)(Qk=1Nw(ak,j)),subscript𝐴𝑖subscript𝑚𝑗subscript𝑠𝑖subscript𝑠𝑖𝑤subscript𝑎𝑖𝑗𝑄superscriptsubscript𝑘1𝑁𝑤subscript𝑎𝑘𝑗A_{i,m_{j}}(s_{i},s_{-i})=w(a_{i,j})\left(Q-\sum_{k=1}^{N}w(a_{k,j})\right),italic_A start_POSTSUBSCRIPT italic_i , italic_m start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) = italic_w ( italic_a start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT ) ( italic_Q - ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT italic_w ( italic_a start_POSTSUBSCRIPT italic_k , italic_j end_POSTSUBSCRIPT ) ) , (11)

where Q𝑄Qitalic_Q is a fixed constant giving the profit where there is no supply. As the players aim to maximize their utility without the ability to adjust their production, it’s important to note that the magnitude of Q𝑄Qitalic_Q does not impact the analytical outcomes. The utility that an individual player receives in a market adheres to the curve labeled ’profit in market 1,’ which is depicted in Figure 4. A profit function, which satisfies the conditions outlined by [13], does exist. This implies that the game possesses a unique equilibrium, as demonstrated in their work.

To identify this equilibrium, we can examine the sum of Ai,m1(f(a1,1),si)subscript𝐴𝑖subscript𝑚1𝑓subscript𝑎11subscript𝑠𝑖A_{i,m_{1}}(f(a_{1,1}),s_{-i})italic_A start_POSTSUBSCRIPT italic_i , italic_m start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_f ( italic_a start_POSTSUBSCRIPT 1 , 1 end_POSTSUBSCRIPT ) , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) and Ai,m2(1f(a1,1),si)subscript𝐴𝑖subscript𝑚21𝑓subscript𝑎11subscript𝑠𝑖A_{i,m_{2}}(1-f(a_{1,1}),s_{-i})italic_A start_POSTSUBSCRIPT italic_i , italic_m start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( 1 - italic_f ( italic_a start_POSTSUBSCRIPT 1 , 1 end_POSTSUBSCRIPT ) , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) for a variable hhitalic_h within the range of [0,1]. Here, m1subscript𝑚1m_{1}italic_m start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and m2subscript𝑚2m_{2}italic_m start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT represent markets, and f(a1,1)𝑓subscript𝑎11f(a_{1,1})italic_f ( italic_a start_POSTSUBSCRIPT 1 , 1 end_POSTSUBSCRIPT ) varies between [0,1], representing the distribution of each player’s production across all markets. Importantly, this function demonstrates concavity. The equilibrium is located at the maximum point, which occurs when f(a1,1)=0.5𝑓subscript𝑎110.5f(a_{1,1})=0.5italic_f ( italic_a start_POSTSUBSCRIPT 1 , 1 end_POSTSUBSCRIPT ) = 0.5, as illustrated in Figure 4.

Refer to caption

Figure 3: The upper layer utility functions for player i𝑖iitalic_i

Refer to caption

Figure 4: The set of x𝑥xitalic_x corresponding to the optimal response (x)(a0)𝑥subscript𝑎0(x)(a_{0})( italic_x ) ( italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ) for 1th10001subscript𝑡10001\leq t_{h}\leq 10001 ≤ italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT ≤ 1000, analytic convergence is proved in 3 so the unusual behaviour beginning at th=40subscript𝑡40t_{h}=40italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT = 40 is due to numerical limitations.

In the case where there are 2 players, the optimal strategy can be found analytically as shown in the next section, for different time horizons.

4.2 Time Horizon Dependent Best Response

Consider t𝑡titalic_t is the time step, xtsubscript𝑥𝑡x_{t}italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT is the strategy played by x𝑥xitalic_x at t𝑡titalic_t and atsubscript𝑎𝑡a_{t}italic_a start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT is the strategy played by the opponent at t𝑡titalic_t. Equation (12) is drawn from Ai(si,si)subscript𝐴𝑖subscript𝑠𝑖subscript𝑠𝑖A_{i}(s_{i},s_{-i})italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) and the specific formulation given in Equation (11)italic-(11italic-)\eqref{Equ:a}italic_( italic_)

u(x,t)=xt(xt+at)xt(xtat)𝑢𝑥𝑡subscript𝑥𝑡subscript𝑥𝑡subscript𝑎𝑡subscript𝑥𝑡subscript𝑥𝑡subscript𝑎𝑡u(x,t)=x_{t}(x_{t}+a_{t})-x_{t}(-x_{t}-a_{t})italic_u ( italic_x , italic_t ) = italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT + italic_a start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) - italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ( - italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT - italic_a start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT )
u(x,t)=2xt(xt+at)𝑢𝑥𝑡2subscript𝑥𝑡subscript𝑥𝑡subscript𝑎𝑡u(x,t)=2x_{t}(x_{t}+a_{t})italic_u ( italic_x , italic_t ) = 2 italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT + italic_a start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) (12)

We shall now show that the best response is time horizon (th)subscript𝑡\left(t_{h}\right)( italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT ) dependent and give proofs of it for time horizons 1,2121,21 , 2 and \infty.

The myopic best response is defined to be the strategy a player will choose if they consider only their utility for a time horizon th=1subscript𝑡1t_{h}=1italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT = 1.

The strategy choices of the players are normalised, such that the equilibrium position is represented by 0 and all strategies are in 1<si<+11subscript𝑠𝑖1-1<s_{i}<+1- 1 < italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT < + 1. A strategy [s1,s2]=[0.5,1]subscript𝑠1subscript𝑠20.51[s_{1},s_{2}]=[-0.5,1][ italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ] = [ - 0.5 , 1 ] represents player 1 selling 3434\frac{3}{4}divide start_ARG 3 end_ARG start_ARG 4 end_ARG of their goods to market 1111 and 1414\frac{1}{4}divide start_ARG 1 end_ARG start_ARG 4 end_ARG to market 2 and player 2 selling all of their goods to market 2222.

Theorem 1.

In the 2-player Multimarket Cournot Game with zero transportation costs and a utility defined in Equation (12), the myopic best response to a0subscript𝑎0a_{0}italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT is a02subscript𝑎02\frac{-a_{0}}{2}divide start_ARG - italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT end_ARG start_ARG 2 end_ARG, where [x,a0]𝑥subscript𝑎0[x,a_{0}][ italic_x , italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ] is the set of strategies played by the players at t=0𝑡0t=0italic_t = 0.

The myopic best response considers only time horizon th=1subscript𝑡1t_{h}=1italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT = 1. The utility equation for i𝑖iitalic_i can then be calculated, and due to its concavity, the unique maximum will be the best response. The best response a02subscript𝑎02\frac{-a_{0}}{2}divide start_ARG - italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT end_ARG start_ARG 2 end_ARG is negative as after the normalisation, with the equilibrium strategy represented by 0, a best response represents recognising a player is selling too much to a particular market, and selling to the other instead. [x,a0]𝑥subscript𝑎0[x,a_{0}][ italic_x , italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ] represents (si,si)subscript𝑠𝑖subscript𝑠𝑖(s_{i},s_{-i})( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ), where x𝑥xitalic_x is a strategy following issuperscript𝑖𝑠i^{\prime}sitalic_i start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT italic_s.

Proof.

The set of strategies played by the players at t=0𝑡0t=0italic_t = 0 (the only time step being evaluated) is [x,a0]𝑥subscript𝑎0[x,a_{0}][ italic_x , italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ]. Substituting into Equation (12) this is

u(x,t)=2x22a0x.𝑢𝑥𝑡2superscript𝑥22subscript𝑎0𝑥u(x,t)=-2x^{2}-2a_{0}x.italic_u ( italic_x , italic_t ) = - 2 italic_x start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT - 2 italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT italic_x .

This has a maximum where u(x,t)x=0𝑢𝑥𝑡𝑥0\frac{\partial u(x,t)}{\partial x}=0divide start_ARG ∂ italic_u ( italic_x , italic_t ) end_ARG start_ARG ∂ italic_x end_ARG = 0.

u(x,t)x=4x2a0=0𝑢𝑥𝑡𝑥4𝑥2subscript𝑎00\frac{\partial u(x,t)}{\partial x}=-4x-2a_{0}=0divide start_ARG ∂ italic_u ( italic_x , italic_t ) end_ARG start_ARG ∂ italic_x end_ARG = - 4 italic_x - 2 italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT = 0

and so x=a02𝑥subscript𝑎02x=\frac{-a_{0}}{2}italic_x = divide start_ARG - italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT end_ARG start_ARG 2 end_ARG, confirming the result.

\square

Theorem 2.

It can be shown numerically that in the 2-player Multimarket Cournot Game with zero transportation costs and a utility defined in Equation (12), the optimal response considering for a time horizon of 2 moves is a03subscript𝑎03\frac{-a_{0}}{3}divide start_ARG - italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT end_ARG start_ARG 3 end_ARG, where [x,a0]𝑥subscript𝑎0[x,a_{0}][ italic_x , italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ] is the set of strategies played by the players at t=0𝑡0t=0italic_t = 0.

As in Theorem 1, the optimum can be found by examining the utility over time steps 1 and 2 due to the concavity of the utility function, the maximum will be the best response.

Proof.

Due to the symmetry of players strategies, if a player uses strategy (x)(a0)𝑥subscript𝑎0(x)(a_{0})( italic_x ) ( italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ), then their opponent will respond with (x2)(a0)superscript𝑥2subscript𝑎0(x^{2})(a_{0})( italic_x start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) ( italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ). The utility over the two timesteps is therefore given by

u(x,0)+u(x,1)=2a02x2a02x+2a02x3+2a02x2𝑢𝑥0𝑢𝑥12superscriptsubscript𝑎02superscript𝑥2superscriptsubscript𝑎02𝑥2superscriptsubscript𝑎02superscript𝑥32superscriptsubscript𝑎02superscript𝑥2u(x,0)+u(x,1)=2a_{0}^{2}x^{2}a_{0}^{2}x+2a_{0}^{2}x^{3}+2a_{0}^{2}x^{2}italic_u ( italic_x , 0 ) + italic_u ( italic_x , 1 ) = 2 italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_x start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_x + 2 italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_x start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT + 2 italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_x start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT
u(x,0)+u(x,1)=2a02(x3+2x2+x)𝑢𝑥0𝑢𝑥12superscriptsubscript𝑎02superscript𝑥32superscript𝑥2𝑥u(x,0)+u(x,1)=2a_{0}^{2}(x^{3}+2x^{2}+x)italic_u ( italic_x , 0 ) + italic_u ( italic_x , 1 ) = 2 italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( italic_x start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT + 2 italic_x start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_x )

This has fixed points where (u(x,0)+u(x,1))x=0𝑢𝑥0𝑢𝑥1𝑥0\frac{\partial(u(x,0)+u(x,1))}{\partial x}=0divide start_ARG ∂ ( italic_u ( italic_x , 0 ) + italic_u ( italic_x , 1 ) ) end_ARG start_ARG ∂ italic_x end_ARG = 0.

(u(x,0)+u(x,1))x=2a02(3x2+4x+1)=0𝑢𝑥0𝑢𝑥1𝑥2superscriptsubscript𝑎023superscript𝑥24𝑥10\frac{\partial(u(x,0)+u(x,1))}{\partial x}=2a_{0}^{2}(3x^{2}+4x+1)=0divide start_ARG ∂ ( italic_u ( italic_x , 0 ) + italic_u ( italic_x , 1 ) ) end_ARG start_ARG ∂ italic_x end_ARG = 2 italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( 3 italic_x start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + 4 italic_x + 1 ) = 0

has roots at x=1𝑥1x=-1italic_x = - 1 and x=13𝑥13x=\frac{-1}{3}italic_x = divide start_ARG - 1 end_ARG start_ARG 3 end_ARG. The root at x=1𝑥1x=-1italic_x = - 1 corresponds to both players repeatedly playing a market strategy equivalent to one another of the form [a0,a0]subscript𝑎0subscript𝑎0[-a_{0},a_{0}][ - italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ]. A strategy of a0subscript𝑎0-a_{0}- italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT is a local minimum and players can improve their utility by moving away from it in either direction. For x<1𝑥1x<-1italic_x < - 1, the utility does increase. However this represents each player exponentially increasing the amount they sell to the market not dominated by their opponent, and recou** their losses when their opponent does the same. Due to the finite nature of markets, this is not a long term strategy and can be disregarded.

The root at x=13𝑥13x=\frac{-1}{3}italic_x = divide start_ARG - 1 end_ARG start_ARG 3 end_ARG is a local maximum and accordingly represents the best strategy for the time horizon of 2.

\square

Remark 2.

In the 2-player Multimarket Cournot Game with zero transportation costs and a utility defined in Equation (12), the optimal response considering for a time horizon of 1th10001subscript𝑡10001\leq t_{h}\leq 10001 ≤ italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT ≤ 1000 moves remains in the interval [a02,a03]subscript𝑎02subscript𝑎03\left[\frac{-a_{0}}{2},\frac{-a_{0}}{3}\right][ divide start_ARG - italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT end_ARG start_ARG 2 end_ARG , divide start_ARG - italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT end_ARG start_ARG 3 end_ARG ], where [x,a0]𝑥subscript𝑎0[x,a_{0}][ italic_x , italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ] is the set of strategies played by the players at t=0𝑡0t=0italic_t = 0.

As before, the optimum can be found by examining the utility over time steps 1th1subscript𝑡1-t_{h}1 - italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT. Due to the concavity of the utility function, the maximum will be the best response. Figure 4 shows this for 1<th<10001subscript𝑡10001<t_{h}<10001 < italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT < 1000. By referring to the basis in grain or oil transport, it can be observed that a reasonable duration for a time horizon is a month or longer. Where th=1000subscript𝑡1000t_{h}=1000italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT = 1000 is therefore more than 80808080 years, longer than even the most long-sighted companies will optimise over. In fact, the following theorem confirms this numerically for the limit case thsubscript𝑡t_{h}\rightarrow\inftyitalic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT → ∞.

Theorem 3.

In the 2-player Multimarket Cournot Game with zero transportation costs and a utility defined in Equation (12), the optimal response considering for an infinite time horizon is a01+(2)\frac{-a_{0}}{1+\sqrt{(}2)}divide start_ARG - italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT end_ARG start_ARG 1 + square-root start_ARG ( end_ARG 2 ) end_ARG, where [x,a0]𝑥subscript𝑎0[x,a_{0}][ italic_x , italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ] is the set of strategies played by the players at t=0𝑡0t=0italic_t = 0.

As in Theorems 1 and 2, the optimum can be found by examining the utility over all time steps due to the concavity of the utility function, the maximum will be the best response.

Proof.

For large thsubscript𝑡t_{h}italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT, the structure of the utility function remains the same and is given by u𝑢uitalic_u. The fixed point therefore occurs at ux=0𝑢𝑥0\frac{\partial u}{\partial x}=0divide start_ARG ∂ italic_u end_ARG start_ARG ∂ italic_x end_ARG = 0.

ux=(u(x,0)+u(x,1)+u(x,2)++u(x,th))x=0𝑢𝑥𝑢𝑥0𝑢𝑥1𝑢𝑥2𝑢𝑥subscript𝑡𝑥0\frac{\partial u}{\partial x}=\frac{\partial(u(x,0)+u(x,1)+u(x,2)+\dots+u(x,t_% {h}))}{\partial x}=0divide start_ARG ∂ italic_u end_ARG start_ARG ∂ italic_x end_ARG = divide start_ARG ∂ ( italic_u ( italic_x , 0 ) + italic_u ( italic_x , 1 ) + italic_u ( italic_x , 2 ) + ⋯ + italic_u ( italic_x , italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT ) ) end_ARG start_ARG ∂ italic_x end_ARG = 0
ux=(th+1)xth+(i=1th12(i+1)xi)+1=0.𝑢𝑥subscript𝑡1superscript𝑥subscript𝑡superscriptsubscript𝑖1subscript𝑡12𝑖1superscript𝑥𝑖10\frac{\partial u}{\partial x}=(t_{h}+1)*x^{t_{h}}+\left(\sum_{i=1}^{t_{h}-1}2(% i+1)x^{i}\right)+1=0.divide start_ARG ∂ italic_u end_ARG start_ARG ∂ italic_x end_ARG = ( italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT + 1 ) ∗ italic_x start_POSTSUPERSCRIPT italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_POSTSUPERSCRIPT + ( ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT - 1 end_POSTSUPERSCRIPT 2 ( italic_i + 1 ) italic_x start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ) + 1 = 0 . (13)

This is the sum of successive terms of 12 for different time steps, taking into consideration that when a player updates their strategy, all future time steps are affected by that update. We can use the identity

1(1x)2=n=1(nx(n1))1superscript1𝑥2superscriptsubscript𝑛1𝑛superscript𝑥𝑛1\frac{1}{(1-x)^{2}}=\sum_{n=1}^{\infty}\left(nx^{(n-1)}\right)divide start_ARG 1 end_ARG start_ARG ( 1 - italic_x ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG = ∑ start_POSTSUBSCRIPT italic_n = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT ( italic_n italic_x start_POSTSUPERSCRIPT ( italic_n - 1 ) end_POSTSUPERSCRIPT ) (14)

By substituting Equation (14) into Equation (13), we get

ux=2n=1(nx(n1))2+1=0𝑢𝑥2superscriptsubscript𝑛1𝑛superscript𝑥𝑛1210\frac{\partial u}{\partial x}=2\sum_{n=1}^{\infty}\left(nx^{(n-1)}\right)-2+1=0divide start_ARG ∂ italic_u end_ARG start_ARG ∂ italic_x end_ARG = 2 ∑ start_POSTSUBSCRIPT italic_n = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT ( italic_n italic_x start_POSTSUPERSCRIPT ( italic_n - 1 ) end_POSTSUPERSCRIPT ) - 2 + 1 = 0
ux=2(1x)22+1=0.𝑢𝑥2superscript1𝑥2210\frac{\partial u}{\partial x}=\frac{2}{(1-x)^{2}}-2+1=0.divide start_ARG ∂ italic_u end_ARG start_ARG ∂ italic_x end_ARG = divide start_ARG 2 end_ARG start_ARG ( 1 - italic_x ) start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG - 2 + 1 = 0 .

A fixed point where ux=0𝑢𝑥0\frac{\partial u}{\partial x}=0divide start_ARG ∂ italic_u end_ARG start_ARG ∂ italic_x end_ARG = 0 occurs at x=11±(2)x=\frac{-1}{1\pm\sqrt{(}2)}italic_x = divide start_ARG - 1 end_ARG start_ARG 1 ± square-root start_ARG ( end_ARG 2 ) end_ARG. Of these, we need only consider the negative case, x=11+(2)x=\frac{-1}{1+\sqrt{(}2)}italic_x = divide start_ARG - 1 end_ARG start_ARG 1 + square-root start_ARG ( end_ARG 2 ) end_ARG as the alternate solution results in players receiving negative utility relative to the fixed case at all time steps. Accordingly, a response xa0𝑥subscript𝑎0xa_{0}italic_x italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT where x=11+(2)x=\frac{-1}{1+\sqrt{(}2)}italic_x = divide start_ARG - 1 end_ARG start_ARG 1 + square-root start_ARG ( end_ARG 2 ) end_ARG is optimal for an infinite time horizon.

\square

We now introduce the equilibrium mimicking strategy and define it as

Definition 1.

An equilibrium-mimicking strategy profile is a set of strategies played by all players such that all markets receive the same supply as they would if the game was in equilibrium.

Theorem 4.

In the two-player two-market game, let Ai(,)subscript𝐴𝑖A_{i}(\cdot,\cdot)italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( ⋅ , ⋅ ) be the utility received by the first player in the upper layer as defined in Equation (9) and let gi0subscript𝑔𝑖0g_{i}\geq 0italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ≥ 0 be the difference in utility gained after the first move as a myopic best response, compared to the utility the first player would receive if they played an equilibrium mimicking strategy. Then the utility of the first player through successive myopic best responses, compared to the final unique equilibrium strategy is 8gi15>0.8subscript𝑔𝑖150\frac{8g_{i}}{15}>0.divide start_ARG 8 italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG start_ARG 15 end_ARG > 0 .

This implies that rational players will have no incentive to play an equilibrium strategy if all the other players have not already done so.

Proof.

Normalising with respect to an equilibrium mimicking strategy wherein players consistently play [0,0]00[0,0][ 0 , 0 ], with gisubscript𝑔𝑖g_{i}italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT the additional utility gained by the myopic responder relative to the [0,0]00[0,0][ 0 , 0 ], the utility gained by the player at each subsequent change in strategy by either player is given by the sequence gi,gi2,gi16,gi32,subscript𝑔𝑖subscript𝑔𝑖2subscript𝑔𝑖16subscript𝑔𝑖32italic-…g_{i},-\frac{g_{i}}{2},\frac{g_{i}}{16},-\frac{g_{i}}{32},\dotsitalic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , - divide start_ARG italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG start_ARG 2 end_ARG , divide start_ARG italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG start_ARG 16 end_ARG , - divide start_ARG italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG start_ARG 32 end_ARG , italic_…

This is an infinite sequence expressed as

n=1sn=s11(s2s1),superscriptsubscript𝑛1subscript𝑠𝑛subscript𝑠11subscript𝑠2subscript𝑠1\sum_{n=1}^{\infty}s_{n}=\frac{s_{1}}{1-(\frac{s_{2}}{s_{1}})},∑ start_POSTSUBSCRIPT italic_n = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT italic_s start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT = divide start_ARG italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG start_ARG 1 - ( divide start_ARG italic_s start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_ARG start_ARG italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG ) end_ARG ,

sums to

8gi15>0.8subscript𝑔𝑖150\frac{8g_{i}}{15}>0.divide start_ARG 8 italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG start_ARG 15 end_ARG > 0 .

Refer to caption

Figure 5: The Location of the Strategy for discrete time steps from a variety of starting points.

Consequently, each player adopts a myopic best-response strategy based on their opponent’s current strategy, instead of immediately adhering to the equilibrium strategy. The myopic best response proves to be a superior strategy across all time frames. As a result, the dynamics of the game gradually approach equilibrium, as illustrated in Figure 5. The bounds on convergence are highlighted in red, and they become applicable after just two responses.

Theorem 5.

In the two-player game, let Ai(,)subscript𝐴𝑖A_{i}(\cdot,\cdot)italic_A start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( ⋅ , ⋅ ) be the utility received by the first player in the upper layer be as defined in Equation (9) and let gi0subscript𝑔𝑖0g_{i}\geq 0italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ≥ 0 be the difference in utility gained after the first move for an infinite time horizon optimal strategy (as defined in Theorem 3), compared to the utility the first player would receive at equilibrium. Then the utility of the first player through successive infinite time horizon optimal moves, compared to the final unique equilibrium strategy is

gi(1+(2))4>0.\frac{g_{i}(1+\sqrt{(}2))}{4}>0.divide start_ARG italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( 1 + square-root start_ARG ( end_ARG 2 ) ) end_ARG start_ARG 4 end_ARG > 0 .
Proof.

The sequence sisubscript𝑠𝑖s_{i}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT of utilities received by the first player (normalised with respect to the equilibrium utility) is gi,(1(2))gi,(1(2))4gi,(1(2))5gi,g_{i},(1-\sqrt{(}2))g_{i},(1-\sqrt{(}2))^{4}g_{i},(1-\sqrt{(}2))^{5}g_{i},\dotsitalic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , ( 1 - square-root start_ARG ( end_ARG 2 ) ) italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , ( 1 - square-root start_ARG ( end_ARG 2 ) ) start_POSTSUPERSCRIPT 4 end_POSTSUPERSCRIPT italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , ( 1 - square-root start_ARG ( end_ARG 2 ) ) start_POSTSUPERSCRIPT 5 end_POSTSUPERSCRIPT italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_….

Using the formula

n=1sn=s11(s2s1),superscriptsubscript𝑛1subscript𝑠𝑛subscript𝑠11subscript𝑠2subscript𝑠1\sum_{n=1}^{\infty}s_{n}=\frac{s_{1}}{1-(\frac{s_{2}}{s_{1}})},∑ start_POSTSUBSCRIPT italic_n = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT italic_s start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT = divide start_ARG italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG start_ARG 1 - ( divide start_ARG italic_s start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_ARG start_ARG italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_ARG ) end_ARG ,

it is found that the sequence sums to gi(1+(2))4\frac{g_{i}(1+\sqrt{(}2))}{4}divide start_ARG italic_g start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( 1 + square-root start_ARG ( end_ARG 2 ) ) end_ARG start_ARG 4 end_ARG.

It can be seen that, as expected, 1+24>815124815\frac{1+\sqrt{2}}{4}>\frac{8}{15}divide start_ARG 1 + square-root start_ARG 2 end_ARG end_ARG start_ARG 4 end_ARG > divide start_ARG 8 end_ARG start_ARG 15 end_ARG, demonstrating the infinite time horizon pattern results in a higher utility for the player than the myopic strategy.

Theorem 6.

In the 2-player Multimarket Cournot Game with zero transportation costs and a utility defined in Equation (12), the optimal response where each timestep is given weight proportional to βtsuperscript𝛽𝑡\beta^{t}italic_β start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT for β[0,1]𝛽01\beta\in[0,1]italic_β ∈ [ 0 , 1 ] is given by

ω=β+1β2β+13β.𝜔𝛽1superscript𝛽2𝛽13𝛽\omega=\frac{\beta+1-\sqrt{\beta^{2}-\beta+1}}{3\beta}.italic_ω = divide start_ARG italic_β + 1 - square-root start_ARG italic_β start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT - italic_β + 1 end_ARG end_ARG start_ARG 3 italic_β end_ARG .

where ω𝜔\omegaitalic_ω is the constant representing the magnitude of the response, such that if S𝑆Sitalic_S is given by [,a0]subscript𝑎0[-,a_{0}][ - , italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ], the response is given by [ωa0,a0]𝜔subscript𝑎0subscript𝑎0[-\omega a_{0},a_{0}][ - italic_ω italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_a start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ].

V(x0)=max{Sit}t=0t=0βtF(St,Sit)𝑉subscript𝑥0subscriptsuperscriptsubscriptsuperscriptsubscript𝑆𝑖𝑡𝑡0superscriptsubscript𝑡0subscript𝛽𝑡𝐹superscript𝑆𝑡superscriptsubscript𝑆𝑖𝑡V(x_{0})=\max_{\{S_{i}^{t}\}_{t=0}^{\infty}}\sum_{t=0}^{\infty}\beta_{t}F(S^{t% },S_{i}^{t})italic_V ( italic_x start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ) = roman_max start_POSTSUBSCRIPT { italic_S start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT } start_POSTSUBSCRIPT italic_t = 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT ∑ start_POSTSUBSCRIPT italic_t = 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT italic_β start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT italic_F ( italic_S start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT , italic_S start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT )

is the Bellman equation [22] with F(St,Sit)𝐹superscript𝑆𝑡superscriptsubscript𝑆𝑖𝑡F(S^{t},S_{i}^{t})italic_F ( italic_S start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT , italic_S start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT ) the utility given by the players’ strategy update rule and Stsuperscript𝑆𝑡S^{t}italic_S start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT is the strategy profile at time t. The strategy update rule assumes that at each time t𝑡titalic_t, the active player chooses the best response over all times, si,tsuperscriptsubscript𝑠𝑖𝑡s_{i}^{*,t}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∗ , italic_t end_POSTSUPERSCRIPT from the set Sitsuperscriptsubscript𝑆𝑖𝑡S_{i}^{t}italic_S start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t end_POSTSUPERSCRIPT.

Proof.

Utility is given by the current player’s response ω𝜔\omegaitalic_ω to the current state of the system. The utility given by the response from the next two time steps is given by

u(x,1)=(c)(1c)(a)(cc2)(a2)𝑢𝑥1𝑐1𝑐𝑎𝑐superscript𝑐2superscript𝑎2u(x,1)=(c)(1-c)(a)(c-c^{2})(a^{2})italic_u ( italic_x , 1 ) = ( italic_c ) ( 1 - italic_c ) ( italic_a ) ( italic_c - italic_c start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) ( italic_a start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT )
u(x,2)=β(c)(c2c)(a2)𝑢𝑥2𝛽𝑐superscript𝑐2𝑐superscript𝑎2u(x,2)=\beta(c)(c^{2}-c)(a^{2})italic_u ( italic_x , 2 ) = italic_β ( italic_c ) ( italic_c start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT - italic_c ) ( italic_a start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT )

The best response is given at the maximum of G=u(x,1)+u(x,2)𝐺𝑢𝑥1𝑢𝑥2G=u(x,1)+u(x,2)italic_G = italic_u ( italic_x , 1 ) + italic_u ( italic_x , 2 ). This is found at the maximum of G, which occurs where dGdc=3βc22(β+1)c+1=0𝑑𝐺𝑑𝑐3𝛽superscript𝑐22𝛽1𝑐10\frac{dG}{dc}=3\beta c^{2}-2(\beta+1)c+1=0divide start_ARG italic_d italic_G end_ARG start_ARG italic_d italic_c end_ARG = 3 italic_β italic_c start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT - 2 ( italic_β + 1 ) italic_c + 1 = 0. This has two maxima. The positive maxima represents a solution which requires progressively more extreme responses to their market, which given the finite nature of trade goods is , and accordingly, the maximum is given at β+1β2β+13β.𝛽1superscript𝛽2𝛽13𝛽\frac{\beta+1-\sqrt{\beta^{2}-\beta+1}}{3\beta}.divide start_ARG italic_β + 1 - square-root start_ARG italic_β start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT - italic_β + 1 end_ARG end_ARG start_ARG 3 italic_β end_ARG .

4.3 Characteristics under Player Collusion

An assumption made in the classical Cournot problem is the absence of collusion between players, and each chooses their strategy independently. A group of players engaging in collusion is described as a ‘coalition’. Members of a coalition improve their utility by rejecting strategies that are not pareto-optimal for the subset of player in the coalition, in favour of acting to mutually increase their utilities.

We shall distinguish between ‘equilibrium play’ and ‘advantage play’. ‘Equilibrium play’ is the specific strategy which players immediately move to the strategy they would play in the final equilibrium. This fixes their utility preventing them from making both losses and profits relative to this fixed amount. In comparison, ‘advantage play’ is any other strategy in which players attempt to profit from the current out of equilibrium state.

Where players work together, equilibrium play is never optimal. To prove that, we first define a Pareto-optimal strategy as follows

Definition 2.

A strategy profile sPsuperscript𝑠𝑃s^{P}italic_s start_POSTSUPERSCRIPT italic_P end_POSTSUPERSCRIPT is a pareto optimum if for all ssp𝑠superscript𝑠𝑝s\neq s^{p}italic_s ≠ italic_s start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT in S𝑆Sitalic_S, there exists i𝑖iitalic_i such that

ui(s)<ui(sp).subscript𝑢𝑖𝑠subscript𝑢𝑖superscript𝑠𝑝u_{i}(s)<u_{i}(s^{p}).italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_s ) < italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_s start_POSTSUPERSCRIPT italic_p end_POSTSUPERSCRIPT ) .
Theorem 7.

At any player count N𝑁Nitalic_N where the starting conditions are not at equilibrium, there exists a pareto optimum strategy where equilibrium play is dominated by advantage play.

Proof.

Assume towards a contradiction that there is no pareto-optimal strategy wherein all players benefit from engaging in advantage play. Accordingly, all players will play an equilibrium strategy. Consider player i𝑖iitalic_i. The system is not currently at equilibrium and accordingly cixi0subscript𝑐𝑖subscript𝑥𝑖0\frac{\partial c_{i}}{\partial x_{i}}\neq 0divide start_ARG ∂ italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG start_ARG ∂ italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG ≠ 0. As such, either xi=+ϵsubscript𝑥𝑖italic-ϵx_{i}=+\epsilonitalic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = + italic_ϵ or xi=ϵsubscript𝑥𝑖italic-ϵx_{i}=-\epsilonitalic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = - italic_ϵ results in a cost ci<csubscript𝑐𝑖𝑐c_{i}<citalic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT < italic_c. If each player follows this strategy all players would have costs less than c𝑐citalic_c. This would mean that every player received positive utility relative to the equilibrium case and accordingly players are incentivised to cooperate to bring this about. As such, the equilibrium strategy can be rejected as it is dominated.

4.4 Lower Layer Dynamics - Approach to Transport Equilibrium

Concentrating on the lower, consider the upper layer transport dynamics to be fixed such that there is a fixed set of flow to be allocated between a series of origin-destination pairs through the lower layer.

Total Transport is defined to be the amount of goods a player has available to allocate between all markets they have access to.

Consider a transport problem as a congestion game such that, in its simplest form, the lower layer has a two path structure, where there are two symmetric paths, e1subscript𝑒1e_{1}italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and e2subscript𝑒2e_{2}italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT from v1subscript𝑣1v_{1}italic_v start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT to v2subscript𝑣2v_{2}italic_v start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. There are two routes from the origin to the destination, and N𝑁Nitalic_N players attempting to minimise their transport costs with fixed total transport quantity Tisubscript𝑇𝑖T_{i}italic_T start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT associated with each player, where Tisubscript𝑇𝑖T_{i}italic_T start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is a fixed constant such that

j=12f(xi,ej)=Tisuperscriptsubscript𝑗12𝑓subscript𝑥𝑖subscript𝑒𝑗subscript𝑇𝑖\sum_{j=1}^{2}f(x_{i},e_{j})=T_{i}∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_f ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) = italic_T start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT

for all i𝑖iitalic_i in 1,,N1𝑁{1,\dots,N}1 , … , italic_N. As such, the seller’s output is bounded but the market inputs are unbounded. The strategy of players in the upper layer is fixed and so there is no feedback loop from the outcome of the transport problem to the upper layer. First consider the case in which the cost to player xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for using edge ejsubscript𝑒𝑗e_{j}italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT is given by

f(xi,ej)k=1Nf(xk,ej)𝑓subscript𝑥𝑖subscript𝑒𝑗superscriptsubscript𝑘1𝑁𝑓subscript𝑥𝑘subscript𝑒𝑗f(x_{i},e_{j})\sum_{k=1}^{N}f(x_{k},e_{j})italic_f ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT italic_f ( italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) (15)

where f(xi,ej)𝑓subscript𝑥𝑖subscript𝑒𝑗f(x_{i},e_{j})italic_f ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) is the flow of player xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT on edge ejsubscript𝑒𝑗e_{j}italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. This is the same structure (without costs) as is introduced in section 2 of [13]. Quadratic costs are a common assumption in the literature [20], [21]. Where all other players strategies are fixed, the cost to player i𝑖iitalic_i for using edge ejsubscript𝑒𝑗e_{j}italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT is given by

f(xi,ej)(c+f(xi,ej))𝑓subscript𝑥𝑖subscript𝑒𝑗𝑐𝑓subscript𝑥𝑖subscript𝑒𝑗f(x_{i},e_{j})(c+f(x_{i},e_{j}))italic_f ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ( italic_c + italic_f ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) )

where c𝑐citalic_c is a constant representing the choices of all other players.

The assumption is that each player has a fixed total transport Tisubscript𝑇𝑖T_{i}italic_T start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. Accordingly,

j=1Nf(xi,ej)=Ti for all i{1,,Nx}.superscriptsubscript𝑗1𝑁𝑓subscript𝑥𝑖subscript𝑒𝑗subscript𝑇𝑖 for all 𝑖1subscript𝑁𝑥\sum_{j=1}^{N}f(x_{i},e_{j})=T_{i}\mbox{ for all }i\in\{1,\dots,N_{x}\}.∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N end_POSTSUPERSCRIPT italic_f ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) = italic_T start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for all italic_i ∈ { 1 , … , italic_N start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT } .

Therefore, the set of strategies in sisubscript𝑠𝑖s_{i}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT has one degree of freedom as

f(xi,e2)=Tif(xi,e1).𝑓subscript𝑥𝑖subscript𝑒2subscript𝑇𝑖𝑓subscript𝑥𝑖subscript𝑒1f(x_{i},e_{2})=T_{i}-f(x_{i},e_{1}).italic_f ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = italic_T start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - italic_f ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) .

As Tisubscript𝑇𝑖T_{i}italic_T start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is fixed, f(xi,e2)=Tif(xi,e1)𝑓subscript𝑥𝑖subscript𝑒2subscript𝑇𝑖𝑓subscript𝑥𝑖subscript𝑒1f(x_{i},e_{2})=T_{i}-f(x_{i},e_{1})italic_f ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) = italic_T start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - italic_f ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) and the strategy space sisubscript𝑠𝑖s_{i}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT available to player i𝑖iitalic_i has only one degree of freedom. As such it can be represented by a single value. We set this value to be the amount of transport sent along route e1subscript𝑒1e_{1}italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. For generality, si[τ2,τ2]subscript𝑠𝑖𝜏2𝜏2s_{i}\in[-\frac{\tau}{2},\frac{\tau}{2}]italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ [ - divide start_ARG italic_τ end_ARG start_ARG 2 end_ARG , divide start_ARG italic_τ end_ARG start_ARG 2 end_ARG ]. This is normalised such that si=τ2subscript𝑠𝑖𝜏2s_{i}=-\frac{\tau}{2}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = - divide start_ARG italic_τ end_ARG start_ARG 2 end_ARG representing a pure strategy in which f,=0subscript𝑓0f_{\cdot,\cdot}=0italic_f start_POSTSUBSCRIPT ⋅ , ⋅ end_POSTSUBSCRIPT = 0, si=τ2subscript𝑠𝑖𝜏2s_{i}=\frac{\tau}{2}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = divide start_ARG italic_τ end_ARG start_ARG 2 end_ARG corresponding to the pure strategy in which f(x1,e1)=T𝑓subscript𝑥1subscript𝑒1𝑇f(x_{1},e_{1})=Titalic_f ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) = italic_T with all mixed strategies corresponding to si(0,1)subscript𝑠𝑖01s_{i}\in(0,1)italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ ( 0 , 1 )

Considering a congestion function B(f())𝐵𝑓B(f(\cdot))italic_B ( italic_f ( ⋅ ) ) which increases monotonically with flow f()𝑓f(\cdot)italic_f ( ⋅ ), we can now state the following Theorem

Theorem 8.

Consider two values of the flows f(e1α)𝑓superscriptsubscript𝑒1𝛼f(e_{1}^{\alpha})italic_f ( italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ) and f(e2α)𝑓superscriptsubscript𝑒2𝛼f(e_{2}^{\alpha})italic_f ( italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ) between any two nodes in the upper layer, with f(e1α)>f(e2α)𝑓superscriptsubscript𝑒1𝛼𝑓superscriptsubscript𝑒2𝛼f(e_{1}^{\alpha})>f(e_{2}^{\alpha})italic_f ( italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ) > italic_f ( italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ). When B(f(e1α))B(f(e2α))𝐵𝑓superscriptsubscript𝑒1𝛼𝐵𝑓superscriptsubscript𝑒2𝛼B(f(e_{1}^{\alpha}))\geq B(f(e_{2}^{\alpha}))italic_B ( italic_f ( italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ) ) ≥ italic_B ( italic_f ( italic_e start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ) ) and w(ai,j)+𝑤subscript𝑎𝑖𝑗subscriptw(a_{i,j})\in\mathbb{R_{+}}italic_w ( italic_a start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT ) ∈ blackboard_R start_POSTSUBSCRIPT + end_POSTSUBSCRIPT, then Wardrop Equilibria exist in the lower layer.

In fact, where the transportation costs are monotonically increasing as flow increases and assuming fixed edge weights in the upper layer, Wardrop equilibria can be found in [16].

Proof.

Consider the rate of change of utility with respect to changes made in a player’s transport strategy, given by

u(si,si)pi,jk𝑢subscript𝑠𝑖subscript𝑠𝑖superscriptsubscript𝑝𝑖𝑗𝑘\frac{\partial u(s_{i},s_{-i})}{\partial p_{i,j}^{k}}divide start_ARG ∂ italic_u ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) end_ARG start_ARG ∂ italic_p start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT end_ARG (16)

When considering a change in the paths selected a player can examine the marginal change in congestion cost from doing so. Increasing the amount the player uses a path will always result in an increase in costs. Due to the fixed upper layer however, w(ai,j)𝑤subscript𝑎𝑖𝑗w(a_{i,j})italic_w ( italic_a start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT ) is constant and

k=1NPi,jpi,jk=w(ai,j)superscriptsubscript𝑘1subscript𝑁subscript𝑃𝑖𝑗superscriptsubscript𝑝𝑖𝑗𝑘𝑤subscript𝑎𝑖𝑗\sum_{k=1}^{N_{P_{i,j}}}p_{i,j}^{k}=w(a_{i,j})∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT end_POSTSUPERSCRIPT italic_p start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT = italic_w ( italic_a start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT ) (17)

is fixed. As such any additional traffic along one path will result in a proportional reduction in traffic along a parallel path or paths. Parallel paths can share edges, but no path can use all the edges used by another path with the same origin and destination. The path allocation is therefore in equilibrium when

u(si,si)pijk=qij,qij+,pijk0 for all i,j,k.formulae-sequence𝑢subscript𝑠𝑖subscript𝑠𝑖superscriptsubscript𝑝𝑖𝑗𝑘subscript𝑞𝑖𝑗formulae-sequencesubscript𝑞𝑖𝑗subscriptsuperscriptsubscript𝑝𝑖𝑗𝑘0 for all 𝑖𝑗𝑘\frac{\partial u(s_{i},s_{-i})}{\partial p_{ij}^{k}}=q_{ij},q_{ij}\in\mathbb{R% }_{+},p_{ij}^{k}\neq 0\mbox{ for all }i,j,k.divide start_ARG ∂ italic_u ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) end_ARG start_ARG ∂ italic_p start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT end_ARG = italic_q start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT , italic_q start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT ∈ blackboard_R start_POSTSUBSCRIPT + end_POSTSUBSCRIPT , italic_p start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ≠ 0 for all italic_i , italic_j , italic_k . (18)

This results in all paths available to a player having the same cost, fulfilling the conditions of a Wardrop equilibrium.

The inter-layer connections provide a feedback loop that so far has not been considered. It is important to note that for Theorem 8, paths must exist in Gβsubscript𝐺𝛽G_{\beta}italic_G start_POSTSUBSCRIPT italic_β end_POSTSUBSCRIPT between L(xiα)𝐿superscriptsubscript𝑥𝑖𝛼L(x_{i}^{\alpha})italic_L ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ) and L(yjα)𝐿superscriptsubscript𝑦𝑗𝛼L(y_{j}^{\alpha})italic_L ( italic_y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ) for which w(ai,j)>0𝑤subscript𝑎𝑖𝑗0w(a_{i,j})>0italic_w ( italic_a start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT ) > 0. In the complete model however, when there does not exist a path between L(xiα)𝐿superscriptsubscript𝑥𝑖𝛼L(x_{i}^{\alpha})italic_L ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ) and L(yjα)𝐿superscriptsubscript𝑦𝑗𝛼L(y_{j}^{\alpha})italic_L ( italic_y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ), the transport layer would give infinite congestion cost for trade between xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and yjsubscript𝑦𝑗y_{j}italic_y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. As such they would trade between this player and market in the upper layer would stop. The players would then always have an incentive to change to another strategy in the upper layer creating a beneficial feedback loop wherein players only sell to markets they can reach.

4.5 Transport costs over multiple paths

Transport costs relate to edges and for each player, the cost relates to the share of transport over a number of paths. As the players allocate transport to different paths, the combined transport cost loses differentiability. This allows us to state the following theorems. In the case of Theorem 9 each player wants to use different paths for which the individual transport cost is continuous and twice differentiable, the result over all paths is continuous and differentiable, but not continuous and twice differentiable.

Theorem 9.

Transportation costs are continuous and differentiable, but not twice differentiable.

Proof.

The non-differentiability follows from the switching from one path to the other as congestion costs interfere on the former. A full proof can be found in the appendix.

5 General Multilayer Solutions

When examining the interconnected layers, it’s important to note that the proof of the existence of unique equilibria, as presented in [13] and utilized in section 4.1, is not applicable. This is due to the fact that, while the profit functions maintain their properties of being twice differentiable, convex, and strictly decreasing, the cost functions do not exhibit these characteristics; instead, they lack second differentiability, are concave, and exhibit an increasing trend. However, we can establish the necessary and sufficient condition for equilibrium in the multilayer game through the following theorem.

Theorem 10.

The Cournot-congestion game achieves equilibrium if and only if, for each player,

u(si,si)aiju(si,si)pijk=r(i) pijk0𝑢subscript𝑠𝑖subscript𝑠𝑖subscript𝑎𝑖𝑗𝑢subscript𝑠𝑖subscript𝑠𝑖superscriptsubscript𝑝𝑖𝑗𝑘𝑟𝑖 for-allsuperscriptsubscript𝑝𝑖𝑗𝑘0\frac{\partial u(s_{i},s_{-i})}{\partial a_{ij}}-\frac{\partial u(s_{i},s_{-i}% )}{\partial p_{ij}^{k}}=r(i)\mbox{ }\forall p_{ij}^{k}\neq 0divide start_ARG ∂ italic_u ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) end_ARG start_ARG ∂ italic_a start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG - divide start_ARG ∂ italic_u ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) end_ARG start_ARG ∂ italic_p start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT end_ARG = italic_r ( italic_i ) ∀ italic_p start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ≠ 0 (19)

for i1,2,,N𝑖12𝑁i\in{1,2,\dots,N}italic_i ∈ 1 , 2 , … , italic_N, j1,2,,M𝑗12𝑀j\in{1,2,\dots,M}italic_j ∈ 1 , 2 , … , italic_M, k1,2,,NPij𝑘12subscript𝑁subscript𝑃𝑖𝑗k\in{1,2,\dots,N_{P_{ij}}}italic_k ∈ 1 , 2 , … , italic_N start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT, and r(i)+𝑟𝑖subscriptr(i)\in\mathbb{R}_{+}italic_r ( italic_i ) ∈ blackboard_R start_POSTSUBSCRIPT + end_POSTSUBSCRIPT, with r(i)𝑟𝑖r(i)italic_r ( italic_i ) representing a fixed constant for all j𝑗jitalic_j and k𝑘kitalic_k.

This implies that the system is in equilibrium if and only if each player possesses the same marginal utility for all (non-zero) strategies available to them. This is a unique and stable equilibrium.

Proof.

The change in utility for a market and its associated route is given by

u(si,si)aiju(si,si)pijk=r(i) pijk0𝑢subscript𝑠𝑖subscript𝑠𝑖subscript𝑎𝑖𝑗𝑢subscript𝑠𝑖subscript𝑠𝑖superscriptsubscript𝑝𝑖𝑗𝑘𝑟𝑖 for-allsuperscriptsubscript𝑝𝑖𝑗𝑘0\frac{\partial u(s_{i},s_{-i})}{\partial a_{ij}}-\frac{\partial u(s_{i},s_{-i}% )}{\partial p_{ij}^{k}}=r(i)\mbox{ }\forall p_{ij}^{k}\neq 0divide start_ARG ∂ italic_u ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) end_ARG start_ARG ∂ italic_a start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT end_ARG - divide start_ARG ∂ italic_u ( italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT - italic_i end_POSTSUBSCRIPT ) end_ARG start_ARG ∂ italic_p start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT end_ARG = italic_r ( italic_i ) ∀ italic_p start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_k end_POSTSUPERSCRIPT ≠ 0 (20)

If there are no alternative markets or paths that offer a utility increase greater in magnitude than the decrease in utility from not using the current strategy, a player will consider changing strategies. This implies that for any sS𝑠𝑆s\in Sitalic_s ∈ italic_S for which Equation (20) is not valid, the system is not in equilibrium.

Conversely, if the system were in equilibrium but a player had varying marginal utility for different strategies, that player would have an incentive to adjust their mixed strategy profile to favour strategies with higher marginal utility. This incentive for strategy change would disrupt the equilibrium. Thus, if all players have the same marginal utility for each strategy, no player has an advantage in making marginal changes to their strategy. Consequently, the system must be in equilibrium.

Corollary 1.

The strategy profile SEsuperscript𝑆𝐸S^{E}italic_S start_POSTSUPERSCRIPT italic_E end_POSTSUPERSCRIPT which meets the conditions outlined in equation 20 is a unique and stable equilibrium.

Proof.

The stability property is a result of the utility functions for both the upper and lower layer having lyapunov properties. This results in a dampening effect on deviation from the equilibrium.

6 Case Study

6.1 3 Player 3 Market Case

Consider the multilayer network given in figure 9. There are 3 players and 3 markets. Players 1 and 2 are located in node 1 of the lower layer, and player 3 is located in node 6 of the lower layer. Market 1 is located in node 7 of the lower layer, and markets 2 and 3 are located in node 6.

The equilibrium of this system is shown in figure 9. It can be seen in figure 9 that the marginal utilities of each player converge to a stable position. The utilities of players 1 and 2 have the same equilibrium position due to their symmetry. Finally it can be seen that the two symmetric players receive the same normalised utility, while player 3, who is located closer to the markets, receives a higher utility, as shown in figure 9.

Refer to caption

Figure 6: The Multilayer network for the case study.

Refer to caption

Figure 7: Time against Strategy for each of the 21 paths

Refer to caption

Figure 8: Time Against Utility for each of the three players

Refer to caption

Figure 9: Time against Marginal Utility of each of the 21 paths

7 Discussion

This paper examines the dynamics of two interconnected games that collectively capture behaviours observed in global trade. The strategic interactions of players in oligopolistic settings are effectively encapsulated by the Cournot competition, a concept that has been studied since the early 20thsuperscript20𝑡20^{th}20 start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT century. Similarly, congestion games, which pertain to strategic traffic routing, represent a classical approach within operations research for addressing transportation problems, with well-established results concerning the Wardrop equilibrium.

However, when these two games are situated on graphs and intertwined within a multilayer network, the dynamics become notably more intricate. In this context, equilibria within each layer are influenced by the structure and dynamics of the other, yielding novel insights.

The choice to represent these intertwined systems through a multilayer model requires justification. Where there exist congestion functions on both layers, a system of multilayer networks can be reduced to a single layer, where it becomes an origin-destination network problem. Where the bipartite network of markets in layer α𝛼\alphaitalic_α is complete (such that every player has access to every market), this can be done without constraints, and the problem is fully reducible. Where the bipartite network of markets is not fully connected, it requires path constraints. The general reducibility of multilayer networks is supported by [23]. However, an example appears in Appendix B of two different multilayer networks of combined trade and transport which would be reduced to the same single layer network. This represents a case where reduction to a single layer results in a loss of information, and accordingly the multilayer structure is appropriate.

A previous attempt to introduce transportation dynamics as a cost within the Cournot competition was made by [13], where each player-market interaction was associated with a congestion cost contingent upon the flow of goods along the corresponding edge. By segregating the transport layer from the Cournot competition, our work introduces the possibility of multiple routing paths. Consequently, a player’s strategy encompasses not only the quantity of goods but also the choice of routing to the market.

While travel costs were previously incorporated into the Cournot competition by [15], their approach focused solely on functional transport costs. The multilayer, path-based transport routing introduced in this paper represents a unique contribution to the existing literature.

By analysing the two layers separately, our findings align with prior research on single-layer network oligopolies and selfish routing problems, which we leverage in our analysis. However, a key distinction arises between the fixed travel dynamics discussed in Section 4.1 and the classical Cournot competition. In our single-layer Cournot game analysis, transportation costs still exist, but players are unable to influence them through the choice of alternative routing. Our results shed light on the nature and rate of convergence toward equilibrium. It is found that while the multilayer network is in equilibrium, the entangled nature of the two layers can result in neither of them being in equilibrium when considered in isolation.

Under mild assumptions regarding the convexity and concavity of costs and profits, our model offers valuable insights into the benefits of adopting a selfish strategy as equilibrium is approached. While this has been proven for the case of two players and any number of markets, an extension to multiple players is currently under investigation.

8 Conclusions

In this study, a multilayer network framework was employed to establish a connection between the network Cournot competition (upper layer) and a selfish routing problem (lower layer). When examining the behaviour of players in the upper layer in isolation from the lower layer, it was observed that a unique stable equilibrium emerged. Similarly, an investigation of the lower layer revealed the presence of a unique stable equilibrium.

However, when these layers were coupled together, the existence of unique stable equilibria no longer held. This was due to the concave behaviour exhibited in the upper layer and the convex behaviour seen in the lower layer, which, when combined, resulted in a non-concave utility function. While the existence of equilibria was proven to exist within this coupled framework, the dynamics of these equilibria were explored using a link-route representation of the lower layer.

In this work, a multilayer network was used to couple the network Cournot competition (on the upper layer) to a selfish routing problem (on the lower layer). The nature of the behaviour of players on the upper layer when uncoupled from the lower layer has been found to manifest as a unique stable equilibrium. Similarly it was found that there exists a unique stable equilibrium on the lower layer. When the layers are coupled there no longer exists unique stable equilibria as the concave behaviour in the upper layer and the convex behaviour in the lower layer when added give a non-concave utility function.

Declarations

Ethical Approval

Not applicable.

Competing Interests

Toby Willis declares that he has no conflict of interest. Giuliano Punzo declares that he has no conflict of interest.

Authors’ Contributions

The authors equally contributed to this work.

Funding

This research did not receive funding.

Availability of Data and Materials

Not applicable.

References

  • \bibcommenthead
  • Okullo and Reynès [2016] Okullo, S.J., Reynès, F.: Imperfect cartelization in opec. Energy economics 60, 333–344 (2016)
  • Song and Liu [2013] Song, H.F., Liu, Y.Z.: Study on choice model of sales channel on grain supply chain. Applied Mechanics and Materials 357-360, 2931–2934 (2013)
  • Cournot [1897] Cournot, A.A.: Researches Into the Mathematical Principles of the Theory of Wealth, (1897)
  • Varian [1992] Varian, H.: Microeconomic analysis third edition (1992)
  • Mas-Collel [1995] Mas-Collel, A.: Microeconomic theory (1995)
  • Bimpikis et al. [2019] Bimpikis, K., Ehsani, S., İlkılıç, R.: Cournot Competition in Networked Markets. Management Science 67(6), 2467–2481 (2019) https://doi.org/10.1287/mnsc.2018.3061
  • Kyparisis and Qiu [1990] Kyparisis, J., Qiu, Y.: Solution differentiability for oligopolistic network equilibria. Operations Research Letters 9(6), 395–402 (1990)
  • Qiu [1991] Qiu, Y.: Solution properties of oligopolistic network equilibria. Networks 21(5), 565–580 (1991) https://doi.org/10.1002/net.3230210506
  • Abolhassani et al. [2014] Abolhassani, M., Bateni, M., Hajiaghayi, M., Mahini, H., Sawant, A.: Network cournot competition. CoRR abs/1405.1794 (2014)
  • Roughgarden [2006] Roughgarden, T.: Potential functions and the inefficiency of equilibria. International Congress of Mathematicians, ICM 2006 3, 1071–1094 (2006) https://doi.org/10.4171/022-3/52
  • Zhang et al. [2019] Zhang, J., Liu, M., Zhou, B.: Analytical Model for Travel Time-Based BPR Function with Demand Fluctuation and Capacity Degradation. Mathematical Problems in Engineering 2019 (2019) https://doi.org/10.1155/2019/5916479
  • Ibrahim et al. [2021] Ibrahim, A., Lonardi, A., De Bacco, C.: Optimal transport in multilayer networks for traffic flow optimization. Algorithms 14(7) (2021) https://doi.org/10.3390/a14070189
  • Bimpikis et al. [2014] Bimpikis, K., Ehsani, S., Ilkiliç, R.: Cournot competition in networked markets, 733 (2014)
  • Haurie and Marcotte [1985] Haurie, A., Marcotte, P.: On the Relationship Between Nash-Cournot and Wardrop Equilibria, (1985)
  • Alsabah et al. [2021] Alsabah, H., Bernard, B., Capponi, A., Iyengar, G., Sethuraman, J.: Multiregional oligopoly with capacity constraints. Management Science 67(8), 4789–4808 (2021) https://doi.org/10.1287/mnsc.2020.3728
  • Wardrop [1952] Wardrop, J.G.: Some theoretical aspects of road traffic resarch (1952)
  • Nagurney [2021] Nagurney, A.: Supply chain game theory network modeling under labor constraints: Applications to the covid-19 pandemic. European journal of operational research 293(3), 880–891 (2021)
  • Boccaletti et al. [2014] Boccaletti, S., Bianconi, G., Criado, R., Genio, C.I., Gómez-Gardeñes, J., Romance, M., Sendiña-Nadal, I., Wang, Z., Zanin, M.: The structure and dynamics of multilayer networks. Physics Reports 544(1), 1–122 (2014) https://doi.org/10.1016/J.PHYSREP.2014.07.001
  • Willis and Punzo [2022] Willis, T., Punzo, G.: Multi-layer cournot-congestion model*. IFAC-PapersOnLine 55(40), 61–66 (2022) https://doi.org/10.1016/j.ifacol.2023.01.049 . 1st IFAC Workshop on Control of Complex Systems COSY 2022
  • Vives [2011] Vives, X.: Strategic supply function competition with private information. Econometrica 79(6), 1919–1966 (2011) https://doi.org/10.3982/ECTA8126 https://onlinelibrary.wiley.com/doi/pdf/10.3982/ECTA8126
  • Singh and Vives [1984] Singh, N., Vives, X.: Price and quantity competition in a differentiated duopoly. The RAND Journal of Economics 15(4), 546–554 (1984). Accessed 2023-09-25
  • Bellman [1952] Bellman, R.: On the theory of dynamic programming. Proc Natl Acad Sci U S A 38(8), 716–719 (1952) https://doi.org/10.1073/pnas.38.8.716
  • De Domenico et al. [2015] De Domenico, M., Nicosia, V., Arenas, A., Latora, V.: Structural reducibility of multilayer networks. Nature Communications 6(1), 6864 (2015) https://doi.org/10.1038/ncomms7864

Appendix A Proofs

Theorem.

Transportation costs are continuous and differentiable, but not twice differentiable.

Proof.

Consider a player attempting to minimise transportation costs from L(xi)𝐿subscript𝑥𝑖L(x_{i})italic_L ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) to L(yj)𝐿subscript𝑦𝑗L(y_{j})italic_L ( italic_y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) across 3 three routes. The flows on the routes are given by x,y𝑥𝑦x,yitalic_x , italic_y and z𝑧zitalic_z with the cost on each route given by (x)(x+a)𝑥𝑥𝑎(x)(x+a)( italic_x ) ( italic_x + italic_a ), (y)(y+b)𝑦𝑦𝑏(y)(y+b)( italic_y ) ( italic_y + italic_b ) and (z)(z+c)𝑧𝑧𝑐(z)(z+c)( italic_z ) ( italic_z + italic_c ) and without loss of generality abc𝑎𝑏𝑐a\leq b\leq citalic_a ≤ italic_b ≤ italic_c . The total transportation cost is then given by

t:3.:𝑡superscript3t:\mathbb{R}^{3}\rightarrow\mathbb{R}.italic_t : blackboard_R start_POSTSUPERSCRIPT 3 end_POSTSUPERSCRIPT → blackboard_R .

The total flow which xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT routes between L(xi)𝐿subscript𝑥𝑖L(x_{i})italic_L ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) and L(yj)𝐿subscript𝑦𝑗L(y_{j})italic_L ( italic_y start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) is f𝑓fitalic_f and as such x+y+z=f𝑥𝑦𝑧𝑓x+y+z=fitalic_x + italic_y + italic_z = italic_f. The minimum of t(x,y,z)𝑡𝑥𝑦𝑧t(x,y,z)italic_t ( italic_x , italic_y , italic_z ) is given by T(f)𝑇𝑓T(f)italic_T ( italic_f ).

T:.:𝑇T:\mathbb{R}\rightarrow\mathbb{R}.italic_T : blackboard_R → blackboard_R .

The marginal rate of change of t𝑡titalic_t with respect to each edge are given by:

tx=2x+a,ty=2y+b,tz=2z+c.formulae-sequence𝑡𝑥2𝑥𝑎formulae-sequence𝑡𝑦2𝑦𝑏𝑡𝑧2𝑧𝑐\frac{\partial t}{\partial x}=2x+a,\frac{\partial t}{\partial y}=2y+b,\frac{% \partial t}{\partial z}=2z+c.divide start_ARG ∂ italic_t end_ARG start_ARG ∂ italic_x end_ARG = 2 italic_x + italic_a , divide start_ARG ∂ italic_t end_ARG start_ARG ∂ italic_y end_ARG = 2 italic_y + italic_b , divide start_ARG ∂ italic_t end_ARG start_ARG ∂ italic_z end_ARG = 2 italic_z + italic_c .

As such, there are changes of behaviour of T(f)𝑇𝑓T(f)italic_T ( italic_f ) at f=ba2𝑓𝑏𝑎2f=\frac{b-a}{2}italic_f = divide start_ARG italic_b - italic_a end_ARG start_ARG 2 end_ARG and at f=2cab2𝑓2𝑐𝑎𝑏2f=\frac{2c-a-b}{2}italic_f = divide start_ARG 2 italic_c - italic_a - italic_b end_ARG start_ARG 2 end_ARG.

T(f)={t(f,0,0)forf<ba2t(f2+ba4,f2ba4,0)forba2<f<2cab2t(f3+2a+b+c6,f3+a2b+c6,f32cab6)forf>2cab2.𝑇𝑓cases𝑡𝑓00for𝑓𝑏𝑎2𝑡𝑓2𝑏𝑎4𝑓2𝑏𝑎40for𝑏𝑎2𝑓2𝑐𝑎𝑏2𝑡𝑓32𝑎𝑏𝑐6𝑓3𝑎2𝑏𝑐6𝑓32𝑐𝑎𝑏6for𝑓2𝑐𝑎𝑏2T(f)=\begin{cases}t(f,0,0)&\textstyle\hfil\lx@intercol\mbox{for}f<\frac{b-a}{2% }\\ t\left(\frac{f}{2}+\frac{b-a}{4},\frac{f}{2}-\frac{b-a}{4},0\right)&\textstyle% \hfil\lx@intercol\mbox{for}\frac{b-a}{2}<f<\frac{2c-a-b}{2}\\ t\left(\frac{f}{3}+\frac{-2a+b+c}{6},\frac{f}{3}+\frac{a-2b+c}{6},\frac{f}{3}-% \frac{2c-a-b}{6}\right)&\textstyle\hfil\lx@intercol\mbox{for}f>\frac{2c-a-b}{2% }.\end{cases}italic_T ( italic_f ) = { start_ROW start_CELL italic_t ( italic_f , 0 , 0 ) end_CELL start_CELL for italic_f < divide start_ARG italic_b - italic_a end_ARG start_ARG 2 end_ARG end_CELL end_ROW start_ROW start_CELL italic_t ( divide start_ARG italic_f end_ARG start_ARG 2 end_ARG + divide start_ARG italic_b - italic_a end_ARG start_ARG 4 end_ARG , divide start_ARG italic_f end_ARG start_ARG 2 end_ARG - divide start_ARG italic_b - italic_a end_ARG start_ARG 4 end_ARG , 0 ) end_CELL start_CELL for divide start_ARG italic_b - italic_a end_ARG start_ARG 2 end_ARG < italic_f < divide start_ARG 2 italic_c - italic_a - italic_b end_ARG start_ARG 2 end_ARG end_CELL end_ROW start_ROW start_CELL italic_t ( divide start_ARG italic_f end_ARG start_ARG 3 end_ARG + divide start_ARG - 2 italic_a + italic_b + italic_c end_ARG start_ARG 6 end_ARG , divide start_ARG italic_f end_ARG start_ARG 3 end_ARG + divide start_ARG italic_a - 2 italic_b + italic_c end_ARG start_ARG 6 end_ARG , divide start_ARG italic_f end_ARG start_ARG 3 end_ARG - divide start_ARG 2 italic_c - italic_a - italic_b end_ARG start_ARG 6 end_ARG ) end_CELL start_CELL for italic_f > divide start_ARG 2 italic_c - italic_a - italic_b end_ARG start_ARG 2 end_ARG . end_CELL end_ROW (21)

This is continuous as

limba2T(f)=b2a24=limba2+T(f)subscriptsuperscriptlim𝑏𝑎2𝑇𝑓superscript𝑏2superscript𝑎24subscriptsuperscriptlim𝑏𝑎2𝑇𝑓\mbox{lim}^{-}_{\frac{b-a}{2}}T(f)=\frac{b^{2}-a^{2}}{4}=\mbox{lim}^{+}_{\frac% {b-a}{2}}T(f)lim start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT start_POSTSUBSCRIPT divide start_ARG italic_b - italic_a end_ARG start_ARG 2 end_ARG end_POSTSUBSCRIPT italic_T ( italic_f ) = divide start_ARG italic_b start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT - italic_a start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG start_ARG 4 end_ARG = lim start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT start_POSTSUBSCRIPT divide start_ARG italic_b - italic_a end_ARG start_ARG 2 end_ARG end_POSTSUBSCRIPT italic_T ( italic_f )

and

lim2cab2T(f)=a2b2+2c24=lim2cab2+T(f).subscriptsuperscriptlim2𝑐𝑎𝑏2𝑇𝑓superscript𝑎2superscript𝑏22superscript𝑐24subscriptsuperscriptlim2𝑐𝑎𝑏2𝑇𝑓\mbox{lim}^{-}_{\frac{2c-a-b}{2}}T(f)=\frac{-a^{2}-b^{2}+2c^{2}}{4}=\mbox{lim}% ^{+}_{\frac{2c-a-b}{2}}T(f).lim start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT start_POSTSUBSCRIPT divide start_ARG 2 italic_c - italic_a - italic_b end_ARG start_ARG 2 end_ARG end_POSTSUBSCRIPT italic_T ( italic_f ) = divide start_ARG - italic_a start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT - italic_b start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + 2 italic_c start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG start_ARG 4 end_ARG = lim start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT start_POSTSUBSCRIPT divide start_ARG 2 italic_c - italic_a - italic_b end_ARG start_ARG 2 end_ARG end_POSTSUBSCRIPT italic_T ( italic_f ) .

The first derivative is given by

dTdf={2f+aforf<ba2f+a+b2forba2<f<2cab22f3+a+b+c3forf>2cab2.𝑑𝑇𝑑𝑓cases2𝑓𝑎for𝑓𝑏𝑎2𝑓𝑎𝑏2for𝑏𝑎2𝑓2𝑐𝑎𝑏22𝑓3𝑎𝑏𝑐3for𝑓2𝑐𝑎𝑏2\frac{dT}{df}=\begin{cases}2f+a&\textstyle\hfil\lx@intercol\mbox{for}f<\frac{b% -a}{2}\\ f+\frac{a+b}{2}&\textstyle\hfil\lx@intercol\mbox{for}\frac{b-a}{2}<f<\frac{2c-% a-b}{2}\\ \frac{2f}{3}+\frac{a+b+c}{3}&\textstyle\hfil\lx@intercol\mbox{for}f>\frac{2c-a% -b}{2}.\end{cases}divide start_ARG italic_d italic_T end_ARG start_ARG italic_d italic_f end_ARG = { start_ROW start_CELL 2 italic_f + italic_a end_CELL start_CELL for italic_f < divide start_ARG italic_b - italic_a end_ARG start_ARG 2 end_ARG end_CELL end_ROW start_ROW start_CELL italic_f + divide start_ARG italic_a + italic_b end_ARG start_ARG 2 end_ARG end_CELL start_CELL for divide start_ARG italic_b - italic_a end_ARG start_ARG 2 end_ARG < italic_f < divide start_ARG 2 italic_c - italic_a - italic_b end_ARG start_ARG 2 end_ARG end_CELL end_ROW start_ROW start_CELL divide start_ARG 2 italic_f end_ARG start_ARG 3 end_ARG + divide start_ARG italic_a + italic_b + italic_c end_ARG start_ARG 3 end_ARG end_CELL start_CELL for italic_f > divide start_ARG 2 italic_c - italic_a - italic_b end_ARG start_ARG 2 end_ARG . end_CELL end_ROW (22)

T𝑇Titalic_T is differentiable as

limba2dTdf=b=limba2+dTdfsubscriptsuperscriptlim𝑏𝑎2𝑑𝑇𝑑𝑓𝑏subscriptsuperscriptlim𝑏𝑎2𝑑𝑇𝑑𝑓\mbox{lim}^{-}_{\frac{b-a}{2}}\frac{dT}{df}=b=\mbox{lim}^{+}_{\frac{b-a}{2}}% \frac{dT}{df}lim start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT start_POSTSUBSCRIPT divide start_ARG italic_b - italic_a end_ARG start_ARG 2 end_ARG end_POSTSUBSCRIPT divide start_ARG italic_d italic_T end_ARG start_ARG italic_d italic_f end_ARG = italic_b = lim start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT start_POSTSUBSCRIPT divide start_ARG italic_b - italic_a end_ARG start_ARG 2 end_ARG end_POSTSUBSCRIPT divide start_ARG italic_d italic_T end_ARG start_ARG italic_d italic_f end_ARG

and

lim2cab2dTdf=c=lim2cab2+dTdf.subscriptsuperscriptlim2𝑐𝑎𝑏2𝑑𝑇𝑑𝑓𝑐subscriptsuperscriptlim2𝑐𝑎𝑏2𝑑𝑇𝑑𝑓\mbox{lim}^{-}_{\frac{2c-a-b}{2}}\frac{dT}{df}=c=\mbox{lim}^{+}_{\frac{2c-a-b}% {2}}\frac{dT}{df}.lim start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT start_POSTSUBSCRIPT divide start_ARG 2 italic_c - italic_a - italic_b end_ARG start_ARG 2 end_ARG end_POSTSUBSCRIPT divide start_ARG italic_d italic_T end_ARG start_ARG italic_d italic_f end_ARG = italic_c = lim start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT start_POSTSUBSCRIPT divide start_ARG 2 italic_c - italic_a - italic_b end_ARG start_ARG 2 end_ARG end_POSTSUBSCRIPT divide start_ARG italic_d italic_T end_ARG start_ARG italic_d italic_f end_ARG .

The second derivative is given by

d2Tdf2={2forf<ba21forba2<f<2cab223forf>2cab2.superscript𝑑2𝑇𝑑superscript𝑓2cases2for𝑓𝑏𝑎21for𝑏𝑎2𝑓2𝑐𝑎𝑏223for𝑓2𝑐𝑎𝑏2\frac{d^{2}T}{df^{2}}=\begin{cases}2&\textstyle\hfil\lx@intercol\mbox{for}f<% \frac{b-a}{2}\\ 1&\textstyle\hfil\lx@intercol\mbox{for}\frac{b-a}{2}<f<\frac{2c-a-b}{2}\\ \frac{2}{3}&\textstyle\hfil\lx@intercol\mbox{for}f>\frac{2c-a-b}{2}.\end{cases}divide start_ARG italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_T end_ARG start_ARG italic_d italic_f start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG = { start_ROW start_CELL 2 end_CELL start_CELL for italic_f < divide start_ARG italic_b - italic_a end_ARG start_ARG 2 end_ARG end_CELL end_ROW start_ROW start_CELL 1 end_CELL start_CELL for divide start_ARG italic_b - italic_a end_ARG start_ARG 2 end_ARG < italic_f < divide start_ARG 2 italic_c - italic_a - italic_b end_ARG start_ARG 2 end_ARG end_CELL end_ROW start_ROW start_CELL divide start_ARG 2 end_ARG start_ARG 3 end_ARG end_CELL start_CELL for italic_f > divide start_ARG 2 italic_c - italic_a - italic_b end_ARG start_ARG 2 end_ARG . end_CELL end_ROW (23)

d2Tdf2superscript𝑑2𝑇𝑑superscript𝑓2\frac{d^{2}T}{df^{2}}divide start_ARG italic_d start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_T end_ARG start_ARG italic_d italic_f start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG is not continuous at ba2𝑏𝑎2\frac{b-a}{2}divide start_ARG italic_b - italic_a end_ARG start_ARG 2 end_ARG and 2cab22𝑐𝑎𝑏2\frac{2c-a-b}{2}divide start_ARG 2 italic_c - italic_a - italic_b end_ARG start_ARG 2 end_ARG and accordingly T𝑇Titalic_T is not twice differentiable.

\square

It has been shown that T𝑇Titalic_T is not twice differentiable at the transition between assigning additional flow to 1 path and assigning it to 2 paths and also that T𝑇Titalic_T is not twice differentiable at the transition between assigning additional flow to 2 path and assigning it to 3 paths. By the same calculations, it can be seen that T𝑇Titalic_T is not twice-differentiable at the change in behaviour between k𝑘kitalic_k and k+1𝑘1k+1italic_k + 1 paths being used. Between k𝑘kitalic_k paths and k+1𝑘1k+1italic_k + 1 paths, T𝑇Titalic_T will hold the following behaviour

T(f)={t(fk+(k1)a+b++lk2k,fk+a(k1)b++lk2k,0)for2lkablk12<f<2lk+1ablk2t(fk+1+(k)a+b++lk+12k+2,fk+1+a(k)b++lk+12k+2)forf>2lk+1ablk2.𝑇𝑓cases𝑡𝑓𝑘𝑘1𝑎𝑏subscript𝑙𝑘2𝑘𝑓𝑘𝑎𝑘1𝑏subscript𝑙𝑘2𝑘0for2subscript𝑙𝑘𝑎𝑏subscript𝑙𝑘12𝑓2subscript𝑙𝑘1𝑎𝑏subscript𝑙𝑘2𝑡𝑓𝑘1𝑘𝑎𝑏subscript𝑙𝑘12𝑘2𝑓𝑘1𝑎𝑘𝑏subscript𝑙𝑘12𝑘2for𝑓2subscript𝑙𝑘1𝑎𝑏subscript𝑙𝑘2T(f)=\begin{cases}t\left(\frac{f}{k}+\frac{-(k-1)a+b+\hfil\dots+l_{k}}{2k},% \frac{f}{k}+\frac{a-(k-1)b+\dots+l_{k}}{2k}\dots,0\right)&\textstyle\hfil% \lx@intercol\mbox{for}\frac{2l_{k}-a-b-\dots l_{k-1}}{2}<f<\frac{2l_{k+1}-a-b-% \dots-l_{k}}{2}\\ t\left(\frac{f}{k+1}+\frac{-(k)a+b+\hfil\dots+l_{k+1}}{2k+2},\frac{f}{k+1}+% \frac{a-(k)b+\dots+l_{k+1}}{2k+2}\dots\right)&\textstyle\hfil\lx@intercol\mbox% {for}f>\frac{2l_{k+1}-a-b-\dots-l_{k}}{2}.\end{cases}italic_T ( italic_f ) = { start_ROW start_CELL italic_t ( divide start_ARG italic_f end_ARG start_ARG italic_k end_ARG + divide start_ARG - ( italic_k - 1 ) italic_a + italic_b + ⋯ + italic_l start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG start_ARG 2 italic_k end_ARG , divide start_ARG italic_f end_ARG start_ARG italic_k end_ARG + divide start_ARG italic_a - ( italic_k - 1 ) italic_b + ⋯ + italic_l start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG start_ARG 2 italic_k end_ARG … , 0 ) end_CELL start_CELL for divide start_ARG 2 italic_l start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT - italic_a - italic_b - … italic_l start_POSTSUBSCRIPT italic_k - 1 end_POSTSUBSCRIPT end_ARG start_ARG 2 end_ARG < italic_f < divide start_ARG 2 italic_l start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT - italic_a - italic_b - ⋯ - italic_l start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG start_ARG 2 end_ARG end_CELL end_ROW start_ROW start_CELL italic_t ( divide start_ARG italic_f end_ARG start_ARG italic_k + 1 end_ARG + divide start_ARG - ( italic_k ) italic_a + italic_b + ⋯ + italic_l start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT end_ARG start_ARG 2 italic_k + 2 end_ARG , divide start_ARG italic_f end_ARG start_ARG italic_k + 1 end_ARG + divide start_ARG italic_a - ( italic_k ) italic_b + ⋯ + italic_l start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT end_ARG start_ARG 2 italic_k + 2 end_ARG … ) end_CELL start_CELL for italic_f > divide start_ARG 2 italic_l start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT - italic_a - italic_b - ⋯ - italic_l start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT end_ARG start_ARG 2 end_ARG . end_CELL end_ROW (24)

where lksubscript𝑙𝑘l_{k}italic_l start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT is the kthsuperscript𝑘𝑡k^{th}italic_k start_POSTSUPERSCRIPT italic_t italic_h end_POSTSUPERSCRIPT letter of the alphabet (such that if k=3𝑘3k=3italic_k = 3, lk=csubscript𝑙𝑘𝑐l_{k}=citalic_l start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT = italic_c and lk+1=dsubscript𝑙𝑘1𝑑l_{k+1}=ditalic_l start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT = italic_d).

Appendix B Graph Reduction Example

Figures 11 and 11 shows two separate multilayer networks, and the single layer graph that they would be reduced to by a graph reduction process.

This retains the edges connecting the players to the transport network, the edges within the transport network and the edges between the transport network and the markets. These edges are given congestion functions associated with their characteristics. The edges between the players and the transport networks are given 0 cost, and the edges between the transport networks and the markets are given congestion functions representing the market saturation. However, it can be seen that both Figure 11 and Figure 11 reduce to the same single layer graph. The information about which markets each player has access to is lost, and would require additional information to be given. Accordingly, reduction to a single layer graph is not possible without the loss of information, and a multilayer format is an appropriate choice.

Refer to caption

Figure 10: The reduction to a single layer of a graph with a complete bipartite upper layer

Refer to caption

Figure 11: The reduction to a single layer of a graph with an incomplete bipartite upper layer