Académique Documents
Professionnel Documents
Culture Documents
MTH8415
H2020
(v2)
Plan
2. Exemples d’applications
3. Solveurs
Références
2. Exemples d’applications
3. Solveurs
Références
On cherche à résoudre
min {f (x) : x ∈ Ω}
x∈Rn
I Contraintes linéaires
Optimisation quadratique
I Cas particulier de l’optimisation non linéaire sous contraintes
linéaires
I Contraintes linéaires
I Très utile car une approche pour résoudre le cas avec objectif
quelconque consiste à optimiser une série d’approximations
quadratiques (algorithme SQP)
2. Exemples d’applications
3. Solveurs
Références
−1
NP q q
h
min 2 xi 1 + u2i + xi+1 1 + u2i+1
x∈RN +1 i=0
u∈RN +1
N −1 q
q
h P
1 + u2i + 1 + u2i+1 = L
2 i=0
s.c. x0 = a
x =b
N
xi+1 − xi = h2 (ui + ui+1 ) i = 0, 1, . . . , N − 1
minimize potential_energy:
0.5*h*sum {i in 0..nh-1} (x[i]*sqrt(1+u[i]^2)+x[i+1]*sqrt(1+u[i+1]^2));
subject to length_eqn:
0.5*h*sum {i in 0..nh-1} (sqrt(1+u[i]^2) + sqrt(1+u[i+1]^2)) = L;
# Boundary conditions:
subject to x_bc1: x[0] = a;
subject to x_bc2: x[nh] = b;
data;
param nh := 150;
param L := 4;
param a := 1;
param b := 3;
param tf := 1.0;
# Initial values
N Énergie N=1
1 9.914854211 3.5
3
2 5.814021761
2.5
3 5.307642512 2
5 5.182533729 1.5
10 5.109896785 1
0.5
50 5.072261493
0
150 5.069171019 1 2
N Énergie N=2
1 9.914854211 3.5
3
2 5.814021761
2.5
3 5.307642512 2
5 5.182533729 1.5
10 5.109896785 1
0.5
50 5.072261493
0
150 5.069171019 1 2 3
N Énergie N=3
1 9.914854211 3.5
3
2 5.814021761
2.5
3 5.307642512 2
5 5.182533729 1.5
10 5.109896785 1
0.5
50 5.072261493
0
150 5.069171019 1 2 3 4
N Énergie N=5
1 9.914854211 3.5
3
2 5.814021761
2.5
3 5.307642512 2
5 5.182533729 1.5
10 5.109896785 1
0.5
50 5.072261493
0
150 5.069171019 1 2 3 4 5 6
N Énergie N=10
1 9.914854211 3.5
3
2 5.814021761
2.5
3 5.307642512 2
5 5.182533729 1.5
10 5.109896785 1
0.5
50 5.072261493
0
150 5.069171019 1 2 3 4 5 6 7 8 9 10 11
N Énergie N=50
1 9.914854211 3.5
3
2 5.814021761
2.5
3 5.307642512 2
5 5.182533729 1.5
10 5.109896785 1
0.5
50 5.072261493
0
150 5.069171019 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51
N Énergie N=150
1 9.914854211 3.5
3
2 5.814021761
2.5
3 5.307642512 2
5 5.182533729 1.5
10 5.109896785 1
0.5
50 5.072261493 0
150 5.069171019
103
109
115
121
127
133
139
145
151
1
7
13
19
25
31
37
43
49
55
61
67
73
79
85
91
97
I N = 6 : Hexagone de Graham
I N = 8 : Petit octogone de Hansen
I N ≥ 14 : Ouvert
maximize polygon_area:
0.5*sum{i in 1..N-1} r[i+1]*r[i]*sin(theta[i+1] - theta[i]);
data;
# Number of vertices
param N := 8;
# Initial values
120 60
0.8
0.6
150 30
0.4
0.2
180 0 0
120 60
0.8
0.6
150 30
0.4
0.2
180 0 0
120 60
0.8
0.6
150 30
0.4
0.2
180 0 0
-
x21
P
F1 HPPP * B1
>
JH P y11
H PP
J H PP x31 y21
JH j P PP
H
1 x
7
1
P P P 12
J @ PP PP
J PPP q
@ y12
q
P B2
F2
@
J y
1
22
PP J
HHP @
PPJ @
q
P^ P2 H
H
@y13
H
H
H *
HH
HH y@ R
23
j B3
HH HH
F3 HH x23 -
Feed Price Supply Pool capacity Blend Price Demand Arc ×102 bbl
DM/bbl ×102 bbl ×102 bbl DM/bbl min ×102 bbl max
F1 49.2 60.9756 P1 12.5 B1 190 5 x12 7.5
F2 62.0 161.29 P2 17.5 B2 230 5 x31 7.5
F3 300.0 5 B3 150 5
Pooling : Notations
Feeds Fi Réservoirs initiaux (brut)
Pools Pj Réservoirs intermédiaires
Blends Bk Réservoirs finaux (mélanges)
nF , nP , nB , nA nombre de feeds, pools, blends et de qualités
X ensemble d’indices {(i, k) : arc entre Fi et Bk }
W ensemble d’indices {(i, j) : arc entre Fi et Pj }
Y ensemble d’indices {(j, k) :arc entre Pj et Bk }
pF
i , pk
B
prix du feed i et blend k
`i , uF
F
i bornes sur la capacité du feed i
`B
k , uk
B
bornes sur la demande du blend k
`ik , uF
FB
ik
B
bornes sur la capacité de l’arc (i, k) ∈ X
P P
`j , uj bornes sur la capacité du pool j
`F P
ij , uij
FP
bornes sur la capacité de l’arc (i, j) ∈ W
`jk , uP
PB
jk
B
bornes sur la capacité de l’arc (j, k) ∈ Y
a
si qualité de l’attribut a au feed i
`ak , uak bornes sur la qualité de l’attribut a au blend k
2. Exemples d’applications
3. Solveurs
Références
Solveurs
I AMPL, version en ligne :
http://ampl.com/cgi-bin/ampl/amplcgi
I Solvers ONL dans AMPL en ligne : LANCELOT, LOQO,
MINOS, SNOPT
I Alternative à AMPL : GAMS, AIMMS
I Solveur ONL : IPOPT [Wächter and Biegler, 2006]
https://projects.coin-or.org/Ipopt
I Collection de solveurs : COIN-OR https://www.coin-or.org
I Collection de solveurs :
OPTI-Toolbox [Currie and Wilson, 2012]
https://www.inverseproblem.co.nz/OPTI/index.php
I Decision tree for optimization software :
http://plato.asu.edu/guide.html
MTH8415: Optimisation non linéaire: Applications 39/41
Types de problèmes Applications Solveurs Références
2. Exemples d’applications
3. Solveurs
Références
Références I
Audet, C., Brimberg, J., Hansen, P., Le Digabel, S., and Mladenović, N. (2004).
Pooling Problem : Alternate Formulations and Solution Methods.
Management Science, 50(6) :761–776.
Orban, D. (2010).
Numerical Methods for Nonlinear Optimization and Optimal Control, notes du cours MTH8408.