2.4 Many-Component Blends

Maximising the Sum of the Qualities

Fairly obviously, the next thing to consider is whether we can bring the specific gravity up to the maximum by the use of VRES in our blend. At this point I abandon my pocket calculator as a means of doing the calculations and resort to the computer.

Fig. 1.1 is the matrix and Fig. 1.2 the solution to this problem.

Fig 1.1: LP Matrix - Maximise sum of qualities

{ Simple Oil Blending Model - Version 1}

{ In this model we are maximising the total quality value of the blend }

TITLE Simple_Oil_Blending_Model_V1 ;

MIN  OBJ =   -1.0 ACTUALSG -1.0 ACTUALVI -1.0 ACTUALSU

SUBJECT TO

SGRAV :       0.83 LGO  + 0.88 HGO  + 0.92 WAXD
            + 0.97 ARES + 1.03 VRES - 1.0 ACTUALSG
            = 0.0;

VBI :         15.0 LGO  + 26.0 HGO  + 30.0 WAXD
            + 40.0 ARES + 48.0 VRES - 1.0 ACTUALVI
            = 0.0 ;

SULPHUR:      1.0 LGO  + 2.2 HGO  + 2.8 WAXD
            + 4.1 ARES + 5.0 VRES - 1.0 ACTUALSU
            = 0.0 ;

MBALANCE:     1.0 LGO  + 1.0 HGO + 1.0 WAXD
            + 1.0 ARES + 1.0 VRES
            = 1.0

BOUNDS

            ACTUALSG <= 0.98 ;
            ACTUALVI <= 37.0 ;
            ACTUALSU <= 3.7 ;

END

Fig 1.2: LP Solution - Maximised sum of qualities


    ----------------------------------------------------------------------
      Problem Title  :  Simple_Oil_Blending_Mode Date  :     Apr-29-1995
                                                 Time  :           16:10
 
      Input File     :  SIMBLN1.SIM                              
      Output File    :  SIMBLN1.LIS                              
    ----------------------------------------------------------------------

    ----------------------------------------------------------------------

      Optimal Solution  : 


       MIN  OBJ               =           -41.6578

    ----------------------------------------------------------------------


           Decision variables            Values           Reduced Cost
    ======================================================================

       1)   ACTUALSG          =             0.9578             .   
       2)   ACTUALVI'         =            37.0000            1.0261
       3)   ACTUALSU'         =             3.7000            0.8348
       4)   LGO               =             0.2174             .   
       5)   HGO               =              .                0.0387
       6)   WAXD              =              .                0.0039
       7)   ARES              =             0.4783             .   
       8)   VRES              =             0.3043             .   
    ----------------------------------------------------------------------


           Constraints       Type         Slack          Shadow prices
    ======================================================================

       1)   SGRAV            '='             .                1.0000
       2)   VBI              '='             .               -0.0261
       3)   SULPHUR          '='             .                0.1652
       4)   MBALANCE         '='             .               -0.6039
    ----------------------------------------------------------------------as

We shall look at the matrix a little later, but now let us look at the solution, and in particular at the middle section headed "Decision variables    Values     Reduced Cost".

We are interested in the numbers in the column headed "Values". The first three lines show the values of the qualities in the blend. The specific gravity (ACTUALSG) is 0.9578, the VBI (ACTUALVI) 37.0 and the Sulphur content (ACTUALSU) 3.7. The next five lines show the proportions of each material, LGO, HGO, WAXD, ARES, VRES in the blend. Thus the blend of HFO consists of 21.7% LGO, 47.8% ARES and 30.4% VRES.

So we have succeeded in increasing the specific gravity while keeping the viscosity and Sulphur content at their maxima. However, we have not been able to bring the specific gravity all the way up to its maximum of 0.98.

Maximising the Specific Gravity

This prompts the question: what is the maximum specific gravity which we could obtain with the blend? Figs. 2.1 and 2.2 are the matrix and solution for this.

Fig 2.1 LP Matrix - Maximise specific gravity

{ Simple Oil Blending Model - Verson 2 }
{ In this model we are maximising the Specific Gravity of the blend }

TITLE Simple_Oil_Blending_Model_V2 ;

MIN  OBJ =   -1.0 ACTUALSG ;

SUBJECT TO

SGRAV :       0.83 LGO  + 0.88 HGO  + 0.92 WAXD
            + 0.97 ARES + 1.03 VRES - 1.0 ACTUALSG
            = 0.0;

VBI :         15.0 LGO  + 26.0 HGO  + 30.0 WAXD
            + 40.0 ARES + 48.0 VRES - 1.0 ACTUALVI
            = 0.0 ;

SULPHUR:      1.0 LGO  + 2.2 HGO  + 2.8 WAXD
            + 4.1 ARES + 5.0 VRES - 1.0 ACTUALSU
            = 0.0 ;

MBALANCE:     1.0 LGO  + 1.0 HGO + 1.0 WAXD
            + 1.0 ARES + 1.0 VRES
            = 1.0

BOUNDS

            ACTUALSG <= 0.98 ;
            ACTUALVI <= 37.0 ;
            ACTUALSU <= 3.7 ;

END

Fig 2.2 LP Solution - Maximised specific gravity

     ----------------------------------------------------------------------
       Problem Title  :  Simple_Oil_Blending_Mode Date  :     Apr-29-1995
                                                  Time  :           16:10

       Input File     :  SIMBLN2.SIM                              
       Output File    :  SIMBLN2.LIS                              
     ----------------------------------------------------------------------


     ----------------------------------------------------------------------

       Optimal Solution  : 


        MIN  OBJ               =            -0.9633

     ----------------------------------------------------------------------



            Decision variables            Values           Reduced Cost
     ======================================================================

        1)   ACTUALSG          =             0.9633             .   
        2)   LGO               =             0.3333             .   
        3)   HGO               =              .                0.0167
        4)   WAXD              =              .                0.0009
        5)   ARES              =              .                0.0115
        6)   VRES              =             0.6667             .   
        7)   ACTUALVI'         =            37.0000            0.0061
        8)   ACTUALSU          =             3.6667             .   

     ----------------------------------------------------------------------



            Constraints       Type         Slack          Shadow prices
     ======================================================================

        1)   SGRAV            '='             .                1.0000
        2)   VBI              '='             .               -0.0061
        3)   SULPHUR          '='             .                 .   
        4)   MBALANCE         '='             .               -0.7391

As we can see from the "Values" column of the solution, we can get the specific gravity up to 0.9633. This is with a blend of two-thirds VRES and one-third LGO. The viscosity constraint is then binding (ACTUALVI = 37.0) while the Sulphur content is non-binding (ACTUALSU = 3.667). Note that both with this bland and the preceding one we have remained with a blend of only two or three components.

The Problem as an LP

Now let us look at the matrices. These are in algebraic form for a package called Turbo Simplex produced by Maximal Software. The package has been selected because the format of the matrices can be understood immediately; if they had been in industry-standard MPS format we would have first had to translate them to algebraic form.

It is conventional that the objective in an LP matrix is minimised. The objective in our matrix is - (ACTUALSG + ACTUALVI = ACTUALSU). After a little reflection it will be realised that minimisation of a negative quantity is exactly equivalent to maximisation of the corresponding positive quantity. So in our matrix we are maximising the sum of the actual values of the qualities.

The row SGRAV defines the actual value of the specific gravity of our blend, ACTUALSG. The variables LGO, HGO, WAXD, ARES and VRES represent the proportions of each of these materials in the blend, so the actual specific gravity is the sum of the proportions multiplied by the specific gravity of each component. Similarly, the rows VBI and SULPHUR define the actual viscosity (ACTUALVI) and the actual Sulphur content (ACTUALSU).

The final row, MBALANCE is a material balance. We have said that the variable LGO, HGO, WAXD etc. represent the proportions of each component in the blend. That is what we intend them to be, but we must actually define them to be so in the matrix. This is achieved by the material balance row.

It is a convention in LP that all variables are non-negative (i.e. they are greater than or equal to zero). If we set the sum of the variables LGO, HGO, etc equal to 1.0 there is therefore no possibility that LGO will be -3.0 and HGO 4.0. Instead the variables become the proportions of each component in the blend.

If we set the sum equal to 100.0 the variables would represent percentages of each component in the blend, but we should then have to adjust the SGRAV, VBI and SULPHUR rows to ensure that ACTUALSG, ACTUALVI and ACTUALSU still represented the actual values of the qualities in the blend. (We should set the coefficient of ACTUALSG, ACTUALVI and ACTUALSU to -100.0; note the similar change in the capacity problem below (Fig. 6.1)).

Finally we have the quality specification as expressed by the bounds:

ACTUALSG <= 0.98 ;

ACTUALVI  <= 37.0 ;

ACTUALSU <= 3.7 ;

This completes the definition of our LP problem whose solution was

LGO = 0.217

ARES = 0.478

VRES = 0.304


ACTUALSG = 0.9578

ACTUALVI  = 37.0

ACTUALSU = 3.7

Recall that in this solution the viscosity and Sulphur contents were up to their maxima but the specific gravity was not. After obtaining it we asked whether we could increase the specific gravity still further. The answer was 'Yes', with the blend:

LGO = 0.333

VRES = 0.667

with these properties:

ACTUALSG = 0.9633

ACTUALVI  = 37.0

ACTUALSU = 3.667

How did we obtain this? If you compare the matrices you will find that they differ only in the coefficients of ACTUALVI and ACTUALSU in the OBJ row. These are 0.0 instead of -1.0. (Coefficients of zero need not, indeed normally do not, appear in the matrix, but have been made explicit here.) So the objective function is simply - ACTUALSG.

In other words our objective was to maximise ACTUALSG. Fairly obviously this is the right objective function for the question we asked. Note however that, because of the correlation between the qualities, we have succeeded in maximising the viscosity at the same time: indeed the viscosity is the binding constraint rather than the specific gravity.

previous contents next





Comments