properties of linear programming -...
TRANSCRIPT
![Page 1: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/1.jpg)
Properties of linear programming
Dipartimento di Ingegneria Industriale e dell’InformazioneUniversita degli Studi di Pavia
Industrial Automation
(DIS) Properties of linear programming Industrial Automation 1 / 35
![Page 2: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/2.jpg)
Outline
1 Representations of LP problems
2 LP: properties of the feasible regionBasics of convex geometry
3 The graphical solution for two-variable LP problems
4 Properties of linear programming
5 Algorithms for solving LP problems
(DIS) Properties of linear programming Industrial Automation 2 / 35
![Page 3: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/3.jpg)
Outline
1 Representations of LP problems
2 LP: properties of the feasible regionBasics of convex geometry
3 The graphical solution for two-variable LP problems
4 Properties of linear programming
5 Algorithms for solving LP problems
(DIS) Properties of linear programming Industrial Automation 3 / 35
![Page 4: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/4.jpg)
Representations of LP problems
LP in canonical form (LP-C)
minAx≤bx≥0
cTx
Inequality “≤” constraints. Positivity constraints on all variables.
LP in standard form (PL-S)
minAx=bx≥0
cTx
Equality constraints. Positivity constraints on all variables.
LP in generic form
Mixed constraints ≤, ≥, = and/or some variable is not constrained to be positive.
The three forms are equivalent even if the conversion from one form toanother one is possible only changing the number of variables and/orconstraints.
(DIS) Properties of linear programming Industrial Automation 4 / 35
![Page 5: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/5.jpg)
Representations of LP problems
LP in canonical form (LP-C)
minAx≤bx≥0
cTx
Inequality “≤” constraints. Positivity constraints on all variables.
LP in standard form (PL-S)
minAx=bx≥0
cTx
Equality constraints. Positivity constraints on all variables.
LP in generic form
Mixed constraints ≤, ≥, = and/or some variable is not constrained to be positive.
The three forms are equivalent even if the conversion from one form toanother one is possible only changing the number of variables and/orconstraints.
(DIS) Properties of linear programming Industrial Automation 4 / 35
![Page 6: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/6.jpg)
Representations of LP problems
LP in canonical form (LP-C)
minAx≤bx≥0
cTx
Inequality “≤” constraints. Positivity constraints on all variables.
LP in standard form (PL-S)
minAx=bx≥0
cTx
Equality constraints. Positivity constraints on all variables.
LP in generic form
Mixed constraints ≤, ≥, = and/or some variable is not constrained to be positive.
The three forms are equivalent even if the conversion from one form toanother one is possible only changing the number of variables and/orconstraints.
(DIS) Properties of linear programming Industrial Automation 4 / 35
![Page 7: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/7.jpg)
Representations of LP problems
LP in canonical form (LP-C)
minAx≤bx≥0
cTx
Inequality “≤” constraints. Positivity constraints on all variables.
LP in standard form (PL-S)
minAx=bx≥0
cTx
Equality constraints. Positivity constraints on all variables.
LP in generic form
Mixed constraints ≤, ≥, = and/or some variable is not constrained to be positive.
The three forms are equivalent even if the conversion from one form toanother one is possible only changing the number of variables and/orconstraints.
(DIS) Properties of linear programming Industrial Automation 4 / 35
![Page 8: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/8.jpg)
Conversion between constraints
From ≤ to =
aTi x ≤ bi ⇔ ∃si ∈ R :
{aTi x + si = bi
si ≥ 0
The additional variable si is called slack variable
From ≥ to =
aTi x ≥ bi ⇔ ∃si ∈ R :
{aTi x − si = bi
si ≥ 0
The additional variable si is called excess variable
In both cases, a single constraint is replaced by two constraints
(DIS) Properties of linear programming Industrial Automation 5 / 35
![Page 9: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/9.jpg)
Conversion between constraints
From ≤ to =
aTi x ≤ bi ⇔ ∃si ∈ R :
{aTi x + si = bi
si ≥ 0
The additional variable si is called slack variable
From ≥ to =
aTi x ≥ bi ⇔ ∃si ∈ R :
{aTi x − si = bi
si ≥ 0
The additional variable si is called excess variable
In both cases, a single constraint is replaced by two constraints
(DIS) Properties of linear programming Industrial Automation 5 / 35
![Page 10: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/10.jpg)
Conversion between constraints
From ≤ to =
aTi x ≤ bi ⇔ ∃si ∈ R :
{aTi x + si = bi
si ≥ 0
The additional variable si is called slack variable
From ≥ to =
aTi x ≥ bi ⇔ ∃si ∈ R :
{aTi x − si = bi
si ≥ 0
The additional variable si is called excess variable
In both cases, a single constraint is replaced by two constraints
(DIS) Properties of linear programming Industrial Automation 5 / 35
![Page 11: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/11.jpg)
Positivity constraints
Variables without sign constraints
xi ∈ R⇔ ∃x+i , x
−i ∈ R :
xi = x+
i − x−i
x+i ≥ 0
x−i ≥ 0
x+i and x−
i are two new variables representing the positive and negativepart of xi ∈ R, respectivelyThe variable xi is replaced with x+
i − x−i in the whole LP problem and
constraints x+i ≥ 0, x−
i ≥ 0 are added
Variables with sign constraints: from “≤ 0” to “≥ 0”:
xi ≤ 0 −→ ξi ≥ 0
with ξi = −xi that replaces xi in the whole LP problem
(DIS) Properties of linear programming Industrial Automation 6 / 35
![Page 12: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/12.jpg)
Positivity constraints
Variables without sign constraints
xi ∈ R⇔ ∃x+i , x
−i ∈ R :
xi = x+
i − x−i
x+i ≥ 0
x−i ≥ 0
x+i and x−
i are two new variables representing the positive and negativepart of xi ∈ R, respectivelyThe variable xi is replaced with x+
i − x−i in the whole LP problem and
constraints x+i ≥ 0, x−
i ≥ 0 are added
Variables with sign constraints: from “≤ 0” to “≥ 0”:
xi ≤ 0 −→ ξi ≥ 0
with ξi = −xi that replaces xi in the whole LP problem
(DIS) Properties of linear programming Industrial Automation 6 / 35
![Page 13: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/13.jpg)
Example 1
Write the following problem in standard form
maxx
{cTx : Ax = b
}
There is no positivity constraint: we introduce two vectorsx+ ∈ Rn, x− ∈ Rn and substitute x with x+ − x−. We get
maxx+,x−
{cT(x+ − x−) : A(x+ − x−) = b, x+ ≥ 0, x− ≥ 0
}.
Defining ξ =
[x+
x−
]the problem becomes
maxξ
{[cT −cT
]ξ :[A −A
]ξ = b, ξ ≥ 0
}In the conversion process the number of variables doubled
(DIS) Properties of linear programming Industrial Automation 7 / 35
![Page 14: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/14.jpg)
Example 1
Write the following problem in standard form
maxx
{cTx : Ax = b
}There is no positivity constraint: we introduce two vectorsx+ ∈ Rn, x− ∈ Rn and substitute x with x+ − x−. We get
maxx+,x−
{cT(x+ − x−) : A(x+ − x−) = b, x+ ≥ 0, x− ≥ 0
}.
Defining ξ =
[x+
x−
]the problem becomes
maxξ
{[cT −cT
]ξ :[A −A
]ξ = b, ξ ≥ 0
}In the conversion process the number of variables doubled
(DIS) Properties of linear programming Industrial Automation 7 / 35
![Page 15: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/15.jpg)
Example 1
Write the following problem in standard form
maxx
{cTx : Ax = b
}There is no positivity constraint: we introduce two vectorsx+ ∈ Rn, x− ∈ Rn and substitute x with x+ − x−. We get
maxx+,x−
{cT(x+ − x−) : A(x+ − x−) = b, x+ ≥ 0, x− ≥ 0
}.
Defining ξ =
[x+
x−
]the problem becomes
maxξ
{[cT −cT
]ξ :[A −A
]ξ = b, ξ ≥ 0
}In the conversion process the number of variables doubled
(DIS) Properties of linear programming Industrial Automation 7 / 35
![Page 16: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/16.jpg)
Example 2: conversion between canonical and standardforms
From canonical (PL-C) to standard (PL-S) form
maxAx≤bx≥0
cTx −→ max[xs
]{[
c 0] [x
s
]:[A I
] [xs
]= b,
[xs
]≥ 0
}(1)
We introduced the vector of slack variables s ∈ Rn.
From PL-S to PL-C
maxAx=bx≥0
cTx −→ maxx
{cTx :
[A−A
]x ≤
[b−b
], x ≥ 0
}(2)
Meaning of equivalence between the two forms:
In (1): x∗ is optimal for PL-C ⇔ ∃s∗ :
[x∗
s∗
]is optimal for PL-S
In (2): x∗ is optimal for PL-S ⇔ x∗ is optimal for PL-C
(DIS) Properties of linear programming Industrial Automation 8 / 35
![Page 17: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/17.jpg)
Example 2: conversion between canonical and standardforms
From canonical (PL-C) to standard (PL-S) form
maxAx≤bx≥0
cTx −→ max[xs
]{[
c 0] [x
s
]:[A I
] [xs
]= b,
[xs
]≥ 0
}(1)
We introduced the vector of slack variables s ∈ Rn.
From PL-S to PL-C
maxAx=bx≥0
cTx −→ maxx
{cTx :
[A−A
]x ≤
[b−b
], x ≥ 0
}(2)
Meaning of equivalence between the two forms:
In (1): x∗ is optimal for PL-C ⇔ ∃s∗ :
[x∗
s∗
]is optimal for PL-S
In (2): x∗ is optimal for PL-S ⇔ x∗ is optimal for PL-C
(DIS) Properties of linear programming Industrial Automation 8 / 35
![Page 18: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/18.jpg)
Example 2: conversion between canonical and standardforms
From canonical (PL-C) to standard (PL-S) form
maxAx≤bx≥0
cTx −→ max[xs
]{[
c 0] [x
s
]:[A I
] [xs
]= b,
[xs
]≥ 0
}(1)
We introduced the vector of slack variables s ∈ Rn.
From PL-S to PL-C
maxAx=bx≥0
cTx −→ maxx
{cTx :
[A−A
]x ≤
[b−b
], x ≥ 0
}(2)
Meaning of equivalence between the two forms:
In (1): x∗ is optimal for PL-C ⇔ ∃s∗ :
[x∗
s∗
]is optimal for PL-S
In (2): x∗ is optimal for PL-S ⇔ x∗ is optimal for PL-C
(DIS) Properties of linear programming Industrial Automation 8 / 35
![Page 19: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/19.jpg)
Example 3
Write the following problem in canonical form
minx1,x2,x3
c1x1 + c2x2 + c3x3 (3)
a11x1 + a12x2 ≤ b1 (4)
a22x2 + a23x3 ≥ b2 (5)
a31x1 + a32x3 = b3 (6)
x1 ≥ 0 (7)
x2 ≤ 0 (8)
1. Positivity constraints on all variables:
replace x2 with ξ2 = −x2
x3 is not sign constrained: we set x3 = x+3 − x−
3 and add theconstraints x+
3 ≥ 0 e x−3 ≥ 0
(DIS) Properties of linear programming Industrial Automation 9 / 35
![Page 20: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/20.jpg)
Example 3
Write the following problem in canonical form
minx1,x2,x3
c1x1 + c2x2 + c3x3 (3)
a11x1 + a12x2 ≤ b1 (4)
a22x2 + a23x3 ≥ b2 (5)
a31x1 + a32x3 = b3 (6)
x1 ≥ 0 (7)
x2 ≤ 0 (8)
1. Positivity constraints on all variables:
replace x2 with ξ2 = −x2
x3 is not sign constrained: we set x3 = x+3 − x−
3 and add theconstraints x+
3 ≥ 0 e x−3 ≥ 0
(DIS) Properties of linear programming Industrial Automation 9 / 35
![Page 21: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/21.jpg)
Example 3The original problem is now
minx1,ξ2,x
+3 ,x
−3
c1x1 − c2ξ2 + c3x+3 − c3x−
3 (9)
a11x1 − a12ξ2 ≤ b1 (10)
−a22ξ2 + a23x+3 − a23x−
3 ≥ b2 (11)
a31x1 + a32x+3 − a32x−
3 = b3 (12)
x1 ≥ 0 (13)
ξ2 ≥ 0 (14)
x+3 ≥ 0 (15)
x−3 ≥ 0 (16)
2. Constraints ”≤”:
we replace (11) with a22ξ2 − a23x+3 + a23x−
3 ≤ −b2
we replace (12) with a31x1 + a32x+3 − a32x−
3 ≤ b3 and−a31x1 − a32x+
3 + a32x−3 ≤ −b3
(DIS) Properties of linear programming Industrial Automation 10 / 35
![Page 22: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/22.jpg)
Example 3The original problem is now
minx1,ξ2,x
+3 ,x
−3
c1x1 − c2ξ2 + c3x+3 − c3x−
3 (9)
a11x1 − a12ξ2 ≤ b1 (10)
−a22ξ2 + a23x+3 − a23x−
3 ≥ b2 (11)
a31x1 + a32x+3 − a32x−
3 = b3 (12)
x1 ≥ 0 (13)
ξ2 ≥ 0 (14)
x+3 ≥ 0 (15)
x−3 ≥ 0 (16)
2. Constraints ”≤”:
we replace (11) with a22ξ2 − a23x+3 + a23x−
3 ≤ −b2
we replace (12) with a31x1 + a32x+3 − a32x−
3 ≤ b3 and−a31x1 − a32x+
3 + a32x−3 ≤ −b3
(DIS) Properties of linear programming Industrial Automation 10 / 35
![Page 23: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/23.jpg)
Example 3
The LP problem is now in canonical form
minx1,ξ2,x
+3 ,x
−3
c1x1 − c2ξ2 + c3x+3 − c3x−
3 (17)
a11x1 − a12ξ2 ≤ b1 (18)
+a22ξ2 − a23x+3 + a23x−
3 ≤ −b2 (19)
a31x1 + a32x+3 − a32x−
3 ≤ b3 (20)
−a31x1 − a32x+3 + a32x−
3 ≤ −b3 (21)
x1 ≥ 0 (22)
ξ2 ≥ 0 (23)
x+3 ≥ 0 (24)
x−3 ≥ 0 (25)
(DIS) Properties of linear programming Industrial Automation 11 / 35
![Page 24: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/24.jpg)
Example 3 - matrix notationWe define x =
[x1 ξ2 x+
3 x−3
]Tand obtain
minAx≤bx≥0
[c1 −c2 c3 −c3
]x (26)
A =
a11 −a12 0 00 a22 −a23 +a23
a31 0 a32 −a32
−a31 0 −a32 +a32
b =
b1
−b2
b3
−b3
Meaning of equivalence between different forms
If x∗ =[x∗
1 ξ∗2(x+
3
)∗ (x−
3
)∗]is the optimal solution to (26) and[
x1 x2 x3
]is the optimal solution to the original problem, it holds
x1 = x∗1
x2 = −ξ∗2x3 =
(x+
3
)∗ − (x−3
)∗
(DIS) Properties of linear programming Industrial Automation 12 / 35
![Page 25: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/25.jpg)
Example 3 - matrix notationWe define x =
[x1 ξ2 x+
3 x−3
]Tand obtain
minAx≤bx≥0
[c1 −c2 c3 −c3
]x (26)
A =
a11 −a12 0 00 a22 −a23 +a23
a31 0 a32 −a32
−a31 0 −a32 +a32
b =
b1
−b2
b3
−b3
Meaning of equivalence between different forms
If x∗ =[x∗
1 ξ∗2(x+
3
)∗ (x−
3
)∗]is the optimal solution to (26) and[
x1 x2 x3
]is the optimal solution to the original problem, it holds
x1 = x∗1
x2 = −ξ∗2x3 =
(x+
3
)∗ − (x−3
)∗(DIS) Properties of linear programming Industrial Automation 12 / 35
![Page 26: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/26.jpg)
Outline
1 Representations of LP problems
2 LP: properties of the feasible regionBasics of convex geometry
3 The graphical solution for two-variable LP problems
4 Properties of linear programming
5 Algorithms for solving LP problems
(DIS) Properties of linear programming Industrial Automation 13 / 35
![Page 27: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/27.jpg)
Convex geometry
Hyperplane
The set H ={
x ∈ Rn : aTx = b}
with a ∈ Rn, a 6= 0, b ∈ R is calledhyperplane in Rn. The boundary of the closed half-spaces
H− ={
x ∈ Rn : aTx ≤ b}
H+ ={
x ∈ Rn : aTx ≥ b}
is the supporting hyperplane H
0 x1
x2H
H+
H−
(DIS) Properties of linear programming Industrial Automation 14 / 35
![Page 28: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/28.jpg)
Convex geometry
Polyhedra and polytopes
A polyhedron in Rn is theintersections of a finite andstrictily positive number ofhalf-spaces in Rn.
- If K is a polyhedron, ∃A, b ofsuitable dimensions such thatK = {x ∈ Rn : Ax ≤ b}.
- If K is bounded, it is calledpolytope.
0 x1
x2
0 x1
x2
0 x1
x2
0 x1
x2
K
A polytope is a closed and convex set
The feasible region of an LP problem is a polyhedron
(DIS) Properties of linear programming Industrial Automation 15 / 35
![Page 29: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/29.jpg)
Convex geometry
Polyhedra and polytopes
A polyhedron in Rn is theintersections of a finite andstrictily positive number ofhalf-spaces in Rn.
- If K is a polyhedron, ∃A, b ofsuitable dimensions such thatK = {x ∈ Rn : Ax ≤ b}.
- If K is bounded, it is calledpolytope.
0 x1
x2
0 x1
x2
0 x1
x2
0 x1
x2
K
A polytope is a closed and convex set
The feasible region of an LP problem is a polyhedron
(DIS) Properties of linear programming Industrial Automation 15 / 35
![Page 30: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/30.jpg)
Convex geometry
Polyhedra and polytopes
A polyhedron in Rn is theintersections of a finite andstrictily positive number ofhalf-spaces in Rn.
- If K is a polyhedron, ∃A, b ofsuitable dimensions such thatK = {x ∈ Rn : Ax ≤ b}.
- If K is bounded, it is calledpolytope.
0 x1
x2
0 x1
x2
0 x1
x2
0 x1
x2
K
A polytope is a closed and convex set
The feasible region of an LP problem is a polyhedron
(DIS) Properties of linear programming Industrial Automation 15 / 35
![Page 31: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/31.jpg)
Convex geometry
Remarks
The pair (A, b) defining the polyhedron K = {x ∈ Rn : Ax ≤ b} is notunique.
If A and b coincide with A and b up to a row permutation, then(A, b) defines K
(αA, αb), α > 0 defines K
A constraint in Ax ≤ b is redundant if K does not change whenremoved. If redundant constraints are added to or removed formthose defining K , one gets a new pair (A, b) that still defines K
0 x1
x2
K
V
(DIS) Properties of linear programming Industrial Automation 16 / 35
![Page 32: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/32.jpg)
Convex geometry
Remarks
The pair (A, b) defining the polyhedron K = {x ∈ Rn : Ax ≤ b} is notunique.
If A and b coincide with A and b up to a row permutation, then(A, b) defines K
(αA, αb), α > 0 defines K
A constraint in Ax ≤ b is redundant if K does not change whenremoved. If redundant constraints are added to or removed formthose defining K , one gets a new pair (A, b) that still defines K
0 x1
x2
K
V
(DIS) Properties of linear programming Industrial Automation 16 / 35
![Page 33: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/33.jpg)
Convex geometry
Remarks
The pair (A, b) defining the polyhedron K = {x ∈ Rn : Ax ≤ b} is notunique.
If A and b coincide with A and b up to a row permutation, then(A, b) defines K
(αA, αb), α > 0 defines K
A constraint in Ax ≤ b is redundant if K does not change whenremoved. If redundant constraints are added to or removed formthose defining K , one gets a new pair (A, b) that still defines K
0 x1
x2
K
V
(DIS) Properties of linear programming Industrial Automation 16 / 35
![Page 34: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/34.jpg)
Convex geometry
Remarks
The pair (A, b) defining the polyhedron K = {x ∈ Rn : Ax ≤ b} is notunique.
If A and b coincide with A and b up to a row permutation, then(A, b) defines K
(αA, αb), α > 0 defines K
A constraint in Ax ≤ b is redundant if K does not change whenremoved. If redundant constraints are added to or removed formthose defining K , one gets a new pair (A, b) that still defines K
0 x1
x2
K
V
(DIS) Properties of linear programming Industrial Automation 16 / 35
![Page 35: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/35.jpg)
Convex geometry
Remarks
The empty set is a polyhedron ...
0 x1
x2
1 2 3 4 5 6
1
2
3
-1-1
... it is also a polytope
Rn is not a polyhedron
(DIS) Properties of linear programming Industrial Automation 17 / 35
![Page 36: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/36.jpg)
Convex geometry
Remarks
The empty set is a polyhedron ...
0 x1
x2
1 2 3 4 5 6
1
2
3
-1-1
... it is also a polytope
Rn is not a polyhedron
(DIS) Properties of linear programming Industrial Automation 17 / 35
![Page 37: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/37.jpg)
Convex geometry
Remarks
The empty set is a polyhedron ...
0 x1
x2
1 2 3 4 5 6
1
2
3
-1-1
... it is also a polytope
Rn is not a polyhedron
(DIS) Properties of linear programming Industrial Automation 17 / 35
![Page 38: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/38.jpg)
Convex geometry
Remarks
The empty set is a polyhedron ...
0 x1
x2
1 2 3 4 5 6
1
2
3
-1-1
... it is also a polytope
Rn is not a polyhedron
(DIS) Properties of linear programming Industrial Automation 17 / 35
![Page 39: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/39.jpg)
Convex geometry
Extreme points
Let S ⊆ Rn be a convex set. A point z ∈ S is called extreme point if thereare not two points x , y ∈ S different from z , such that z belongs to thesegment xy .
0 x1
x2
0 x1
x2
0 x1
x2
(DIS) Properties of linear programming Industrial Automation 18 / 35
![Page 40: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/40.jpg)
Convex geometry
Definition
Let K ⊂ Rn be a polyhedron. Then
its extreme points are called vertices
the intersection of K with one or more supporting hyperplanes iscalled face
faces of dimension 1 are called edges. Faces of dimension n − 1 arecalled facets or maximal faces.
0 x1
x2
x3
maximal face
vertex
edge
(DIS) Properties of linear programming Industrial Automation 19 / 35
![Page 41: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/41.jpg)
Convex geometry
Theorem
A polyhedron has a finite numbera of vertices.
aIt can be zero.
Representations of a polytope
Definition
The point z ∈ Rn is a convex combination of k points x1, x2, . . . , xk if∃λ1, λ2, . . . , λk ≥ 0 verifying
∑ki=1 λi = 1 and such that
z =k∑
i=1
λkxk (27)
A segment xy is the set of the convex combinations of x and y .
(DIS) Properties of linear programming Industrial Automation 20 / 35
![Page 42: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/42.jpg)
Convex geometry
Theorem
A polyhedron has a finite numbera of vertices.
aIt can be zero.
Representations of a polytope
Definition
The point z ∈ Rn is a convex combination of k points x1, x2, . . . , xk if∃λ1, λ2, . . . , λk ≥ 0 verifying
∑ki=1 λi = 1 and such that
z =k∑
i=1
λkxk (27)
A segment xy is the set of the convex combinations of x and y .
(DIS) Properties of linear programming Industrial Automation 20 / 35
![Page 43: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/43.jpg)
Convex geometry
Minkowski-Weyl theorem
Let P be a polytope. Then, a point x ∈ P is a convex combination of thevertices of P
Example
0 x1
x2
p1 p2
p3
x
All points x of the triangle can be written as x =∑3
i=1 λipi for suitableλi ≥ 0 such that λ1 + λ2 + λ3 = 1
Remark
The theorem does not hold for generic polyhedra (think about a cone ...)
(DIS) Properties of linear programming Industrial Automation 21 / 35
![Page 44: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/44.jpg)
Convex geometry
Minkowski-Weyl theorem
Let P be a polytope. Then, a point x ∈ P is a convex combination of thevertices of P
Example
0 x1
x2
p1 p2
p3
x
All points x of the triangle can be written as x =∑3
i=1 λipi for suitableλi ≥ 0 such that λ1 + λ2 + λ3 = 1
Remark
The theorem does not hold for generic polyhedra (think about a cone ...)
(DIS) Properties of linear programming Industrial Automation 21 / 35
![Page 45: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/45.jpg)
Convex geometry
Minkowski-Weyl theorem
Let P be a polytope. Then, a point x ∈ P is a convex combination of thevertices of P
Example
0 x1
x2
p1 p2
p3
x
All points x of the triangle can be written as x =∑3
i=1 λipi for suitableλi ≥ 0 such that λ1 + λ2 + λ3 = 1
Remark
The theorem does not hold for generic polyhedra (think about a cone ...)
(DIS) Properties of linear programming Industrial Automation 21 / 35
![Page 46: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/46.jpg)
Outline
1 Representations of LP problems
2 LP: properties of the feasible regionBasics of convex geometry
3 The graphical solution for two-variable LP problems
4 Properties of linear programming
5 Algorithms for solving LP problems
(DIS) Properties of linear programming Industrial Automation 22 / 35
![Page 47: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/47.jpg)
The graphical solution for two-variable LP problems
The feasible region and optimal solution of LP problems with only twovariables x = [x1, x2]T can be represented graphically.
Isocost lines
Given a level α ∈ R the level surface of the cost is
Cα[cTx
]={
x ∈ R2 : cTx = α}.
For different values of α one gets parallel lines called isocost lines
(DIS) Properties of linear programming Industrial Automation 23 / 35
![Page 48: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/48.jpg)
Example 1
Product mix
maxM1,M2
30M1 + 20M2
8M1 + 4M2 ≤ 640 (28)
4M1 + 6M2 ≤ 540 (29)
M1 + M2 ≤ 100 (30)
M1,M2 ≥ 0. (31)0 M1
M2
20 40 60 80 100 120 140
20
40
60
80
100
120
140
160
(30) (29)(28)(31)
Feasible region = hatched area
(DIS) Properties of linear programming Industrial Automation 24 / 35
![Page 49: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/49.jpg)
Example 1
Product mix
maxM1,M2
30M1 + 20M2
8M1 + 4M2 ≤ 640 (28)
4M1 + 6M2 ≤ 540 (29)
M1 + M2 ≤ 100 (30)
M1,M2 ≥ 0. (31)0 M1
M2
20 40 60 80 100 120 140
20
40
60
80
100
120
140
160
(30) (29)(28)(31)
C2600
Isocost lines: Cα [30M1 + 20M2] : M2 = α20 −
3020 M1
E.g. α = 1800 → line passing through (0, 90) and (60, 0)
(DIS) Properties of linear programming Industrial Automation 24 / 35
![Page 50: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/50.jpg)
Example 1
Product mix
maxM1,M2
30M1 + 20M2
8M1 + 4M2 ≤ 640 (28)
4M1 + 6M2 ≤ 540 (29)
M1 + M2 ≤ 100 (30)
M1,M2 ≥ 0. (31)0 M1
M2
20 40 60 80 100 120 140
20
40
60
80
100
120
140
160
(30) (29)(28)(31)
C2600
As α increases, isocost lines move in the arrow direction
(DIS) Properties of linear programming Industrial Automation 24 / 35
![Page 51: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/51.jpg)
Example 1
Product mix
maxM1,M2
30M1 + 20M2
8M1 + 4M2 ≤ 640 (28)
4M1 + 6M2 ≤ 540 (29)
M1 + M2 ≤ 100 (30)
M1,M2 ≥ 0. (31)0 M1
M2
20 40 60 80 100 120 140
20
40
60
80
100
120
140
160
(30) (29)(28)(31)
C2600
The optimal solution is (60, 40) and it is given by C2600: for greater valuesof α, the isocost line does not intersect the feasible region.The optimal solution is a vertex of the feasible region
(DIS) Properties of linear programming Industrial Automation 24 / 35
![Page 52: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/52.jpg)
Example 2
Diet problem
minA1,A2
20A1 + 30A2
A1 ≥ 2 (32)
2A1 + A2 ≥ 12 (33)
2A1 + 5A2 ≥ 36 (34)
A2 ≥ 4 (35)
A1,A2 ≥ 0. (36) 0 A1
A2
2 4 6 8 10 12 14
2
4
6
8
10
12
14
16
16 18 20
(35)
(33) (34)
(32)
(36)
Feasible region = hatched area
(DIS) Properties of linear programming Industrial Automation 25 / 35
![Page 53: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/53.jpg)
Example 2
Diet problem
minA1,A2
20A1 + 30A2
A1 ≥ 2 (32)
2A1 + A2 ≥ 12 (33)
2A1 + 5A2 ≥ 36 (34)
A2 ≥ 4 (35)
A1,A2 ≥ 0. (36) 0 A1
A2
2 4 6 8 10 12 14
2
4
6
8
10
12
14
16
16 18 20
(35)
(33) (34)
(32)
(36)
Isocost lines: Cα [20A1 + 30A2] : A2 = − 2030 A1 + α
30
(DIS) Properties of linear programming Industrial Automation 25 / 35
![Page 54: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/54.jpg)
Example 2
Diet problem
minA1,A2
20A1 + 30A2
A1 ≥ 2 (32)
2A1 + A2 ≥ 12 (33)
2A1 + 5A2 ≥ 36 (34)
A2 ≥ 4 (35)
A1,A2 ≥ 0. (36) 0 A1
A2
2 4 6 8 10 12 14
2
4
6
8
10
12
14
16
16 18 20
(35)
(33) (34)
(32)
(36)
As α decreases, isocost lines move in the arrow direction
(DIS) Properties of linear programming Industrial Automation 25 / 35
![Page 55: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/55.jpg)
Example 2
Diet problem
minA1,A2
20A1 + 30A2
A1 ≥ 2 (32)
2A1 + A2 ≥ 12 (33)
2A1 + 5A2 ≥ 36 (34)
A2 ≥ 4 (35)
A1,A2 ≥ 0. (36) 0 A1
A2
2 4 6 8 10 12 14
2
4
6
8
10
12
14
16
16 18 20
(35)
(33) (34)
(32)
(36)
The optimal solution is (3, 6) and it is given by C240.The optimal solution is a vertex of the feasible region
(DIS) Properties of linear programming Industrial Automation 25 / 35
![Page 56: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/56.jpg)
Example: multiple solutions
LP problem
maxx1,x2
30x1 + 30x2
x2 ≤ 80 (37)
x1 ≤ 60 (38)
x1 + x2 ≤ 100 (39)
x1, x2 ≥ 0. (40)0 x1
x2
20 40 60 80 100 120
20
40
60
80
100
120
SC6000
(37)
(38)
(39)(40)
Feasible region = hatched area
(DIS) Properties of linear programming Industrial Automation 26 / 35
![Page 57: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/57.jpg)
Example: multiple solutions
LP problem
maxx1,x2
30x1 + 30x2
x2 ≤ 80 (37)
x1 ≤ 60 (38)
x1 + x2 ≤ 100 (39)
x1, x2 ≥ 0. (40)0 x1
x2
20 40 60 80 100 120
20
40
60
80
100
120
SC6000
(37)
(38)
(39)(40)
Isocost lines: Cα [30x1 + 30x2] : x2 = −x1 + α30
(DIS) Properties of linear programming Industrial Automation 26 / 35
![Page 58: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/58.jpg)
Example: multiple solutions
LP problem
maxx1,x2
30x1 + 30x2
x2 ≤ 80 (37)
x1 ≤ 60 (38)
x1 + x2 ≤ 100 (39)
x1, x2 ≥ 0. (40)0 x1
x2
20 40 60 80 100 120
20
40
60
80
100
120
SC6000
(37)
(38)
(39)(40)
As α decreases, isocost lines move in the arrow direction
(DIS) Properties of linear programming Industrial Automation 26 / 35
![Page 59: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/59.jpg)
Example: multiple solutions
LP problem
maxx1,x2
30x1 + 30x2
x2 ≤ 80 (37)
x1 ≤ 60 (38)
x1 + x2 ≤ 100 (39)
x1, x2 ≥ 0. (40)0 x1
x2
20 40 60 80 100 120
20
40
60
80
100
120
SC6000
(37)
(38)
(39)(40)
The optimal isocost line is C6000 and intersects the face S of the feasibleregion: ∀x ∈ S is an optimal solution.There exists at least an optimal solution that is a vertex of the feasibleregion
(DIS) Properties of linear programming Industrial Automation 26 / 35
![Page 60: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/60.jpg)
Example: unbounded problem
LP problem
maxx1,x2
x1 + 2x2
x2 ≤ 1 (41)
−x1 − x2 ≤ −2 (42)
x1, x2 ≥ 0. (43)0 x1
x2
1 2 3 4 5 6
1
2
3
(41)
(42)(43)
Feasible region = hatched area
(DIS) Properties of linear programming Industrial Automation 27 / 35
![Page 61: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/61.jpg)
Example: unbounded problem
LP problem
maxx1,x2
x1 + 2x2
x2 ≤ 1 (41)
−x1 − x2 ≤ −2 (42)
x1, x2 ≥ 0. (43)0 x1
x2
1 2 3 4 5 6
1
2
3
(41)
(42)(43)
Isocost lines: Cα [x1 + 2x2] : x2 = − 12 x1 + α
2
As α increases, isocos lines move in the arrow direction
(DIS) Properties of linear programming Industrial Automation 27 / 35
![Page 62: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/62.jpg)
Example: unbounded problem
LP problem
maxx1,x2
x1 + 2x2
x2 ≤ 1 (41)
−x1 − x2 ≤ −2 (42)
x1, x2 ≥ 0. (43)0 x1
x2
1 2 3 4 5 6
1
2
3
(41)
(42)(43)
The cost can grow unbounded: ∀α > 0 the isocost line Cα [x1 + 2x2]intersects the feasible region.
The LP problem is unbounded
(DIS) Properties of linear programming Industrial Automation 27 / 35
![Page 63: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/63.jpg)
Example: unbounded problem
LP problem
maxx1,x2
x1 + 2x2
x2 ≤ 1 (41)
−x1 − x2 ≤ −2 (42)
x1, x2 ≥ 0. (43)0 x1
x2
1 2 3 4 5 6
1
2
3
(41)
(42)(43)
Unboundedness is often due to modeling errors.One would automatically detect it, especially when the number of variablesis high.
(DIS) Properties of linear programming Industrial Automation 27 / 35
![Page 64: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/64.jpg)
Example: infeasible problem
LP problem
maxx1,x2
x1 + x2
−x1 + 2x2 ≤ −1 (44)
x1 − x2 ≤ −1 (45)
x1, x2 ≥ 0. (46)
0 x1
x2
1 2 3 4 5 6
1
2
3
(44)
(45)
(46)
-1-1
The feasibility region is empty → infeasible problem
(DIS) Properties of linear programming Industrial Automation 28 / 35
![Page 65: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/65.jpg)
Example: infeasible problem
LP problem
maxx1,x2
x1 + x2
−x1 + 2x2 ≤ −1 (44)
x1 − x2 ≤ −1 (45)
x1, x2 ≥ 0. (46)
0 x1
x2
1 2 3 4 5 6
1
2
3
(44)
(45)
(46)
-1-1
Infeasibility is often due to modelling errors.One would automatically detect it, especially when the number of variablesis high.
(DIS) Properties of linear programming Industrial Automation 28 / 35
![Page 66: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/66.jpg)
Outline
1 Representations of LP problems
2 LP: properties of the feasible regionBasics of convex geometry
3 The graphical solution for two-variable LP problems
4 Properties of linear programming
5 Algorithms for solving LP problems
(DIS) Properties of linear programming Industrial Automation 29 / 35
![Page 67: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/67.jpg)
Properties of linear programming
Fundamental theorem of linear programming
Let{
max cTx : x ∈ X}
be an LP problem where X is a polyhedron andx ∈ Rn. If the problem is feasible, then only one of the following is true:
1 the problem is unbounded;
2 there is at least a vertex of X that is an optimal solution.
Corollary
If X is a nonempty polytope,then there is a vertex of Xthat is an optimal solution 0 x1
x2
x3
v
(DIS) Properties of linear programming Industrial Automation 30 / 35
![Page 68: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/68.jpg)
Properties of linear programming
Proof of the corollary
Let x1, x2, . . . , xk be vertices of P (their number is finite) andz∗ = max
{cTxi , i = 1, 2, . . . , k
}(maximum of vertex costs).
We want to show that ∀y ∈ P one has cTy ≤ z∗.
From Minkowski-Weyl theorem:y ∈ P ⇒ ∃λ1, λ2, . . . , λk ≥ 0 :
∑ki=1 λi = 1 and y =
∑ki=1 λixi .
Then
cTy = cTk∑
i=1
λixi =k∑
i=1
λi(cTxi
)≤
k∑i=1
λi︸ ︷︷ ︸=1
z∗ = z∗.
(DIS) Properties of linear programming Industrial Automation 31 / 35
![Page 69: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/69.jpg)
Properties of linear programming
Proof of the corollary
Let x1, x2, . . . , xk be vertices of P (their number is finite) andz∗ = max
{cTxi , i = 1, 2, . . . , k
}(maximum of vertex costs).
We want to show that ∀y ∈ P one has cTy ≤ z∗.
From Minkowski-Weyl theorem:y ∈ P ⇒ ∃λ1, λ2, . . . , λk ≥ 0 :
∑ki=1 λi = 1 and y =
∑ki=1 λixi .
Then
cTy = cTk∑
i=1
λixi =k∑
i=1
λi(cTxi
)≤
k∑i=1
λi︸ ︷︷ ︸=1
z∗ = z∗.
(DIS) Properties of linear programming Industrial Automation 31 / 35
![Page 70: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/70.jpg)
Properties of linear programming
Proof of the corollary
Let x1, x2, . . . , xk be vertices of P (their number is finite) andz∗ = max
{cTxi , i = 1, 2, . . . , k
}(maximum of vertex costs).
We want to show that ∀y ∈ P one has cTy ≤ z∗.
From Minkowski-Weyl theorem:y ∈ P ⇒ ∃λ1, λ2, . . . , λk ≥ 0 :
∑ki=1 λi = 1 and y =
∑ki=1 λixi .
Then
cTy = cTk∑
i=1
λixi =k∑
i=1
λi(cTxi
)≤
k∑i=1
λi︸ ︷︷ ︸=1
z∗ = z∗.
(DIS) Properties of linear programming Industrial Automation 31 / 35
![Page 71: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/71.jpg)
Outline
1 Representations of LP problems
2 LP: properties of the feasible regionBasics of convex geometry
3 The graphical solution for two-variable LP problems
4 Properties of linear programming
5 Algorithms for solving LP problems
(DIS) Properties of linear programming Industrial Automation 32 / 35
![Page 72: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/72.jpg)
Algorithms for solving LP problems
Vertex enumeration
If an LP problem is feasible and bounded one can
compute all vertices x1, x2, . . . , xk of X
compute zi = cTxi , i = 1, 2, . . . , k (cost of vertices)
and obtain an optimal solution as xk : cTxk = max {z1, z2, . . . , zk}
The number of vertices of the feasible region can grow exponentially withn → computationally prohibitiveExample: let X be an hypercube
n X N. of vertices2 square 22 = 43 cube 23 = 81000 ipercube 21000 ' 10300
If the computation of a vertex
requires 10−9 s, when n = 1000
the computation time is greater
than 1030010−9 = 10291 s > 10281
centuries
(DIS) Properties of linear programming Industrial Automation 33 / 35
![Page 73: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/73.jpg)
Algorithms for solving LP problems
Vertex enumeration
If an LP problem is feasible and bounded one can
compute all vertices x1, x2, . . . , xk of X
compute zi = cTxi , i = 1, 2, . . . , k (cost of vertices)
and obtain an optimal solution as xk : cTxk = max {z1, z2, . . . , zk}
The number of vertices of the feasible region can grow exponentially withn → computationally prohibitiveExample: let X be an hypercube
n X N. of vertices2 square 22 = 43 cube 23 = 81000 ipercube 21000 ' 10300
If the computation of a vertex
requires 10−9 s, when n = 1000
the computation time is greater
than 1030010−9 = 10291 s > 10281
centuries
(DIS) Properties of linear programming Industrial Automation 33 / 35
![Page 74: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/74.jpg)
Efficient algorithms for linear programming
Simplex algorithm
Developed by G. Dantzig in 1947
iterative procedure for generating vertices of X with decreasing cost(for miminization problems) and for assessing their optimality.
I m constraints and n variables: → maximal number of vertices(nm
)= n!
m!(n−m)!I in the worst case the complexity of the method is exponential in the
dimension of the LP problemI ”on average” the method is numerically robust and much more
efficient than vertex enumeration.
infeasibility and unboundedness of the LP problem are automaticallydetected
(DIS) Properties of linear programming Industrial Automation 34 / 35
![Page 75: Properties of linear programming - unipvsisdin.unipv.it/labsisdin/teaching/courses/ails/files/3...Properties of linear programming Dipartimento di Ingegneria Industriale e dell’Informazione](https://reader033.vdocuments.site/reader033/viewer/2022041913/5e6841109c8cfb2a2b0e23f5/html5/thumbnails/75.jpg)
Efficient algorithms for linear programming
Interior point method
Developed by N. Karmarkar in 1984
iterative procedure that generates a sequence of points lying in theinterior of X and convergings to an optimal vertex
I Convergence to an optimal solution requires a computational time thatgrows polynomially with the number of variables and constraints of theLP problem
I for large-scale LP problems, it can be much more efficient than thesimplex algorithm
infeasibility and unboundedness of the LP problem are automaticallydetected
(DIS) Properties of linear programming Industrial Automation 35 / 35