Układy równań liniowych Ax = b

Transkrypt

Układy równań liniowych Ax = b
Układy równań liniowych
Dany jest układ m równań z n niewiadomymi. Liczba równań m nie
musi być równa liczbie niewiadomych n, tj. m<n , m=n lub m>n .
a11 x1 + a12 x2 + ...+ a1n xn = b1
a21 x1 + a22 x2 + ...+ a2 n xn = b2
(1)
.....................................
am1 x1 + am2 x2 + ...+ amn xn = bm
W zapisie macierzowym moŜemy przedstawić układ (1) następująco:
Ax = b
... a1n 
... a2n 
... ... 

... a mn 
 a11 a12
a
a22
A =  21
 ... ...

a m1 a m2
gdzie
DEFINICJA
 x1 
x 
x =  2
 ... 
 
 xn 
(1)
 b1 
b 
b= 2
 ... 
 
bm 
Rozwiązaniem układu równań (1) nazywamy kaŜdy ciąg n liczb
{x , x ,..., x } , które po podstawieniu do układu równań w miejsce
niewiadomych { x , x ,..., x } przekształcają te równania w toŜsamości.
0
1
0
2
0
n
1
2
n
DEFINICJA
Układ (1) nazywamy
• oznaczonym, gdy ma dokładnie jedno rozwiązanie,
• nieoznaczonym, gdy ma więcej niŜ jedno rozwiązanie lub
• sprzecznym, gdy nie posiada Ŝadnego rozwiązania.
Układ równań (1) moŜna rozwiązać wykorzystując między innymi
• macierz odwrotną
• operacje elementarne
Rozwiązywanie układów równań liniowych
z wykorzystaniem macierzy odwrotnej
ZałóŜmy, Ŝe
• liczba równań m jest taka sama jak liczba niewiadomych n , tj. m=n
• oraz, Ŝe macierz A jest macierzą nieosobliwą , tj. istnieje macierz odwrotna A-1.
Układ równań (1) moŜna wówczas tak przekształcić, aby wyznaczyć niewiadome
x
1
Ax = b ∗ A −lewostronnie
A −1Ax = A −1b
Ix = A −1b
Stąd wzór na wartości zmiennych jest następujący
x = A −1b
PRZYKŁAD
(2)
Dany jest układ równań
2 x1

2 x1
 x
 1
2 2 1
A = 2 1 2
 1 2 1
+ 2 x2
+
x2
+ 2 x2
 x1 
x =  x2 
 x3 
+
x3
+ 2 x3
+
x3
 9
b = 11
 7 
= 9
= 11
= 7
−1
0
 1
A −1 =  0 −1 / 3 2 / 3
−1 2 / 3 2 / 3
−1  9 
0
9+0−7
 2 ⇒ x1 = 2
 x1   1
x =  x2  =  0 −1 / 3 2 / 3 × 11 =  0 − 11 / 3 + 14 / 3  =  1 ⇒ x2 = 1
 x3  −1 2 / 3 2 / 3  7 −9 + 22 / 3 + 14 / 3  3 ⇒ x3 = 3
Rozwiązywanie układów równań liniowych
z wykorzystaniem operacji elementarnych
Sposobem, który pozwala ustalić typ układu równań (oznaczony,
nieoznaczony, sprzeczny) oraz wyznaczyć rozwiązanie (gdy układ jest oznaczony)
jest wykorzystanie operacji elementarnych.
Schemat postępowania jest analogiczny do tego, jaki uŜyliśmy przy odwracaniu
macierzy. RóŜnica dotyczy wpisania po prawej stronie wektora b zamiast macierzy
jednostkowej I. Schemat ten wygląda następująco
A

b
...
ciąg operacji
elementarnych
...
I

b*
Wektor b* zawiera rozwiązanie układu równań liniowych (1).
PRZYKŁAD
2 2 1
2 1 2 


 1 2 1
 9
11
 
 7
Dany jest układ równań
 1 1 1 / 2

0 −1
1


0 1 1 / 2 
9 / 2 
 2


 5 / 2 
 1 0 3 / 2
0 1
−1

0 0 3 / 2 
13 / 2
 −2


 9 / 2
 1 0 0
0 1 0


0 0 1
2 
 1
 
 3
2 x1

2 x1
 x
 1
+ 2 x2
+
+
+ 2 x3
= 11
+
=
x2
+ 2 x2
x3
x3
W1nowy = W1stary + W2 stary
W2 nowy = W2 stary × ( −1)
W3nowy = W3stary + W2 stary
W1nowy = W1stary + W3stary × ( −1 )
W2 nowy = W2 stary + W3stary × 2 / 3
W3nowy = W3stary × 2 / 3
x2 = 1
9
7
W1nowy = W1stary × ( 1 / 2 )
W2 nowy = W2 stary + W1stary × ( −1)
W3nowy = W3stary + W1stary × ( −1 / 2)
Rozwiązanie wyjściowego układu równań jest następujące:
x1 = 2
=
x3 = 3
Fakt, Ŝe układ jest sprzeczny wykryjemy w chwili gdy "wyzerowany"
zostanie np. k-ty wiersz macierzy po lewej stronie i jednocześnie k-ty wiersz
wektora po prawej stronie będzie zawierał liczbę róŜną od zera.
PRZYKŁAD
2 x1

4 x1
 x
 1
x2
+
+ 2 x2
+ 2 x2
Dany jest układ równań
x3
+
+ 2 x3
x3
+
= 4
= 12
= 4
 1 1 / 2 1 / 2

0
0
0


0 3 / 2 1 / 2 
2 1 1
4 2 2 


 1 2 1
2 
4 
 
2 
 4
12 
 
 4 
W1nowy = W1stary × (1 / 2)
W2 nowy = W2 stary + W1stary × ( −2)
W3nowy = W3stary + W1stary × ( −1 / 2)
W wierszu 2 macierzy otrzymaliśmy zera [0 0 0]. W wierszu 2 wektora
otrzymaliśmy [4] (≠
≠0).
Wniosek: rozwiązywany układ równań jest sprzeczny.
Fakt, Ŝe układ jest nieoznaczony wykryjemy w chwili gdy
"wyzerowany" zostanie np. k-ty wiersz macierzy po lewej stronie i jednocześnie kty wiersz wektora po prawej stronie będzie zawierał zero.
PRZYKŁAD
2 x1

4 x1
 x
 1
+
x2
+ 2 x2
+ 2 x2
Dany jest układ równań
+
x3
+ 2 x3
+
x3
= 4
= 8
= 4
 1 1 / 2 1 / 2
0
0
0

0 3 / 2 1 / 2
2 1 1
4 2 2 


 1 2 1
2 
 0
 
2
4 
 8
 
4 
W1nowy = W1stary × (1 / 2)
W2 nowy = W2 stary + W1stary × ( −2)
W3nowy = W3stary + W1stary × ( −1 / 2)
W wierszu 2 macierzy otrzymaliśmy zera [0 0 0]. W wierszu 2 wektora
otrzymaliśmy [0] .
Wniosek: rozwiązywany układ równań jest nieoznaczony.
Rozwiązania bazowe układu równań liniowych
RozwaŜamy niesprzeczny układ m równań liniowych z n
niewiadomymi. Zakładamy, Ŝe liczba równań m jest mniejsza od liczby
niewiadomych n, tj. m < n
Na przykład układ 2 równań liniowych z 4 niewiadomymi (m=2 < n=4)
 x1

 x1
+ 2 x2
+
+
+ 2 x3
x2
x3
− 2 x4
= 6
−
= 8
x4
Układ ten posiada nieskończenie wiele rozwiązań. Technika generowania
dowolnego rozwiązania takiego układu jest następująca.
Wybierz 2 zmienne (równań jest m=2) względem których chcesz rozwiązać ten
układ, np. niech będą to zmienne
x1 oraz x3 .
MoŜna to zrobić na maksymalnie 6 sposobów.
Ogólnie maksymalna liczba sposobów w jaki moŜna wybrać zestaw zmiennych
 n
n!
=


względem których chcemy rozwiązać układ równań wynosi  m m ! n − m !
(
)
Pozostałe 2 (ogólnie n−m = 4−
−2 = 2) "nadwyŜkowe" zmienne, tj.
przenieś na prawą stronę układu równań
+
 x1

 x1
x3
+ 2 x3
= 6 − 2 x2
+ 2 x4
= 8 −
+
x2
x2 oraz x4
x4
Przyjmij dowolnie wybrane wartości na "nadwyŜkowe" zmienne, np.
x2 = 3 oraz x4 = 1
Otrzymasz układ równań
 x1

 x1
+
x3
= 2
+ 2 x3
= 6
⇒
x1 = −2 x3 = 4
Stąd rozwiązanie wyjściowego układu równań będzie następujące
x1 = −2 , x2 = 3 , x3 = 4 , x4 = 1
JeŜeli dla "nadwyŜkowych" zmiennych przyjmiemy wartości zerowe, tj.
x2 = 0 oraz x4 = 0
to otrzymamy tzw. BAZOWY układ równań
+
 x1

 x1
x3
= 6
+ 2 x3
= 8
⇒ x1 = 4 x3 = 2
Rozwiązanie wyjściowego układu równań nazywamy w tej sytuacji
ROZWIĄZANIEM BAZOWYM i jest ono następujące
x1 = 4 , x2 = 0 , x3 = 2 , x4 = 0
x1 oraz x3 − ZMIENNE BAZOWE
x2 oraz x4 − zmienne niebazowe
Ogólnie maksymalna
liczba rozwiązań bazowych układu m równań
 n
n!
=


liniowych z n niewiadomymi (n > m) wynosi m
m !(n − m ) !
 
Iteracyjna metoda wyznaczania rozwiązań bazowych
1. Wybierz zmienne względem których chcesz rozwiązać układ równań.
2. Wykorzystaj operacje elementarne i tak przekształć układ równań, aby kaŜda z
wybranych zmiennych została wydzielona w osobnym równaniu, tzn. aby
występowała ze współczynnikiem 1 tylko w jednym równaniu
 x1

 x1
+ 2 x2
+
+
+ 2 x3
 x1


+ 2 x2
−
x2
 x1


+ 3 x2
−
x2
x2
+
+
+
x3
x3
x3
x3
− 2 x4
= 6
−
= 8
x4
− 2 x4
+
x4
= 6
= 2
← w1n = w1s
− 3 x4
= 4
←
+
= 2
←
x4
← w2n = w2 s + w1s × (− 1)
w1n = w1s + w2 s × ( −1)
w2n = w2 s
3. Przenieś współczynniki przekształconego układu do tabeli
4. Przejdź do kolejnego rozwiązania bazowego wymieniając na liście zmiennych
bazowych jedną zmienną
5. Zapisz w nowej tabeli kolumnę współczynników dla nowej zmiennej w postaci
kolumny macierzy jednostkowej z 1 w tym wierszu, na którym znajduje się nowa
zmienna na liście zmiennych bazowych
6. Przekształć za pomocą operacji elementarnych tabelę poprzednią tak, aby
uzyskać kolumnę opisaną w punkcie 5
x1
x2
x3
x4
wartości
zmiennych
bazowych
operacje
elementarne
1
3
0
−3
4
−
0
−1
1
1
2
−
1
0
3
0
10
w1n=w1s+w2s× (3)
0
1
−1
−1
−2
w2n=w2s×(−
−1)
x1
x4
1
0
3
0
10
w1n=w1s
0
−1
1
1
2
w2n=w2s ×(−
−1)
x3
x4
1/3
0
1
0
10/3
w1n=w1s×(1/3)
−1/3
−1
0
1
−4/3
w2n=w2s+w1s×(−
−1/3)
1/3
0
1
0
10/3
w1n=w1s
1/3
1
0
−1
4/3
w2n=w2s ×(−
−1)
nr
zmienne
rozwiąz. bazowe
1
2
3
4
5
x1
x3
x1
x2
x3
x2
 0
W tabeli 5 nie ma moŜliwości przekształcenia kolumny   w kolumnę
−1
nie ma moŜliwości wymiany zmiennej x3 na zmienną
rozwiązań bazowych jest następujący:
nr rozwiązania
zmienne
x1
x2
x3
x4
 1
0 , tj.
 
x4 . Komplet (5 zamiast 6)
1
2
3
4
5
4
10
10
0
0
0
0
0
4/3
2
−2
0
0
10/3
10/3
0
0
2
−4/3
0