Controlul predictiv bazat pe modele int rare -stare -ie...
Embed Size (px)
Transcript of Controlul predictiv bazat pe modele int rare -stare -ie...

Modelare si control predictivModelare si control predictivModelare si control predictivModelare si control predictiv
- proiect -- proiect -- proiect -
Controlul predictiv bazat pe Controlul predictiv bazat pe Controlul predictiv bazat pe
modele intrare-stare-iesiremodele intrare-stare-iesiremodele intrare-stare-iesire
Asist. ing. Constantin Florin Caruntu Asist. ing. Constantin Florin Caruntu

Controlul predictiv bazat pe 10.01.2012 Controlul predictiv bazat pe
modele intare-stare-iesireCuprins
10.01.2012
23:02modele intare-stare-iesire
Cuprins23:02modele intare-stare-iesire
1. Introducere1. Introducere1. Introducere
2. Modele intrare-stare-iesire2. Modele intrare-stare-iesire2. Modele intrare-stare-iesire
3. Control predictiv fara restrictii3. Control predictiv fara restrictii
4. Control predictiv cu restrictii4. Control predictiv cu restrictii4. Control predictiv cu restrictii
5. Analiza stabilitatii5. Analiza stabilitatii5. Analiza stabilitatii
6. Analiza robustetii6. Analiza robustetii6. Analiza robustetii

Modelare si control predictivModelare si control predictivModelare si control predictivModelare si control predictiv
- proiect -- proiect -- proiect -
Controlul predictiv bazat pe Controlul predictiv bazat pe Controlul predictiv bazat pe
modele intrare-stare-iesiremodele intrare-stare-iesiremodele intrare-stare-iesire
Curs 4 – Control predictiv cu restrictiiCurs 4 – Control predictiv cu restrictiiCurs 4 – Control predictiv cu restrictii

10.01.2012 Restrictii asupra variabilelor
10.01.2012
23:02 Control predictiv cu restrictii Restrictii asupra variabilelor23:02 Control predictiv cu restrictii
In practica, variabilele sistemului sunt intotdeauna In practica, variabilele sistemului sunt intotdeauna In practica, variabilele sistemului sunt intotdeauna
restrictionte de:restrictionte de:
• Limitari fizice• Limitari fizice• Limitari fizice
Restrictii ale intrarilor (limitari ale elementelor de executie) Restrictii ale intrarilor (limitari ale elementelor de executie)
de obicei sunt active in regimul tranzitoriu de obicei sunt active in regimul tranzitoriu de obicei sunt active in regimul tranzitoriu
Restrictii ale starilor (capacitati ale rezervoarelor) Restrictii ale starilor (capacitati ale rezervoarelor)
pot fi active atat in regimul tranzitoriu, cat si in cel permanent pot fi active atat in regimul tranzitoriu, cat si in cel permanent
• Consideratii de siguranta (presiuni/temperaturi critice)• Consideratii de siguranta (presiuni/temperaturi critice)• Consideratii de siguranta (presiuni/temperaturi critice)
• Specificatii de performanta (suprareglare limita)• Specificatii de performanta (suprareglare limita)

10.01.2012 Restrictii asupra variabilelor
10.01.2012
23:02 Control predictiv cu restrictii Restrictii asupra variabilelor23:02 Control predictiv cu restrictii
1 4y≤ ≤11 4y≤ ≤11 4
1.5 4
y
y
≤ ≤
≤ ≤21.5 4y≤ ≤21.5 4
1.5 3
y
y
≤ ≤
≤ ≤31.5 3y≤ ≤31.5 3y≤ ≤
≤ ≤2 3y≤ ≤42 3y≤ ≤
2 3y≤ ≤52 3y≤ ≤5
Clasificarea restrictiilor (hard sau soft): Clasificarea restrictiilor (hard sau soft): Clasificarea restrictiilor (hard sau soft):
Restrictiile de tip hard trebuie satisfacute la fiecare Restrictiile de tip hard trebuie satisfacute la fiecare Restrictiile de tip hard trebuie satisfacute la fiecare
moment de timp, altfel problema devine infezabilamoment de timp, altfel problema devine infezabila
Restrictiile de tip soft pot fi incalcate pentru a evita Restrictiile de tip soft pot fi incalcate pentru a evita Restrictiile de tip soft pot fi incalcate pentru a evita
infezabilitateainfezabilitateainfezabilitatea

10.01.2012 Sisteme cu intrare saturata
10.01.2012
23:02 Control predictiv cu restrictii Sisteme cu intrare saturata23:02 Control predictiv cu restrictii
O neliniaritate des intalnita este reprezentata de saturarea O neliniaritate des intalnita este reprezentata de saturarea O neliniaritate des intalnita este reprezentata de saturarea
intrarii.intrarii.intrarii.
( ) ( ) ( )( ) ( )1 sat nonlinearx k Ax k B u k+ = +( ) ( ) ( )( ) ( )1 sat nonlinearx k Ax k B u k+ = +( ) ( ) ( )( ) ( )( ) ( )
1 sat nonlinearx k Ax k B u k+ = +
( ) ( )y k Cx k=( ) ( )y k Cx k=
Aceasta saturare poate fi usor transformata intr-o restrictie
( ) ( )y k Cx k=
Aceasta saturare poate fi usor transformata intr-o restrictie Aceasta saturare poate fi usor transformata intr-o restrictie
asupra unui sistem liniar:asupra unui sistem liniar:asupra unui sistem liniar:
Componenta a saturatiei este:( )th 1,...,i i m∈ ( )sat uComponenta a saturatiei este:( )th 1,...,i i m∈ ( )sat uComponenta a saturatiei este:( )1,...,i i m∈ ( )sat u
< dacau u u < dacai i i
u u u <( )
sat : daca
i i i
u u u u u
= ≤ ≤( ) sat : dacau u u u u
= ≤ ≤( ) sat : dacai i i ii
u u u u u= ≤ ≤
( )
daca
i i i ii
u u u
> dacau u u
> dacai i i
u u u> i i i

10.01.2012 Constraint handling
10.01.2012
23:02 Control predictiv cu restrictii Constraint handling23:02 Control predictiv cu restrictii
Metode sub-optimale de considerare a saturarii Metode sub-optimale de considerare a saturarii Metode sub-optimale de considerare a saturarii
Saturarea legii de control nerestrictionate Saturarea legii de control nerestrictionate
(restrictiile sunt ignorate in faza de proiectare a (restrictiile sunt ignorate in faza de proiectare a (restrictiile sunt ignorate in faza de proiectare a
regulatorului)regulatorului)regulatorului)
Re-acordarea unei legi de control nerestrictionate Re-acordarea unei legi de control nerestrictionate Re-acordarea unei legi de control nerestrictionate
(cresterea ponderii pe u in obiectivul de performanta in (cresterea ponderii pe u in obiectivul de performanta in
controlul optimal)controlul optimal)controlul optimal)
Strategii anti-windup Strategii anti-windup Strategii anti-windup
(limitarea starii regulatorului dinamic -> componenta I)(limitarea starii regulatorului dinamic -> componenta I)

10.01.2012 Problema LQR cu restrictii
10.01.2012
23:02 Control predictiv cu restrictii Problema LQR cu restrictii23:02 Control predictiv cu restrictii
Problema: Dandu-se starea initiala x(0) la momentul k=0, Problema: Dandu-se starea initiala x(0) la momentul k=0, Problema: Dandu-se starea initiala x(0) la momentul k=0,
sa se calculeze si implementeze o secventa de comenzisa se calculeze si implementeze o secventa de comenzisa se calculeze si implementeze o secventa de comenzi
( ) ( ) 0 , 1 ,...,u u( ) ( ) 0 , 1 ,...,u u( ) ( ) care minimizeaza functia de cost cu orizont infinitcare minimizeaza functia de cost cu orizont infinit
( ) ( ) ( ) ( )( )∞
∑ ( ) ( ) ( ) ( )( )T Tx k Qx k u k Ru k
∞
+∑ ( ) ( ) ( ) ( )( )x k Qx k u k Ru k+∑ ( ) ( ) ( ) ( )( )0k=∑
garantand satisfacerea restrictiilor la fiecare moment de timp
0k=
garantand satisfacerea restrictiilor la fiecare moment de timpgarantand satisfacerea restrictiilor la fiecare moment de timp
de obicei este imposibil de rezolvat de obicei este imposibil de rezolvat de obicei este imposibil de rezolvat
controlul predictiv propune o solutie aproximativa controlul predictiv propune o solutie aproximativa controlul predictiv propune o solutie aproximativa
legile de control predictiv cu restrictii sunt neliniare legile de control predictiv cu restrictii sunt neliniare legile de control predictiv cu restrictii sunt neliniare

10.01.2012 Control optimal cu orizont finit 10.01.2012
23:02
Control optimal cu orizont finit
cu restrictiiControl predictiv cu restrictii23:02
cu restrictiiControl predictiv cu restrictii
cu restrictii
Problema: Dandu-se starea initiala x = x(k), sa se calculeze Problema: Dandu-se starea initiala x = x(k), sa se calculeze Problema: Dandu-se starea initiala x = x(k), sa se calculeze
o secventa de comenzi pe un orizont finit No secventa de comenzi pe un orizont finit No secventa de comenzi pe un orizont finit N
, ,...,u u u 0 1 1, ,..., Nu u u − 0 1 1, ,..., Nu u u −
care minimizeaza functia de cost cu orizont finitcare minimizeaza functia de cost cu orizont finit
( )1N−
+ +∑ ( )1N
T T Tx Px x Qx u Ru−
+ +∑ ( )N N i i i ix Px x Qx u Ru=
+ +∑unde
( )0
N N i i i i
i=∑
unde 0i=
x x=0x x=0
, 0,1,..., 1x Ax Bu i N= + = −1 , 0,1,..., 1i i ix Ax Bu i N+ = + = −1 , 0,1,..., 1i i ix Ax Bu i N+ = + = −
garantand satisfacerea tuturor restrictiilor la fiecare moment garantand satisfacerea tuturor restrictiilor la fiecare moment
de timp = −de timp 0,1,..., 1i N= −de timp 0,1,..., 1i N= −

10.01.2012 Principiul orizontului alunecator
10.01.2012
23:02 Control predictiv cu restrictii Principiul orizontului alunecator23:02 Control predictiv cu restrictii
1. Obtine valorile starilor/iesirilor curente.1. Obtine valorile starilor/iesirilor curente.
2. Calculeaza secventa optima de control cu orizont finit t.c.d. restrictii2. Calculeaza secventa optima de control cu orizont finit t.c.d. restrictii2. Calculeaza secventa optima de control cu orizont finit t.c.d. restrictii
3. Implementeaza prima valoare din secventa optima de comenzi.3. Implementeaza prima valoare din secventa optima de comenzi.
4. Reia de la pasul 1.4. Reia de la pasul 1.

10.01.2012 Principiul orizontului alunecator
10.01.2012
23:02 Control predictiv cu restrictii Principiul orizontului alunecator23:02 Control predictiv cu restrictii
1. Obtine valorile starilor/iesirilor curente.1. Obtine valorile starilor/iesirilor curente.
2. Calculeaza secventa optima de control cu orizont finit t.c.d. restrictii2. Calculeaza secventa optima de control cu orizont finit t.c.d. restrictii2. Calculeaza secventa optima de control cu orizont finit t.c.d. restrictii
3. Implementeaza prima valoare din secventa optima de comenzi.3. Implementeaza prima valoare din secventa optima de comenzi.
4. Reia de la pasul 1.4. Reia de la pasul 1.

10.01.2012 Principiul orizontului alunecator
10.01.2012
23:02 Control predictiv cu restrictii Principiul orizontului alunecator23:02 Control predictiv cu restrictii
1. Obtine valorile starilor/iesirilor curente.1. Obtine valorile starilor/iesirilor curente.
2. Calculeaza secventa optima de control cu orizont finit t.c.d. restrictii2. Calculeaza secventa optima de control cu orizont finit t.c.d. restrictii2. Calculeaza secventa optima de control cu orizont finit t.c.d. restrictii
3. Implementeaza prima valoare din secventa optima de comenzi.3. Implementeaza prima valoare din secventa optima de comenzi.
4. Reia de la pasul 1.4. Reia de la pasul 1.

10.01.2012 Principiul orizontului alunecator
10.01.2012
23:02 Control predictiv cu restrictii Principiul orizontului alunecator23:02 Control predictiv cu restrictii
1. Obtine valorile starilor/iesirilor curente.1. Obtine valorile starilor/iesirilor curente.
2. Calculeaza secventa optima de control cu orizont finit t.c.d. restrictii2. Calculeaza secventa optima de control cu orizont finit t.c.d. restrictii2. Calculeaza secventa optima de control cu orizont finit t.c.d. restrictii
3. Implementeaza prima valoare din secventa optima de comenzi.3. Implementeaza prima valoare din secventa optima de comenzi.
4. Reia de la pasul 1.4. Reia de la pasul 1.

10.01.2012 10.01.2012
23:02 Matricile de predictieControl predictiv cu restrictii23:02 Matricile de predictieControl predictiv cu restrictii
S-a calculat anterior secventa de stari predictate X in S-a calculat anterior secventa de stari predictate X in S-a calculat anterior secventa de stari predictate X in
functie de intrarile Ufunctie de intrarile Ufunctie de intrarile U
0 0x uA B ⋯1 00 0x uA B ⋯1 00 0x uA B
⋯
2 0x uA AB B ⋯
2
2 10x uA AB Bx
= +
⋯2 1
0
0x uA AB Bx = +
⋯
⋮ ⋮⋮ ⋮ ⋮ ⋱ ⋮0x= +
⋮ ⋮⋮ ⋮ ⋮ ⋱ ⋮ ⋮ ⋮⋮ ⋮ ⋮ ⋱ ⋮
1 2N N Nx uA A B A B B− − ⋯
1 2
1
N N N
N Nx uA A B A B B− −−
⋯ 1N Nx uA A B A B B − ⋯
sau definind ,:x x=sau definind ,0:x x=sau definind ,0:x x=
.X x U= Φ +Γ .X x U= Φ +Γ
Matricile si sunt matricile de predictie.Φ Γ Matricile si sunt matricile de predictie.Φ Γ Matricile si sunt matricile de predictie.Φ Γ

10.01.2012 10.01.2012
23:02 Incorporarea restrictiilorControl predictiv cu restrictii23:02 Incorporarea restrictiilorControl predictiv cu restrictii
Sa se incorporeze un set de restrictii liniare de tip Sa se incorporeze un set de restrictii liniare de tip Sa se incorporeze un set de restrictii liniare de tip
inegalitate asupra starilor si intrarilorx uinegalitate asupra starilor si intrarilorix iuinegalitate asupra starilor si intrarilorix iu
, pentru toti 0,1,..., 1M x E u b i N+ ≤ = −, pentru toti 0,1,..., 1i i i i iM x E u b i N+ ≤ = −, pentru toti 0,1,..., 1
.
i i i i iM x E u b i N
M x b
+ ≤ = −
≤ .N N NM x b≤ .N N NM x b≤
Multe restrictii iau forma: Multe restrictii iau forma: Multe restrictii iau forma:
= ⇒• restrictii doar asupra intrarilor0sM = ⇒• restrictii doar asupra intrarilor0sM = ⇒
• restrictii doar asupra starilor0E = ⇒• restrictii doar asupra starilor0sE = ⇒• restrictii doar asupra starilor
• Se pot include restrictii asupra iesirilor/marimilor controlabile
s
• Se pot include restrictii asupra iesirilor/marimilor controlabile• Se pot include restrictii asupra iesirilor/marimilor controlabile
Pentru simplitate se noteaza Pentru simplitate se noteaza Pentru simplitate se noteaza
, si , pentru toti 0,1,..., 1E E M M b b i N= = = = −, si , pentru toti 0,1,..., 1i i iE E M M b b i N= = = = −, si , pentru toti 0,1,..., 1i i iE E M M b b i N= = = = −

10.01.2012 10.01.2012
23:02 Incorporarea restrictiilorControl predictiv cu restrictii23:02 Incorporarea restrictiilorControl predictiv cu restrictii
Sa presupunem ca avem urmatoarele restrictii asupra Sa presupunem ca avem urmatoarele restrictii asupra Sa presupunem ca avem urmatoarele restrictii asupra
intrarilor si iesirilor:intrarilor si iesirilor:intrarilor si iesirilor:
≤ ≤ = −, 0,1,..., 1u u u i N≤ ≤ = −, 0,1,..., 1low i highu u u i N≤ ≤ = −
, 0,1,...,
low i high
y y y i N≤ ≤ =, 0,1,...,low i highy y y i N≤ ≤ =, 0,1,...,low i highy y y i N≤ ≤ =
Stiind ca se obtine ca:,y Cx= Stiind ca se obtine ca:,i iy Cx= Stiind ca se obtine ca:,i iy Cx=
0 uI −− 0 lowuI −− 0 lowuI −−
0 uI 0
, 0,1,..., 1highuI
x u i N
+ ≤ = −
0, 0,1,..., 1
0
high
i i
Ix u i N
yC + ≤ = − −−
, 0,1,..., 10
i i
low
x u i NyC
+ ≤ = − −−
0 lowyC −− 0 yC 0 highyC
O expresie similara poate fi scrisa pentru restrictia terminala .
0 highC ( )x O expresie similara poate fi scrisa pentru restrictia terminala .( )Nx( )N

10.01.2012 10.01.2012
23:02 Incorporarea restrictiilorControl predictiv cu restrictii23:02 Incorporarea restrictiilorControl predictiv cu restrictii
Din exemplul anterior, se pot scrie restrictiile sub Din exemplul anterior, se pot scrie restrictiile sub Din exemplul anterior, se pot scrie restrictiile sub
forma:forma:forma:, pentru toti 0,1,..., 1M x E u b i N+ ≤ = −, pentru toti 0,1,..., 1i i i i iM x E u b i N+ ≤ = −
.
i i i i i
M x b
+ ≤ = −
≤ .N N NM x b≤ .N N NM x b≤
definind: u−− definind:
0 lowuI −− 0 lowuI −−
0
low
uI 0
: , : , : , 0,1,..., 1highuI
M E b i N
= = = = −
0: , : , : , 0,1,..., 1
high
i i i
uIM E b i N
y = = = = − −−
: , : , : , 0,1,..., 10
i i i
low
M E b i NyC
= = = = − −− 0 lowyC −− 0
low
yC 0 highyC 0 highyC
yC −− lowyC −− = =si : , :
lowyCM b
−− = = si : , :N NM b
yC= =
N N
highyC
highyC

10.01.2012 10.01.2012
23:02 Incorporarea restrictiilorControl predictiv cu restrictii23:02 Incorporarea restrictiilorControl predictiv cu restrictii
Punand toate restrictiile impreuna: Punand toate restrictiile impreuna: Punand toate restrictiile impreuna:
0 0 0 bM E ⋯ ⋯ 00 00 0 0 bM E
⋯ ⋯ 00 0
1 0
0 0 0 bM Ex u
⋯ ⋯
⋯ ⋮ ⋱ ⋮1 0
00x u
M b ⋯ ⋮ ⋱ ⋮1 100 M b
x
+ + ≤
⋯ ⋮ ⋱ ⋮⋮ ⋮0
0x
E
+ + ≤
⋮ ⋱ ⋮⋮ ⋮
⋮ ⋱ ⋮ ⋮⋮ ⋯0
10 NEx u
−
⋮ ⋮⋮ ⋱ ⋮ ⋮⋮ ⋯ 1
100 0 0
N
N Nx uM b
−−
⋮ ⋱ ⋮ ⋮⋮ ⋯
⋯ ⋯1
00 0 0N N
N N
x uM b
− ⋯ ⋯00 0 0N NM b ⋯ ⋯
Definind in mod adecvat se obtine:( )ε∆ ϒ = Definind in mod adecvat se obtine:( ), , si :c x xε∆ ϒ = Definind in mod adecvat se obtine:( )0, , si :c x xε∆ ϒ =
.x X U cε∆ + ϒ + ≤ .x X U cε∆ + ϒ + ≤ In cele ce urmeaza se va elimina termenul X utilizand In cele ce urmeaza se va elimina termenul X utilizand In cele ce urmeaza se va elimina termenul X utilizand
matricile de predictie.matricile de predictie.matricile de predictie.

10.01.2012 10.01.2012
23:02 Incorporarea restrictiilorControl predictiv cu restrictii23:02 Incorporarea restrictiilorControl predictiv cu restrictii
Se inlocuieste inX x U= Φ +Γ Se inlocuieste inX x U= Φ +Γ Se inlocuieste inX x U= Φ +Γ
x X U cε∆ + ϒ + ≤x X U cε∆ + ϒ + ≤
si se colecteaza termenii. Restrictiile pot fi scrise:si se colecteaza termenii. Restrictiile pot fi scrise:si se colecteaza termenii. Restrictiile pot fi scrise:
JU c Wx≤ +JU c Wx≤ +unde
JU c Wx≤ +undeunde
:J ε= ϒΓ +:J ε= ϒΓ +si
:J ε= ϒΓ +sisi
:W = −∆ − ϒΦ:W = −∆ − ϒΦ
Restrictiile sunt scrise acum in functie de secventa de Restrictiile sunt scrise acum in functie de secventa de Restrictiile sunt scrise acum in functie de secventa de
intrare U si de starea initiala ( ).x x x k= =intrare U si de starea initiala ( )0 .x x x k= =intrare U si de starea initiala ( )0 .x x x k= =

10.01.2012 10.01.2012
23:02 Incorporarea restrictiilorControl predictiv cu restrictii23:02 Incorporarea restrictiilorControl predictiv cu restrictii
Pe scurt, procedura are urmatorii pasi: Pe scurt, procedura are urmatorii pasi: Pe scurt, procedura are urmatorii pasi:
Se definesc inecuatiile liniare in , , si i i i iu x y z Se definesc inecuatiile liniare in , , si i i i iu x y z
Se scriu restrictiile sub forma: Se scriu restrictiile sub forma: Se scriu restrictiile sub forma:
, pentru toti 0,1,..., 1M x E u b i N+ ≤ = −, pentru toti 0,1,..., 1i i i i iM x E u b i N+ ≤ = −, pentru toti 0,1,..., 1i i i i iM x E u b i N+ ≤ = −
.M x b≤ .N N NM x b≤ .N N NM x b≤
Se grupeaza pentru a obtine forma: Se grupeaza pentru a obtine forma: Se grupeaza pentru a obtine forma:
.x X U cε∆ + ϒ + ≤ .x X U cε∆ + ϒ + ≤
Se inlocuieste si se rearanjeaza in forma:X x U= Φ +Γ Se inlocuieste si se rearanjeaza in forma:X x U= Φ +Γ Se inlocuieste si se rearanjeaza in forma:X x U= Φ +Γ
.JU c Wx≤ + .JU c Wx≤ + .JU c Wx≤ +

10.01.2012 10.01.2012
23:02 Functia de costControl predictiv cu restrictii23:02 Functia de costControl predictiv cu restrictii
Functia de cost Functia de cost Functia de cost
( )1N−
∑ ( )1
( , ) :N
T T TV x U x Px x Qx u Ru−
= + +∑ ( )( , ) : T T T
N N i i i iV x U x Px x Qx u Ru= + +∑ ( )0
( , ) : N N i i i i
i
V x U x Px x Qx u Ru=
= + +∑0i=
tinand cont ca poate fi rescrisa ca: ,x x=tinand cont ca poate fi rescrisa ca0: ,x x=tinand cont ca poate fi rescrisa ca0: ,x x=
( ) ( )1( ) ( )1, T T T TV x U U GU U Fx x Q x= + + +Φ ΩΦ( ) ( )1,
2
T T T TV x U U GU U Fx x Q x= + + +Φ ΩΦ( ) ( ),2
V x U U GU U Fx x Q x= + + +Φ ΩΦ2
pentru matricile definite in cursul anterior., si F G Ωpentru matricile definite in cursul anterior., si F G Ωpentru matricile definite in cursul anterior., si F G Ω
= =≻ ≻ ≻ ≻ Matricea 0 daca 0, 0 si 0.G P Q R= =≻ ≻ ≻ ≻ Matricea 0 daca 0, 0 si 0.G P Q R= =≻ ≻ ≻ ≻≻ ≻ ≻ ≻

10.01.2012 10.01.2012
23:02 Proleme patratice (QP)Control predictiv cu restrictii23:02 Proleme patratice (QP)Control predictiv cu restrictii
Definitie (problema patratica - QP): Definitie (problema patratica - QP):
Dandu-se matricile Q si A si vectorii c si b, problema de Dandu-se matricile Q si A si vectorii c si b, problema de Dandu-se matricile Q si A si vectorii c si b, problema de
optimizare 1optimizare 1min T TQ cθ θ θ+
optimizare 1min T TQ cθ θ θ+min
2Q c
θθ θ θ+
2θ 2
tinand cont de A bθ ≤tinand cont de A bθ ≤se numeste problema patratica.
tinand cont de A bθ ≤se numeste problema patratica.se numeste problema patratica.
Propozitie Daca in problema patratica de mai sus, 0Q ≻ Propozitie Daca in problema patratica de mai sus, 0Q ≻ Propozitie Daca in problema patratica de mai sus,
atunci:
0Q ≻
atunci:
1. Problema de optimizare este convexa strict.1. Problema de optimizare este convexa strict.1. Problema de optimizare este convexa strict.
2. Un minim global poate fi gasit intotdeauna.2. Un minim global poate fi gasit intotdeauna.2. Un minim global poate fi gasit intotdeauna.
3. Minimul global este unic.3. Minimul global este unic.3. Minimul global este unic.

10.01.2012 10.01.2012
23:02 Solutiile prolemelor patraticeControl predictiv cu restrictii23:02 Solutiile prolemelor patraticeControl predictiv cu restrictii

10.01.2012 10.01.2012
23:02 Scrierea problemelelor ca QPControl predictiv cu restrictii23:02 Scrierea problemelelor ca QPControl predictiv cu restrictii
Multe probleme pot fi puse sub forma unor probleme Multe probleme pot fi puse sub forma unor probleme
patraticepatratice
Exemplu: Restrictii neliniare. Exemplu: Restrictii neliniare. Exemplu: Restrictii neliniare.
1 11min T TQ cθ θ θ +
1min T TQ cθ θ θ +
1min
2
T TQ cθ
θ θ θ +
1min
2
T TQ cθ
θ θ θ +⇒
min2
Q cθ
θ θ θ+
min2
Q cθ
θ θ θ+⇒
2
tinand cont de max ,T Te fθ θ
2
tinand cont de ,T Te b f b
θ
θ θ⇒
≤ ≤ tinand cont de max ,T Te fθ θ tinand cont de ,T Te b f bθ θ ≤ ≤ tinand cont de max ,e fθ θ tinand cont de ,e b f bθ θ ≤ ≤
Exemplu: Functie de cost neliniara.
Exemplu: Functie de cost neliniara. Exemplu: Functie de cost neliniara.
min Tc θ minδmin Tcθ
θ ,
minθ δ
δ⇒
min cθ
θ ,
minθ δ
δ⇒
tinand cont de A bθ
≤ tinand cont de A bθ⇒
≤tinand cont de A bθ ≤ tinand cont de A bθ ≤
0Tc
θ
θ δ
≤
− ≤ 0Tc θ δ− ≤ 0c θ δ− ≤
0Tc θ δ− − ≤ 0Tc θ δ− − ≤

10.01.2012 10.01.2012
23:02 Control optimal restrictionat ca QPControl predictiv cu restrictii23:02 Control optimal restrictionat ca QPControl predictiv cu restrictii
Problema optimala de control restrictionata este Problema optimala de control restrictionata este
11min T TU GU U Fx+
1min
2
T T
UU GU U Fx+min
2UU GU U Fx+
2
tinand cont de JU c Wx≤ +tinand cont de JU c Wx≤ +tinand cont de JU c Wx≤ +
Aceasta este o problema patratica in forma standard. Aceasta este o problema patratica in forma standard. Aceasta este o problema patratica in forma standard.
U Q G c Fxθ → → →U Q G c Fxθ → → →
( )A J b c Wx→ → + Solutia optima este:
( )A J b c Wx→ → + Solutia optima este:
( )A J b c Wx→ → + Solutia optima este:
1. Un minim global (cand ).0G =≻1. Un minim global (cand ).0G =≻1. Un minim global (cand ).
2. Unic (cand ).
0G =≻
0G ≻2. Unic (cand ).0G ≻2. Unic (cand ).0G ≻

10.01.2012 10.01.2012
23:02 Solutia prin QPControl predictiv cu restrictii23:02 Solutia prin QPControl predictiv cu restrictii
Unii parametri QP sunt functii de starea curenta x Unii parametri QP sunt functii de starea curenta x
• Fara restrictii, este o functie liniara de x.( )*U x• Fara restrictii, este o functie liniara de x.( )*U x• Fara restrictii, este o functie liniara de x.( )U x
• Cu restrictii, este o functie neliniara.( )*U x• Cu restrictii, este o functie neliniara.( )*U x( )
Trebuie calculat prin rezolvarea unei probleme ( )*U x Trebuie calculat prin rezolvarea unei probleme ( )*U x Trebuie calculat prin rezolvarea unei probleme
patratice online pentru fiecare x.
( )patratice online pentru fiecare x.
In Matlab, problema patratica poate fi rezolvata utilizand In Matlab, problema patratica poate fi rezolvata utilizand
( )( )U=quadprog G,F* x,J,C+Wx( )U=quadprog G,F* x,J,C+Wx( )

10.01.2012 10.01.2012
23:02 Implementarea MPCControl predictiv cu restrictii23:02 Implementarea MPCControl predictiv cu restrictii
Legea predictiva de control este data de prima Legea predictiva de control este data de prima Legea predictiva de control este data de prima
comanda din secventacomanda din secventacomanda din secventa
( ) ( ) ( )* *: 0 0K u x I U x= = ⋯( ) ( ) ( )* *
0: 0 0MPC mK u x I U x= = ⋯( ) ( ) ( )0: 0 0MPC mK u x I U x= = ⋯
Din moment ce este neliniara, ( )*U x : n mK →ℝ ℝ Din moment ce este neliniara, ( )*U x : n m
MPCK →ℝ ℝ Din moment ce este neliniara,
este o lege de reglare neliniara.
( )U x :MPCK →ℝ ℝ
este o lege de reglare neliniara.este o lege de reglare neliniara.
Dinamica sistemului de control in bucla inchisa este Dinamica sistemului de control in bucla inchisa este Dinamica sistemului de control in bucla inchisa este
neliniaraneliniaraneliniara
( ) ( ) ( )1x k Ax k BK x+ = +( ) ( ) ( )1 MPCx k Ax k BK x+ = +( ) ( ) ( )1 MPCx k Ax k BK x+ = +

10.01.2012 10.01.2012
23:02 Complexitatea solutiilorControl predictiv cu restrictii23:02 Complexitatea solutiilorControl predictiv cu restrictii
Exemplu: Dublu integrator Solutie: Regulator cu 57 Exemplu: Dublu integrator Solutie: Regulator cu 57
de regiuni. Fiecare regiune
( ) ( ) ( )1 1 0
+ = +de regiuni. Fiecare regiune
i are ( )* = +( ) ( ) ( )1 1 0
1x k x k u k
+ = + i are ( )*
0 i iu x v K x= +( ) ( ) ( )10 1 1
x k x k u k+ = +
i are ( )0 i iu x v K x= +0 1 1
Restrictii:Restrictii:Restrictii:
1, 12u y≤ ≤1, 12u y∞
≤ ≤∞
Orizont predictie=12.Orizont predictie=12.
Cost patratic:Cost patratic:Cost patratic:
1 0 = = =
1 0, 1, 1Q R P
= = = , 1, 1
0 1Q R P= = =
0 1