None Notebook

This notebook contains material from CBE30338; content is available on Github.

< 6.7 Design of a Cold Weather Fuel | Contents | Tag Index | 6.99 Pyomo Examples >

Open in Colab

Download

6.8 Gasoline Blending

The task is to determine the most profitable blend of gasoline products from given set of refinery streams.

6.8.1 Gasoline Product Specifications

The gasoline products include regular and premium gasoline. In addition to the current price, the specifications include

6.8.2 Stream Specifications

A typical refinery produces many intermediate streams that can be incorporated in a blended gasoline product. Here we provide data on seven streams that include:

The stream specifications include research octane and motor octane numbers for each blending component, the Reid vapor pressure, the benzene content, cost, and availability (in gallons per day). The road octane number is computed as the average of the RON and MON.

6.8.3 Blending Model

This simplified blending model assumes the product attributes can be computed as linear volume weighted averages of the component properties. Let the decision variable $x_{s,p} \geq 0$ be the volume, in gallons, of blending component $s \in S$ used in the final product $p \in P$.

The objective is maximize profit, which is the difference between product revenue and stream costs.

\begin{align} \mbox{profit} & = \max_{x_{s,p}}\left( \sum_{p\in P} \mbox{Price}_p \sum_{s\in S} x_{s,p} - \sum_{s\in S} \mbox{Cost}_s \sum_{p\in P} x_{s,p}\right) \end{align}

or \begin{align} \mbox{profit} & = \max_{x_{s,p}} \sum_{p\in P} \sum_{s\in S} x_{s,p}\mbox{Price}_p - \max_{x_{s,p}} \sum_{p\in P} \sum_{s\in S} x_{s,p}\mbox{Cost}_s \end{align}

The blending constraint for octane can be written as

\begin{align} \frac{\sum_{s \in S} x_{s,p} \mbox{Octane}_s}{\sum_{s \in S} x_{s,p}} & \geq \mbox{Octane}_p & \forall p \in P \end{align}

where $\mbox{Octane}_s$ refers to the octane rating of stream $s$, whereas $\mbox{Octane}_p$ refers to the octane rating of product $p$. Multiplying through by the denominator, and consolidating terms gives

\begin{align} \sum_{s \in S} x_{s,p}\left(\mbox{Octane}_s - \mbox{Octane}_p\right) & \geq 0 & \forall p \in P \end{align}

The same assumptions and development apply to the benzene constraint

\begin{align} \sum_{s \in S} x_{s,p}\left(\mbox{Benzene}_s - \mbox{Benzene}_p\right) & \leq 0 & \forall p \in P \end{align}

Reid vapor pressure, however, follows a somewhat different mixing rule. For the Reid vapor pressure we have

\begin{align} \sum_{s \in S} x_{s,p}\left(\mbox{RVP}_s^{1.25} - \mbox{RVP}_{min,p}^{1.25}\right) & \geq 0 & \forall p \in P \\ \sum_{s \in S} x_{s,p}\left(\mbox{RVP}_s^{1.25} - \mbox{RVP}_{max,p}^{1.25}\right) & \leq 0 & \forall p \in P \end{align}

This model is implemented in the following cell.

6.8.4 Display Results

6.8.4.1 Results for each Stream

6.8.4.2 Results for each Product

  exercise

6.8.5 Exercise 1.

The marketing team says there is an opportunity to create a mid-grade gasoline product with a road octane number of 89 that would sell for $2.82/gallon, and with all other specifications the same. Could an additional profit be created?

Create a new cell (or cells) below to compute a solution to this exercise.

  exercise

6.8.6 Exercise 2.

New environmental regulations have reduced the allowable benzene levels from 1.1 vol% to 0.62 vol%, and the maximum Reid vapor pressure from 15.0 to 9.0.

Compared to the base case (i.e., without the midgrade product), how does this change profitability?

  exercise

6.8.7 Exercise 3.

Given the new product specifications in Exercise 2, let's consider using different refinery streams. In place of Reformate, the refinery could produce Reformate LB. (That is, one or the other of the two streams could be 60000 gallons per day, but not both). Same for LSR and Reformate. How should the refinery be operated to maximize profitability?

< 6.7 Design of a Cold Weather Fuel | Contents | Tag Index | 6.99 Pyomo Examples >

Open in Colab

Download