Lecture 20
November 11, 2024
Text: VSRIKRISH to 22333
Some relevant questions:
Want to model flows between waste sources and sinks (disposal sites).
Variable | Definition |
---|---|
\(\color{purple}S_i\) | Waste produced at source \(i\) (Mg/day) |
\(\color{red}K_j\) | Capacity of disposal \(j\) (Mg/day) |
\(\color{blue}W_{ij}\) | Waste transported from source \(i\) to disposal \(j\) (Mg/day) |
This network representation takes into account the graph structure of the system, but nothing else.
What else might we need?
To complete the model, need:
Three disposal options:
What are our decision variables?
Variable | Definition |
---|---|
\(W_{ij}\) | Waste transported from city \(i\) to disposal \(j\) (Mg/day) |
\(R_{kj}\) | Residual waste transported from disposal \(k\) to disposal \(j\) (Mg/day) |
\(Y_j\) | Operational status (on/off) of disposal \(j\) (binary) |
What are some components of total system cost?
Variable | Definition |
---|---|
\(a_{ij}\) | Cost of transporting waste from source \(i\) to disposal \(j\) ($/Mg-km) |
\(l_{ij}\) | Distance between source \(i\) and disposal \(j\) (km) |
\[ \begin{align} &\text{Transportation Costs} = \\[0.5em] &\qquad \sum_{i \in I, j \in J} a_{ij}\,l_{ij}\,W_{ij} \end{align} \]
Variable | Definition |
---|---|
\(c_j\) | Fixed costs of operating disposal \(j\) ($/day) |
\(b_{j}\) | Variable cost of disposing waste at disposal \(j\) ($/Mg) |
\[ \begin{align} &\text{Disposal Costs} = \\[0.5em] &\qquad \sum_{j \in J} \left[c_j + b_j \sum_{i \in I} W_{ij}\right] \end{align} \]
Is this expression for disposal costs right?
The prior expression is only correct if all disposal facilities are operating.
The option to not operate disposal facility \(j\) means we need new indicator variables.
\[Y_j = \begin{cases}0 & \text{if} \sum_{i \in I} W_{ij} = 0 \\[0.5em] 1 & \text{if} \sum_{i \in I} W_{ij} > 0\end{cases}\]
\[ \begin{align} \min_{W_{i,j}, {Y_j}} & \sum_i \sum_j a_{ij}\,l_{ij}\,W_{ij} + \sum_j \left[c_jY_j + \sum_i b_jW_{ij}\right] \\ \text{subject to:} \quad & Y_j = \begin{cases}0 & \text{if } \sum_{i \in I} W_{ij} + \sum_{k \noteq j} R_{kj} = 0 \\ 1 & \text{if } \sum_{i \in I} W_{ij} + \sum_{k \noteq j} R_{kj} > 0 \end{cases} \\ & \sum_i W_{ij} + \sum_k R_{kj} \leq K_j \\ & \sum_j W_{ij} = S_i \\ & W_{ij} \geq 0 \end{align} \]
Facility | Fixed Cost ($/yr) | Tipping Cost ($/Mg) | Recycling Cost ($/Mg recycled) |
---|---|---|---|
WTE | 900,000 | 60 | – |
MRF | 400,000 | 5 | 35 |
LF | 700,000 | 40 | – |
MRF Recycling Rate: 40%
Fixed Costs: $900,000/yr
Tipping Cost: $60/Mg handled
Total WTE Cost ($/day): \[2466 Y_1 + 60(W_{11} + W_{21} + R_{21})\]
Recycling: 40%, $35/Mg recycled
Fixed Costs: $400,000/yr
Tipping Cost: $5/Mg handled
Total MRF Cost ($/day): \[ \begin{align} &1096 Y_2 + 5(W_{12} + W_{22}) + \\ &\qquad 0.4(35)(W_{12} + W_{22}) \end{align} \]
Fixed Costs: $700,000/yr
Tipping Cost: $40/Mg handled
Total LF Cost ($/day): \[1918 Y_2 + 40(W_{13} + W_{23} + R_{13} + R_{23})\]
Transportation Cost: $1.50/Mg-km
Total Tranportation Cost ($/day): \[ \begin{align} 1.5&{\Large[}15W_{11} + 5W_{12} + 30W_{13} \\ & \quad 10W_{21} + 15W_{22} + 25W_{23} \\ & \quad 18R_{13} + 15R_{21} + 32R_{23}{\Large]} \end{align} \]
Combining the transportation and disposal costs and simplifying: \[ \begin{align} \min_{W, R, Y} \qquad & 82.5 W_{11} + 26.5W_{12} + 85W_{13} + 75W_{21} + \\[0.25em] & \quad 41.5W_{22} + 77.5W_{23} + 67R_{13} + 82.5R_{21} + \\[0.75em] & \quad 88R_{23} + 2466Y_1 + 1096Y_2 + 1918Y_3 \end{align} \]
City 1: \(W_{11} + W_{12} + W_{13} = 100\)
City 2: \(W_{21} + W_{22} + W_{23} = 170\)
Recycling Rate: 40%
WTE Residual Ash: 20%
\(R_{13} = 0.2(W_{11} + W_{21} + R_{21})\)
\(R_{21} + R_{23} = 0.6(W_{12} + W_{22})\)
WTE: \(W_{11} + W_{21} + R_{21} \leq 150\)
MRF: \(W_{12} + W_{22} \leq 130\)
LF: \(W_{13} + W_{23} + R_{23} + R_{13} \leq 200\)
\[ \begin{align} Y_1 &= \begin{cases}0 &\quad \text{if } W_{11} + W_{21} + R_{21} = 0 \\ 1 & \quad \text{else} \end{cases} \\ Y_2 &= \begin{cases}0 &\quad \text{if } W_{21} + W_{22} = 0 \\ 1 & \quad \text{else} \end{cases} \\ Y_3 &= 1 \\[0.5em] W_{ij}, R_{ij} &\geq 0 \end{align}\]
Some solvers allow you to directly translate indicator constraints into JuMP. For example,
implements \[Y_2 = \begin{cases}0 &\quad \text{if } W_{21} + W_{22} = 0 \\ 1 & \quad \text{else} \end{cases} \]
Not all frameworks support this type of syntax. So what can we do?
Use a “big-M” reformulation:
\[MY_1 \geq W_{21} + W_{22}\]
where \(M\) is so large that it is greater than any feasible value of the RHS.
After putting this all into JuMP (you know how!), optimal objective is $26,879/day.
\(Y_1 = 1\)
\(Y_2 = 1\)
\(Y_3 = 1\)
\(W_{12} = 100\) Mg/day
\(W_{23} = 170\) Mg/day
\(R_{13} = 7.5\) Mg/day
\(R_{21} = 37.5\) Mg/day
\(R_{23} = 22.5\) Mg/day
Another example: power flow modeling through a transmission network.