You are on page 1of 11

Leksion 3

Zgjidhja e një sistemi ekuacionesh jo linearë.

Metodat iterative të zgjidhjes së sistemeve.

Metodat iterative përbëjnë një klasë të rëndësishme për zgjidhjen e sistemeve të ekuacioneve
lineare me përmasa shumë të mëdha, si dhe në zgjidhjen e sistemeve të ekuacioneve jo lineare. Në
praktikë, sistemet me përmasa të mëdha, zakonisht gëzojnë disa veti që lehtesojnë zgjidhjen e tyre.
Kështu p.sh. matricat e tyre shpesh përmbajnë zero ose janë simetrike dhe pozitivisht të
përcaktuara. Njohja dhe shfrytëzimi racional i vetive që gëzon matrica e sitemit ka rëndësi të madhe
për zgjedhjen e metodës iterative të përshtatshme.
Ideja themelore iterative për zgjidhjen e sitemeve linearë është:
Le të jetë sistemi i ekuacioneve linearë AX = Y me det A ¹ 0. Duke u nisur nga një përafrim
fillestar X0, në përgjithësi çfarëdo, ndërtohet vargu vektorial X 1, X2, …, Xk, … me anë të
formulave rekurente:

Xk+1 = Xk + ck+1 (Y - AXk) k = 0,1,2, … (2.14.1)

ku c1, c2, …, ck, … është një varg matricash. Nga mënyra e zgjedhjes së vargut të matricave ck
përftohen metoda të ndryshme iterative. Proceset iterative (2.14.1) gëzojnë vetinë që për secilin prej
tyre, zgjidhja e vërtetë X* është pikë e palëvizshme që nuk varet nga X0. Pra konvergjenca e
vargut (2.14.1) nuk varet nga marrja apriori e X0, por nga zgjedhja e X0 do varet vetëm shpejtësia e
konvergjencës (sa më afër X* të jetë X0 aq më shpejt do të konvergjojë procesi iterativ).

2.14.1 Metoda Jakobi (Jacobi).

Marrim një sistem me 3 ekuacione me 3 të panjohura:

ìa 11 x 1 + a 12 x 2 + a 13 x 3 = y 1
ï
ía 21 x 1 + a 22 x 2 + a 23 x 3 = y 2 (2.14.2)
ïa x + a x + a x = y
î 31 1 32 2 33 3 3

Nga ekuacioni i parë nxjerrim x1, nga i dyti x2 dhe nga i treti x3

7
ìx 1 = (y 1 - a 12 x 2 - a 13 x 3 ) / a 11
ï
íx 2 = (y 2 - a 21 x 1 - a 23 x 3 ) / a 22 (2.14.3)
ïx = (y - a x - a x ) / a
î 3 3 31 1 32 2 33

Për të panjohurat marrim një vlerë fillestare x10, x20, x30 dhe i zëvendësojmë në anën e djathtë të
(2.14.3) dhe marrim:

ìx 11 = (y 1 - a 12 x 02 - a 13 x 03 ) / a 11
ï 1 0 0
íx 2 = (y 2 - a 21 x 1 - a 23 x 3 ) / a 22 (2.14.4)
ï 1 0 0
îx 3 = (y 3 - a 31 x 1 - a 32 x 2 ) / a 33

Vlerat e llogaritura x11, x21, x31 të zëvendësuara në krahun e djathtë të (2.14.3) do të na japin vlerat
x12, x22, x32 e kështu me radhë merret vargu X0, X1, …..Xk, …i cili do konvergjojë (n.q.s.
konvergjon) në zgjidhjen e vërtetë X* pavarësisht nga vlera fillestare X0. Në praktikë mund të
përshpejtojmë llogaritjet duke përdorur një faktor përshpejtimi (fp) me vlerë ndërmjet 0 dhe 2
(shiko paragrafin 2.14.3) dhe mund të kufizojmë numrin e iteracioneve me nje vlerë imax.
Algoritmi i kësaj metode është:

Të dhëna: n, fp, e, aij, yi, xi (i dhe j = 1 në n)


Llogaritje: imax = 100
për i = i në n : zi = xi
për k = 1 në imax: ìrm = 0
ï
ï ì n

ï r = (y 1 å a ij z j ) / a ii - z i
-
ï
ï ï j=1
j¹ i
ïper i = 1 ne n ï
ïï ín.q.s r > rm: rm = r
ïx = x + fp * r
í ï i i
ï ï
ï î
ï
ïper i = 1 ne n: zi = xi
ï ìshkruaj x i (i = 1, n)
ïn.q.s rm < e í
ïî îndalo llogaritjet

2.14.2 Metoda Gaus -Zejdel (Gauss - Seidel) GZEID.

Si në metodën Jakobi, duke u nisur nga sistemi (2.14.3) marrim një vlerë fillestare x10, x20,
x3 . Në ekuacionin e parë zëvendësojmë x20 dhe x30 dhe marim :
0

8
x11 = (y1 - a12 x20 -a13 x30) / a11

Këtë vlerë të llogaritur x11 (dhe jo x10 ) e zëvendësojmë në ekuacionin e dytë të (2.14.3) dhe
marrim:

x21 = (y2 - a21 x11 -a23 x30) / a22

Po kështu në ekuacionin e tretë të (2.14.3) zëvendësojmë x11 dhe x21 (dhe jo x10 , x20) dhe marrim:

x31 = (y3 - a31 x11 -a32 x21) / a33

Në përgjithesi për një sistem me n ekuacione dhe n të panjohura, në ekuacionin e k+1


zëvendësojmë k të panjohurat e para me vlerat e tyre të llogaritura gjatë iteracionit dhe n - (k + 1)
të panjohurat e tjera me vlerat e tyre përpara iteracionit duke arritur tek xn që llogaritet me anë të n
- 1 të panjohurave x1, x2, …, xn-1, vlerat e të cilave janë tashmë të llogaritura gjatë iteracionit. Kjo
siguron një konvergjencë shumë më të shpejtë se metoda Jakobi.
Llogaritjet ndërpriten kur dy vlera të xj-ve, për iteracione të njëpasnjëshme janë afër në
mënyrë të “mjaftueshme”. Mund të përdoren dy kritere ndalimi:
n Konvergjenca absolute: |xjk+1 - xjk| £ e për j = 1 në n
x kj +1 - x kj
n Konvergjenca relative: £ e për j = 1 në n
x kj +1

Për sisteme me përmasa të mëdha nuk është komode të bëhen teste për çdo të panjohur xj. Në këto
raste ose bëhen teste në disa prej tyre ose bëhen teste në vlera të tipit:
1/2
ì n k +1 k 2 ü
[ ]
n

åx k +1
j -x k
j ose íå x j - x j ý ose
j=1 î j=1 þ
1/2
n x kj +1 - x kj ìï n é x k +1 - x k ù 2 üï
å íå ê
j j
ose ú ý
j=1 x kj +1 k +1
ïî j=1 êë x j úû ïþ

Konvergjenca e procesit nuk varet nga vektori fillestar X0 por vetëm nga koeficientët e matricës A.
Konvergjenca është e siguruar n.q.s kemi:
n
|aii| ³ åa
j=1
ij

i¹ j

Në praktikë kemi konvergjencë edhe për kushte më pak të rrepta.


Algoritmi i metodës është:

9
Të dhëna: n, fp, e, aij, yi, xi (i dhe j = 1 në n)
Llogaritje: imax = 100
për k = 1 në imax: ì
ï
ïrm = 0
ï ì n
ï ïr = (y 1 - å a ij x j ) / a ii - x i
ï ï j=1
ïï ï
j¹ i

íper i = 1 ne n ín.q.s r > rm: rm = r


ï ïx = x + fp * r
ï ï i i

ï ï
ï î
ï ìshkruaj x i (i = 1, n)
ïn.q.s rm < e í
ïî îndalo llogaritjet

2.14.3 Faktori i përshpejtimit.

Zgjedhja vlerës fillestare xj0 nuk influencon në konvergjencën apo divergjencën e procesit,
ajo influencon shumë në shpejtësinë e konvergjencës (kur kemi konvergjencë). Sa më afër zgjidhjes
të vërtetë të jetë vlera fillestare aq më e shpejtë është konvergjenca. Siç e treguam më lart, duke u
nisur nga xj0 llogaritet xj1. Në vend që të përdorim xj1 për iteracionin pasardhës, konvergjenca do
jetë më e shpejtë n.q.s. do fusim vlerën:

x*(1) = xj0 + l ( xj1 - xj0 )

Kështu në përgjithësi nga xjk përftohet xjk+1. Në iteracionin pasardhës në vend që të nisemi nga
xjk+1 nisemi nga:

x*(k+1) = xjk + l ( xjk+1 - xjk ) (2.14.5)

l - është faktori i përshpejtimit. Në praktikë l merret në mënyrë arbitrare i tillë që 0 < l < 2.
Në përgjithësi 1 < l < 2 përdoret për të përshpejtuar konvergjencën e një procesi tashmë
konvergjent dhe 0 < l < 1 lejon shpesh të bëhet konvergjent një proces divergjent.Mund të
përdoret e njëjta vlerë e l për të gjitha të panjohurat ose l të ndryshme për blloqe të ndryshme.
Në praktikë l nuk njihet në mënyrë paraprake, prandaj bëhen prova për të zgjedhur një l të
favorshme.
Ndiqet evoluimi i xjk -ve dhe pastaj futet një vlerë l dhe shihet ecuria e mëtejshme e xjk -
ve.

10
2.15 Sistemet e ekuacioneve jo lineare.

Një sistem me n ekuacione jo lineare me n të panjohura mund të shkruhet:

ìf1 (x 1 , x 2 , ... x n ) = 0
ïf (x , x , ... x ) = 0
ï 2 1 2 n
í (2.15.1)
ï... ..... ........
ïîf n (x 1 , x 2 , ... x n ) = 0

ose në trajtën vektoriale:

F (X) = 0 (2.15.2)

ku: X = {x1, x2, …, xn} dhe F = {f1(x), f2(x), …, fn(x).

Metodat më të përdorura të zgjidhjes janë ato iterative.

2.15.1 Metodat iterative Jakobi ose Gaus - Zejdel.

Këto metoda janë përshkruar tashmë në paragrafin 2.14.1 dhe 2.14.2. E shkruajmë (2.15.2)
në trajtën vektoriale X = G(X) duke shënuar p.sh. G(X) = X + F(X) ose në ndonjë mënyrë tjetër
çfarëdo. Merret një vektor fillestar X0 dhe llogaritet X1 = G(X0) dhe kështu me rradhë Xp =
G(Xp-1). Vargu {Xp} konvergjon në zgjidhjen e kërkuar X=R n.q.s X0 është afër R dhe n.q.s në
një zonë rrethuese (fqinjësi) të R kënaqet njëri nga këto relacione:

n
¶ Gi n
¶ Gi
åi=1 ¶ xj
< 1, j = 1 në n; ose å¶
j=1 xj
< 1, i = 1 në n

Algoritmi i kësaj metode është:

ìn, kp, e, x i (i = 1, n)
Të dhëna: í
în ekuacionet jo lineare x i = ... (i = 1, n)
Llogaritje: kmax = 100
për i = 1 në n: zi = xi

11
për k=1 në kmax: ì
ï
ïrm = 0
ï
ïìx 1 =... (ekuacioni numer 1)
ïï r = x 1 - z 1
ïïï
ïín.q.s r > rm atehere rm = r
ïïx = z + kp * r
ïï 1 1

ïïîz 1 = x 1
ï
í•
ï
ïìx n =... (ekuacioni numer n)
ïï r = x n - z n
ïïï
ïín.q.s r > rm atehere rm = r
ïïx = z + kp * r
ïï n n

ïïîz n = x n
ï
ïn.q.s rm < e ìshkruaj rezultatet x i (i = 1, n)
ï í
î îndalo llogaritjet

2.15.2 Metoda Njuton - Rafson (Newton - Raphson).

Le të zgjidhim sistemin e 2 ekuacioneve me 2 të panjohura:

ìf(x, y) = 0
í (2.15.3)
îg(x, y) = 0

Pasi të kemi lokalizuar në një farë mënyre zgjidhjen e kërkuar, marrim një (x0,y0) sa më afër
zgjidhjes. Shënojmë x = x0 + Dx, dhe y = y0 + Dy dhe:

ìïf(x, y) = f(x 0 , y 0 ) + Dx f' x 0 + Dy f' y 0 = 0


í
ïîg(x, y) = g(x , y ) + Dx g' x 0 + Dy g' y 0 = 0
0 0

Ky është një sistem linear në lidhje me Dx dhe Dy të cilin e zgjidhim lehtë duke përdorur
shënimet: f0 = f(x0,y0), f’x0 = f’x(x0,y0) dhe shënime analoge për funksionin g. Kemi:

12
ìïDx = (g 0 f' y 0 -f 0 g' y 0 ) / (f' x 0 g' y 0 -g' x 0 f' y 0 )
í (2.15.4)
ïîDy = (f 0 g' x 0 -g 0 f' x 0 ) / (f' x 0 g' y 0 -g' x 0 f' y 0 )

Kështu marrim x1 = x0 + Dx, dhe y1 = y0 + Dy. Ky proces përsëritet deri sa të merret një
(x ,y ) shumë afër (xp-1,yp-1) gjë që ndodh n.q.s. (x0,y0) merret afër zgjidhjes së sistemit (2.15.3).
p p

Kjo procedurë mund të përgjithësohet lehtë për rastin e një sistemi me n -ekuacione me n
-të panjohura (2.15.1) ose (2.15.2). Nisemi nga një zgjidhje X0 afër zgjidhjes së vërtetë e cila duhet
lokalizuar paraprakisht. Ekuacioni (2.15.2) shkruhet:

F(X) = F(X0 + Dx) = F(X0) + [J(X0)] Dx = 0 (2.15.5)

ku [J(X0)] është matrica Jakobiame [J(X)] e sistemit në X = X0:

é ¶ f1 / ¶ x 1 ¶ f1 / ¶ x 2 • ¶ f1 / ¶ x n ù
ê ú
[J(X)] = ê • • ú (2.15.6)
êë¶ f n / ¶ x 1 ¶ f n / ¶ x 2 • ¶ f n / ¶ x n úû

Sistemi (2.15.5) është një sistem linear i n -ekuacioneve me n -të panjohura, DX = {Dx1, Dx2, …,
Dxn) i cili zgjidhet me njërën prej metodave të përshkruara më përpara dhe nga zgidhja e këtij
sistemi marrim:

DX = -[J(X0)]-1 F(X0), nga ku X1 = X0 +DX

Ky proces vazhdohet deri sa Xp është në një masë të kënaqshme afër Xp-1. Algoritmi i thjeshtëzuar i
kësaj metode është si më poshtë:

Të dhëna: n,e, xi (i = 1 në n)
n2 relacionet aij = ¶fi / ¶xj (shkruhet një rresht për element të A)
n relacionet yi = -fi (shkruhet një rresht për element të Y)
Llogaritje: kmax = 100: për i = 1 në n: zi = xi

13
për ik = 1 në kmax: ìllogaritja e a ij (i, j = 1, n)
ï
ïllogaritja e y i (i = 1, n)
ïzgjidhja e AX = Y
ï
ïrm = 0
ï ìn.q.s. x i > rm Þ rm = x i
í
ïper i = 1 nw n ïx = z + x
ï í i i i

ï ï
îz i = x i
ï
ï ìshkruaj rezultatin x i (i = 1, n)
ïn.q.s rm < e índalo llogaritjet
î î

2.16 Metodat e zbritjes (uljes).

Metodat e zbritjes janë metoda iterative që mund të përdoren si për sistemet lineare ashtu
edhe për sistemet jolineare.
Parimi i këtyre metodave qëndron ne atë që kërkimi i rrënjëve është zëvendësuar me kërkimin e
ekstremumit.

M’0
M’p M0 M1

MR Fig. 2.16

Supozojmë se duam të zgjidhim sitemin:

ìf(x, y) = 0
í (2.16.1)
îg(x, y) = 0

Zgjidhja e këtij sistemi është ekuivalente të kërkosh minimumin e S(x,y):


14
S(x,y) = [f(x,y))]2 + [g(x,y)]2 (2.16.2)

Në figurën 2.16 kemi paraqitur me vija të ndërprera disa vija niveli të S(x,y) d.m.th. kurbat S(x,y)
= konstante. Zgjidhja e kërkuar është MR(xR,yR). Nisemi nga një pikë M0(x0,y0) drejt vijës me
pjerësi më të madhe të ekuacionit (2.16.2) d.m.th. në drejtimin e kundërt me vektorin ÑS(x0,y0),
komponentet e të cilit do ti shënojmë me
S’x0 = S’x(x0,y0) dhe S’y0 = S’y(x0,y0) Kështu kemi: x = x0 - t S’x0 dhe
y = y0 - t S’y0, pra ekuacionin (2.16.2) e shkruajmë në trajtën
S(x,y) = S(t). Zhvendosemi deri në pikën t = t1 e tillë që S(t1) të jetë minimum dhe marrim kështu
pikën:

M1 (x1 = x0 - t1 S’x0, y1 = y0 - t1 S’y0).

Rifillojmë duke u nisur nga pika M1 deri sa pika MP të jetë sa më afër pikës MP-1. Sigurisht, n.q.s.
S(x,y) paraqet disa “gropa” (minimume lokale) duhet që M0 të merret në gropën që duhet, d.m.th.
M0 duhet të jetë afër zgjidhjes së kërkuar në mënyrë të kënaqshme, përndryshe mund të marrim një
zgjidhje tjetër dhe jo atë që kërkojmë.
Në rastin e përgjithshëm le të zgjidhim sistemin:

AX=Y (2.16.3)

ku A është një matricë simetrike pozitivisht e përcaktuar (n.q.s nuk është kështu zgjidhim sistemin
ekujvalent ATA X = ATY). Le të jetë X një vektor çfarëdo dhe formojmë mbetjen:

r=Y-AX (2.16.4)

Mund të vërtetojmë që zgjidhja e (2.16.3) është vektori X që minimizon trajtën kuadratike:

1 T -1
S(X) = r A r (2.16.5)
2

Le të jëtë Dx një ndryshim i vogël i X, kemi:

S(X + Dx) @ S(X) + DTx ÑS(X).


Si rrjedhim S(X + Dx) < S(X) n.q.s. DTx ÑS(X) < 0 dhe në këtë rast Dx është quajtur “drejtimi i
zbritjes”. Në përgjithësi, do të quajmë drejtim të zbritjes në një pikë X për funksionin S(X) çdo
vektor u(X) i tillë që:

uT(X) ÑS(X) < 0 (2.16.6)

15
Metodat e zbritjes janë metoda iterative për zgjidhjen e sistemit (2.16.3) që konsistojnë në
atë që duke u nisur nga një vlerësim X0, të përcaktohen vektorët e njëpasnjëshëm X1, X2, …etj, të
tillë që S(X) përkatëse të zvoglohen. Zgjidhja e (2.16.3) është vektori X i tillë që S(X) është
minimum. Duke patur vektorin Xk, vektori pasardhes Xk+1 përcaktohet:

Xk+1 = Xk + tk uk (2.16.7)

ku uk = u(Xk) është një drejtim zbritjeje, zgjedhja e të cilit përcakton metodën e zbritjes, dhe tk
është një skalar që duhet zgjedhur në mënyrë të tillë që S[Xk+1] = Sk+1 të jetë minimum. Provohet
që kjo plotësohet për:

tk = (rk)T uk / [(uk)T A uk] (2.16.8)

ku rk është përcaktuar nga (2.16.4).


Kjo mënyrë zgjedhjeje shtrihet edhe për sistemet jo linearë. Algoritmi i përgjithshëm do të jetë:
zgjidhja e sistemi:

A(X) X = Y(X) (2.16.9)

ku A(X) është simetrike (ose simetrike pas shumëzimit me [A(X)]T ) merret me anë të këtyre
relacioneve:

ì k+1 k (r k ) T u k
ï X = X + k T k k
uk
í (u ) A u (2.16.10)
ïr = y k - A k x k
î

Për sistemet lineare, Ak = A dhe Yk = Y janë konstante. Për sistemet jolinearë Ak = A(Xk) dhe Yk
= Y(Xk).
Procesi ndalohet kur ||rk+1|| < e ose kur ||rk+1|| / ||Xk+1|| < e.

2.16.1 Metoda e gradientit (ose e pjerrësisë më të madhe).

Merret uk = - ÑS[Xk] dhe është metoda e përshkruar më sipër. Duke patur parasysh
ekuacionin (2.16.5) kemi uk = rk. Algoritmi jepet me barazimet (2.16.10). Në këtë rast, n.q.s.
procesi konvergjon, konvergjon ngadalë.

16
2.16.2 Metoda e gradientit të konjuguar.

Merret uk e tillë që për çdo k të kemi (uk)T A uk-1 = 0. Në këtë rast për uk marrim
relacionet:

ìu 0 = r 0 = Y 0 - A 0 X 0
ï
í k k (r k ) T r k k-1
(2.16.11)
ïu = r + (r k-1 ) T r k-1 u , k = 1,2,3,....
î

2.17 Ushtrime.

7) Me metodën Gaus-Zeidel të zgjidhet sistemi:

9 0 -1 3 x1 5
2 4 9 1 x2 1
=
1 2 4 -8 x3 3
1 4 -1 1 x4 7

duke marrë një saktësi E = 10-4; një faktor përshpejtimi fp = 1 dhe zgjidhje fillestare x1 = x2 = x3 =
x4 = 0

8) Duke përdorur metodën Gaus - Zeidel të zgjidhet sistemi jo linear:

ì25x 1 + 3x 22 - 2x 2 x 3 = 12
ï 2
í- 2x 1 + 9x 2 + x3 = 4
ï x + 3x x - 15x = 10
î 1 1 2 3

Të merret fp = 1 dhe E = 10-5.

9) Të zgjidhet sistemi i mbipërcaktuar duke vlerësuar të panjohurat me metodën e katrorëve më të


vegjël:

ì2x + x 2 + 2x 3 = 5.01
ïx + 4x 2 + x 3 = 2.99
ï 1
í
ï3x 1 + x2 - x3 = 1
ïî x 1 + x 2 + 5x 3 = 9.01

17

You might also like