Sunday, October 30, 2005

Transformation Matrix: ผลคูณภายใน

เรื่องนี้เป็นภาคต่อของ Transformation Matrix: พื้นฐาน นะ ไม่ยากเหมือนตอนที่แล้ว ๆ มา

เราจะเริ่มที่เรื่องของ ผลคูณภายใน ก่อน แต่คราวนี้ จะคิดกรณีของจำนวนเชิงซ้อนด้วย

สมมติว่าเรามีเวกเตอร์ u อยู่ เราคิดว่า ค่าในแต่ละมิติของ u เป็นฟังก์ชันของเลขมิติ (เหมือนกับในตอน Discrete: ฟังก์ชัน เวกเตอร์ และเมตริกซ์) คือ

u = (u(1), u(2), u(3), ..., u(n))

แต่เดิม เราคิดว่าผลคูณภายในของ u กับ v ที่มีมิติเป็น n เท่ากัน คือ

uv = Σ1≤i≤n u(i)v(i)

ดังนั้น ขนาดของ u สามารถหาได้จาก (คราวนี้ขอเขียนว่า |u| นะ)

|u|2 = uu = Σ1≤i≤n u(i)2

หรือก็คือ

|u| = (uu)1/2

แต่ ถ้าเกิด u(i) เป็นจำนวนเชิงซ้อนหละ ... uu อาจจะไม่ใช่จำนวนจริงก็ได้ แล้ว |u| ก็อาจจะมีได้ 2 ค่าน่ะสิ (จากสมการ |u|2 = uu)

เราแก้ปัญหานี้ได้ โดยนิยามอะไรใหม่นิดนึง ... ถ้าเรากำหนดให้ สังยุกต์ (Conjugate) ของเวกเตอร์ เป็นแบบนี้

u* = (u(1)*, u(2)*, u(3)*, ..., u(n)*)

พอเราหา u*u ผลก็คือ

u*u = Σ1≤i≤n u(i)*u(i)

จากความรู้เรื่องจำนวนเชิงซ้อน เรารู้ว่า ถ้า z เป็นจำนวนเชิงซ้อนใด ๆ แล้ว z*z = |z|2 เป็นจำนวนจริง ดังนั้น u*u ของเรา ก็จะเป็นจำนวนจริงด้วย

เราเลยนิยาม ผลคูณภายใน ใหม่ แบบนี้

uv แบบใหม่ = u*v แบบเก่า

แต่ uv แบบใหม่ มีคุณสมบัติต่างกับแบบเก่าด้วย คือ

uvvu (หมายถึง ไม่จำเป็นต้องเท่ากันเสมอไป)
แต่ uv = (vu)* เสมอ

เมื่อคิดเวกเตอร์เป็นเมตริกซ์แนวตั้ง

ถ้าเรามอง u เป็นเมตริกซ์มิติ n × 1 เราก็ยังเขียนว่า

u = (u(1), u(2), u(3), ..., u(n))

ได้เหมือนเดิม ... แต่เดี๋ยวลองกำหนด u* ใหม่ ให้เป็นแบบนี้

u* = [u(1)* u(2)* u(3)* ... u(n)*]

หรือก็คือ

u* แบบใหม่ = (u*)T แบบเก่า

พอเราหาผลคูณแบบเมตริกซ์ของ u* กับ v ก็จะได้ผลเป็น เมตริกซ์มิติ 1 × 1 แบบนี้

u*v = [uv]

เพื่อให้เขียนง่ายขึ้น เราจะถือซะว่า เมตริกซ์มิติ 1 × 1 เป็นจำนวนเชิงซ้อนตัวเดียวเลยละกัน ... มันจะเป็น

u*v = uv

ผลคูณภายในของเมตริกซ์กับเมตริกซ์

เราลองใช้นิยามผลคูณภายในอย่างเดียวกันกับเมตริกซ์ดู เราจะหาขนาดของเมตริกซ์ได้รึเปล่านะ?

AA = A*A = ?

ถ้าเรามองว่า A เป็นเมตริกซ์ที่มีมิติ m × n ซึ่งประกอบด้วยเวกเตอร์แนวตั้ง แบบนี้

A = [A1 : A2 : A3 : ... : Am]

A* จะเป็นเมตริกซ์ที่มีมิติ n × m หน้าตาแบบนี้

A* = (A1* : A2* : A3* : ... : Am*)

เผื่อลืม: รูปการคูณเมตริกซ์

เอามาจาก Transformation Matrix: พื้นฐาน นะ

ดังนั้นค่าของ A*A จะเป็นเมตริกซ์มิติ n × n แบบนี้

B = A*A
Bi,j = AiAj
เมื่อ Bi,j คือ ค่าในแถวที่ i หลักที่ j ของ B

คราวนี้ คุณสมบัติสำคัญก็คือ

AiAj = (AjAi)*

ซึ่งทำให้

Bi,j = Bj, i*

ซึ่งแปลว่า

B = B*

เราเรียกเมตริกซ์ที่มีคุณสมบัตินี้ว่า เมตริกซ์เฮอร์มิเชียน (Hermitian Matrix)

ไป ๆ มา ๆ เราก็ไม่ได้ขนาดของ A แฮะ แต่ได้คุณสมบัติที่ว่า AA เป็นเมตริกซ์เฮอร์มิเชียนแทน

แล้ว แต่ละค่า Bi,j มันมีความหมายว่ายังไงหละ?

ถ้าเวกเตอร์ Ai ตั้งฉากกันทุกคู่

ดังนั้น AiAj จะเป็น 0 เมื่อ i ≠ j

มันก็แปลว่า Bi,j = 0 เมื่อ i ≠ j น่ะสิ

AA ก็จะเป็น เมตริกซ์ทแยงมุม (Diagonal Matrix)!!!

เราจะเขียนได้ว่า ... (สัญลักษณ์แบบนี้ เอามาจาก Transformation Matrix: Eigenvalues & Eigenvectors "ตอนแรก" นะ)

AA = [ B1,1 \ B2,2 \ B3,3 \ ... \ Bn,n ]

เนื่องจาก Bi,i = AiAi = |Ai|2 เป็นจำนวนจริง ดังนั้น

AA เป็นเมตริกซ์จำนวนจริงด้วย

เรื่องของ Determinant

ถ้า A เป็นเมตริกซ์จัตุรัส เราจะหา det(A) ได้

เนื่องจาก det(A) เกิดจากการเอาค่า A มาคูณกับบวกกัน ดังนั้น

det(A*) = det(A)*

ดังนั้น เราก็เลยรู้แน่ ๆ ว่า

det(AA) เป็นจำนวนจริง

เพราะว่า

det(AA) = det(A*A) = det(A)*det(A)
เป็นจำนวนจริงแน่นอน

ดังนั้น เราอาจจะนิยาม ขนาดของ A อีกแบบนึง ซึ่งเป็นจำนวนจริงไม่ติดลบเสมอ ดังนี้

|A| = det(AA)1/2

ซึ่งสิ่งที่เราได้เพิ่มมาอีกอย่างก็คือ ... A ไม่จำเป็นต้องเป็นเมตริกซ์จัตุรัสก็ได้น่ะสิ !!!

3 Comments:

At 11/07/2005 9:40 PM, Anonymous Anonymous said...

เบื่อเรื่องเลขละ >3<
ดองมานาน เข้าที่อย่างเดียวเหรอ?

 
At 11/07/2005 11:01 PM, Blogger Tunococ said...

อย่าเพิ่งเบื่อสิ ยังไม่ถึงที่ climax เลย

 
At 11/07/2005 11:46 PM, Anonymous Anonymous said...

เราขอเรียกว่าเป็น blog มหัศจรรย์ของขวัญจากตำนานเทพ :S

 

Post a Comment

<< Home