Ketika sebuah matriks bekerja sebagai transformasi, hampir semua arah bergeser. Tetapi beberapa arah istimewa hanya berubah panjang tanpa belok — arah itulah eigenvector, dan faktor panjangnya adalah eigenvalue. Konsep pasangan ini adalah kunci berbagai analisis: getaran struktur (frekuensi natural adalah eigenvalue), stabilitas sistem dinamis, kompresi data lewat Principal Component Analysis, sampai algoritme PageRank. Fungsi eig() menghitung semuanya dalam satu panggilan. Cakupan chapter ini:

  • Definisi A*v = λ*v dan verifikasinya secara eksak
  • eig(A) untuk nilai saja vs [V, D] = eig(A) untuk pasangan lengkap
  • Jaminan khusus matriks simetris: eigenvalue real, eigenvector ortogonal
  • Diagonalisasi A = V*D*V⁻¹ dan maknanya
  • Pengenalan singkat PCA

Definisi: Arah yang Tidak Berubah #

Aturannya: v adalah eigenvector dari A dengan eigenvalue λ bila A*v = λ*v — mengalikan dengan matriks memberi hasil identik dengan mengalikan dengan skalar. Mekanismenya: alih-alih mencari vektor istimewa secara langsung, MATLAB mencari akar persamaan karakteristik det(A − λI) = 0 lewat algoritme numerik yang stabil (QR iteration), lalu menyelesaikan vektornya. Kita bisa memverifikasi pasangan hasilnya dengan tangan untuk matriks kecil:

matlab
A  = [4 1; 2 3];
v1 = [1; 1];     % eigenvector untuk lambda = 5
v2 = [1; -2];    % eigenvector untuk lambda = 2
fprintf('A*v1  : %d %d\n', A*v1);
fprintf('5*v1  : %d %d\n', 5*v1);
fprintf('A*v2  : %d %d\n', A*v2);
fprintf('2*v2  : %d %d\n', 2*v2);

Output yang Dihasilkan:

text
A*v1  : 5 5
5*v1  : 5 5
A*v2  : 2 -4
2*v2  : 2 -4

Mari kita bedah baris-baris kode di atas:

  1. Baris 3 (A*v1): hasil [5; 5] adalah tepat 5*v1 — arah [1; 1] tak berbelok, hanya direntangkan 5 kali; λ = 5.
  2. Baris 5 (A*v2): hasil [2; −4] sama dengan 2*v2 — arah [1; −2] direntangkan 2 kali; λ = 2.
  3. Verifikasi berpasangan: dua baris bersebelahan yang identik di output adalah bukti definisi terpenuhi — pola verifikasi ini berlaku untuk matriks sebesar apa pun.

eig(A) dan [V, D] = eig(A) #

Aturannya: eig(A) mengembalikan vektor berisi eigenvalue saja; [V, D] = eig(A) mengembalikan matriks V yang kolom-kolomnya adalah eigenvector ternormalisasi dan matriks diagonal D yang entrinya adalah eigenvalue berurutan mengikuti kolom V. Mekanismenya: keduanya memanggil mesin yang sama — bentuk kedua hanya menyelesaikan vektor-vektornya sekalian. Urutan hasil tidak dijamin antar mesin, sehingga membandingkan hasil lebih aman setelah sort:

matlab
A  = [4 1; 2 3];
ev = sort(eig(A));
fprintf('eig(A) terurut : %g %g\n', ev);

[V, D] = eig(A);
fprintf('diag D terurut : %g %g\n', sort(diag(D)));
fprintf('A*V ~ V*D      : %d\n', all(all(abs(A*V - V*D) < 1e-12)));

Output yang Dihasilkan:

text
eig(A) terurut : 2 5
diag D terurut : 2 5
A*V ~ V*D      : 1

Nilai eigen A adalah 2 dan 5 (trace 4+3 = 7 = 2+5 — cara cepat mencocokkan). Verifikasi all(abs(A*V − V*D) < 1e-12) bernilai 1: definisi A*v = λ*v terpenuhi untuk seluruh kolom V sekaligus, dalam bentuk matriks A*V = V*D. Eigenvector dari eig selalu bernorma 1 dan tandanya bebas (misalnya kolom bisa [−0.7071; −0.7071] alih-alih [1; 1] — sejajar dengan v1 kita, hanya dikalikan konstanta).

Matriks Simetris: Real dan Ortogonal #

Aturannya: untuk matriks simetris real (S = S'), MATLAB menjamin dua kenyamanan — semua eigenvalue real, dan eigenvector-eigenvectornya saling ortogonal. Mekanismenya: algoritme untuk matriks simetris (berbasis tridiagonalisasi Householder) bekerja pada bentuk yang struktur simetrinya terjaga, sehingga pasangan imajiner tidak pernah muncul. Eigenvector [1; 1] dan [1; −1] dari matriks di bawah sengaja dipilih tegak lurus:

matlab
S = [2 1; 1 2];
[Vs, Ds] = eig(S);
fprintf('eig(S)         : %g %g\n', sort(eig(S)));
fprintf('Vs''*Vs ~ I     : %d\n', all(all(abs(Vs'*Vs - eye(2)) < 1e-12)));

fprintf('S*[1;1]  : %d %d\n', S*[1;1]);
fprintf('3*[1;1]  : %d %d\n', 3*[1;1]);
fprintf('S*[1;-1] : %d %d\n', S*[1;-1]);
fprintf('1*[1;-1] : %d %d\n', 1*[1;-1]);

Output yang Dihasilkan:

text
eig(S)         : 1 3
Vs'*Vs ~ I     : 1
S*[1;1]  : 3 3
3*[1;1]  : 3 3
S*[1;-1] : 1 -1
1*[1;-1] : 1 -1

Eigenvalue S adalah 1 dan 3. Cek Vs'*Vs ≈ I terpenuhi — kolom-kolom Vs ortonormal (ortogonal dan bernorma 1). Pasangan eksaknya terlihat di empat baris terakhir: arah [1; 1] direntangkan 3 kali, arah [1; −1] tidak berubah sama sekali (λ = 1).

Diagonalisasi #

Aturannya: dengan pasangan lengkap, matriks dapat ditulis A = V*D*V⁻¹ — operasi A dipecah menjadi tiga langkah: pindah ke basis eigen (V⁻¹), rentangkan tiap sumbu mandiri (D), lalu kembali ke basis asal (V). Pangkat matriks pun menjadi murah: A^k = V*D^k*V⁻¹ karena D diagonal. Untuk matriks simetris V⁻¹ = V' (karena V ortogonal), sehingga bentuknya lebih manis lagi:

matlab
Rk = Vs*Ds*Vs';
fprintf('V*D*V'' = S     : %d\n', all(all(abs(Rk - S) < 1e-12)));

Output yang Dihasilkan:

text
V*D*V' = S     : 1

Makna dan Aplikasi #

Dua contoh klasis di mana pasangan eigen menjawab pertanyaan dunia nyata:

DomainYang dicariPeran eigen
Getaran strukturfrekuensi natural rangka bangunaneigenvalue dari matriks massa-kepegasan = kuadrat frekuensi; eigenvector = pola getar
Stabilitas sistem dinamisapakah sistem kembali setelah diganggueigenvalue bermagnitudo < 1 (peta diskrit) atau negatif real (kontinu) berarti stabil
PCA (analisis data)arah sebaran data terbesareigenvector matriks kovarians = principal components; eigenvalue = varians yang terjelaskan

Untuk PCA, intinya satu kalimat: eigenvector terbesar matriks kovarians data adalah arah sebaran data paling dominan — memproyeksikan data ke beberapa eigenvector teratas adalah cara memampatkan dimensi dengan kehilangan informasi sekecil mungkin. Fungsi MATLAB tingkat lanjut untuk analisis ini (pca) membangun tepat di atas eig/svd.

Ringkasan #

A*v = λ*v mendefinisikan arah invariant dan faktor rentangnya; eig(A) memberi nilai, [V, D] = eig(A) memberi pasangan lengkap dengan verifikasi matriks A*V ≈ V*D. Matriks simetris real menjamin eigenvalue real dengan eigenvector ortogonal, dan diagonalisasi A = V*D*V⁻¹ (atau V*D*V' untuk simetris) menjadikan pangkat serta analisis struktur murah. Aplikasi ciri khas — frekuensi natural, kestabilan, dan PCA — semuanya berdiri di atas pasangan ini. Pasangan eigen juga menuntaskan pertanyaan praktis yang tersisa di section ini: menyelesaikan A*x = b secara sistematis.