Download - Modelarea proceselor energetice Cap2
CAPITOLUL 2
OPTIMIZAREA NIVELULUI DE REZERVARE UTILIZÂND
LIMBAJUL DE PROGRAMARE C++
Rezumat
În prezent, optimizarea fiabilităŃii este o problemă cheie în activitatea de
concepŃie, proiectare, executare şi exploatare a sistemelor tehnice. Între costul de fabricaŃie al unui produs şi nivelul de fiabilitate alocat acestuia există o strânsă dependenŃă, un cost ridicat presupunând o fiabilitate mai bună.
În optimizarea fiabilităŃii sistemelor s-au dezvoltat, în principal, două direcŃii: • maximizarea fiabilităŃii unui sistem, • minimizarea costului sistemului.
Aceste formulări implică elaborarea unor metode eficiente de maximizare sau minimizare a unor funcŃii, care, în majoritatea cazurilor, sunt neliniare, cu condiŃia satisfacerii unui sistem de restricŃii liniare sau neliniare.
Capitolul cuprinde două părŃi. Prima parte prezintă realizarea unui model matematic de introducere optimă a redundanŃei la sistemele serie, precum şi prezentarea a două metode dedicate optimizării nivelului de rezervare, cunoscute în literatura de specialitate: metoda Sharma–Venkateswaran, metoda Aggarwal–Gupta–Misra. A doua parte cuprinde prezentarea realizării a trei programe în limbajul C++ privind optimizarea nivelului de rezervare, programe care au la bază modelele matematice prezentate în cadrul capitolului 1; de asemenea în cadrul acestui capitol se prezintă diverse studii de caz cu rezultate şi interpretări.
La cele două capitole se adaugă concluziile, referinŃele bibliografice şi anexele program.
MODELAREA PROCESELOR ENERGETICE
56
CUPRINS
2.1. Metode şi modele matematice dedicate optimizării nivelului de rezervare 2.1.1. GeneralităŃi 2.1.1.1. ConsideraŃii generale privind fiabilitate 2.1.1.2. ConsideraŃii generale privind nivelul de rezervare 2.1.2. Metode şi modele matematice dedicate optimizării nivelului de rezervare 2.1.2.1. Model matematic de introducere optimă a redundanŃei la sistemele serie
2.1.2.2. Metoda Sharma–Venkateswaran 2.1.2.3. Metoda Aggarwal–Gupta–Misra
2.2. Programarea optimizării nivelului de rezervare în limbajul de programare C++. Studii de caz 2.2.1. Realizarea unor programe în C++ privind optimizarea nivelului de rezervare
2.2.1.1. Simularea introducerii optime a redundanŃei la sistemele serie 2.2.1.2. Simularea introducerii optime a redundanŃei la sistemele serie utilizând MSV
2.2.1.3. Simularea introducerii optime a redundanŃei la sistemele serie utilizând MAGM 2.2.2. Studii de caz. Rezultate şi interpretări
2.2.2.1. Rezultatele simulării introducerii optime a redundanŃei la sistemele serie formate din n elemente
2.2.2.2. Rezultatele simulării introducerii optime a redundanŃei la sistemele serie formate din n elemente utilizând MSV
2.2.2.3. Rezultatele simulării introducerii optime a redundanŃei la sistemele serie formate din n elemente utilizând MAGM CONCLUZII BIBLIOGRAFIE ANEXE
MODELAREA PROCESELOR ENERGETICE
57
2.1. Metode şi modele matematice dedicate optimizării nivelului de rezervare
2.1.1. GeneralităŃi
2.1.1.1. ConsideraŃii generale privind fiabilitate [4, 7]
O dată cu ridicarea nivelului tehnic şi de complexitate al produselor, precum şi a creşterii implicaŃiilor economico-sociale ale utilizării lor, anumite caracteristici calitative, cum ar fi fiabilitatea, mentenabilitatea, disponibilitatea, asigurarea securităŃii muncii şi a protecŃiei mediului înconjurător, au dobândit o importanŃă deosebită, fiind urmărite cu prioritate în întreg ciclul de viaŃă al produselor.
Fiabilitatea a devenit o condiŃie tehnică, o caracteristică de importanŃă primordială abia în ultimele trei decenii, când s-a constatat că nu se mai pot folosi metode empirice în proiectarea, fabricarea şi exploatarea produselor.
Între noŃiunile calitate şi fiabilitate există o strânsă legătură. Calitatea reprezintă totalitatea proprietăŃilor unui produs care-l fac corespunzător pentru utilizare potrivit destinaŃiei respective, iar fiabilitatea este capacitatea ca produsul să-şi păstreze (menŃină) calitatea pe toată durata de utilizare. Cu alte cuvinte, fiabilitatea este calitatea produsului extinsă în timp.
Fiabilitatea ca noŃiune are, de asemenea două laturi : • conceptul calitativ al fiabilităŃii defineşte aptitudinea unui sistem, bloc, element,
produs etc. de a îndeplini o anumită misiune la un moment sau într-un interval de timp dat, în condiŃii de exploatare specificate;
• conceptul cantitativ al fiabilităŃii se defineşte ca fiind probabilitatea ca sistemul, elementul etc. să-şi îndeplinească corect funcŃiile prevăzute (la nivelul performanŃelor prestabilite), pe durata unei perioade de timp, în condiŃii de exploatare specificate.
Vom aminti în cele ce urmează doar acele relaŃii de calcul referitoare la indicatorii pe care-i vom folosi în cadrul acestei lucrări. Astfel, pe baza indicatorilor de fiabilitate ai componentelor sistemelor ( )µλ, , vom aminti indicatorii din relaŃiile (2.1.1) ÷ (2.1.7).
• probabilitatea de bună funcŃionare ( ) :tRS
a)- pentru un sistem serie - figura 2.1.1 - avem:
( ) ( )∏=
=n
1iiS tRtR (2.1.1)
1 2 n
R(t)
R2(t) Rn(t)R1(t)
Figura I.1. Reprezentarea unui sistem serie
b)- pentru un sistem paralel (redundant) - figura 2.1.2 - avem:
( ) ( )[ ]∏=
−−=n
1iiS tR11tR (2.1.2)
1
2
n
R1(t)
R2(t)
Rn(t)
Figura 2.1.2. Reprezentarea unui sistem paralel
MODELAREA PROCESELOR ENERGETICE
58
• probabilitatea de defectare ( ) :tFS
)t(R1)t(F SS −= (2.1.3)
• probabilitatea de succes sau de bună funcŃionare ( )SP :
SSee
eS qRP ==
µ+λ
µ= (2.1.4)
unde: =eλ intensitatea de defectare a sistemului; =eµ intensitatea de reparare a sistemului.
• probabilitatea de refuz sau de defect ( ) :RP
SSSee
eR pFR1P ==−=
µ+λ
λ= (2.1.5)
• durata totală de funcŃionare ( )[ ]ATα şi de nefuncŃionare ( )[ ]ATβ :
( ) ( ) ARAASA TPT;TPT ⋅=β⋅=α (2.1.6)
2.1.2. ConsideraŃii generale privind nivelul de rezervare [6]
Impunerea unui anumit nivel de rezervare, deci apariŃia noŃiunii de redundanŃă, s-a datorat faptului că în sistemele tehnice pot apare defecŃiuni.
Un sistem cu redundanŃă paralel presupune montarea în paralel a două elemente, aceasta însemnând că, dacă una dintre componente se defectează, sistemul va continua să funcŃioneze datorită celeilalte componente, montată în paralel.
Generalizând, dacă sistemul este constituit din n componente în paralel, (n-1) se pot defecta, fără ca sistemul să se defecteze, dacă cea de-a n-a continuă să îndeplinească funcŃia respectivă.
Se numeşte redundanŃă utilizarea într-un sistem a mai multor componente decât este necesar pentru îndeplinirea funcŃiilor cerute acestuia, astfel încât sistemul să funcŃioneze satisfăcător chiar în prezenŃa unor defectări.
Se numeşte redundanŃă optimă, configuraŃia redundantă a unui sistem care asigură maximizarea fiabilităŃii sale sau/şi minimizarea greutăŃii, volumului şi costului total .
La rezolvarea problemelor de optimum există, de obicei, o singură funcŃie obiectiv şi un ansamblu de constrângeri, problema constând în identificarea optimului funcŃiei obiectiv (minim sau maxim, după caz), respectând constrângerile.
2.1.2. Metode şi modele matematice dedicate optimizării nivelului de rezervare 2.1.2.1. Model matematic de introducere optimă a redundanŃei la sistemele serie
În cadrul acestui paragraf ne-am propus să creăm un model matematic de introducere a redundanŃei la sistemele serie formate din “n” elemente, având acelaşi nivel de fiabilitate, astfel încât efectul asupra fiabilităŃii să fie maxim. [5, 8] În acest sens studiul s-a realizat în trei variante astfel:
- pentru sisteme serie cu număr par de elemente; - pentru sisteme serie cu număr impar de elemente; - pentru sisteme serie formate din “n” elemente, indiferent de paritate - generalizare.
Etapele realizării modelului matematic sunt:
MODELAREA PROCESELOR ENERGETICE
59
1. se calculează fiabilitatea sistemului serie iniŃial format din “n” elemente cu relaŃia:
∏=
==n
1i
nisis RRR (2.1.7)
2. se împarte sistemul în d
n grupe de elemente la care se introduce redundanŃa;
d = divizorii lui n, *Nn∈ . 3. se alege una dintre cele 3 variante de calcul amintite anterior şi se urmează algoritmul variantei alese. Vom prezenta în continuare algoritmii pentru cele 3 variante, pentru sisteme serie.
Varianta 1. Pentru sisteme serie cu număr par de elemente, n = 2k elemente, *Nk∈ I. Pentru k=1 ⇒ n = 2 elemente (figura 2.1.3) , număr prim de elemente.
Figura 2.1.3. Sistemul A iniŃial
Varianta A:
• se calculează 2A RR = ;
• se determină mulŃimea divizorilor lui 2: { }2;1D2 = , divizori improprii; Varianta B:
• pentru d = 1, rezultă 21
2
d
n== , adică la fiecare set de 2 elemente se introduce
redundanŃa; rezultă, în cazul de faŃă, că se dublează sistemul iniŃial, figura 2.1.4.
Figura 2.1.4. Sistemul B, format din B1, B2, fiecare cu câte 2 elemente serie
• se calculează:
o 22B1B RRR == ;
o ( ) ( ) ( ) ( ) ( )22222B1BB R11R1R11R1R11R −−=−⋅−−=−⋅−−=
Varianta D:
• pentru d = 2, rezultă 12
2
d
n== , adică la fiecare element se introduce redundanŃa;
rezultă, în cazul de faŃă, că se dublează fiecare element component, figura 2.1.5.
Figura 2.1.5. Sistemul D, format din D1, D2, fiecare cu câte 2 elemente paralel
• se calculează:
MODELAREA PROCESELOR ENERGETICE
60
o ( )22D1D R11RR −−== ;
o ( )[ ]222D1DD R11RRR −−=⋅= .
II. Pentru k=2 ⇒ n = 4 elemente (figura 2.1. 6).
Figura 2.1.6. Sistemul A iniŃial
Varianta A:
• se calculează 4A RR = ;
• se determină mulŃimea divizorilor lui 4: { }4;2;1D4 = . Varianta B:
• pentru d = 1, divizor impropriu, rezultă 41
4
d
n== , adică la fiecare set de 4 elemente
se introduce redundanŃa; rezultă, în cazul de faŃă, că se dublează sistemul iniŃial, figura 2.1.7.
Figura 2.1.7. Sistemul B, format din B1, B2, fiecare cu câte 4 elemente serie
• se calculează:
o 42B1B RRR == ;
o ( ) ( ) ( ) ( ) ( )24442B1BB R11R1R11R1R11R −−=−⋅−−=−⋅−−= .
Varianta C:
• pentru d = 2, divizor propriu, rezultă 22
4
d
n== , adică la fiecare 2 elemente se
introduce redundanŃa; rezultă figura 2.1.8.
Figura 2.1.8. Sistemul C, format din CI, CII, fiecare cu C1||C2, respectiv C3||C4
• se calculează:
o 24C3C2C1C RRRRR ==== ;
o ( ) ( ) ( )2222CIICI R11R1R11RR −−=−⋅−−== ;
MODELAREA PROCESELOR ENERGETICE
61
o ( )222
CIICIC R11RRR
−−=⋅= .
Varianta D:
• pentru d = 4, divizor impropriu, rezultă 14
4
d
n== , adică la fiecare element se introduce
redundanŃa; rezultă că se dublează fiecare element component, figura 2.1.9.
Figura 2.1.9. Sistemul D, format din D1, D2, D3, D4 fiecare cu câte 2 elemente paralel • se calculează:
o ( )24D3D2D1D R11RRRR −−==== ;
o ( )[ ]424D3D2D1DD R11RRRRR −−=⋅⋅⋅= .
III. Pentru k=3 ⇒ n = 6 elemente (figura 2.1.10).
Figura 2.1.10. Sistemul A iniŃial
Varianta A:
• se calculează 6A RR = ;
• se determină mulŃimea divizorilor lui 6: { }6;3;2;1D6 = .
Varianta B:
• pentru d = 1, divizor impropriu, rezultă 61
6
d
n== , adică la fiecare set de 6 elemente
se introduce redundanŃa; rezultă, în cazul de faŃă, că se dublează sistemul iniŃial, figura 2.1.11.
Figura 2.1.11. Sistemul B, format din B1, B2, fiecare cu câte 6 elemente serie
• se calculează:
o 62B1B RRR == ;
o ( ) ( ) ( ) ( ) ( )26662B1BB R11R1R11R1R11R −−=−⋅−−=−⋅−−= .
Varianta C:
1. pentru d = 2, divizor propriu, rezultă 32
6
d
n== , adică la fiecare 3 elemente se introduce
redundanŃa; rezultă figura 2.1.12.
MODELAREA PROCESELOR ENERGETICE
62
Figura 2.1.12. Sistemul C, format din CI, CII, fiecare cu C1||C2, respectiv C3||C4
• se calculează:
o 34C3C2C1C RRRRR ==== ;
o ( ) ( ) ( )2333CIICI R11R1R11RR −−=−⋅−−== ;
o ( )223
CIICIC R11RRR
−−=⋅= .
2. pentru d = 3, divizor propriu, rezultă 23
6
d
n== , adică la fiecare 2 elemente se
introduce redundanŃa; rezultă figura 2.1.13.
Figura 2.1.13. Sistemul C
format din CI, CII, CIII, fiecare cu C1||C2, C3||C4, respectiv C5||C6
• se calculează:
o 26C5C4C3C2C1C RRRRRRR ====== ;
o ( ) ( ) ( )2222CIIICIICI R11R1R11RRR −−=−⋅−−=== ;
o ( )322
CIIICIICIC R11RRRR
−−=⋅⋅= .
Varianta D:
• pentru d = 6, divizor impropriu, rezultă 16
6
d
n== , adică la fiecare element se introduce
redundanŃa; rezultă că se dublează fiecare element component, figura 2.1.14.
Figura 2.1.14. Sistemul D
format din D1, D2, D3, D4, D5, D6 fiecare cu câte 2 elemente paralel
MODELAREA PROCESELOR ENERGETICE
63
• se calculează:
o ( )26D5D4D3D2D1D R11RRRRRR −−====== ;
o ( )[ ]626D5D4D3D2D1DD R11RRRRRRR −−=⋅⋅⋅⋅⋅= .
Generalizarea variantei 1
pentru sisteme serie cu număr par de elemente, n = 2k elemente, *Nk∈ Varianta A:
• se calculează nA RR = ;
• se determină mulŃimea divizorilor lui n (proprii şi improprii). Varianta B:
• pentru d = 1, divizor impropriu: • se calculează:
o nd
n
2B1B RRRR === ;
o ( ) ( ) ( )2n
2
d
n
2B1BB R11R11R1R11R −−=
−−=−⋅−−= .
Varianta C: • pentru d = divizor propriu: • se calculează:
o n,1i,RR d
n
Ci == ;
o ( ) d,Ij,R11R11R
2
d
n2
CiCj =
−−=−−= ;
o
d2
d
ndCjC R11RR
−−== .
Varianta D: • pentru d = n = divizor impropriu: • se calculează:
o ( ) n,1i,R11R11R 2
2
d
n
Di =−−=
−−= ;
o ( )[ ]n2
n2
d
nnDiD R11R11RR −−=
−−== .
MODELAREA PROCESELOR ENERGETICE
64
Varianta 2. Pentru sisteme serie cu număr par de elemente, n = 2k+1 elemente, *Nk∈ I. Pentru k=1 ⇒ n = 3 elemente (figura II. 15) , număr prim de elemente.
Figura II.15. Sistemul A iniŃial
Varianta A:
• se calculează 3A RR = ;
• se determină mulŃimea divizorilor lui 3: { }3;1D3 = , divizori improprii;
Varianta B:
• pentru d = 1, rezultă 31
3
d
n== , adică la fiecare set de 3 elemente se introduce
redundanŃa; rezultă, în cazul de faŃă, că se dublează sistemul iniŃial, figura 2.1.16.
Figura 2.1.16. Sistemul B, format din B1, B2, fiecare cu câte 3 elemente serie
• se calculează:
o 32B1B RRR == ;
o ( ) ( ) ( ) ( ) ( )23332B1BB R11R1R11R1R11R −−=−⋅−−=−⋅−−=
Varianta D:
• pentru d = 3, rezultă 13
3
d
n== , adică la fiecare element se introduce redundanŃa;
rezultă, în cazul de faŃă, că se dublează fiecare element component, figura 2.1.17.
Figura 2.1.17. Sistemul D, format din D1, D2 ,D3 fiecare cu câte 2 elemente paralel • se calculează:
o ( )23D2D1D R11RRR −−=== ;
o ( )[ ]323D2D1DD R11RRRR −−=⋅⋅= .
II. Pentru k = 2 ⇒ n = 5 elemente (figura 2.1.18) , număr prim de elemente.
Figura 2.1.18. Sistemul A iniŃial
MODELAREA PROCESELOR ENERGETICE
65
Varianta A:
• se calculează 5A RR = ;
• se determină mulŃimea divizorilor lui 5: { }5;1D5 = , divizori improprii;
Varianta B:
• pentru d = 1, rezultă 51
5
d
n== , adică la fiecare set de 5 elemente se introduce
redundanŃa; rezultă, în cazul de faŃă, că se dublează sistemul iniŃial, figura 2.1.19.
Figura 2.1.19. Sistemul B, format din B1, B2, fiecare cu câte 5 elemente serie
• se calculează:
o 52B1B RRR == ;
o ( ) ( ) ( ) ( ) ( )25552B1BB R11R1R11R1R11R −−=−⋅−−=−⋅−−=
Varianta D:
• pentru d = 5, rezultă 15
5
d
n== , adică la fiecare element se introduce redundanŃa;
rezultă, în cazul de faŃă, că se dublează fiecare element component, figura 2.1.20.
Figura 2.1.20. Sistemul D
format din D1, D2 ,D3, D4, D5 fiecare cu câte 2 elemente paralel
• se calculează:
o ( )25D4D3D2D1D R11RRRRR −−===== ;
o ( )[ ]525D4D3D2D1DD R11RRRRRR −−=⋅⋅⋅⋅= .
III. Pentru k = 4 ⇒ n = 9 elemente (figura 2.1.21).
Figura 2.1.21. Sistemul A iniŃial
Varianta A:
• se calculează 9A RR = ;
• se determină mulŃimea divizorilor lui 9: { }9;3;1D6 = .
MODELAREA PROCESELOR ENERGETICE
66
Varianta B:
• pentru d = 1, divizor impropriu, rezultă 91
9
d
n== , adică la fiecare set de 9 elemente
se introduce redundanŃa; rezultă, în cazul de faŃă, că se dublează sistemul iniŃial, figura 2.1.22.
Figura 2.1.22. Sistemul B, format din B1, B2, fiecare cu câte 9 elemente serie
• se calculează:
o 92B1B RRR == ;
o ( ) ( ) ( ) ( ) ( )29992B1BB R11R1R11R1R11R −−=−⋅−−=−⋅−−= .
Varianta C:
• pentru d = 3, divizor propriu, rezultă 33
9
d
n== , adică la fiecare 3 elemente se introduce
redundanŃa; rezultă figura 2.1.23.
Figura 2.1.23. Sistemul C
format din CI, CII, CIII fiecare cu C1||C2, C3||C4, respectiv C5||C6 • se calculează:
o 36C5C4C3C2C1C RRRRRRR ====== ;
o ( ) ( ) ( )2333CIIICIICI R11R1R11RRR −−=−⋅−−=== ;
o ( )323
CIIICIICIC R11RRRR
−−=⋅⋅= .
Varianta D:
• pentru d = 9, divizor impropriu, rezultă 19
9
d
n== , adică la fiecare element se introduce
redundanŃa; rezultă că se dublează fiecare element component, figura 2.1.24.
Figura 2.1.24. Sistemul D
format din D1, D2, D3, D4, D5, D6, D7, D8, D9 fiecare cu câte 2 elemente paralel
• se calculează:
o ( )29D8D7D6D5D4D3D2D1D R11RRRRRRRRR −−=========
MODELAREA PROCESELOR ENERGETICE
67
o ( )[ ]929D8D7D6D5D4D3D2D1DD R11RRRRRRRRRR −−=⋅⋅⋅⋅⋅⋅⋅⋅= .
Generalizarea variantei 2
pentru sisteme serie cu număr impar de elemente, n = 2k+1 elemente, *Nk∈ Varianta A:
• se calculează nA RR = ;
• se determină mulŃimea divizorilor lui n (proprii şi improprii). Varianta B:
• pentru d = 1, divizor impropriu: • se calculează:
o nd
n
2B1B RRRR === ;
o ( ) ( ) ( )2n
2
d
n
2B1BB R11R11R1R11R −−=
−−=−⋅−−= .
Varianta C: • pentru d = divizor propriu: • se calculează:
o n,1i,RR d
n
Ci == ;
o ( ) d,Ij,R11R11R
2
d
n2
CiCj =
−−=−−= ;
o
d2
d
ndCjC R11RR
−−== .
Varianta D: • pentru d = n = divizor impropriu: • se calculează:
o ( ) n,1i,R11R11R 2
2
d
n
Di =−−=
−−= ;
o ( )[ ]n2
n2
d
nnDiD R11R11RR −−=
−−== .
MODELAREA PROCESELOR ENERGETICE
68
Varianta 3. Generalizare - sisteme serie formate din “n” elemente, indiferent de paritate Varianta A:
• se calculează nA RR = ;
• se determină mulŃimea divizorilor lui n (proprii şi improprii). Varianta B:
• pentru d = 1, divizor impropriu, se calculează: ( )2nB R11R −−= . (2.1.8)
Varianta C:
• pentru d = divizor propriu, se calculează:
d2
d
n
C R11R
−−= . (2.1.9)
Varianta D:
• pentru d = n = divizor impropriu, se calculează: ( )[ ]n2D R11R −−= . (2.1.10)
2.1.2.2. Metoda Sharma–Venkateswaran (MSV)
Formularea problemei [1, 2, 5]
FaŃă de ipotezele generale formulate asupra problemelor de optimizare a fiabilităŃii unui sistem serie cu N etaje, având alocate xj componente redundante, se presupune că nonfiabilitate unei componente pj<0,5, astfel încât nonfiabilitatea sistemului dată de expresia completă
( )∏=
−−=N
1j
xjjS p11F (2.1.11)
să poată fi aproximată prin:
∑=
≅N
1j
xjjS pF (2.1.12)
În aceste condiŃii, problemele de optimizare a fiabilităŃii sistemelor supuse la constrângeri neliniare pot fi formulate prin minimizarea nonfiabilităŃii sistemului, FS cu restricŃiile:
( )∑=
−=≤
N
1jijij m,1ibxg (2.1.13)
unde: ( )xjg ij - este resursa de tipul i consumată pentru alocarea etajului j, iar
bi - este resursa disponibilă pentru constrângerea i. Obiectivul este de a micşora, în etape succesive, nonfiabilitatea sistemului (FS).
Procedura este aceea de a adăuga la fiecare pas, câte o componentă redundantă etajului cu cea mai mare valoare a indicatorului pxj din relaŃia de mai sus, dacă constrângerile exprimate nu sunt depăşite.
Algoritmul se desfăşoară în următoarele etape: 1. Se iniŃializează ( ) ( )1,,1,1x,x,xx N21 KK == ; sistemul fiind serie este necesar ca
fiecare etaj să conŃină cel puŃin o componentă în condiŃiile în care restricŃiile nu sunt depăşite. 2. Se adaugă o componentă redundantă celui mai nonfiabil etaj. 3. Se verifică restricŃiile:
• Dacă oricare dintre restricŃii este depăşită, se merge la etapa a 4-a;
MODELAREA PROCESELOR ENERGETICE
69
• Dacă nici o restricŃie nu a fost depăşită, se merge la etapa a 2-a; • Dacă oricare dintre restricŃiile problemei este satisfăcută, se opreşte algoritmul.
AlocaŃia obŃinută x =(x1,...xN) este configuraŃia optimă a sistemului. 4. Se elimină elementul redundant adăugat la etapa a 2-a. AlocaŃia rezultată este optimă,
pentru etajul respectiv şi, în consecinŃă, el nu va mai fi luat în considerare într-o analiză ulterioară. 5. Dacă toate etajele au fost testate, se opreşte algoritmul, iar alocaŃia obŃinută (x) este configuraŃia optimă. În caz contrar, se merge la atapa a 2-a.
6. Se calculează fiabilitatea sistemului RS pentru x.
2.1.2.3. Metoda Aggarwal–Gupta–Misra (MAGM) Formularea problemei [1, 2, 5]
Metoda Sharma – Venkateswaran, deşi este simplă şi are o aplicabilitate generală, prezintă dezavantajul de a genera soluŃii suboptimale atunci când etajele sistemului au componentele cu fiabilităŃile de valori apropiate sau egale, dar cu costuri diferite.
Aggarwal–Gupta–Misra au propus un algoritm utilizând un nou criteriu de selecŃie a etajului unde trebuie adăugat elementul redundant.
Se adaugă componentă acelui etaj unde se realizează cea mai mare incrementare a raportului dintre variaŃia creşterii de fiabilitate şi produsul variaŃiei creşterii de resurse. Acest raport defineşte factorul de selecŃie în cazul sistemelor serie:
( ) ( )
( )∏=
∆
−∆=
m
1ijij
xj
jj
xg
r1xK
j
(2.1.14)
unde:
( ) ( ) ( ) ( ) jjjjjxjj
xjj
1xj
xj
xj prr1rr1r1r1 ⋅=−=−−−=−∆ + (2.1.15)
şi
( ) ( ) ( )jijjijjij xg1xgxg −+=∆ (2.1.16)
În cazul constrângerilor neliniare ( )jj xK , poate fi evaluat apelând la relaŃia de recurenŃă:
( ) ( )jjjjj xKp1xK =+ (2.1.17)
Problemele de optimizare cu modele structurale complexe se rezolvă folosind drept factor de selecŃie:
( ) ( )
( )∏=
∆=
m
1ijij
jSjj
xg
xFxK (2.1.18)
în care, ( ) ( )[ ]jSjjjS F/xFFrxF ∂∂⋅= (2.1.19)
Algoritmul se desfăşoară în următoarele etape: 1. Se iniŃializează ( ) ( )1,,1,1x,x,xx N21 KK == ;
2. a) Se calculează ( )jj xK , j=1,...,N.
b) Se selectează etajul având cea mai mare valoare a factorului ( )jj xK şi acestuia
i se alocă o componentă redundantă. 3. Se verifică, dacă restricŃiile nu au fost depăşite.
MODELAREA PROCESELOR ENERGETICE
70
• Dacă soluŃia este în domeniul admisibil, se adaugă în paralel o componentă etajului care are cea mai mare valoare a factorului ( )jj xK . Se modifică valoarea alocaŃiei xj,
respectiv a factorului ( )jj xK şi se continuă cu etapa a 2-a;
• Dacă cel puŃin o constrângere este îndeplinită, valoarea curentă a vectorului x este soluŃia optimă;
• Dacă cel puŃin o restricŃie este depăşită, se elimină componenta adăugată etajului, acesta nemaifiind luat în considerare în etapele viitoare şi se repetă etapa a 2-a.
Când toate etajele au fost testate, valoarea curentă a lui x reprezintă soluŃia optimă. 4. Se calculează fiabilitatea sistemului RS pentru x.
2.2. Programarea optimizării nivelului de rezervare în limbajul de programare C++. Studii de caz
2.2.1. Realizarea unor programe în C++ privind optimizarea nivelului de rezervare
Limbajul de programare C++, este un program de înalt nivel, ce permite implementarea unor algoritmi de rezolvare a problemelor din cadrul diverselor domenii. [3] Pe baza celor trei modele matematice prezentate în cadrul paragrafului 2.1.2. referitoare la optimizarea nivelului de rezervare, s-au realizat trei programe în limbajul C++ corespunzătoare acestor modele. [6]
Pagina de start în C++ este prezentată în figura 2.2.1.
Figura 2.2.1. Pagina de start în C++
Accesând din meniul File opŃiunea Open se va deschide fereastra din figura 2.2.2, fereastră din care utilizatorul are posibilitatea de a selecta programul realizat pe care doreşte să-l ruleze.
Figura 2.2.2. Captură de ecran la accesarea opŃiunii File – Open
În cele ce urmează vom prezenta câteva capturi de ecran cu programele respective, programele în sine fiind cuprinse în capitolul Anexe.
MODELAREA PROCESELOR ENERGETICE
71
2.2.1.1. Simularea introducerii optime a redundanŃei la sistemele serie
Pornind de la modelul matematic prezentat în paragraful 2.1.2.1 s-a realizat programul 1 de simulare a introducerii optime a redundanŃei optime la sistemele serie – Anexa 2.1.
Figura 2.2.3. Captură de ecran cu selecŃia rulării programului 1
de simulare a introducerii optime a redundanŃei optime la sistemele serie
La deschiderea programului apare fereastra din figura 2.2.4, de unde în continuare fie vom accesa meniul Run, fie vom aplica din tastatură comanda Ctr F9 - figura II.5.
Figura 2.2.4. Captură de ecran cu deschiderea programului 1
Figura 2.2.5. Captură de ecran cu selecŃia meniului Run
După accesarea acestei din urmă comenzi se deschide fereastra din figura 2.2.6 .
Figura 2.2.6. Începerea rulării programului 1
MODELAREA PROCESELOR ENERGETICE
72
În funcŃia main, utilizatorul va trebui să aleagă una dintre opŃiunile afişate pe care le doreşte. Alegerea se va face apăsând tasta cu numărul corespunzător doleanŃei utilizatorului.
De exemplu, dacă utilizatorul optează pentru varianta 3, Generalizare va apăsa din tastă numărul 3; pentru un anumit număr de elemente ales şi pentru o anumită fiabilitate, programul va rula conform modelului prezentat în paragraful 2.1.2.1 după care programul o să-i afişeze fereastra din figura 2.2.7 cu rezultatele calculate.
Figura 2.2.7. Introducerea datelor de intrare şi a rezultatelor afişate în urma rulării prg.1
Se procedează în mod similar, dacă se doreşte rularea celorlalte două posibilităŃi: - se tastează tasta 1, se va introduce valoarea lui k, nivelul de fiabilitate, iar programul va
rula varianta 1, adică pentru situaŃia sistemelor serie cu număr par de elemente, n = 2k elemente;
- se tastează tasta 2, se va introduce valoarea lui k, nivelul de fiabilitate, iar programul va rula varianta 2, adică pentru situaŃia sistemelor serie cu număr impar de elemente, n = 2k+1 elemente;
- la Ieşirea din program se selectează tasta 4.
2.2.1.2. Simularea introducerii optime a redundanŃei la sistemele serie utilizând MSV
Pornind de la modelul matematic prezentat în paragraful 2.1.2.2 s-a realizat programul 2 de simulare a introducerii optime a redundanŃei optime la sistemele serie utilizând MSV – Anexa 2.2. Utilizatorul va accesa programul în mod similar programului 1, adică urmând calea de deschidere a programului C++, apoi paşii File – Open – Selectarea programului dorit – Run, după care i se va afişa o fereastră de tipul celei din figura II.8; în această fereastră utilizatorul va trebui să introducă din tastatură valoarea n a numărului de elemente, valorile intensităŃilor de defectare-reparare, respectiv a costurilor fiecărui element, valoarea restricŃiei de costuri şi, pentru că am dorit ca programul să afişeze şi indicatorii durată totală de funcŃionare, respectiv nefuncŃionare a sistemului, utilizatorul va introduce şi un timp de analiză TA.
Figura 2.2.8. Introducerea datelor de intrare pentru programul 2
MODELAREA PROCESELOR ENERGETICE
73
După introducerea acestor date, cu o simplă accesare a tastei Enter programul va oferi configuraŃia optimă conform restricŃiei impuse, precum şi rezultatele finale ale fiabilităŃii, nonfiabilităŃii, duratei de funcŃionare şi nefuncŃionare a sistemului cu configuraŃia optimă - figura 2.2.9.
Figura 2.2.9. Afişarea rezultatelor rulării programului 2
2.2.1.3. Simularea introducerii optime a redundanŃei la sistemele serie utilizând
MAGM
Pornind de la modelul matematic prezentat în paragraful 2.1.2.3 s-a realizat programul 3 de simulare a introducerii optime a redundanŃei optime la sistemele serie utilizând MAGM – Anexa 2.3. Utilizatorul va accesa programul în mod similar programului 1, adică urmând calea de deschidere a programului C++, apoi paşii File – Open – Selectarea programului dorit – Run, după care i se va afişa o fereastră de tipul celei din figura 2.2.10; în această fereastră utilizatorul va trebui să introducă din tastatură valoarea n a numărului de elemente, valorile intensităŃilor de defectare-reparare, respectiv a costurilor fiecărui element, valoarea restricŃiei de costuri şi, pentru că am dorit ca programul să afişeze şi indicatorii durată totală de funcŃionare, respectiv nefuncŃionare a sistemului, utilizatorul va introduce şi un timp de analiză TA.
Figura 2.2.10. Introducerea datelor de intrare pentru programul 3
După introducerea acestor date, cu o simplă accesare a tastei Enter programul va oferi configuraŃia optimă conform restricŃiei impuse, precum şi rezultatele finale ale fiabilităŃii, nonfiabilităŃii, duratei de funcŃionare şi nefuncŃionare a sistemului cu configuraŃia optimă - figura 2.2.11.
MODELAREA PROCESELOR ENERGETICE
74
Figura 2.2.11. Afişarea rezultatelor rulării programului 3
2.2.2 Studii de caz. Rezultate şi interpretări
În cele ce urmează, rulând programele realizate în C++, prezentate anterior, care au fost construite pe modelele matematice prezentate în paragraful 2.1.2, vom prezenta câteva rezultate, interpretări pentru diverse categorii de sisteme formate din n elemente serie. [6]
2.2.2.1. Rezultatele simulării introducerii optime a redundanŃei la sistemele serie formate din n elemente
Formularea problemei: [6] Să se stabilească la ce nivel trebuie introdusă redundanŃa, astfel încât efectul asupra fiabilităŃii să fie maxim. Evaluarea numerică se va face pentru un sistem format din n elemente serie având acelaşi nivel de fiabilitate:
.95,0R;9,0R;85,0R;8,0R ==== Rezultatele numerice pentru diferitele tipuri de sisteme analizate sunt afişate în tabelele
2.2.1 ÷2.2.4, iar reprezentările grafice în figurile 2.2.12 ÷2.2.15.
Tabelul 2.2.1. Rezultatele numerice pentru un sistem format din 3 elemente serie Fiabilitatea
Varianta R = 0.8 R = 0.85 R = 0.9 R = 0.95
A 0.512 0.614125 0.729 0.857375 B 0.761856 0.851101 0.926559 0.979758 C - - - -
D 0.884736 0.934007 0.970299 0.992519
MODELAREA PROCESELOR ENERGETICE
75
0.761856
0.851101
0.926559
0.979758
0.884736
0.934007
0.970299
0.992519
0.857375
0.729
0.614125
0.512
0 0.2 0.4 0.6 0.8 1
R = 0.8
R = 0.85
R = 0.9
R = 0.95
Fia
bilit
atea D
B
A
Figura 2.2.12. Diagramă de tip bară cuprinzând evoluŃia sistemului serie analizat
(3 elemente serie) Tabelul 2.2.2. Rezultatele numerice pentru un sistem format din 4 elemente serie
Fiabilitatea Varianta
R = 0.8 R = 0.85 R = 0.9 R = 0.95 A 0.4096 0.522006 0.6561 0.814506 B 0.651428 0.771522 0.881733 0.965592 C 0.757596 0.851918 0.929103 0.981078 D 0.849347 0.912992 0.960596 0.990037
0.40
96 0.52
2006
0.65
61
0.81
4506
0.65
1428
0.77
1522
0.88
1733
0.96
5592
0.75
7596
0.85
1918
0.92
9103
0.98
1078
0.84
9347
0.96
0596
0.91
2992
0.99
0037
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
R = 0.8 R = 0.85 R = 0.9 R = 0.95
Fiabilitatea
A
B
C
D
Figura 2.2.13. Diagramă de tip coloană cuprinzând evoluŃia sistemului serie analizat
(4 elemente serie)
MODELAREA PROCESELOR ENERGETICE
76
Tabelul 2.2.3. Rezultatele numerice pentru un sistem format din 9 elemente serie Fiabilitatea
Varianta R = 0.8 R = 0.85 R = 0.9 R = 0.95 A 0.134218 0.231617 0.38742 0.630249 B 0.250421 0.409588 0.624746 0.863284 C 0.4422 0.616513 0.795462 0.940207 D 0.692534 0.8148 0.913517 0.977724
0.13
422
0.25
042 0.
4422
0.69
253
0.23
162
0.40
959 0.
6165
10.
8148
0.38
742
0.62
475
0.79
546
0.91
352
0.63
025
0.86
328
0.94
021
0.97
772
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
R = 0.8 R = 0.85 R = 0.9 R = 0.95
Fiabilitatea
A
B
C
D
Figura 2.2.14. Diagramă de tip con cuprinzând evoluŃia sistemului serie analizat
(9 elemente serie)
Tabelul 2.2.4. Rezultatele numerice pentru un sistem format din 10 elemente serie Fiabilitatea
Varianta R = 0.8 R = 0.85 R = 0.9 R = 0.95
A 0.107374 0.196874 0.348678 0.598737 B 0.201319 0.354989 0.57578 0.838988 C 0.499568 0.669875 0.83207 0.953364 D 0.664833 0.796467 0.904382 0.975279
0.107
37
0.20
132 0.499568 0.664833
0.196
87
0.35
499 0.669875 0.796467
0.348
68
0.57
578 0.83207 0.904382
0.598
74
0.83
899 0.953364 0.975279
0% 20% 40% 60% 80% 100%
R = 0.8
R = 0.85
R = 0.9
R = 0.95
Fia
bilit
atea A
B
C
D
Figura 2.2.15. Diagramă de tip bară cuprinzând evoluŃia sistemului serie analizat
(10 elemente serie)
MODELAREA PROCESELOR ENERGETICE
77
Din tabelele 2.2.1 ÷2.2.4, respectiv figurile 2.2.12 ÷2.2.15 se constată că, cea mai înaltă fiabilitate se obŃine aplicând redundanŃa la nivelul cel mai de jos al sistemului, deci la nivelul componentelor (varianta D).
Tabelul 2.2.5. Rezultatele comparative între modelul analitic şi programul de simulare
pentru un sistem format din 4 elemente serie Fiabilitatea R = 0.85 Varianta analitic simulare
A 0.522006 0.522006 B 0.7715219 0.771522 C 0.8519175 0.851918 D 0.912992 0.912992
Din tabelul 2.2.5 se observă că rezultatele comparative obŃinute analitic şi din simulare sunt identice, având în vedere că s-a impus programului restricŃia de calcul cu 6 zecimale.
2.2.2.2. Rezultatele simulării introducerii optime a redundanŃei la sistemele serie formate din n elemente utilizând MSV Formularea problemei: [6] Să se aplice MSV cu referire la sistemul serie reprezentat în figura 2.2.16. Se cunosc următoarele date de intrare – tabelul 2.2.6, figura 2.2.16:
Tabelul 2.2.6. Datele de intrare ale echipamentelor Fiabilitatea PreŃul [ ]jC Simbolul
echipamentelor [ ]1−hλ [ ]1−hµ USD 510
preŃUR =
S 51025,0 −⋅ 0,086 600.123 ⋅ 126,03 ⋅
IM 5107,10 −⋅ 0,082 17.600 0,176
LEA 3100485,0 −⋅ 0,126 357.000 3,57
T 51054,7 −⋅ 0,034 25.000 0,25
IJ 51023,2 −⋅ 0,39 3.500 0,035
TC 51028,0 −⋅ 0,245 5.400 0,054
Limita de costuri impusă este: .5URC ≤ Se cere, să se calculeze: • probabilitatea de succes; • numărul total de ore de întrerupere ( )ATβ în decurs de 1an; ore8760an1TA == .
MODELAREA PROCESELOR ENERGETICE
78
Figura 2.2.16. Schema electrică supusă analizei
Rezolvare:
A. Metoda analitică SV
Diagrama echivalentă de fiabilitate (DEF) este:
1 2 3 4 5 6 7 8
TC S ÎM S LEA S T ÎJ
Figura 2.2.17. (A): DEF a sistemului din figura II.16
Pe baza indicatorilor de fiabilitate din tabelul 2.2.6. vom calcula, pentru fiecare dintre echipamentele care intră în componenŃa schemei, fiabilitatea, respectiv nonfiabilitatea, după
formulele bine cunoscute: R1F;R −=µ+λ
µ= .
Rezultatele sunt sintetizate în tabelul II.7:
Tabelul 2.2.7. Calculul fiabilităŃii/nonfiabilităŃii echipamentelor Simbolul echipamentelor R F
S 0,99997 0,00003 ÎM 0,99869 0,00131
LEA 0,99961 0,00039 T 0,99778 0,00222 ÎJ 0,99994 0,00006 TC 0,99998 0,00002
Ce ştim despre sistemul din figura 2.2.17?
MODELAREA PROCESELOR ENERGETICE
79
� îi cunoaştem fiabilitatea şi, implicit nonfiabilitatea, adică:
00403,099597,01R1F99597,0RR 1A
8
1iiA =−=−=⇒==∏
=
� cunoaştem nivelul resurselor disponibile:
UR5463,4CC8
1jjA <==∑
=
Etape: • AlocaŃia de bază a sistemului este (1,1,1,1,1,1,1,1), iar nonfiabilitatea etajelor în
această configuraŃie este (0,00002;0,00003;0,00131;0,00003;0,00039;0,00003;0,00222;0,00006). Ca urmare, elementul care are cea mai mare nonfiabilitate, în cazul de faŃă, este elementul 7; prin urmare, introducem elementului 7 un element redundant de acelaşi tip, adică tot 7, obŃinându-se configuraŃia (1,1,1,1,1,1,2,1). Resursele consumate, în acest caz devin:
UR5713,425,0463.4CCC 7AB <=+=+= , deci restricŃia nu a fost depăşită.
99999508,0F1R
00000492,000222,000222,0FFF
II
77I
=−=
=⋅=⋅=
1 2 4 5 6 8
TC S S LEA S ÎJ7
7
I
T
3
ÎM
Figura 2.2.18. (B): Structura sistemului analizat după primul pas
• Algoritmul continuă prin căutarea celei mai mari nonfiabilităŃi din şirul de valori ale mărimii F: (0,00002;0,00003;0,00131;0,00003;0,00039;0,00003;0,00000492;0,00006) Se observă că este necesară redundanŃa la elementul 3, deci vom introduce un element 3 paralel, configuraŃia devenind (1,1,2,1,1,1,2,1). Resursele consumate, în acest caz devin:
UR5889,4176,0713,4CCC 3BC <=+=+= deci restricŃia nu a fost depăşită.
99999829,0F1R
00000171,000131,000131,0FFF
IIII
33II
=−=
=⋅=⋅=
1 2 4 5 6 8
TC S S LEA S ÎJ3
3
7
7
III
ÎM T
Figura 2.2.19. (C): Structura sistemului analizat după pasul 2
Algoritmul continuă prin căutarea celei mai mari nonfiabilităŃi din şirul de valori ale mărimii F: (0,00002;0,00003;0,00000171;0,00003;0,00039;0,00003;0,00000492; 0,00006). Se observă că este necesară redundanŃa la elementul 5, deci vom introduce un element 5 paralel, configuraŃia devenind (1,1,2,1,2,1,2,1). Resursele consumate, în acest caz devin:
UR557,3889,4CCC 5CD >+=+= , deci restricŃia a fost depăşită.
ConfiguraŃia finală rămâne: (1,1,2,1,1,1,2,1), iar fiabilitatea va fi:
MODELAREA PROCESELOR ENERGETICE
80
AS
3
8I654II21S
R99597,099943,0R
99994,099999508,099961,099999829,099997,099998,0
RRRRRRRRR
=>=
=⋅⋅⋅⋅⋅=
=⋅⋅⋅⋅⋅⋅⋅=
( ) ore5993,4876000057,0TPT
00057,099943,01P1PF
99943,0PR
ARAS
SRS
SS
≅=⋅=⋅=β
=−=−==
==
B. Programul de simulare 2
Figura 2.2.20. Datele de intrare a sistemului din figura II.16
Figura 2.2.21. Rezultate finale în urma rulării programului 2
Tabelul 2.2.8. Rezultatele comparative între calculul analitic şi programul de simulare 2 pentru sistemul analizat
Rezultate Valori indicatori analitice simulare
Fiabilitatea sistemului iniŃial 0.99597 0.995948 ConfiguraŃia optimă 11211121 11211121 Resursa consumată 4.889 4.889 Fiabilitatea sistemului final 0.99943 0.999453 Durata de funcŃionare a sistemului final 8755.007 8755.207354 Durata de nefuncŃionare a sistemului final 4.993 4.792646 Din tabelul 2.2.8 se poate observa că diferenŃele numerice sunt nesemnificative, ele
datorându-se numărului de zecimale cu care se lucrează.
MODELAREA PROCESELOR ENERGETICE
81
2.2.2.3. Rezultatele simulării introducerii optime a redundanŃei la sistemele serie formate din n elemente utilizând MAGM Formularea problemei: [6] Să se aplice MAGM cu referire la sistemul serie şi la datele de la aplicaŃia anterioară – paragraful 2.2.2.2. Rezolvare:
A. Metoda analitică AGM
1 2 3 4 5 6 7 8
TC S ÎM S LEA S TJ ÎJ
Figura 2.2.22. (A): DEF a sistemului în structura iniŃială (minimală)
UR5463,4CC
00403,099597,01R1F
99597,0RR
8
1jjA
1A
8
1iiA
<==
=−=−=
==
∑
∏
=
=
.
Calculăm conform relaŃiilor (1.14), (1.15) factorii de selecŃie:
( ) ( )
( )
( )
( )∏∏==
∆
−=
∆
−∆=
m
1ijij
xjj
m
1ijij
xj
jj
xg
r1r
xg
r1xK
jj
Etape: • Pentru alocaŃia iniŃială ( )=8,7654321 xx,x,x,x,x,x,x (1,1,1,1,1,1,1,1),
calculăm factorii de selecŃie astfel:
( ) ( ) ( )00037,0
054,0
99998,0199998,0
C
R1R1xK
1
1
x11
11
1=
−⋅=
−⋅==
( ) ( ) ( )64
1
2
x22
22 KK000238,0126,0
99997,0199997,0
C
R1R1xK
2===
−⋅=
−⋅==
( ) ( ) ( )00743,0
176,0
99869,0199869,0
C
R1R1xK
1
3
x33
33
3
=−⋅
=−⋅
==
( ) ( ) ( )000109,0
57,3
99961,0199961,0
C
R1R1xK
1
5
x55
55
5
=−⋅
=−⋅
==
( ) ( ) ( )00886,0
25,0
99778,0199778,0
C
R1R1xK
1
7
x77
77
5=
−⋅=
−⋅==
( ) ( ) ( )00171,0
035,0
99994,0199994,0
C
R1R1xK
1
8
x88
88
5
=−⋅
=−⋅
==
Pentru alocaŃia iniŃială ( )=8,7654321 ,,,,,, xxxxxxxx (1,1,1,1,1,1,1,1), factorii de selecŃie sunt
MODELAREA PROCESELOR ENERGETICE
82
0,00037;0,000238;0,00743;0,000238;0,000109;0,000238;0,00886;0,00171.Deoarece etajul 7 are cel mai mare factor de selecŃie, acestuia i se alocă o rezervă, obŃinându-se vectorul (1,1,1,1;1;1;2;1) Resursele consumate, în acest caz devin:
UR5713,425,0463.4CCC 7AB <=+=+= , 99999508,0F1R
00000492,000222,000222,0FFF
II
77I
=−=
=⋅=⋅=
1 2 4 5 6 8
TC S S LEA S ÎJ7
7
I
T
3
ÎM
Figura 2.2.23. (B): Structura sistemului analizat după pasul 1
( ) ( ) ( )00000983,0
25,02
99778,0199778,0
C2
R1R2xK
2
7
x77
77
7
=⋅−⋅
=−⋅
==
• Algoritmul continuă prin căutarea celui mai mare factor de selecŃie pentru configuraŃia momentană, având valorile: (0,00037;0,000238;0,00743;0,000238;0,000109;0,000238;0,00000983;0,00171) Se observă că este optimă redundanŃa la elementul 3, deci vom introduce un element 3 paralel, configuraŃia devenind (1,1,2,1;1;1;2;1)
UR5889,4176,0713,4CCC 3BC <=+=+= .
99999829,0F1R
00000171,000131,000131,0FFF
IIII
33II
=−=
=⋅=⋅=
1 2 4 5 6 8
TC S S LEA S ÎJ3
3
7
7
III
ÎM T
Figura 2.2.24. (C): Structura sistemului analizat după pasul 2
( ) ( ) ( )00000486,0
176,02
99869,0199869,0
C2
R1R2xK
2
3
x33
33
3
=⋅−⋅
=−⋅
==
• Algoritmul continuă prin căutarea celui mai mare factor de selecŃie dintre valorile: (0,00037;0,000238;0,00000486;0,000238;0,000109;0,000238;0,00000983;0,00171) Se observă că este optimă redundanŃa la elementul 8, deci vom introduce un element 8 paralel, configuraŃia devenind (1,1,2,1;1;1;2;2).
UR5924,4035,0889,4CCC 8CD <=+=+= ,
9999999964,0F1R
0000000036,000006,000006,0FFF
IIIIII
88III
=−=
=⋅=⋅=
( ) ( ) ( )0000000514,0
035,02
99994,0199994,0
C2
R1R2xK
2
8
x88
88
5
=⋅−⋅
=−⋅
==
1 2
3
3
4 5 6
7
7
8
8
III III
TC S ÎM S LEA S T
Figura 2.2.25. (D): Structura sistemului analizat după pasul 3
MODELAREA PROCESELOR ENERGETICE
83
• Algoritmul continuă având în vedere valorile factorului de selecŃie (0,00037;0,000238;0,00000486;0,000238;0,000109;0,000238;0,00000983;0,0000000514) Se observă că este optimă redundanŃa la elementul 1, dar a mai introduce încă un TC nu se justifică. Deci configuraŃia optimă rămâne: (1,1,2,1;1;1;2;2).
A
3
IIIII654II21S
R99597,099943,0999449,0
9999999964,099999508,099961,099999829,099997,099998,0
RRRRRRRRR
=>>
=⋅⋅⋅⋅⋅=
=⋅⋅⋅⋅⋅⋅⋅=
Se observă că se obŃine o fiabilitate mai bună decât în cazul aplicării MSV.
( ) ore5826,48760000551,0TPT
000551,0999449,01P1PF
999449,0PR
ARAS
SRS
SS
≅=⋅=⋅=β
=−=−==
==
.
B. Programul de simulare 3
Figura 2.2.26. Datele de intrare a sistemului din figura II.16
Figura 2.2.27. Rezultate finale în urma rulării programului 3
MODELAREA PROCESELOR ENERGETICE
84
Tabelul 2.2.9. Rezultatele comparative între modelul analitic şi programul de simulare 3 pentru sistemul analizat
Rezultate Valori indicatori analitice simulare
Fiabilitatea sistemului iniŃial 0.99597 0.995948 ConfiguraŃia optimă 11211122 11211122 Resursa consumată 4.924 4.924 Fiabilitatea sistemului final 0.99943 0.99951 Durata de funcŃionare a sistemului final 8755.007 8755.707943 Durata de nefuncŃionare a sistemului final 4.993 4.292057
Din tabelul 2.2.9 se poate observa că diferenŃele numerice sunt nesemnificate, ele datorându-se numărului de zecimale cu care se lucrează.
Concluzii
• creşterea fiabilităŃii oricărui sistem este de regulă restricŃionată de costuri, astfel încât în aspectele privind optimizarea, tratate în prezenta lucrare sunt avute în vedere de fapt două cerinŃe, fiabilitatea şi economicitatea; • altă problemă de optimizare ce necesită rezolvare este cea legată de alegerea soluŃiei
optime dintre alternativa tratării în fiecare caz atât a cerinŃei de fiabilitate, cât şi a celei de economicitate sau a direcŃionării prioritare a efortului de cercetare în direcŃia uneia din ele; • necesitatea introducerii unor programe de calcul pentru reducerea volumului mare de
calcule; • dintre rezultatele obŃinute în cadrul studiilor de caz realizate putem concluziona:
o conform aplicării modelului matematic de introducere optimă a redundanŃei la sistemele serie formate din n elemente având acelaşi nivel de fiabilitate, cea mai înaltă fiabilitate se obŃine aplicând redundanŃa la nivelul cel mai de jos al sistemului, deci la nivelul componentelor (varianta D);
o dintre cele două metode dedicate optimizării nivelului de rezervare, MSV şi MAGM, cea mai eficientă este MAGM, deoarece prin aplicarea ei se elimină dezavantajul MSV care generează soluŃii suboptimale atunci când etajele sistemului au componentele cu fiabilităŃile de valori apropiate sau egale, dar cu costuri diferite.
Rezultatele comparative ale studiului de caz realizat sunt prezentate sintetic astfel: Rezultatele simulării Valori indicatori
MSV MAGM Fiabilitatea sistemului iniŃial 0.995948 0.995948 ConfiguraŃia optimă 11211121 11211122 Resursa consumată 4.889 4.924 Fiabilitatea sistemului final 0.999453 0.99951 Durata de funcŃionare a sistemului final 8755.207354 8755.707943 Durata de nefuncŃionare a sistemului final 4.792646 4.292057
Principalele contribuŃii ale autorului în cadrul capitolului sunt:
• realizarea unui model matematic de introducere optimă a redundanŃei la sistemele serie; • realizarea a trei programe în limbajul C++ privind optimizarea nivelului de rezervare; • realizarea unor studii de caz, comparaŃii între metodele analitice şi rezultatele în urma
simulărilor, interpretarea acestora.
MODELAREA PROCESELOR ENERGETICE
85
Bibliografie
[1] Băjenescu T., Fiabilitatea, disponibilitatea şi mentenabilitatea sistemelor electronice complexe, Editura de Vest, Timişoara, 1997;
[2] Cătuneanu V., PopenŃiu Fl., Optimizarea fiabilităŃii sistemelor, Editura Academiei, Bucureşti, 1989;
[3] DziŃac Simona, ProbabilităŃi şi statistică matematică, Editura UniversităŃii Aurel Vlaicu Arad, ISBN 978-973-752-533-8, Cod CNCSIS: 218, 166 pagini, 2010;
[4] DziŃac Simona, Fiabilitatea şi disponibilitatea sistemelor de distribuŃie a energiei electrice. Modelare şi simulare, Editura UniversităŃii din Oradea, ISBN 978-973-759-754-0, 338 pagini, Cod CNCSIS: 149, 2009;
[5] DziŃac Simona, Hosu George, Luncan Alina, Programarea optimizării nivelului de rezervare în limbajul de programare C++, în curs de apariŃie, 2011;
[6] Felea Ioan, DziŃac Simona, Fiabilitatea echipamentelor şi sistemelor energetice. AplicaŃii, Editura UniversităŃii din Oradea, ISBN (10) 973-759-198-4; ISBN (13) 978-973-759-198-2; 290 pagini, Cod CNCSIS: 149, 2006;
[7] Felea I., Coroiu Nicolae, Fiabilitatea şi mentenanŃa echipamentelor electrice, Editura Tehnică, Bucureşti, 2001, ISBN: 973-31-2025-1.
[8] Hosu Gheorghe, NaforniŃă Ciprian, Moga Bogdan, Multicriteria decision modeling methods for optimal implementation of maintenance works, lucrare comunicată la The 16th Students’ International Conference SECOSAFT, Sibiu, 19 – 21 mai, 2011.
Anexe
Anexa 2.1 Programul 1. Simularea introducerii optime a redundanŃei la sistemele serie
#include<iostream.h> #include<conio.h> #include<math.h> int k,n,opt,d; float R; void ra() { cout<<"Varianta initiala RA="<<pow(R,n)<<endl; } void rb() { cout<<"Pentru d=1 divizor impropriu:"<<endl; cout<<"RB1=RB2="<<pow(R,n)<<endl; cout<<"RB="<<1-pow(1-pow(R,n),2)<<endl; } void rc() { cout<<"Pentru divizorii proprii:"<<endl; for(d=2;d<=n/2;d++) if(n%d==0) { cout<<"RCi unde i=1,"<<n<<"="<<pow(R,n/d)<<endl; cout<<"RCj unde j=1,"<<d<<"="<<1-pow(1-pow(R,n/d),2)<<endl; cout<<"RC="<<pow(1-pow(1-pow(R,n/d),2),d)<<endl;
MODELAREA PROCESELOR ENERGETICE
86
} } void rd() { cout<<"Pentru d="<<n<<endl; cout<<"RDi unde i=1,"<<n<<"= "<<1-pow(1-R,2)<<endl; cout<<"RD="<<pow(1-pow(1-R,2),n)<<endl; } void main() { clrscr(); cout<<"Stabilirea nivelului de introducere a redundantei pentru"<<endl; cout<<"un sistem serie format din n elemente"; cout<<endl; cout<<"Alegeti optiunea:"<<endl; cout<<"1:Pentru sisteme formate din n=2k elemente"<<endl; cout<<"2:Pentru sisteme formate din n=2k+1 elemente"<<endl; cout<<"3:Generalizare"<<endl; cout<<"4:Iesire"<<endl; do{ cout<<"Optiunea:";cin>>opt; switch(opt) { case 1:{ cout<<"k=";cin>>k; cout<<"R=";cin>>R; n=2*k; ra(); rb(); rc(); rd(); break; } case 2:{cout<<"k=";cin>>k; cout<<"R=";cin>>R; n=2*k+1; ra(); rb(); rc(); rd(); break; } case 3:{cout<<"n=";cin>>n; cout<<"R=";cin>>R; ra(); rb(); rc(); rd(); break; }
MODELAREA PROCESELOR ENERGETICE
87
case 4:{ break; } } }while(opt!=4); }
Anexa 2.2 Programul 2. Simularea introducerii optime a redundanŃei la sistemele serie utilizând MSV #include<iostream.h> #include<conio.h> #include<math.h> int i,j,x[100]; unsigned long int n; long double R[100],F[100],C,FS,RS,CS,ult,max,ta,l[100],u[100],c[100]; void main() { clrscr(); cout<<"n=";cin>>n; for(i=1;i<=n;i++) { cout<<"l["<<i<<"]="; cin>>l[i]; } for(i=1;i<=n;i++) { cout<<"u["<<i<<"]="; cin>>u[i]; } for(i=1;i<=n;i++) { cout<<"c["<<i<<"]="; cin>>c[i]; x[i]=1; } cout<<"Dati restrictia";cin>>C; cout<<"Durata de analiza=";cin>>ta; for(i=1;i<=n;i++) { R[i]=u[i]/(l[i]+u[i]); F[i]=1-R[i]; } RS=1; FS=0; for(i=1;i<=n;i++) RS=RS*R[i]; cout<<"Fiabilitatea sistemului initial: "<<RS<<" "<<endl; FS=1-RS; CS=0; cout<<"Nonfiabilitatea sistemului initial: "<<FS<<" "<<endl;
MODELAREA PROCESELOR ENERGETICE
88
for(i=1;i<=n;i++) CS=CS+c[i]; cout<<"Costul sistemului initial: "<<CS<<endl; cout<<"Durata de functionare a sistemului initial: "<<RS*ta<<endl; cout<<"Durata de nefunctionare a sistemului initial: "<<FS*ta<<endl; while(CS<C) { //ult=CS; max=F[1]; j=1; for(i=2;i<=n;i++) if(F[i]>max) { max=F[i]; j=i; } CS=CS+c[j]; if(CS<=C) { x[j]++; cout<<"Costul schemei pe parcurs"<<CS<<" "<<endl; F[j]=F[j]*F[j]; cout<<"Nonfiabilitatea elem. redundant"<<F[j]<<" "<<endl; R[j]=1-F[j]; cout<<"Fiabilitatea elem. redundant"<<R[j]<<" "<<endl; } } cout<<"configuratia sistemului final:"<<endl; for(i=1;i<=n;i++) cout<<x[i]<<" "; cout<<endl; RS=1; FS=0; for(i=1;i<=n;i++) RS=RS*R[i]; cout<<"Fiabilitatea sistemului final: "<<RS<<" "<<endl; FS=1-RS; cout<<"Nonfiabilitatea sistemului final: "<<FS<<" "<<endl; cout<<"Durata de functionare a sistemului final: "<<RS*ta<<endl; cout<<"Durata de nefunctionare a sistemului final este: "<<FS*ta; getch(); }
MODELAREA PROCESELOR ENERGETICE
89
Anexa 2.3 Programul 3.
Simularea introducerii optime a redundanŃei la sistemele serie utilizând MAGM #include<iostream.h> #include<conio.h> #include<math.h> int i,j,x[100]; unsigned long int n; long double R[100],F[100],C,FS,RS,CS,ult,max,ta,l[100],u[100],c[100],K[100]; void main() { clrscr(); cout<<"n=";cin>>n; for(i=1;i<=n;i++) { cout<<"l["<<i<<"]="; cin>>l[i]; } for(i=1;i<=n;i++) { cout<<"u["<<i<<"]="; cin>>u[i]; } for(i=1;i<=n;i++) { cout<<"c["<<i<<"]="; cin>>c[i]; x[i]=1; } cout<<"Dati restrictia";cin>>C; cout<<"Durata de analiza=";cin>>ta; for(i=1;i<=n;i++) { R[i]=u[i]/(l[i]+u[i]); F[i]=1-R[i]; K[i]=(R[i]*pow(F[i],x[i]))/c[i]; } RS=1; FS=0; for(i=1;i<=n;i++) RS=RS*R[i]; cout<<"Fiabilitatea sistemului initial: "<<RS<<" "<<endl; FS=1-RS; cout<<"Nonfiabilitatea sistemului initial: "<<FS<<" "<<endl; for(i=1;i<=n;i++) CS=CS+c[i]; cout<<"Costul sistemului initial: "<<CS<<endl; cout<<"Durata de functionare a sistemului initial: "<<RS*ta<<endl; cout<<"Durata de nefunctionare a sistemului initial: "<<FS*ta<<endl; while(CS<C)
MODELAREA PROCESELOR ENERGETICE
90
{ ult=CS; max=K[1]; j=1; for(i=2;i<=n;i++) if(K[i]>max) { max=K[i]; j=i; } CS=CS+c[j]; if(CS<=C) { x[j]++; cout<<"Costul schemei pe parcurs"<<CS<<" "<<endl; F[j]=F[j]*F[j]; cout<<"Nonfiabilitatea elem. redundant"<<F[j]<<" "<<endl; R[j]=1-F[j]; cout<<"Fiabilitatea elem. redundant"<<R[j]<<" "<<endl; K[j]=(R[j]*pow(F[j],x[j]))/(x[j]*c[j]); } } cout<<"configuratia sistemului final:"<<endl; for(i=1;i<=n;i++) cout<<x[i]<<" "; cout<<endl; RS=1; FS=0; for(i=1;i<=n;i++) RS=RS*R[i]; cout<<"Fiabilitatea sistemului final: "<<RS<<" "<<endl; FS=1-RS; cout<<"Nonfiabilitatea sistemului final: "<<FS<<" "<<endl; cout<<"Durata de functionare a sistemului final: "<<RS*ta<<endl; cout<<"Durata de nefunctionare a sistemului final este: "<<FS*ta; getch(); }