דירוג מטריצות – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
עריכה
עריכה
שורה 1:
'''דירוג מטריצות''' היא הפעלה של [[אופרטור|פעולות מתמטיות]] מסוימות על [[מטריצה]], שאינן משנות את [[מרחב הפתרונות]] שלה. השימושים של תהליך זה הם מציאת [[פתרון משוואה|פתרונות]] של [[מערכת משוואות ליניאריות]], מציאת [[דרגה (אלגברה ליניארית)|דרגה]] של מטריצה, מציאת [[דטרמיננטה]] של מטריצה ומציאת [[מטריצה הפיכה|המטריצה ההופכית]] של מטריצות הפיכות.
 
השיטה בעזרתהשבעזרתה מדרגים מטריצות נקראת "שיטת החילוץ של גאוס" או "שיטת האלימינציה של גאוס", לעיתים גם "אלימינציית גאוס-ג'ורדן". שיטה זו קרויה על שם ה[[מתמטיקאי]] הגרמני [[קרל פרידריך גאוס]]. שיטות דומות מופיעות כבר בפרק השמיני של [[תשעת הפרקים של אמנות המתמטיקה]], כתב מתמטי סיני עתיק מלפני הספירה.
 
==הגדרות בסיסיות==
 
===איבר מוביל===
בכל שורה ב[[מטריצה]] שאיננה שורת אפסים, [[איבר (מתמטיקה)|הרכיב]] הראשון השונה מ[[0 (מספר)|אפס]] ייקרא '''האיבר המוביל''' של השורה.
 
===מטריצה מדורגת ===
שורה 16 ⟵ 15:
[[קובץ:מטריצה מדורגת קנונית.png|250px|ממוזער|דוגמה למטריצה מדורגת קנונית בגודל m על n. הכוכביות מסמלות ערכים שרירותיים של מספרים.]]
מטריצה תקרא '''מטריצה מדורגת קנונית''' אם מתקיימים התנאים הבאים:
# בכל שורה שאיננהשאינה שורת אפסים, האיבר המוביל שווה ל-1 וכל האיברים שמתחתיו ומעליו באותה עמודה שווים ל-0.
# האיבר המוביל נמצא משמאל לאיבר המוביל בשורה שמתחתיו.
# אם ישנן שורות אפסים הן יופיעו מתחת לשורה האחרונה שאינה שורת אפסים.
שורה 22 ⟵ 21:
== פעולות מותרות על שורות ==
 
הרעיון המנחה את האלגוריתם הוא ביצוע פעולות על שורות המטריצה, באופן שאינו משנה את מרחב הפתרונות של המערכת שהיא מייצגת. הפעולות הבאות נקראות '''פעולות אלמנטריות''':
# החלפה בין שתי שורות;
# הכפלה של שורה ב[[סקלר (מתמטיקה)|סקלר]] השונה מאפס, ששייך ל[[שדה (מבנה אלגברי)|שדה]] שהמטריצה מעליה. (כלומר הכפלת כל האיברים בשורה מסוימת בסקלר).;
# [[חיסור]] או [[חיבור]] של שורה המוכפלת בסקלר בשורה אחרת.
 
שורה 45 ⟵ 44:
#:: <math>
{
\begin{bmatrix} \alpha_{11} & \cdots & \alpha_{1n} \\ \vdots & \ddots & \vdots \\ \alpha_{m1} & \cdots & \alpha_{mn} \end{bmatrix}
}
 
שורה 58 ⟵ 57:
# i=1.
# עבור העמודות j=1 עד j=n, בצע:
## אם המקדם הפותח (המקדם הראשון בשורה) בשורה ה-i הוא 0, בצע החלפת שורות עם השורה הראשונה שבה המקדם הפותח שונה מאפס. אם אין מקדם כזה (כל העמודה היא עמודת אפסים) עבור לעמודה הבאה, j=j+1.
## נרמל את השורה על ידי כפל בקבוע, כך שהמקדם הפותח יהיה שווה ל-1.
## עבור כל שורה i מתחתיה: חסר את השורה הראשונה כפול המקדם הפותח של השורה ה-i ממנה כך שהמקדם הפותח החדש שיתקבל יהיה שווה לאפס.
שורה 65 ⟵ 64:
# בסוף שלב זה עליך לקבל מטריצה מדורגת, שבה המקדמים הפותחים הם 1 או 0.
# עבור j=n עד j=1 בצע:
## חסר את השורה ה-i מהשורות שמעליה, על ידי הכפלת השורה ה-i במקדם שמופיע באותה עמודה בשורה שמעליה, כך שהחיסור ייתן 0 בעמודה זו.
## i=i+1.
## בסוף שלב זה כל האיברים שמעל האיבר הפותח בשורה ה-j יהיו שווים ל-0.
שורה 75 ⟵ 74:
j := 1
'''while''' (i ≤ m '''and''' j ≤ n) '''do'''
''Find pivot in column j, starting in row i:''
maxi := i
'''for''' k := i+1 '''to''' m '''do'''
'''if''' abs(A[k,j]) > abs(A[maxi,j]) '''then'''
maxi := k
'''end if'''
'''end for'''
'''if''' A[maxi,j] ≠ 0 '''then'''
swap rows i and maxi, but do not change the value of i
''Now A[i,j] will contain the old value of A[maxi,j].''
divide each entry in row i by A[i,j]
''Now A[i,j] will have the value 1.''
'''for''' u := i+1 '''to''' m '''do'''
subtract A[u,j] * row i from row u
''Now A[u,j] will be 0,''
''since A[u,j] - A[i,j] * A[u,j] = A[u,j] - 1 * A[u,j] = 0.''
'''end for'''
i := i + 1
'''end if'''
j := j + 1
'''end while'''
 
שורה 112 ⟵ 111:
: <math>
\left[ \begin{array}{ccc|c}
1 & 2 & 1 & 1\\ 1 & 3 & 2 & 2 \\ 3 & 1 & 1 & 0
\end{array} \right]
</math>
שורה 129 ⟵ 128:
|<math>
\left[ \begin{array}{ccc|c}
1 & 2 & 1 & 1\\ 0 & 1 & 1 & 1 \\ 0 & -5 & -2 & -3
\end{array} \right]
</math>
שורה 135 ⟵ 134:
<math>
\left[ \begin{array}{ccc|c}
1 & 2 & 1 & 1\\ 0 & 1 & 1 & 1 \\ 0 & 0 & 3 & 2
\end{array} \right]
</math>
שורה 141 ⟵ 140:
<math>
\left[ \begin{array}{ccc|c}
1 & 2 & 1 & 1\\ 0 & 1 & 1 & 1 \\ 0 & 0 & 1 & 2/3
\end{array} \right]
</math>
שורה 153 ⟵ 152:
<math>
\left[ \begin{array}{ccc|c}
1 & 0 & 0 & -1/3\\ 0 & 1 & 0 & 1/3 \\ 0 & 0 & 1 & 2/3
\end{array} \right]
</math>
שורה 159 ⟵ 158:
 
וקיבלנו את הצורה המדורגת קנונית ממנה אפשר לקרוא את הפתרון:
:<math>\ x = -\frac{1}{3} \ , \quad y = \frac{1}{3} \ , \quad z = \frac{2}{3} </math>
 
== שימושים ==
 
=== פתרון מערכת משוואות ליניאריות ===
 
שיטת דירוג המטריצות, הידועה גם בשם אלימינציית גאוס-ג'ורדן, היא שיטה לפתרון [[משוואה ליניארית|מערכת משוואות ליניאריות]]. ב[[אלגברה ליניארית]] מוכיחים כי כל מטריצה ניתנת לדירוג עד להבאתה ל[[מטריצה מדורגת קנונית|צורתה הקנונית]] היחידה. לכן במסגרת שיטה זו מדרגים את המטריצה המתקבלת מהוספת וקטור המקדמים החופשיים למטריצת המקדמים, ומקבלים מטריצה מדורגת קנונית ממנה אפשר בקלות לקרוא את הפתרון. כאשר יש פתרון יחיד למערכת (המטריצה הפיכה) מגיעים לצורה
: <math>( I | \vec{b'} )</math>
כאשר 'b הוא וקטור ובו איברים ההמתקבלים מצירופים ליניאריים של המקדמים החופשיים, ותלויים בפעולות הדירוג שנעשו על המטריצה. למשל, עבור מערכת של 2 משוואות ב-2 נעלמים מקבלים
: <math>\ \left[ \begin{array}{cc|c} 1 & 0 & b'_1 \ \\ 0 & 1 & b'_2 \ \end{array} \right] </math>
ממנה קוראים את הפתרון <math>\ x_1 = b'_1 \ , \ x_2 = b'_2</math>.
 
=== מציאת ההפכי של מטריצה ===