Supply Chain Mathematical Programmes

This material is a summary of the material on supply chain networks from Chapter 2 Supply Chain Networks in Supply Chain Network Economics: Dynamics of Prices, Flows and Profits by Anna Nagurney (2006).

Supply Chains

  1. Introduction
  2. The Manufacturer's Problem
  3. The Retailer's Problem
  4. The Consumer's Problem
  5. Equilibrium and Variational Inequalities


Throughout a supply chain there are many organisations who are trying to make the best decision for their business. These decisions can be formulated as mathematical programmes. We will introduce a supply chain model that is a simplification of that presented in the Supply Chains introduction. We will formulate the mathematical programmes faced by the organisations at each stage of this supply chain. This simplification can be easily extended to supply chain models with more stages (e.g., see Supply Chains) by inserting more Retailer's Problems into the simplified model.

The supply chain model considered here has three stages (shown in Figure 1):

  1. The manufacturers;
  2. The retailers;
  3. The demand markets. Products are created by the manufacturers, sold to the retailers where they are stored, distributed, etc and then sold again in the demand markets to consumers.

Figure 1 A 3-stage supply chain model (adapted from Supply Chain Network Economics)


The rest of this topic deals with the mathematical programmes faced by the manufacturers, retailers and consumers (in the demand markets).

Return to top

The Manufacturer's Problem

Each manufacturer $i$ (from the set of manufacturers $1, 2, \ldots, m$ must determine an optimal output quantity $q_i$ which is split into flows $q_{ij}$ to send to each retailer $j$ (from the set of retailers $1, 2, \ldots, n$). Of course all output is sent to retailers so

\[ q_i = \sum_{j=1}^n q_{ij} \]

The production cost $f_i$ for manufacturer $i$ may be influenced not only by their output $q_i$, but also by the outputs from other manufacturers, e.g., due the competition for shared resources. Thus, $f_i$ is a function of the vector $q = \left( q_i \right)$ which may also be expressed as the matrix of flows from manufacturers to retailers, i.e.,

\[ Q^1 = \begin{pmatrix} q_{11} & q_{12} & \cdots & q_{1n} \\ q_{21} & q_{22} & \cdots & q_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ q_{m1} & q_{m2} & \cdots & q_{mn} \end{pmatrix} \]
\[ f_i = f_i(q) = f_i(Q^1) \]

Finally, there is a transaction cost $c_{ij}$ associated with sending flow $q_{ij}$ from manufacturer $i$ to retailer $j$, i.e.,

\[ c_{ij} = c_{ij}(q_{ij}) \]

Each manufacturer $i$ sets a unit price $\rho_{1ij}$ for selling their output to retailer $j$. Now manufacturer $i$ want to maximise their profit, i.e., total income - production cost - transaction cost, over the set of non-negative flows:

  \begin{equation*} \begin{array}{l@{ }l} \displaystyle \max \sum_{j=1}^n \rho_{1ij} & \displaystyle q_{ij} - f_i(Q^1) - \sum_{j=1}^n c_{ij}(q_{ij}) \ \text{subject to} \ & q_{ij} \geq 0, j = 1, 2, \ldots, n \end{array} \end{equation*}  (1)

Return to top

The Retailer's Problem

Each retailer $j$ must determine their optimal flow $q_{ij}$ to receive from manufacturer $i$ and also their optimal flow $q_{jk}$ to sell to consumers in demand market $k$ (in the set of demand markets $1, 2, \ldots, p$).

There is an associated handling cost $c_j$ that may depend on the flow to other retailers, e.g., competition for output from the manufacturers:

\[ c_j = c_j(Q^1) \]

Each retailer $j$ sets a unit price $\rho_{2j}$ for sending flow to a demand market. Note that this price does not depend on the market (as consumers will simply move to the demand markets with the lowest price).

Now the retailer must choose flows to maximise their total profit (total income - handling cost - purchase cost):

  \begin{equation*} \begin{array}{l@{ }l@{ }l} \displaystyle \max \rho_{2j} \sum_{k=1}^p & q_{jk} & \displaystyle - \ c_j(Q^1) - \sum_{i=1}^m \rho_{1ij} q_{ij} \ \text{subject to} \ \displaystyle \hfill \sum_{k=1}^p & q_{jk} & \displaystyle \leq \sum_{i=1}^m q_{ij} \ & q_{ij} &\geq 0, i = 1, 2, \ldots, m \ & q_{jk} &\geq 0, k = 1, 2, \ldots, p \end{array} \end{equation*}  (2)

Return to top

The Consumers' Problem

The consumers within a demand market $k$ must determine how much of the incoming flow to purchase. They take the price $\rho_{2j}$ from each retailer and there is an associated unit transaction cost $c_{jk}$ for purchasing flow from retailer $j$. This cost may depend on the behaviour of consumers in other demand markets, e.g., . competition for flows from retailers, i.e.,

\[ Q^2 = \begin{pmatrix} q_{11} & q_{12} & \cdots & q_{1p} \\ q_{21} & q_{22} & \cdots & q_{2p} \\ \vdots & \vdots & \ddots & \vdots \\ q_{n1} & q_{n2} & \cdots & q_{np} \end{pmatrix} \]
\[ c_{jk} = c_{jk}(Q^2) \]

The combination of the different prices and unit transaction costs gives rise to an "effective" price $\rho_{3k}$ for a consumer to purchase a unit of flow in demand market $k$.

The demand for flow in demand market $k$ is determined by the demand curve, a function of the effective price, i.e.,

\[ d_k = d_k(\rho_{3k}) \]

The consumers within demand market $k$ choose flows to minimise their total cost while meeting demand:

  \begin{equation*} \begin{array}{l@{ }l@{ }l} \displaystyle \min \rho_{3k} \sum_{j=1}^n & q_{jk} \ \text{subject to} \ \displaystyle \hfill \sum_{j=1}^n & q_{jk} & \geq d_k(\rho_{3k}) \ & q_{jk} &\geq 0, j = 1, 2, \ldots, n \end{array} \end{equation*}  (3)

Return to top

Equilibrium and Variational Inequalities

If the prices $\rho_{1ij}$, $\rho_{2j}$ and $\rho_{3j}$ are not coordinated then solving the Manufacturer's Problem, the Retailer's Problem and the Consumers' Problem will give inconsistent values for $q_{ij}$ and $q_{jk}$. That is, the manufacturers will want to ship different amounts to the retailers than the retailers will want to receive from the manufacturers and the retailers will want to sell different amounts to the demand markets from the amounts that the consumers at the demand markets want to purchase. However, these prices will adjust until the supply chain reaches equilibrium and the flows from the different mathematical programmes agree.

One way to find this equilibrium point is to solve a variational inequality. Theorem 1 gives the necessary variational inequalities:

Theorem 1: Variational Inequality The equilibrium state governing the supply chain model according to the optimality conditions of the supply chain mathematical programmes (1), (2) and (3) is equivalent to the solution of the variational inequality problem given by: determine the equilibrium vectors of product shipments, shadow prices, and demand market prices $(Q^{1*}, Q^{2*}, \gamma^*, \rho_{3}^*) \in \mathbb{R}_+^{mn+np+n+p}$ satisfying

 \begin{equation*} \begin{split} & \sum_{i=1}^m \sum_{j=1}^n \left[ \frac{\partial f_i(Q^{1*})}{\partial q_{ij}} + \frac{\partial c_{ij}(q_{ij}^*)}{\partial q_{ij}} + \frac{\partial c_j(Q^{1*})}{\partial q_{ij}} - \gamma_j^* \right] \times \left[ q_{ij} - q_{ij}^* \right] \ &+ \sum_{j=1}^n \sum_{k=1}^p \left[ c_{jk}(Q^{2*}) + \gamma_j^* - \rho_{3k}^* \right] \times \left[ q_{jk} - q_{jk}^* \right] \ &+ \sum_{j=1}^n \left[ \sum_{i=1}^m q_{ij}^* - \sum_{k=1}^p q_{jk}^* \right] \times \left[ \gamma_j - \gamma_j^* \right] \ &+ \sum_{k=1}^p \left[ \sum_{j=1}^n q_{jk}^* - d_k(\rho_3^*) \right] \times \left[ \rho_{3k} - \rho_{3k}^* \right] \geq 0, \forall (Q^{1}, Q^{2}, \gamma, \rho_{3}) \in \mathbb{R}_+^{mn+np+n+p} \end{split} \end{equation*}

Once the equilibrium state has been found the manufacturers' prices and the retailers' prices can be calculated:

  • $\displaystyle \rho_{1ij}^* = \left[ \frac{\partial f_i(Q^{1*})}{\partial q_{ij}} + \frac{\partial c_{ij}(q_{ij}^*)}{\partial q_{ij}} \right]$ if $q_{ij}^* > 0$;
  • $\rho_{2j}^* = \gamma_j^* = \rho_{3k}^* - c_{jk}(Q^{2*})$ if $q_{jk}^* > 0$ for some $k$.

Return to top

-- MichaelOSullivan - 31 Mar 2008
Latex rendering error!! dvi file was not created.

Edit | Attach | Watch | Print version | History: r15 < r14 < r13 < r12 < r11 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r15 - 2018-11-23 - TWikiAdminUser
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback