Controlul predictiv bazat pe modele int rare -stare -ie...

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

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