4.5

משוואות לינאריות ומטריצות הפוכות

מטריצות סימטריות ואורתוגונליות

Symmetric Matrices and Orthogonal Matrices

לומדים טרנספוזיציה, מכפלה פנימית ואורתונורמליות, ומוכיחים שמטריצה אורתוגונלית משמרת אורכים וזוויות.

יחידת לימוד עצמאיתשיעור 5 מתוך 5כ־65 דקות כולל תרגול4 מטרות למידה
  1. 1
    נקודת פתיחהמה כבר ידוע ומה השאלה?
  2. 2
    ניבוימה יקרה במקרה הפשוט?
  3. 3
    המחשהמה באמת משתנה בתמונה?
  4. 4
    ניסוח והצדקהשם, נוסחה ולמה היא נכונה
  5. 5
    בדיקהדוגמה, תרגול ומשוב
  6. 6
    העברהמקרה חדש והמשך המסלול

שאלה לפני נוסחה

מה אנחנו מנסים לראות?

להפריד בין שתי תכונות שונות — סימטריות ואורתוגונליות — ולגזור מן התנאי QᵀQ=I מדוע מטריצה אורתוגונלית ריבועית שומרת אורכים, זוויות ומרחקים.

סימטריות ואורתוגונליות עונות על שאלות שונות. סימטריות בודקת כיצד המספרים מסודרים סביב האלכסון; אורתוגונליות בודקת מה הפעולה עושה לגאומטריה. מטריצה עשויה לקיים אחת מהן, את שתיהן או אף אחת.

לפני ההמחשה: קראו רק את הכותרת “סידור המספרים מול שמירת הצורה”. מה לדעתכם ישתנה, מה יישאר קבוע, ואיזה סימן בתמונה יוכל להפריך את הניבוי?

לראות לפני שמחשבים · המקרה הפשוט ביותר

סידור המספרים מול שמירת הצורה

השוואה בין מטריצה אורתוגונלית השומרת מעגל ואורכים לבין מטריצה סימטרית המותחת אותוQᵀQ=I · סיבוב קשיחאורכים 1,1 · מכפלה פנימית 0Sᵀ=S · סימטרית בלבדאורכים √5,√2 · מכפלה פנימית 3סימטריות אינה מבטיחה שימור גאומטרי; אורתוגונליות כן
עקבו מהצורה הראשונית אל התוצאה

ההמחשה משווה את מעגל היחידה ואת שתי עמודות המטריצה: Q מסובבת את המעגל ומשאירה אותו מעגל, ואילו S סימטרית מותחת אותו לצורה אליפטית.

מה כדאי לגלות: בצד Q אורכי שתי העמודות הם 1 והמכפלה הפנימית שלהן 0. בצד S האורכים והמכפלה משתנים; לכן Sᵀ=S לבדו אינו מבטיח שימור גאומטרי.

אחרי שראינו

בסוף השיעור תוכלו

  • לחשב טרנספוזיציה ולבדוק אם מטריצה סימטרית באמצעות Sᵀ=S.
  • לחשב מכפלות פנימיות ונורמות ולזהות אוסף עמודות אורתונורמלי.
  • להוכיח עבור Q ריבועית ש־QᵀQ=I גורר Q⁻¹=Qᵀ ושימור מכפלות פנימיות.
  • להבחין בין סיבוב, השתקפות ומתיחה סימטרית ולפרש מטריצת Householder.

נותנים שמות למה שראינו

מושגים שנשתמש בהם

טרנספוזיציה
הפעולה Aᵀ שמחליפה שורות בעמודות, כך שהאיבר (i,j) עובר למקום (j,i).
מטריצה סימטרית
מטריצה ריבועית S שמקיימת Sᵀ=S; האיברים משני צדי האלכסון שווים בזוגות.
מכפלה פנימית
המספר xᵀy=Σᵢxᵢyᵢ, שמודד את הקשר בין כיווני שני וקטורים.
נורמה
אורך הווקטור: ‖x‖=√(xᵀx).
וקטורים אורתוגונליים
וקטורים שמכפלתם הפנימית אפס; גאומטרית הם מאונכים.
אורתונורמליים
וקטורים שמאונכים זה לזה וכל אחד מהם באורך 1.
מטריצה אורתוגונלית
במובן הרגיל: מטריצה ריבועית Q שמקיימת QᵀQ=I, ולכן Q⁻¹=Qᵀ.
סיבוב והשתקפות
העתקות קשיחות ששומרות אורכים וזוויות. סיבוב מסובב את כל המישור, ואילו השתקפות יוצרת תמונת ראי.
השתקפות Householder
מטריצה מן הצורה H=I−2uuᵀ עבור וקטור יחידה u; היא הופכת את הרכיב בכיוון u ומשאירה את הרכיב המאונך לו.

מהמילים אל הסימנים

כותבים את הפעולה שכבר ראינו

פתחו את הנוסחה רק אחרי שאתם יכולים לומר במילים מה כל פעולה אמורה לעשות. בשלב הבא נצדיק אותה צעד אחר צעד.

להצגת נוסחת המפתחקראו כל סימן כפעולה, לא כמשהו שצריך לשנןQᵀQ = I

מרכיבים את הפעולות

מהתמונה אל הנוסחה — הגזירה, בלי לדלג על הצעדים

  1. חלק א: בודקים סימטריות

    הטרנספוזיציה מחליפה שורות ועמודות והופכת את סדר הכפל. מטריצה סימטרית חייבת להיות ריבועית וכל זוג איברים משני צדי האלכסון חייב להתאים.

    (AB)ᵀ=BᵀAᵀ, Sᵀ=S
  2. סימטריות אינה מבטיחה קשיחות

    הבדיקה Sᵀ=S עוסקת בסידור האיברים בלבד. למשל [[2,0],[0,1]] סימטרית אך מכפילה אורכים בכיוון האופקי פי 2, ולכן אינה אורתוגונלית.

    S=[[2,0],[0,1]], ‖S(1,0)‖=2≠1
  3. חלק ב: עוברים לגאומטריה של עמודות

    המכפלה הפנימית קובעת זווית והנורמה קובעת אורך. עמודות אורתונורמליות הן עמודות באורך 1 שמכפלת כל זוג שונה מהן היא 0.

    qᵢᵀqⱼ=0 אם i≠j, qᵢᵀqᵢ=1
  4. QᵀQ מרכזת את כל הבדיקות

    האיבר (i,j) של QᵀQ הוא בדיוק qᵢᵀqⱼ. לכן QᵀQ=I אומר בבת אחת שהעמודות אורתונורמליות.

    (QᵀQ)ᵢⱼ=qᵢᵀqⱼ
  5. במקרה הריבועי מתקבלת הפוכה פשוטה

    מטריצה אורתוגונלית במובן הרגיל היא ריבועית. אם Qx=0, אז ‖x‖²=xᵀQᵀQx=0 ולכן x=0. מבחן ה־pivots של שיעור 4.4 אומר שמטריצה ריבועית שאינה מאבדת כיוון היא הפיכה; מכיוון ש־Qᵀ כבר מבטלת אותה משמאל, ההפוכה היחידה היא Qᵀ ולכן גם QQᵀ=I.

    Q⁻¹=Qᵀ
  6. מוכיחים שימור אורך וזווית

    מעבירים את הטרנספוזיציה דרך המכפלה ומשתמשים ב־QᵀQ=I. המכפלה הפנימית נשמרת לכל x,y, ולכן נשמרים גם אורכים, מרחקים והזוויות שנקבעות מהם.

    (Qx)ᵀ(Qy)=xᵀQᵀQy=xᵀy
  7. הרחבה מוגדרת: עמודות אורתונורמליות במטריצה מלבנית

    אם Q היא m×n עם m>n ו־QᵀQ=Iₙ, לא קוראים לה כאן מטריצה אורתוגונלית ריבועית אלא שיכון בעל עמודות אורתונורמליות. היא עדיין שומרת אורכים מ־ℝⁿ אל ℝᵐ. המכפלה QQᵀ היא הטלה: פעולה שמחזירה מכל וקטור את הרכיב שאפשר לבנות מעמודות Q. המושגים הפורמליים יפותחו בפרק 5.

    QᵀQ=Iₙ, אך בדרך כלל QQᵀ≠Iₘ

עכשיו רואים את השיטה בפעולה

דוגמאות פתורות, צעד אחר צעד

דוגמה 1

ארבע אפשרויות לסיווג

סווגו את S=[[2,1],[1,2]],‏ R=[[0,−1],[1,0]] ו־F=[[1,0],[0,−1]] כסימטריות ו/או אורתוגונליות.

  1. Sᵀ=S ולכן S סימטרית. אבל עמודתה הראשונה באורך √5 ולא 1, ולכן S אינה אורתוגונלית.

  2. עבור R מתקבל RᵀR=I, ולכן R אורתוגונלית. אולם Rᵀ≠R, ולכן אינה סימטרית; זהו סיבוב ב־90°.

  3. עבור F מתקיים גם Fᵀ=F וגם FᵀF=I. היא גם סימטרית וגם אורתוגונלית; זוהי השתקפות ביחס לציר x.

  4. מכאן שאין גרירה אוטומטית בין שתי התכונות.

התוצאה ומה היא אומרת

סימטריות נבדקת מול הטרנספוזיציה; אורתוגונליות נבדקת מול המכפלה QᵀQ.

S: סימטרית בלבד; R: אורתוגונלית בלבד; F: שתיהן
דוגמה 2

השתקפות Householder מספרית

עבור u=(3/5,4/5), בנו H=I−2uuᵀ ובדקו מה היא עושה ל־u ולווקטור המאונך v=(−4/5,3/5).

  1. מחשבים uuᵀ=[[9/25,12/25],[12/25,16/25]].

  2. לכן H=[[7/25,−24/25],[−24/25,−7/25]]. המטריצה סימטרית מפני Hᵀ=H.

  3. כיוון ש־uᵀu=1, מתקבל Hu=u−2u(uᵀu)=−u.

  4. מכיוון uᵀv=0, מתקבל Hv=v−2u(uᵀv)=v.

  5. לבסוף H²=I, ולכן HᵀH=H²=I: ההשתקפות אורתוגונלית.

התוצאה ומה היא אומרת

H הופכת את הרכיב בכיוון u ומשאירה את הכיוון המאונך; זו השתקפות ולא מתיחה.

H=[[7/25,−24/25],[−24/25,−7/25]]

איפה זה פוגש את העולם

יישום

ברובוטיקה ובגרפיקה, Q מעבירה קואורדינטות בין מסגרות בלי לעוות גוף, והפעולה ההפוכה היא פשוט Qᵀ. מטריצות סימטריות מופיעות באנרגיה, אינרציה וקו־וריאנציה.

מלכודת נפוצה

מה כדאי לבדוק

לכנות כל Q מלבנית שמקיימת QᵀQ=I 'מטריצה אורתוגונלית' או להסיק שגם QQᵀ=I. במובן הרגיל המונח שמור למטריצה ריבועית; במקרה המלבני QQᵀ היא הטלה על הרכיבים שנבנים מעמודות Q. סימטריות גם אינה מבטיחה שמירת אורכים.

בודקים שהרעיון יושב

תרגול ומשוב

בדיקת הבנה

בחרו תשובה ורק אז בדקו את עצמכם

נתונה מטריצה ריבועית Q שמקיימת QᵀQ=I. מה נובע בהכרח?

בחרו אחת מהאפשרויות כדי להמשיך.

עכשיו אתם

אתגר קצר

יהי u=(cosθ,sinθ) ו־H=I−2uuᵀ. כתבו את H בעזרת cos(2θ),‏ sin(2θ), הוכיחו ש־H אורתוגונלית, ומצאו את פעולתה על u ועל v=(−sinθ,cosθ).

רמז ראשון

השתמשו בזהויות 1−2cos²θ=−cos(2θ),‏ 1−2sin²θ=cos(2θ) ו־2sinθcosθ=sin(2θ). להוכחת האורתוגונליות חשבו H² ונצלו uᵀu=1.

הצגת דרך הפתרון
  1. פיתוח I−2uuᵀ נותן H=[[−cos(2θ),−sin(2θ)],[−sin(2θ),cos(2θ)]].
  2. H סימטרית. נוסף על כך H²=(I−2uuᵀ)²=I−4uuᵀ+4u(uᵀu)uᵀ=I, ולכן HᵀH=I.
  3. מאחר ש־uᵀu=1, מתקבל Hu=u−2u=−u. מאחר ש־uᵀv=0, מתקבל Hv=v.
  4. לכן H משקפת ביחס לקו המאונך ל־u: היא הופכת את הרכיב הניצב לקו ומשאירה את הרכיב שעל הקו.

מימוש הנושא

קוד שאפשר לקחת לניסוי

הקוד מיישם את אותו רעיון מתמטי. ב־JavaScript אפשר להריץ אותו כאן; גרסת Python זמינה להשוואה ולהעתקה.

הקשר למתמטיקה

הקוד בונה סיבוב Q והשתקפות H, מחשב QᵀQ ו־HᵀH ומשווה מכפלות פנימיות לפני ואחרי ההעתקה.

פלט צפוי

שתי המכפלות יהיו קרובות ל־I; המכפלה הפנימית של x,y תישמר תחת Q; ו־H תשלח את u ל־−u ואת v לעצמו.

ניסוי המשך

החליפו עמודה אחת של Q בכפולה פי 2. בדקו כיצד משתנים QᵀQ, אורכי הווקטורים והמכפלות הפנימיות.

מהרעיון אל הקוד

מימוש חישובי

const transpose = (A) =>
  A[0].map((_, j) => A.map((row) => row[j]));

const multiply = (A, B) => A.map((row) =>
  B[0].map((_, j) =>
    row.reduce((sum, value, k) => sum + value*B[k][j], 0),
  ),
);

const matVec = (A, x) =>
  A.map((row) =>
    row.reduce((sum, value, j) => sum + value*x[j], 0),
  );

const dot = (x, y) =>
  x.reduce((sum, value, i) => sum + value*y[i], 0);

const outer = (x, y) => x.map((a) => y.map((b) => a*b));
const identity = (n) => Array.from(
  { length: n },
  (_, i) => Array.from({ length: n }, (_, j) => Number(i === j)),
);

const theta = Math.PI/5;
const Q = [
  [Math.cos(theta), -Math.sin(theta)],
  [Math.sin(theta), Math.cos(theta)],
];
const x = [2, -1];
const y = [1, 3];
const u = [3/5, 4/5];
const v = [-4/5, 3/5];
const uuT = outer(u, u);
const H = identity(2).map((row, i) =>
  row.map((value, j) => value - 2*uuT[i][j]),
);

console.table({ Q, H });
console.table(multiply(transpose(Q), Q));
console.table(multiply(transpose(H), H));
console.log({
  before: dot(x, y),
  after: dot(matVec(Q, x), matVec(Q, y)),
  Hu: matVec(H, u),
  minusU: u.map((value) => -value),
  Hv: matVec(H, v),
});

לפני שממשיכים

מה לוקחים מהשיעור

  • סימטריות Sᵀ=S מתארת סידור איברים; אורתוגונליות QᵀQ=I מתארת שמירת גאומטריה.
  • האיברים של QᵀQ הם כל המכפלות הפנימיות בין עמודות Q, ולכן I פירושה עמודות אורתונורמליות.
  • עבור Q ריבועית אורתוגונלית מתקיים Q⁻¹=Qᵀ והיא שומרת מכפלות פנימיות, אורכים וזוויות.
  • מטריצת Householder היא השתקפות שהיא גם סימטרית וגם אורתוגונלית; המקרה המלבני QᵀQ=I הוא שיכון שומר אורכים, לא מטריצה אורתוגונלית ריבועית.

משימת מעבדה לשיעור הזה

תחנה 4 — מתיחה לעומת תנועה קשיחה

השוו מטריצה סימטרית מותחת לסיבוב ולהשתקפות. מדדו אורכים וזוויות לפני ואחרי ונסחו איזו תכונה מנבאת את השימור.

לפתיחת התחנה
מקורות להעמקה בלבד — השיעור עומד בפני עצמו

מדריך המרצים: עמ׳ 123–130

ספר הלימוד: עמ׳ 238–250