Aktivitas pendahuluan menggambarkan gagasan utama di balik suatu algoritma yang dikenal sebagai
ortogonalisasi Gram–Schmidt. Algoritma ini bermula dari sebuah basis untuk suatu subruang dari
\(\real^m\) dan menghasilkan basis ortogonal atau ortonormal. Algoritma tersebut bertumpu pada konstruksi proyeksi ortogonal. Ingat bahwa kita membentuk proyeksi ortogonal
\(\bhat\) dari
\(\bvec\) pada subruang
\(W\) dengan mensyaratkan agar
\(\bvec-\bhat\) ortogonal terhadap
\(W\text{,}\) seperti ditunjukkan pada
Gambar 6.4.3.
Kegiatan 6.4.2.
Misalkan \(W\) adalah subruang berdimensi tiga dari \(\real^4\) dengan basis:
\begin{equation*}
\vvec_1 = \fourvec1111,\hspace{24pt}
\vvec_2 = \fourvec1322,\hspace{24pt}
\vvec_3 = \fourvec1{-3}{-3}{-3}\text{.}
\end{equation*}
Kita dapat melihat bahwa basis ini tidak ortogonal dengan memperhatikan bahwa \(\vvec_1\cdot\vvec_2 = 8\text{.}\) Tujuan kita adalah membentuk basis ortogonal \(\wvec_1\text{,}\) \(\wvec_2\text{,}\) dan \(\wvec_3\) untuk \(W\text{.}\)
Sebagai langkah awal, kita tetapkan
\(\wvec_1=\vvec_1\text{,}\) dan kita sebut
\(W_1\) sebagai garis yang ditentukan oleh
\(\wvec_1\text{.}\)
-
Tentukan vektor
\(\vhat_2\) yang merupakan proyeksi ortogonal
\(\vvec_2\) pada
\(W_1\text{,}\) yaitu garis yang didefinisikan oleh
\(\wvec_1\text{.}\)
-
Bentuk vektor
\(\wvec_2 = \vvec_2-\vhat_2\) dan verifikasi bahwa vektor tersebut ortogonal terhadap
\(\wvec_1\text{.}\)
-
Jelaskan mengapa
\(\laspan{\wvec_1,\wvec_2} =
\laspan{\vvec_1,\vvec_2}\) dengan menunjukkan bahwa setiap kombinasi linear dari
\(\vvec_1\) dan
\(\vvec_2\) dapat dinyatakan sebagai kombinasi linear dari
\(\wvec_1\) dan
\(\wvec_2\text{,}\) dan sebaliknya.
-
Vektor
\(\wvec_1\) dan
\(\wvec_2\) merupakan basis ortogonal bagi subruang berdimensi dua
\(W_2\) dari
\(\real^4\text{.}\) Tentukan vektor
\(\vhat_3\) yang merupakan proyeksi ortogonal
\(\vvec_3\) pada
\(W_2\text{.}\)
-
Verifikasi bahwa
\(\wvec_3 = \vvec_3-\vhat_3\) ortogonal terhadap
\(\wvec_1\) maupun
\(\wvec_2\text{.}\)
-
Jelaskan mengapa
\(\wvec_1\text{,}\) \(\wvec_2\text{,}\) dan
\(\wvec_3\) membentuk basis ortogonal untuk
\(W\text{.}\)
-
Sekarang tentukan sebuah basis ortonormal untuk
\(W\text{.}\)
Seperti digambarkan oleh aktivitas ini, ortogonalisasi Gram–Schmidt bermula dari basis
\(\vvec_1,\vvec_2,\ldots,\vvec_n\) untuk subruang
\(W\) dari
\(\real^m\) dan membentuk basis ortogonal untuk
\(W\text{.}\) Mari kita selesaikan contoh kedua.
Contoh 6.4.4.
Kita mulai dengan basis
\begin{equation*}
\vvec_1=\threevec{2}{-1}2,\hspace{24pt}
\vvec_2=\threevec{-3}{3}0,\hspace{24pt}
\vvec_3=\threevec{-2}71\text{,}
\end{equation*}
yang merupakan basis untuk \(\real^3\text{.}\)
Sebagai langkah awal, kita tetapkan \(\wvec_1=\vvec_1=\threevec{2}{-1}2\text{.}\) Kita membentuk \(\wvec_2\) dari \(\vvec_2\) dengan mengurangkan proyeksi ortogonalnya pada \(W_1\text{,}\) yaitu garis yang ditentukan oleh \(\wvec_1\text{.}\) Hasilnya adalah
\begin{equation*}
\wvec_2 = \vvec_2 -
\frac{\vvec_2\cdot\wvec_1}{\wvec_1\cdot\wvec_1}\wvec_1 =
\vvec_2 + \wvec_1 = \threevec{-1}22\text{.}
\end{equation*}
Perhatikan bahwa kita memperoleh \(\vvec_2 = -\wvec_1 + \wvec_2\text{.}\) Oleh karena itu, kita dapat menulis ulang setiap kombinasi linear dari \(\vvec_1\) dan \(\vvec_2\) sebagai
\begin{equation*}
c_1\vvec_1 + c_2\vvec_2 = c_1\wvec_1 + c_2(-\wvec_1+\wvec_2)
= (c_1-c_2)\wvec_1 + c_2\wvec_2\text{,}
\end{equation*}
yaitu kombinasi linear dari \(\wvec_1\) dan \(\wvec_2\text{.}\) Hal ini menyatakan bahwa
\begin{equation*}
W_2 = \laspan{\wvec_1,\wvec_2} =
\laspan{\vvec_1,\vvec_2}\text{.}
\end{equation*}
Dengan kata lain, \(\wvec_1\) dan \(\wvec_2\) merupakan basis ortogonal untuk \(W_2\text{,}\) subruang berdimensi dua yang merupakan rentang dari \(\vvec_1\) dan \(\vvec_2\text{.}\)
Terakhir, kita membentuk \(\wvec_3\) dari \(\vvec_3\) dengan mengurangkan proyeksi ortogonalnya pada \(W_2\text{:}\)
\begin{equation*}
\wvec_3 = \vvec_3 -
\frac{\vvec_3\cdot\wvec_1}{\wvec_1\cdot\wvec_1}\wvec_1 -
\frac{\vvec_3\cdot\wvec_2}{\wvec_2\cdot\wvec_2}\wvec_2
= \vvec_3 + \wvec_1 - 2\wvec_2
= \threevec22{-1}\text{.}
\end{equation*}
Sekarang kita dapat memeriksa bahwa
\begin{equation*}
\wvec_1=\threevec2{-1}2,\hspace{24pt}
\wvec_2=\threevec{-1}22,\hspace{24pt}
\wvec_3=\threevec22{-1},\hspace{24pt}
\end{equation*}
merupakan himpunan ortogonal. Selain itu, seperti sebelumnya, kita memiliki \(\laspan{\wvec_1,\wvec_2,\wvec_3}
= \laspan{\vvec_1,\vvec_2,\vvec_3}\text{,}\) yang berarti bahwa kita telah menemukan basis ortogonal baru untuk \(\real^3\text{.}\)
Untuk membentuk basis ortonormal, kita membentuk vektor satuan yang sejajar dengan setiap vektor dalam basis ortogonal:
\begin{equation*}
\uvec_1 = \threevec{2/3}{-1/3}{2/3},\hspace{24pt}
\uvec_2 = \threevec{-1/3}{2/3}{2/3},\hspace{24pt}
\uvec_3 = \threevec{2/3}{2/3}{-1/3}\text{.}
\end{equation*}
Secara umum, jika kita memiliki basis \(\vvec_1,\vvec_2,\ldots,\vvec_n\) untuk suatu subruang \(W\) dari \(\real^m\text{,}\) algoritma Gram–Schmidt membentuk basis ortogonal untuk \(W\) dengan cara berikut:
\begin{align*}
\wvec_1 \amp = \vvec_1\\
\wvec_2 \amp = \vvec_2 -
\frac{\vvec_2\cdot\wvec_1}{\wvec_1\cdot\wvec_1}\wvec_1\\
\wvec_3 \amp = \vvec_3 -
\frac{\vvec_3\cdot\wvec_1}{\wvec_1\cdot\wvec_1}\wvec_1 -
\frac{\vvec_3\cdot\wvec_2}{\wvec_2\cdot\wvec_2}\wvec_2\\
\amp \vdots\\
\wvec_n \amp = \vvec_n -
\frac{\vvec_n\cdot\wvec_1}{\wvec_1\cdot\wvec_1}\wvec_1 -
\frac{\vvec_n\cdot\wvec_2}{\wvec_2\cdot\wvec_2}\wvec_2 -
\ldots -
\frac{\vvec_n\cdot\wvec_{n-1}}
{\wvec_{n-1}\cdot\wvec_{n-1}}\wvec_{n-1}
\text{.}
\end{align*}
Kegiatan 6.4.3.
Sage dapat mengotomatiskan perhitungan ini. Namun sebelum mulai, kita perlu memahami cara menggabungkan beberapa objek menggunakan sebuah
list dalam Python. Misalnya, jika vektor
v1,
v2, dan
v3 membentuk basis suatu subruang, kita dapat menghimpunnya menggunakan tanda kurung siku:
[v1, v2, v3]. Kita juga dapat menetapkan himpunan ini pada sebuah variabel, misalnya
basis = [v1, v2, v3].
Menjalankan sel berikut akan memuat beberapa perintah khusus.
-
Tersedia perintah untuk menerapkan rumus proyeksi:
projection(b, basis) mengembalikan proyeksi ortogonal
b pada subruang yang direntang oleh
basis, yang berupa sebuah daftar vektor.
-
Perintah
unit(w) mengembalikan vektor satuan yang sejajar dengan
w.
-
Jika diberikan sekumpulan vektor, misalnya
v1 dan
v2, kita dapat membentuk matriks yang kolom-kolomnya adalah
v1 dan
v2 dengan menggunakan
matrix([v1, v2]).T. Ketika diberi sebuah
list vektor, Sage membentuk matriks yang
baris-barisnya adalah vektor-vektor tersebut. Karena itu, kita perlu menerapkan transpos.
Sekarang perhatikan \(W\text{,}\) subruang dari \(\real^5\) yang memiliki basis
\begin{equation*}
\vvec_1 = \fivevec{14}{-6}{8}2{-6},\hspace{24pt}
\vvec_2 = \fivevec{5}{-3}{4}3{-7},\hspace{24pt}
\vvec_3 = \fivevec{2}30{-2}1.
\end{equation*}
-
Terapkan algoritma Gram–Schmidt untuk menentukan basis ortogonal
\(\wvec_1\text{,}\) \(\wvec_2\text{,}\) dan
\(\wvec_3\) bagi
\(W\text{.}\)
-
Tentukan
\(\bhat\text{,}\) yaitu proyeksi ortogonal dari
\(\bvec = \fivevec{-5}{11}0{-1}5\) pada
\(W\text{.}\)
-
Jelaskan mengapa kita mengetahui bahwa \(\bhat\) merupakan kombinasi linear dari vektor-vektor asal \(\vvec_1\text{,}\) \(\vvec_2\text{,}\) dan \(\vvec_3\text{,}\) kemudian tentukan koefisien-koefisien sehingga
\begin{equation*}
\bhat = c_1\vvec_1 + c_2\vvec_2 + c_3\vvec_3.
\end{equation*}
-
Tentukan basis ortonormal
\(\uvec_1\text{,}\) \(\uvec_2\text{,}\) dan
\(\uvec_3\) untuk
\(W\text{,}\) lalu bentuk matriks
\(Q\) yang kolom-kolomnya adalah vektor-vektor tersebut.
-
Tentukan hasil kali
\(Q^TQ\) dan jelaskan hasilnya.
-
Tentukan matriks
\(P\) yang memproyeksikan vektor secara ortogonal pada
\(W\text{,}\) dan verifikasi bahwa
\(P\bvec\) menghasilkan
\(\bhat\text{,}\) yaitu proyeksi ortogonal yang Anda tentukan sebelumnya.