หลังจากในตอนที่แล้วเราได้เรียนรู้ไปแล้วว่า Matrix คือการสั่ง Transform vector แบบนึง ในตอนนี้เราจะมาเรียนรู้ต่อว่า เรื่องอื่นๆ เช่น การเปลี่ยนมิติให้ Vector, DET, Rank หรือ INVERSE คืออะไรกันแน่? ถ้าใครที่ยังไม่ได้อ่านตอนแรก แนะนำให้กลับไปอ่านก่อนนะครับ
สารบัญ
การ Transform เปลี่ยนมิติ ด้วย Matrix ที่ไม่ใช่จตุรัส
ก่อนหน้านี้เรามีการ Transform vector ไปยัง vector ผลลัพธ์ที่มีมิติเท่ากันมาโดยตลอด แล้วถ้าเราต้องการ Transform แบบไม่เท่ากัน เช่น จาก vector 2 มิติ เป็น 3 มิติล่ะ?
เปลี่ยน จาก 2 มิติ เป็น 3 มิติ
เราสามารถใช้ Matrix ลักษณะ 3×2 เพื่อช่วยแปลงได้ โดยการตีความจะเหมือนเดิมเลยว่า
- ฝั่งซ้ายคือจะเปลี่ยน i (1,0) ไปที่ไหน
- ฝั่งขวาคือจะเปลี่ยน j (0,1) ไปไหน
เปลี่ยนจาก 3 มิติ เป็น 2 มิติ
เราใช้ Matrix 2×3 มาช่วยได้ โดยแต่ละตัวจะบอกว่าให้ i j k ย้ายไปที่ไหนแทน ในแกน 2 มิติ xy
จากตัวอย่างทั้งสองอันแปลว่าเราสามารถเปลี่ยนมิติให้กับ vector ได้ด้วย Matrix เช่นกันครับ
Determinant (DET) คืออะไร?
สมมติว่าเราจะ Transform ให้แกน x ขยายไป 2 เท่า และแกน y ขยายไป3 เท่า เราสามารถใช้ Matrix นี้ในการ Transform ได้
และถ้าเราถามว่าหลังจากการ Transform ไปแล้วขนาดของผลลัพธ์ใหญ่เป็นกี่เท่าของต้นฉบับ?
จะเห็นว่าเดิมมันเป็นพื้นที่ 1×1 หน่วย ได้ถูกขยายให้เป็น 2×3 หน่วย นั่นคือขนาดใหญ่เป็น 6 เท่าจากเดิมนั่นเอง (ถ้าเป็น 3 มิติก็วัดว่าปริมาตรอันใหม่เป็นกี่เท่าของปริมาตรเดิม) ซึ่ง เลข 6 ก็คือ Determinant หรือ DET ของ Matrix นั้นๆ นั่นเองครับ
- โดยที่ถ้า DET เป็น 0 จะหมายถึง แกนใหม่มันถูกบีบให้กลายเป็นเส้นตรงเดียวกัน หรือกลายเป็นจุด ทำให้ไม่มีพื้นที่นั่นเอง
- และถ้า DET ติดลบ ก็จะแปลว่ามีการพลิกด้านจากแกนเดิมด้วย
ซึ่งใน Excel เราสามารถใช้ MDETERM เพื่อคำนวณหา DET ได้เลย ดังนี้
Rank ของ Matrix คืออะไร?
Rank คือจำนวนมิติของผลลัพธ์ในการ Transform ด้วย Matrix เช่น
- ถ้าเรา Transform ด้วย Matrix 2×2 ผลลัพธ์ที่ได้อาจจะมีมิติ (Rank) คือ 2 (ระนาบ) ,1 (เส้น) ,0 (จุด)
- ซึ่งถ้า DET ไม่ใช่ 0 ก็จะมี Rank 2 นั่นเอง (สูงสุดเท่าที่จะเป็นได้)
- ถ้าเรา Transform ด้วย Matrix 3×3 ผลลัพธ์ที่ได้อาจจะมีมิติ (Rank) คือ 3 (3 มิติ) , 2 (ระนาบ) ,1 (เส้น) ,0 (จุด)
- ซึ่งถ้า DET ไม่ใช่ 0 ก็จะมี Rank 3 นั่นเอง (สูงสุดเท่าที่จะเป็นได้)
Inverse Matrix คืออะไร?
ถ้า Matrix ปกติ (A) คือตัวที่สามารถ Transform vector จากแกน i j ปกติให้เปลี่ยนเป็น ij แกนใหม่ได้ ….
ถ้างั้น Inverse ของ Matrix A ( ซึ่งจะเรียกว่า A-1) ก็คือ Matrix ที่สามารถ Transform vector ที่ถูกแปลงมาจาก A ให้กลับให้ไปอยู่ในแกน i j ปกตินั่นเองครับ (ทำงานกลับกัน)
เช่น ใน Excel สามารถใช้ MINVERSE ช่วยได้แบบนี้ครับ
ลองดูตัวอย่างง่ายๆ ก่อน นั่นคือ Matrix เดิมมีการหมุนทวนเข็ม 90 องศา ดังนั้น Matrix Inverse ของตัวนั้นก็คือการหมุนตามเข็ม 90 องศานั่นเองครับ
หรือลองใส่การ Transform มั่วๆ แบบนี้ มันก็หา Inverse ได้ (ถ้า DET ไม่ใช่ 0)
อย่างไรก็ตาม การ Transform บางกรณี ก็จะไม่สามารถหา Inverse ได้ เนื่องจากแกนใหม่อาจถูกบีบจนเป็นเส้นตรง หรือเป็นจุด ซึ่งสังเกตได้ว่า DET เป็น 0 ก็จะหา Inverse ไม่ได้ไปด้วยนั่นเอง
ซึ่งเจ้า Inverse นี่เองที่ช่วยให้เราแก้สมการหลายตัวแปรด้วย Matrix ได้ ด้วยหลักการที่ว่า
A-1*A = A*A-1 = Identity Matrix (I)
และ Identity Matrix คูณอะไรก็ได้ตัวเดิม (เพราะเราไม่ได้ย้าย ij ไปไหน)
I*A = A*I = A
จากทั้งสองเรื่องข้างบนจะได้ว่า
- A * x = b
- A-1* A * x = A-1*b
- x = A-1*b
x = A-1*b
นั่นคือเราสามารถแก้สมการได้ด้วยการเอา Inverse Matrix ไปคูณกับ Vector ผลลัพธ์ของสมการนั่นเอง ซึ่งผมได้ลองทำให้ดูแล้วในบทความข้างล่างนี้
อย่างไรก็ตามการแก้สมการด้วยวิธีนี้จะมีปัญหากรณีที่ค่าผลลัพธ์สมการเป็น 0 หรือ อยู่ในรูปแบบ Ax=0 ซึ่งเวลาเอา Inverse ไปคูณกับ (0,0,0) ซึ่งเป็นจุด มันก็ได้จุด 0 อยู่ดี ไม่มีประโยชน์อะไร ดังนั้นเราจะต้องแก้สมการด้วยวิธีอื่นครับ ซึ่งต้องรอตอนต่อๆ ไปครับ
ตอนต่อไป
สำหรับตอนนี้จะขอจบเพียงเท่านี้ เดี๋ยวตอนต่อๆ ไปจะเรียนเรื่อง Dot Product, Cross Product, กฏ Cramer, Eigenvectors และ Eigenvalues ครับ