Summary QM2 Math IB
Summary QM2 Math IB
Summary QM2 Math IB
2. Vectors
Such a matrix consisting of one column only is usually called a vector.
Because a vector is a matrix consisting of just one column, its order can be described by
merely giving the number of its entries. This number is called the dimension of that vector.
A zero vector is a vector, indicated by 0, of which each entry equals zero.
A unit vector is a vector with one entry equal to 1, while all other entries are zero.
3. Operations on Vectors
The (scalar) product of a vector x and a number c is the vector c x obtained by multiplying each entry
of x by c.
The sum of two vectors x and y of the same dimension is the vector x + y obtained by taking the sum
of each pair of corresponding entries of x and y. By taking the difference of each pair of corresponding
entries of x and y we can obtain the difference x − y of x and y.
4. Operations on Matrices
The sum of two matrices A and B of the same order is the matrix A + B, which we obtain by taking
the sum of each pair of corresponding entries of the two matrices.
By taking the difference of each pair of corresponding entries of A and B we obtain the difference A −
B of A and B.
The (scalar) product of a matrix A and a number c is the matrix which we
obtain by multiplying all entries of the matrix by c.
For a square matrix A we write A2 instead of AA and A3 instead of AAA, etcetera. We call A3
the third power of A.
1. Two examples
Example 1: A machine problem
Management wonders how many phones of each type can be
produced if both machines are used for one hour.
If xB basic cell phones plus xS smartphones are being
manufactured, then this will occupy 20xB + 50xS seconds
on machine M1 and 30xB + 45xS seconds on machine M2.
At a production level of 30 basic cell phones and 60 smartphones,
both machines M1 and M2 will be utilized for one hour.
Example 2: A demand and supply model
Demand equation:
Supply equation:
Market equilibrium:
Using this demand and supply model, we wish to determine how the
equilibrium quantity and price, typically denoted q∗ and p∗, depend on income Y .
We call the matrix A above, in which we summarized the coefficients of the system, the coefficient
matrix of the system. The vector b, containing the constant terms of the system,
is called the vector of constants of the system.
If we add vector b as final column to the coefficient matrix, then we get the so-called coefficient
matrix ted coefficient matrix, which is written as [ A | b ].
We can represent a system of linear equations using the coefficient matrix and the vector of constants.
In this respect, an important role is played by the product of the coefficient matrix and a vector
containing the variables.
The vector of unknowns and b is the vector
of constants.
If a system has two different solutions, then in fact the system has infinitely many solutions.
This simple example serves to illustrate a general solution method which will also work for more
complex systems, when your high school methods would become unwieldy. We will determine the
solution of this system by eliminating variables from equations, successively applying one of the
following so-called elementary operations:
1. multiplying or dividing an equation by a nonzero number
2. interchanging (the positions of) equations
3. adding (subtracting) a multiple of one equation to (from) another equation.
The purpose of these operations, which do not change the set of solutions of the system, is to simplify
the system step by step.
The solution xB = 30 and xS = 60 can now be read off directly from the system.
An elimination process like the one discussed above is sometimes called Gaussian
elimination. It is usually carried out in terms of the (augmented) coefficient matrix of the
system. This reduces the effort because you don’t need to write down the variables explicitly at each
step. ’Eliminating a variable from an equation’ boils down to ’changing one of the entries in the
corresponding row of the coefficient matrix to zero’. Likewise, the counterpart of each elementary
operation applied to the equations of the system is a similar operation applied to the rows of the
augmented coefficient matrix.
Having arrived at this result, we say that we have reduced the augmented coefficient matrix
and we call the end product of this reduction process the reduced matrix.
This reduced matrix has three characteristic properties:
1. the left-most non-zero entry in each row is a 1 (called a leading one)
2. every column containing a leading one has zeros elsewhere
3. every leading one is to the right of the leading one in the row above (if any).
Notice that the reduced augmented coefficient matrix contains a row which consists entirely
of zeroes. This so-called zero row corresponds with the equation 0 · x + 0 · y = 0.
Because this equation is satisfied for all values of x and y, it is in fact a redundant equation.
Such zero rows are always put at the lowest position of the reduced matrix.
The solution x = 1 and y = 1 of the system can now be read off directly from the reduced
augmented coefficient matrix.
Since the variables q and p both correspond with a column containing a leading one, they
are called leading variables. The non-leading variable Y is called a free variable.
Reduced form, it is clear that we can choose any (non-negative) number for the
free variable Y.
So far, the standard form of our 2 × 3 system takes our variables in the order q, p, Y . We
could also write them in the order p, Y , q.
Note that p and Y are the leading variables now, while q is the free variable. Of course, this second
representation of the solutions to our system is mathematically equivalent to the first one.
So, given that the system is not inconsistent, we must have infinitely many solutions.
This ’infinity’ shows up in the fact that we can choose any value for one of the three
variables (the free variable, be it Y , q or p), from which the values for the other two variables then
follow. Alternatively, we can say that our system has one degree of freedom.
While the three alternative representations of the solutions to our system (with Y , q or p as free
variable) are mathematically equivalent, an economist will only be interested in the first one.
In the language of economics: the (value of the) variable Y is determined outside the model, for which
reason Y is called an exogenous variable. The (values of the) variables q and p are explained by the
model, and these variables are therefore called endogenous.
For this reason it is desirable, when rewriting a system of equations in standard form, to place (the
terms containing) the exogenous variables after (the terms containing) the endogenous variables. By
following this practice, we will obtain a reduced form which does not only give us a mathematically
correct solution (they all do!), but also has the desired economic interpretation.
Clearly, although the system does pin down the value of z uniquely, it has infinitely many solutions; y
is the free variable (of course, we could rewrite our result with x as the free variable). Alternatively
stated: the system has one degree of freedom.
So the system (corresponding with the given augmented coefficient matrix) has a unique
solution.
Obviously there are no values of x, y and z which satisfy this equation. Apparently the system is
inconsistent.
4.4 Solving linear systems using backward substitution
Our previous analyses imply that the reduction of an augmented matrix will
always result in a matrix which has a staircase form.
The lower left part of the matrix, where we have not filled in anything,
consists entirely of zeroes. Places where the symbol ∗ has been printed
contain an arbitrary number. From Theorem 2 it follows that the system is
solvable if and only if a = b = 0. In that case the system has an infinite
number of solutions, because the second, fourth and fifth variables are free.
We omit from the reduction process the operations that would be necessary to ’create zeroes’ above
the leading ones.
The procedure for solving a system that is illustrated in the previous example is called backward
substitution because the values of the variables are found in backward order, starting with the variable
with the largest subscript. As indicated at the start, in large systems this ’partial reduction’ approach
will usually be more efficient than completing the reduction
process till the bitter end.
Chapter 3: The Inverse Matrix
We are interested in the square matrices A for which a square matrix B exists such that AB = BA = I.
In that case the matrix A is called invertible, and matrix B is called the inverse of A. This inverse is
always written as A−1. Not every square matrix is invertible. We will see that a square system Ax = b
whose coefficient matrix is invertible has precisely one solution; this solution is given by x = A−1b.
1. Invertible Matrices
The equation ax = b, where a 6= 0, can be solved by dividing the left- and right-hand side
by a, or – to put it differently – by multiplying the left- and right-hand side by the inverse
a −1 of the number a: ax = b =⇒ x = a −1 b.
For (certain) square matrices, a concept can be defined which is analogous to the inverse of a nonzero
real number. If A is a square matrix whose inverse – indicated by A −1 – exists, then we will show that
Ax = b =⇒ x = A −1 b.
In order to calculate the inverse of a matrix you do these steps:
First you set your matrix next to an I matrix. And then you’re going to make the left matrix into an I
and what you do to the left matrix you also do to the right matrix and the matrix that you end up with
on the right is the inverse matrix!
2. Finding the Inverse of a Matrix
The reduction of the first augmented coefficient matrix should give us a and c; the second one will
deliver b and d. If A is invertible, this procedure will definitely give us the correct
inverse. However, both systems above obviously have the same coefficient matrix. This implies that
we can save on the calculations by reducing both augmented coefficient matrices simultaneously,
rather than separately. We can achieve this by putting both unit vectors behind the coefficient matrix,
and reducing the resulting matrix.
3. The Role of the Inverse Matrix in Economic Models
We provide two applications in which the inverse matrix plays a crucial role. First, we will
discuss an economic model that can be described by a square system of equations. Secondly, we will
show that the inverse matrix can even be useful if there are more variables than equations, i.e. if the
system is non-square.
This intermediate demand of T x is not available to satisfy final demand. Consequently, from the gross
output x remains a net output of only x − T x.
If we represent final demand by the vector f , then the equilibrium gross outputs of the coal
and steel industries must satisfy the following equality:
If the final demand for coal rises by 1 ton, then what happens to gross outputs? A first naïve answer
would be that coal production rises by 1 ton and steel production stays put. We have already seen that
this cannot be correct: after all, producing 1 extra ton of coal by itself requires 0.1 extra tons of coal,
which then requires an additional 0.01 tons, etcetera. What’s more: producing 1 extra ton of coal also
requires 0.2 tons of steel, and producing that extra steel will again require the use of extra coal and
steel, etcetera.
Determining the ultimate result of all these interactions and feedbacks seems a daunting
task.
However, the inverse matrix (I − T ) −1 (which was not really hard to obtain!) tells us
that the extra ton of final coal demand will increase the gross coal output by 1.2 tons, and
the gross steel output by 0.267 tons.
4. The Determinant
According to Theorem 4 a square matrices may or may not be invertible, depending on whether their
reduction leads to an identity matrix or not. In this section we will describe an alternative procedure to
assess the invertibility of a matrix, which will often be more convenient. This procedure calculates
from the entries of the matrix a single number, called
the determinant of that matrix. If this number is nonzero, then the matrix is invertible; if it equals zero,
then the matrix is not invertible.
2. If the number does not equal zero, we can continue the reduction procedure. This will lead to the
identity matrix, so that matrix M is invertible.
The invertibility of matrix M is completely determined by the number ad − bc. This number is called
the determinant of matrix M, written as det M.
If we exchange two rows, the determinant changes its sign, By exchanging rows, try to obtain a first
row with as many zeros as possible.
4.3 The Procedure for nxn Matrices
4.4 Expansion Along an Arbitrary Row or Column
In this section we will show how we can find the determinant of a matrix if a lot of zeroes occur in a
row other than the first row. After that, we will show how to proceed if a lot of zeroes occur in one of
the columns. In doing so, we will make use of two properties of the determinant which we will
illustrate but not prove.
Of course we could find this determinant by using expansion along the first row. However, you cannot
fail to notice the presence of two zeroes in the third row of the matrix. An obvious thing to do,
therefore, is to start by interchanging the first and third row; after that, the expansion process will be
much faster and less prone to small calculation mistakes.
The second column of the given matrix was chosen to play a central role in the evaluation of its
determinant, for the obvious reason that this column contained two zeroes. In fact the original matrix
was first manipulated in such a way that its second column became the first row of a new matrix. Then
the determinant of the new matrix was evaluated by expansion along its first row. We found the
determinant of the original matrix by expansion along its second column. This approach can be used in
any situation. However, it is also possible to evaluate the determinant of the given matrix by expansion
along the second column in a direct way.
Of course, this method can be applied for any square matrix and for any row or column.
The determinant of a sum of two matrices is generally different from the sum of the determinants of
those matrices. At the same time, you can check that the determinant of the product of our matrices A
and B is equal to the product of the determinants of matrices A and B, and this result generalizes.
Chapter 4: Financial Mathematics
How to determine, for a given interest rate, the value of amounts of money at different moments in
time.
In our example above, the amount in my savings account is said to exhibit exponential growth, with a
constant annual growth factor (shorthand g) of 1.06.
The year-by-year development of our initial deposit of 10 000 euros can be represented by means of
the sequence
10 000, 10 000 · (1.06), 10 000 · (1.06)2, 10 000 · (1.06)3, . . . , 10 000 · (1.06)20
The numbers in this sequence are called terms.
In our example we have a = 10 000, g = 1.06, and the year is the unit of time.
In the previous scenario 1, a one-time deposit of 10 000 euros was made today, to finance a world tour
in 20 years’ time.
Assuming compound interest, where the 6% annual interest is added to the savings account
every year, the future value of our initial deposit was calculated at the end of year 20.
As long as the interest rate is positive, the present value of a future payment (or receipt) will always be
smaller than that future payment (or receipt). In finance, this is called the principle of discounting
future amounts of money, and the phrase discounted value is sometimes used as synonym for present
value.
Generalizing the technique described above for an arbitrary geometric sequence, we find the
following formula for the sum of a geometric sequence.
Obviously, we need 30 000 euros for the first year of the tour. It is therefore sufficient to calculate the
amounts needed to finance the second, third and fourth year. Since we are
earning interest at 6% per year, these amounts can be progressively smaller than 30 000
euros.
Well, the present value of the second payment is
30 000 · (1.06)−1 euros.
The third payment has a present value of
30 000 · (1.06)−2 euros.
The fourth one is given by
30 000 · (1.06)−3 euros
We have now calculated the deposit which must be made today, in order to finance the
30 000 expenses in the second, third and fourth years of my holiday. Factoring in the 30 000 that are
needed for the first year, we conclude that there must be 30 000 + 80 190.36 =
110 190.36 euros available on my savings account at the start of the trip.
3. Some Other Topics in Financial Mathematics
In this section, we present some applications of the principles discussed in the previous two
sections.
3.1 The Annuity Mortgage
To finance a house purchase, a person borrows 200 000 euros. This mortgage must be paid off in 20
years at a fixed interest rate of 5% per year. At the end of each year, a constant amount A must be paid
to the bank. Such a mortgage is called an annuity mortgage. The constant annual amount A consists of
an interest part and a repayment part.
Our first method takes the present as its point of reference. Given what we have seen so far, your
financial intuition should tell you that things will line up when the present value of the sequence of
annuity payments equals 200 000.
Our second method takes the future, i.e. 20 years from now, as its point of reference. Again,
your financial intuition should tell you that things will line up when the future value of the sequence of
annuity payments equals the future value of those 200 000.
In the following table we describe how the two components of the annuity develop over the
duration of the mortgage.
3.2 Net Present Value and the Internal Rate of Return
In Section 1 we defined the present value of future amounts of money, discounted back to the present.
Now we will use this concept to evaluate the profitability of investment projects.
Typically, in such projects, the costs of the investment occurs at present, while the returns
associated with the project will be received in the future.
You should understand right away that, if the interest rate increases, the net present value of the
project (and hence its profitability) will decrease. This raises an interesting question: when would the
project stop being profitable? In other words: at which value for the interest rate would the net present
value of the project fall all the way to zero?
Assume that consumers all spend a constant part c ∈ (0, 1) of any extra income on extra
consumption. The parameter c is called the marginal propensity to consume.
According to our assumption, those who receive this money are going to spend another
c ·(cK) = c 2K euros. Because this process continues endlessly, the original investment leads
to a total spending increase (in euros) of K + cK + c 2K + · · · .
3.4 Interest Periods and Effective Interest Rates
Interest may also be compounded semi-annually, quarterly, monthly, or even daily.
Suppose I deposit 10 000 euros in a savings account. If the annual interest rate for this
account is r and the interest payments are made (and re-invested in the account) each month, then
these 10 000 euros grow with r/12 × 100% per month. In other words: each
month the amount increases by the factor 1 + r/12.
As you can see, the amount will grow at a rate of (approximately) 6.17% per year, the effective yearly
interest rate.
Chapter 1: The Basics of Linear Programming
Modern management can rely increasingly on the support of information and communication
technology. Ideally, a computer program can find the best decision among all possible decisions even
in cases when there are millions of possible alternatives.
In its most general form, the mathematical apparatus by which such a supply chain problem and many
other decision problems in business can be solved is called Mathematical Programming. In the current
reader, our attention will be focused on an important branch of Mathematical Programming called
Linear Programming.
The Linear Programming approach is used extensively in business practice, to help solve a
bewildering variety of problems. Many opportunities to apply the approach in practice are missed due
to unfamiliarity of decision makers with this approach. Failure to apply the Linear
Programming approach usually leads to non-optimal decisions being taken it is important for every
business graduate to be acquainted with the LP approach to problem solving, in order to recognize the
opportunity to apply this approach whenever it arises. Your knowledge of the LP approach will be
necessary to identify the potential of using the approach in the first place, and then to guide its
integration into your business.
As an introduction to the LP approach for solving business problems, we address the example
problem: the case “Production Planning”. The Linear Programming approach (or Mathematical
Programming generally) consists of three phases: the verbalization, formalization and solution phases.
A major cement producer in the vicinity of Maastricht has a contract with the national government
prescribing the area where they may extract the raw material ‘marl’ from the beautiful countryside
they are located in, this contract severely limits the amount of marl available.
The current profit margins are estimated at € 4.00 per ton of type Alpha (original) and € 3.00 per ton
of type Beta (new). The estimated demands for the old and new product next month are 60,000 and
90,000 tons respectively.
Due to maintenance scheduling, the ovens are available for only 1,100 hours next month. The ovens
have a capacity of 100 tons of cement per hour, regardless of the type. The distribution department
has a capacity of 3,400 hours for the next month. Twenty tons of type Alpha can be shipped in one
hour, whereas as much as fifty tons of type Beta can be shipped per hour.
Last month they agreed to produce 40,000 tons of Alpha and 50,000 tons of Beta. The plant manager
intends to propose the same production quantities for this month. He has no idea whether these
quantities yield the maximum profit, but they were the compromise after long negotiations last month,
and they may again be a suitable compromise this month.
The production manager points out that in one hour of oven time he can handle 100 tons
of Alpha, which yields a profit of € 400, or 100 tons of Beta, which yields a profit of only € 300.
Hence, he suggests using 600 hours of the available oven time for Alpha, and the remaining 500 hours
for Beta. The logistics manager, however, has another view on the problem. He points out that in one
hour they can ship 20 tons of Alpha yielding a profit of 20 * € 4 = € 80, or 50 tons of Beta yielding a
profit of 50 * € 3 = € 150.
As a consequence, he proposes to produce 90,000 tons of Beta, which takes 1,800 shipping hours, and
to use 1,000 of the remaining 1,600 hours for the production of 20,000 tons of the original product
Alpha.
In the verbalization phase, a verbal description is given of …
1) all possible decisions involved in the problem (the cement firm has to take two basic
decisions: for each type of cement, it has to decide how many tons of that type will be
produced next month);
2) the objective by which we measure the quality of these decisions (in order to distinguish good
decisions from bad decisions, we need to measure the quality of our decisions), and
3) the constraints, which limit our freedom in taking decisions (In almost all business problems,
we are not completely free to take decisions. Typically, there are constraints, which limit our
freedom. Reading the first two sections of the case description carefully, we encounter four
distinct considerations which limit our freedom in choosing the production quantities).
The first two constraints of the case Production Planning are so-called resource capacity
constraints. A resource can be any item needed for production, of which only limited quantities are
available. In the case at hand, the resources are oven time and shipping time, both measured in hours.
A resource capacity constraint states that the amount of a resource that is used should be less than or
equal to the amount that is available, i.e. the capacity.
The next two constraints are called demand constraints.
In the verbalization phase, we only express the objective and the constraints in words, without
bothering about the mathematical details. The purpose of the second phase of the Linear Programming
approach, the formalization phase, is precisely to convert our verbal problem description into a
mathematical model.
We follow the same three steps as in the verbalization phase:
1) We start by representing every decision by a mathematical symbol called a decision variable,
with a particular numerical domain, such that there is a one-to-one correspondence between a
value in the domain of the variable, and a value of the corresponding decision.
2) Having represented all relevant decisions by variables, the next step is to express the objective
as a mathematical function of these decision variables. This function is called the objective
function, and we obviously want to optimize (i.e. maximize or minimize) it.
3) Finally, we can express the constraints by using mathematical functions of our decision
variables. The values of these functions should not exceed or fall below certain thresholds, or
have to be equal to a certain value.
1 Decisions:
- Let the decision variable A denote the production quantity of cement type Alpha, in units of
one thousand tons. Its domain is the set of non-negative numbers.
- Let the decision variable B denotes the production quantity of cement type Beta, again in units
of one thousand tons. Its domain is the set of non-negative numbers.
2 Objective: Verbally stated, the objective of the firm is to maximize profit expressed in euros. The
profit earned by producing cement type Alpha is given by the linear function 4,000A. Similarly, the
profit earned by producing cement type Beta is given by 3,000B. Total profit is therefore given by the
linear function 4,000A + 3,000B, and our objective is to maximize this function.
3 Constraints:
- The first constraint states that the total oven time used is restricted by its capacity of 1,100
hours. The number of hours of oven time used for the production of A units of cement type
Alpha is given by the linear function 10A. For the production of B units of cement type Beta
follows as 10B. The total number of hours of oven time used is
10A + 10B. This amount has to be less than, or equal to, the oven capacity of 1,100 hours, so
that we get the following constraint: 10A + 10B ≤ 1,100.
- The second constraint states that the total shipping time used is restricted by the available
amount of 3,400 hours. The number of hours of shipping time used for the production of
cement type Alpha is given by 50A. The number of hours of shipping time for the production
of cement type Beta follows as 20B, so that the total number of hours of shipping time used is
given by 50A + 20B. This amount has to be less than, or equal to, the available 3,400 hours, so
that we get the following constraint: 50A + 20B ≤ 3,400.
- The third & fourth constraints state that, for each type of cement, the number of units to
produce next month is restricted by the amounts that can be sold, i.e. by demand. For cement
type Alpha, demand is estimated at 60,000 tons, i.e. 60 production units of 1,000 tons each.
There is no contractual obligation to actually meet this demand, so the firm may wish to
produce and sell fewer than 60 units: this leads to the constraint A ≤ 60. Similarly, for cement
type Beta, we get the constraint B ≤ 90.
Note that our “Production Planning” case has only two decision variables. This means, that it is fairly
easy to sketch the feasible region for our model, and then to identify the optimal solution. This is
called the graphical approach. Because this approach only works if there are no more than two
decision variables, it has limited practical applicability.
Step 1: Determining the feasible region
To identify the feasible region, i.e. the set of decisions that satisfy all constraints simultaneously, we
start by having a closer look at each constraint in turn.
- First constraint: 10A + 10B ≤ 1,100 page 6
We start by drawing the following line: 10A + 10B = 1100 This equation
corresponds to the border line of the original inequality constraint. If we can find
any two points satisfying this equation, the entire line can be plotted easily by
drawing a straight line through these points.
- In a similar fashion, we can sketch the points that satisfy the second constraint:
50A + 20B ≤ 3,400 Again, we start by looking at the corresponding equality, i.e.
the border line of the constraint: 50A + 20B = 3,400.
- The third constraint is really easy. Its border line is obviously the
vertical line A = 60, and all points to the left of it also satisfy the
constraint.
- Same thing for the fourth constraint. This time, the border line is the horizontal line B = 90,
and all points below it also satisfy the constraint.
Finally, we do not have to pay any separate attention to constraints (5) and (6): the nonnegativity of
the decision variables A and B has already been taken into account, because we restricted ourselves to
the first quadrant of the (A, B) plane when drawing the other constraints.
Step 2: Finding the optimal solution, using level curves
Now that we have determined the set of feasible solutions to our LP problem, we need to determine
which of these solutions is best. That is, we must determine which point in the feasible region will
maximize the value of the objective function of our model.
Fortunately, we can easily eliminate most of the feasible solutions in
an LP problem from consideration. It can be shown that if an LP
problem has one or more optimal solutions with a finite objective
function value, then at least one of these optimal solutions will occur
at a point in the feasible region where two or more of the border lines
of the constraints intersect. These points of intersection are sometimes
called corner points.
We conclude that the optimal solution occurs at the point (A, B) =
(40, 70). The corresponding total profit is found by substituting these
optimal values for the decision variables into the objective function,
which gives 4,000*40 + 3,000*70 = 370,000. In words: our firm can
realize a maximum profit of € 370,000 if it decides to produce 40
thousand tons of type Alpha cement, and 70 thousand tons of type
Beta cement.
To end this section, we note again that at our optimal solution of (A,
B) = (40, 70), constraints (1) and (2) are satisfied with equality. Such
constraints are called binding: their intersection defines the optimum. The remaining constraints, in
particular (3) and (4), are satisfied as inequalities. Such constraints are called nonbinding. For
constraint (3), it holds that 40 is strictly less than 60. The difference, 60 – 40 = 20, is called the slack.
Constraint (4) also holds as an inequality, since 70 is strictly less than 90; the slack is again 20. Be
sure to understand that, by definition, binding constraints have zero slack.
Important lessons learned from this example:
1. The choice of units for our decision variables is often important.
2. It is often helpful to distinguish between basic decisions, and derived or implied
decisions.
Finally, we will use our example to discuss three special conditions that can sometimes arise in LP
modelling: 1) redundant constraints, 2) alternate optimal solutions, and 3) empty feasible regions. We
stress in advance that the first two conditions do not prevent us from solving an LP model and should
thus not really be regarded as problems – they are just anomalies which sometimes occur.
1 Redundant Constraints: A redundant constraint is a constraint that plays no role in
determining the feasible region of the problem. Mathematically, this redundancy occurs because some
other (combination of) constraint(s) already reduces the feasible region to a subset of the points which
are allowed by the redundant constraint. This implies that the redundant constraint cannot have any
influence on the feasible region, let alone on the optimal solution.
2 Alternate Optimal Solutions: there can be more than one feasible point that
maximizes (or minimizes) the value of the objective function.
3 Empty Feasible Regions: In other words, there are no values for the decision
variables that satisfy all constraints at the same time.
Software Approach:
When we implement a mathematical model in Excel’s Solver, each decision variable corresponds with
a cell in the spreadsheet that contains the value of that variable. We will also need one cell to show the
value of the objective function. The objective function is a function of the decision variables and
hence its value can only be calculated once the values of these variables are known.
Note that we have one
column for every decision
variable and one row for
every linear function.
We will now come back on the example form chapter 1: Production Planning.
Crucially, the case has only
two decision variables: this
implies that we can solve it
using the graphical
approach.
The optimal solution can
then be found by thinking
about level curves of the objective function. Of course, the slope of these
level curves is determined by the objective function coefficients: in the
case at hand, we have a slope of –4,000/3000 = –1.33.
As Figure 1 indicates, the optimal solution occurs at the intersection of constraints (1) and (2), i.e. at
(A, B) = (40, 70). The corresponding level curve of the objective function, which represents a profit
level of 4,000*40 + 3,000*70 = 370,000, is indicated by the dashed line in Figure 1.
Alternatively, we can solve our model using the software approach, in particular: by implementing it
in Excel’s Solver. Once the Solver has found the optimal solution, you get to see the “Solver Results”
window that has been printed on the next page. If you just click “OK”, which is what we have done so
far, then the optimal solution is reported in the basic model spreadsheet, as in the screenshot above.
But on top of that, three different types of reports on
the optimal solution are available, which can be
generated by checking them with the left mouse
button in the “Reports” box (see the red ellipse)
before clicking “OK”.
While ignoring the “Limits Report”, we will have a
very quick look at the “Answer Report” and then
focus on the main dish, as announced: the
“Sensitivity Report”.
Answer Report
The most interesting part is actually the final section,
about the “Constraints”. Although all the information
that is provided here can easily be inferred from the
optimal solution, things are presented in a more
explicit way. In particular, the “Status” column
indicates explicitly that constraints (1) and (2) are binding at the optimal solution, while constraints (3)
and (4) are not.
Sensitivity Report
The fact that our case has only two decision variables offers a crucial advantage: we can actually use our
graphical analysis to provide an intuitive understanding of the results that are shown in the Solver’s sensitivity
report.
“By which amounts can the coefficients of the objective function change, without changing the
optimal solution?”
This is a question of obvious managerial interest: e.g. if these
coefficients are uncertain for whatever reason, then it would
definitely be useful to know how much they can change before the
optimal solution would change. As we will see, Solver’s answer to
this question is provided in the last two columns of the section
“Variable Cells” in the output above.
Let’s focus on the objective function coefficient for A, currently
4,000. The sensitivity output reports an “Allowable Increase” of
3,500 and an “Allowable Decrease” of 1,000 for this coefficient.
This means that, as long as the other objective function coefficient
stays the same, the A-coefficient can range anywhere between 4,000
+ 3,500 = 7,500 and 4,000 – 1,000 = 3,000, without changing the
optimal solution.
The sensitivity output indicates that, as long as the A-coefficient
stays put, the B-coefficient can increase by at most 1,000, or
decrease by at most 1,400, without affecting the optimal solution.
To summarize: when an objective function coefficient changes by an
amount that is within its “Allowable Increase” or “Allowable
Decrease” while the other coefficient stays the same, then the
optimal solution stays the same. What this means is that the optimal
values of the decision variables will remain exactly the same: but of course, the value of the objective
function will change!
Before moving to our second sensitivity question, we want to address two “special effects” related to
the sensitivity analysis of the objective function coefficients:
i) Simultaneous changes in objective function coefficients: Still, in many cases we will be
interested in whether the current solution remains optimal if changes are made in two or
more objective function coefficients at the same time. Unfortunately, there are no solid
general rules for such scenarios. As a rule of thumb, if the changes in the individual
objective coefficients are small relative to their allowable decreases or increases, then the
optimal solution is likely to remain the same. To be sure, it’s probably best to simply
adjust the model and re-solve it.
ii) Alternate optimal solutions: Sometimes, the allowable increase or decrease for the
objective function coefficients of one or more variables will equal zero. This indicates that
our problem has alternate, i.e. non-unique, optimal solutions. Note that the “Allowable
Decrease” of the A-coefficient, and the “Allowable Increase” of the B-coefficient, are
both given as 0. This points towards the occurrence of alternate solutions. As we have
seen there, if the A-coefficient drops from 4,000 to 3,000, the level curves of the objective
function have a slope of –1. As a result, the entire red segment of border line (1) becomes
optimal: from its intersection with border line (2) at the currently optimal (40, 70) up to its
intersection with border line (4) at (20, 90). In case of alternate solutions, Excel will
always report a corner point as its solution: in this case, either (40, 70) or (20, 90).
We now move to the second question that was raised at the end of the Introduction: “What will
happen to the optimal solution and its optimal value if the right-hand-sides of constraints
change?”
Before starting our discussion, we remind you that at the optimal solution there are two classes of
constraints: binding and non-binding. Constraints that have zero slack at the optimal solution are
binding. In terms of the “Constraints” section of the sensitivity report, a constraint is binding if its
“Final value”, i.e. its left-hand-side value, is equal to its “Constraint R.H. Side”.
For any constraint, its shadow price tells us the amount by which the optimal objective function value
changes, if the right-hand-side value of the constraint is increased by 1 unit, assuming that all other
coefficients remain constant. This interpretation applies as long as the increase or decrease in the right-
hand-side value falls within the “Allowable Increase” or “Allowable Decrease” respectively. The
shadow price of a nonbinding constraint is always zero.
First: the binding oven time constraint (1). For this constraint, Solver reports a positive shadow price
of 233.33. This implies that an additional hour of oven time will improve our optimal objective
function value by € 233.33. Consequently, the firm might be willing to pay up to € 233.33 to acquire
that extra hour; this explains the name “shadow price”. Our interpretation will hold true for any
increase up to a maximum of 120 hours. So if 60 extra oven hours become available, the objective
function value should go up by 60 * € 233.33 = € 14,000.
Conversely: if the number of available oven
hours would decrease, then the optimal
value would go down by € 233.33 per hour;
this interpretation applies for any decrease
by up to 300 hours.
As we change the right-hand side value of a binding constraint within its allowable increase or
decrease, this will not only change the value of the optimal solution, but also its location.
We trust you accept that nonbinding constraints always come with a zero shadow price. In our
example, both the binding constraints have a positive shadow price. But this observation does not
generalize: binding constraints can also have a negative shadow price.
Finally, the third question that was raised at the end of the Introduction: “What will be the effect on
the optimal value of forced changes in the values of the decision variables (i.e.: deliberate
deviations from their optimal values)?”
Solver’s answer is provided in the “Reduced Cost” column of the “Variable Cells” section in the
sensitivity report.
The issues at hand cannot properly be illustrated on the basis of our original “Production Planning”
model. Let us therefore generalize the model a bit by assuming that the firm at hand can actually
produce a third cement type C, that makes use of the same resources. In particular, say that cement
type C requires 12 hours of oven time and 30 hours of shipping time per unit of 1,000 kg, while it has
a profit contribution of € 3,500 per
unit. The demand for cement type C
is effectively unlimited.
With an optimal production plan of (A, B, C) = (40, 70, 0), the solution to our generalized model is
indeed equivalent that of the original model. The sensitivity report is also totally identical to the one
for the original model, except that it includes an extra row, for variable C, in the “Variable Cells”
section. Be sure to note that this row reports a “Reduced Cost” of –300 for variable C.
For each decision variable, the “Reduced Cost” equals its per-unit contribution to the objective
function, minus the value of the resources it consumes per unit, where these resources are valued at
their shadow prices.
But what would happen if a unit of cement type C would require only 15 rather than 30 hours of
shipping time? Its reduced cost would then follow as Reduced Cost product C = 3,500 – (12 * 233.333
+15 * 33.333 + 0 * 0 + 0 * 0) = 200.
Because the new reduced cost value is positive, producing a positive amount of cement type C would
now be profitable, and the original optimal solution would therefore no longer be optimal.
Producing type C will only be profitable if its reduced cost is greater than or equal to zero.
Consequently, we can find c2 by solving the following
inequality: Reduced Cost product C = 3,500 –
(12*233.333 + 2 *33.333 + 0*0 + 0*0) ≥ 0 which solves
for c2 ≤ 21. So as long as the shipping time requirement
for cement type C exceeds 21 hours per unit, producing
it will be unprofitable; for values below 21 (e.g. 15) it
does become profitable.
Anomaly alert: degeneracy
Sometimes, the solution to an LP model displays a
mathematical anomaly called degeneracy. A solution is
degenerate whenever the right-hand-side values of any of
the model’s constraints have an allowable increase or
decrease of zero.
Discussing the exact mathematical nature of the degeneracy phenomenon goes beyond the scope of
this text. None of the solutions to the cases discussed in this reader suffer from degeneracy, but some
of the exercises and old exam questions do. Unfortunately, degeneracy has some problematic
consequences for the interpretation of a model’s sensitivity report. Let’s list the most important ones:
1. The reported allowable increases and decreases for the objective function coefficients still hold,
in the sense that the optimal solution will definitely remain the same when the changes in the
objective coefficients respect these ranges. In fact, it may be possible to change the coefficients by
more than the indicated ranges suggest, before the optimal solution changes.
2. Our normal interpretation of the reported shadow prices, and their ranges, is no longer reliable.
3. Our normal interpretation of the reported reduced costs is no longer reliable.
Clearly, before interpreting any sensitivity report, you should always first check whether the solution
is degenerate. If it is, extreme caution is required if real-life business decisions are to be taken on the
basis of the information provided by that sensitivity report!
Next: the shadow prices, and the allowable increases and decreases, for the right-hand-sides of our five
constraints. We may start by observing, that none of the allowable increases and decreases are 0, so
degeneracy is not an issue here: consequently, the basic interpretations of the various concepts will
hold without strings attached. Comparing the “Final Value” with the “Constraint R.H. Side”, we see
that constraints (1), (3) and (4) are binding, while constraints (2) and (5) are non-binding.
Finally: the reduced costs. For the three ingredients which are actually used at the optimal solution, the
reduced costs are zero. For the unused wheat, the reduced cost of 0.1184 are positive, as they should
be for a minimization problem. In case they deviate from the optimal solution and forcibly include 1%
i.e. 0.01 of wheat, then the costs per kg of the mix will go up by 0.001184. Further, make sure you can
reconstruct where the value comes from:
Reduced Cost W = 0.68 – ( 1*0.1977 + 0.004*0 + 0.004*(–0.2045) + 0.13*2.8054 + 0.05*0 ) =
0.1184.
Not surprisingly, the “Allowable Decrease” for the objective coefficient of wheat is given by 0.1184.
So as long as its price stays above 0.68 – 0.1184 = 0.5616 per kg, it will be uneconomical to include
wheat in the mix; doing so will only become profitable if the price falls even further, so that its
reduced cost turns negative.
In Figure 2 alongside, the numbers above each arc indicate the costs, while the numbers below them
indicate the capacities. Moreover, linking up with the common flow balance
constraint template above, the number –100 under node 1 indicates its supply;
the number 100 under node 3 indicates its demand, and for obvious reasons the
number under node 2 equals 0.
In our simple case, the objective is to minimize the total cost of the flow (i.e. the transportation costs),
while respecting the capacity constraints (on the arcs) and the flow balance constraints (on the nodes).
As it turns out (and you probably saw this coming), a network flow problem like ours can actually be
expressed as a linear programming model.
Let the variable Xij denote the flow on the arc (i,j). Since our simple case has three arcs, there are
three such decision variables, already seen before: X12, X23 and X13. We have three corresponding
capacity constraints, representing the upper limits on the number of tons that can be transported by the
transportation mode corresponding to that arc. We also have three flow balance constraints,
corresponding to supply node 1, transhipment node 2 and demand node 3. The arc cost is the unit
transportation cost, and our objective is to minimize the total cost, i.e. the sum of the flow value on
each arc (given by our decision variables),
multiplied by the corresponding arc cost.
It will be clear that constraints (4)-(6) are the capacity constraints. Most interestingly, constraints (1)-
(3) are the flow balance constraints.
At this point you might ask: why do we devote a separate chapter to network flow models if, in the
end, they boil down to linear programs? Here are three reasons:
1) In many cases, the decision variables represent physical units, which necessarily have to be
integer. In principle, we would then have to add so called integrality constraints to our model;
but that would carry us from linear programming to the much more complex integer
programming. However, mathematical theory tells us that, if all the capacities of our flow
model are integer, then every optimal solution of the LP will have integer flow values on each
arc. In other words: we will spontaneously obtain integer optimal values for all decision
variables, without including explicit integrality constraints in our LP models. This makes the
problems much easier and faster to solve, in particular for medium and large size flow
problems.
2) The network flow representation provides additional insight in the structure of the decision
problem, since next to the algebraic formulation in terms of objective and constraints, we get a
graphical representation of the problem.
3) Next to a standard linear programming solver, there exists dedicated software to solve network
flow problems. Some commercial software packages contain such software, and this allows us
to solve very large models of the network flow type.
Whistles & Bells:
So far we have assumed that in our network flow model it holds that (total) supply equals (total)
demand. In words, this means that there are 100 tons of product available at location 1, and they all
have to be transported to location 3. Let’s now assume that this is not the case. There are then two
possibilities: either supply exceeds demand, or demand exceeds supply.
1) Supply exceeds demand
When total supply exceeds total demand, this changes into “what enters (including supply) is
at least equal to what leaves (including demand)”.
Multi Period models reflect problems in which we have to take decisions related to each of a number
of consecutive time periods. Typically, the conditions under which we have to take a decision in a
given time period are determined by the decisions taken in previous time periods. Multi Period models
are closely related to network flow models. In many cases, they can be directly modelled as a standard
network flow model along the lines of the previous pages. In our flow examples thus far, the nodes
were defined in terms of space; typically, they referred to locations. In Multi Period models, the nodes
are defined in terms of time:
typically, we will have one or several nodes for each period. The outflows from these nodes represent
decisions in the current period, and their implications in current and later periods. The inflows into
these nodes represent decisions in the current period, plus the implications of decisions in previous
periods.