You are on page 1of 4

RO: Exercices Linear Programming, Duality

N. Brauner Université Grenoble Alpes

Exercice 1 : Wines
A cooperative produces Bordeaux red wines from different grape varieties: cabernet franc,
cabernet-sauvignon and merlot. The following table gives the stocks (in hl) of each type
of variety as well as the proportion (in %) and the profit (in =
C per liter) for each wine A
and B.
Cabernet franc Cabernet-sauvignon Merlot Profit
Bordeaux A 30 20 50 7
Bordeaux B 50 10 40 5
Stocks 5 000 1000 4000
What quantities of each wine should be produced to maximize the profit of the cooperative?
Question 1 – Model this problem as a linear program.
The cooperative has to face a collapse in prices of wines. In order to help the cooperative,
the European Union offers to buy the stocks of the cooperative. What is the minimal price,
the EU can offer for each type of variety so that the profit of the cooperative remains the
same?
Question 2 – Model this problem as a linear program.
Question 3 – Indicate the optimal solution of the wine production problem of the cooperative.
Notice that it is not necessary to run a simplex!
Question 4 – What is the optimal solution for the EU problem? How can the linear program
can be simplified by considering the solution of the previous question?

Exercice 2 : The dual and its dual


Consider the following linear program:
max z = 2x1 + 3x2 + 4x3
2x1 + x2 ≤ 3
x3 ≥ 2
3x1 + x2 + x3 ≤ 2
x2 ≤ 1
x1 , x2 , x3 ≥ 0
Question 1 – Write its dual.
Question 2 – Write the dual of the dual. What do you notice?

1
Exercice 3 : Transport
Below is the formulation of a transportation problem with 3 warehouses and 2 clients:

min z = 3x11 + 2x12 + 4x21 + x22 + 2x31 +3x32

s.c. x11 + x12 ≤ 60


x21 + x22 ≤ 50
x31 + x32 ≤ 50
x11 + x21 + x31 = 90
x12 + x22 + x32 = 60

x11 , x12 , x21 , x22 , x31 , x32 ≥ 0

This problem has been put in standard form by introducing slack variables s1 , s2 and s3
in the first 3 constraints and then solved by a software using the simplex method. In the
optimal solution, the basic variables are x11 , x12 , x22 , x31 and s1 .
Question 1 – Write the standard form of the problem as described above.
Question 2 – Use the information given above to calculate the optimal solution and the
corresponding transportation cost (detail the reasoning steps).
Question 3 – Formulate the dual problem.
Question 4 – Solve the dual problem.
Question 5 – Prove that the solution you calculated is indeed optimal.
Question 6 – The administrator of the third warehouse realized that he made a mistake while
evaluating his stocks: he actually has 55 stock units. Supposing the optimal basis is not
affected, what would be the effect of this correction on the optimal transportation cost?

Exercice 4 : Melting furnace (Olivier Briant, C. Rapine)


A metallurgy company uses an electric arc furnace to melt the ore. The power of the
furnace, expressed in Joule per minute is flexible during the melting and has 4 settings: 2
GJ/min, 3 GJ/min, 5 GJ/min and 8 GJ/min. The melting speed, expressed in tons per
minutes depends directly on the electrical power of the chosen setting. It is respectively 3,
4, 6 and 7 tons per minute. The setting may be changed several times during the fusion.
However, to ensure the correct operation of the furnace, the first hour must be done at
setting 1 or 2 in order to heat gradually the sides of the furnace (one can mix both settings
doing for instance 20 min at setting 1 and 40 minutes at setting 2).
The company wants to make 1000 tons of ore in at most 3 hours. The problem is to decide
the use time in each setting of the furnace in order to minimize the energy consumption.
Question 1 – Model this problem as a linear program (P ). Specify the decision variables, the
constraints and explain their meaning.
Question 2 – Write the dual program (D) of (P ).
Question 3 – Show, using the complementary slackness theorem, that the solution y ∗ =
(3, −13, 4) is optimal for (D), and give an optimal solution x∗ of (P ).
Question 4 – Is x∗ the unique optimal solution of (P ) ?
Question 5 – Give an economic interpretation of each of the values of the solution y ∗ of the
dual.

2
The company has a second furnace which is an older model. Its power cannot be adjusted:
it uses 4 GJ to melt one ton of ore. It is sufficiently fast to process 1000 tons in 3 hours.
The company wonders what quantity of ore should be processed in this second furnace
(and which setting should be used in the first furnace for the remaining ore).
Question 6 – How should program (P ) be modified to answer this problem? A decision
variable α could represent the quantity processed in the second furnace.
Question 7 – The second furnace should not be used for less than 150 tons of ore. How can
this constraint be modelled? A binary variable can be used.
Question 8 – The production engineer specifies that the furnace has to spend at least 30
minutes at setting 3 before it can be set to 4. How should this constraint be modeled? A
binary variable equal to 1 if the furnace is set to 4 can be introduced.
Question 9 – Actually, the exact rule to move to setting 4 is the following:

• Either passing at least 30 minutes at setting 3,

• Or, if setting 3 was not used, spend at least 90 minutes at setting 2.

How should this constraint be modelled ?

Exercice 5 : The toy factory (from Olivier Briant)


A toy factory produces four types of toys: A, B C and D, each sold for 53, 56, 62, and 82
=C respectively. Those toys must pass through two workshops, whose maximal capacities
are 1700 and 2600 minutes. The processing times of the four types of toys in the first
workshop are 2, 3, 1, and 3 minutes respectively, and 2, 2, 3, and 4 minutes respectively
in the second workshop .
The four types of toys share a common component delivered by a supplier. The pro-
ducer has enough supplies for exactly 1000 toys. He wants to know which toys should be
produced in order to maximize his profit.
Question 1 – Model this problem as a linear program (P ) (we ignore the fact that the variables
should be integers).
Question 2 – Write the dual program of (P ).
To solve the problem, the producer used a commercial software based on the simplex
algorithm. This software provides the following information on the optimal solution (the
xxx.xxxxxx come from a bad printer output):

Objective = 59500.00000

Rows Section
Number Row Value Slack Value Dual Value
L c1______ 1700.000000 xxx.xxxxxx 3.666667
L c2______ 2600.000000 xxx.xxxxxx 12.666667
E c3______ 1000.000000 xxx.xxxxxx 20.333333

3
Columns Section
Number Column Value Input Cost Reduced Cost
C X1______ 500.000000 53.000000 xxx.xxxxxx
C X2______ xxx.xxxxxx 56.000000 -0.666667
C X3______ 400.000000 62.000000 xxx.xxxxxx
C X4______ xxx.xxxxxx 82.000000 xxx.xxxxxx

Question 3 – Explain the meaning of the the information provided and give, if possible, the
values that should appear instead of xxx.xxxxxx.
Question 4 – Give an economic interpretation of the optimal values of the dual variables.
Disappointed for not producing his favorite toy B, the producer would like to know the
minimum price at which it should be sold in order to be profitable and thus to be able to
include it in his optimal production plan.
Question 5 – In view of the results of the optimization, can you help him answer this question?
Question 6 – Up to which value can he increase or decrease the price of toy A without changing
the optimal solution?
When looking at the solutions given by the software, he has determined the maximum
price he can pay for each additional minute in the first workshop without decreasing his
profit.
Question 7 – What is this minimum price? Up to how many additional minutes will this price
remain valid?
He wants to create a new type of toy E, which needs 9 minutes in the first workshop and
10 minutes in the second one.
Question 8 – At which minimum price should he sell this toy if he wants to incorporate it
among the 1000 produced toys?

Sign table
min max
primal dual
dual primal
variable ≥ 0 constraint ≤
variable ≶ 0 constraint =
variable ≤ 0 constraint ≥
constraint ≤ variable ≤ 0
constraint = variable ≶ 0
constraint ≥ variable ≥ 0

You might also like