โปรแกรมคูณเมทริกซ์ (Matrix Multiplication)
A × B หาได้เมื่อจำนวนหลักของ A เท่ากับจำนวนแถวของ B ถ้า A มีขนาด m × n และ B มีขนาด n × p ผลคูณมีขนาด m × p โดย cᵢⱼ = aᵢ₁b₁ⱼ + aᵢ₂b₂ⱼ + … + aᵢₙbₙⱼ (แถว i ของ A คูณหลัก j ของ B) เช่น [1 2 3; 4 5 6] × [7 8; 9 10; 11 12] = [58 64; 139 154]
ประวัติการคำนวณ (เก็บในเครื่องนี้)
วิธีใช้คูณเมทริกซ์
- เลือกโหมด A × B, k × A หรือ Aⁿ แล้วกำหนดขนาดของเมทริกซ์ (สูงสุด 6 × 6)
- กรอกสมาชิก (จำนวนเต็ม ทศนิยม หรือเศษส่วน) — สำหรับ A × B จำนวนหลักของ A ต้องเท่ากับจำนวนแถวของ B
- ดูผลคูณ ขนาดของผลลัพธ์ และวิธีทำแบบแถวคูณหลักของทุกตำแหน่ง กด “ใช้ผลลัพธ์เป็น A” เพื่อคูณต่อได้
สูตรการคูณเมทริกซ์
cᵢⱼ = Σₖ aᵢₖ · bₖⱼ
ถ้า A มีขนาด m × n และ B มีขนาด n × p (เลขตรงกลางต้องเท่ากัน) ผลคูณ C = AB มีขนาด m × p สมาชิกแถว i หลัก j ได้จากการนำแถวที่ i ของ A คูณกับหลักที่ j ของ B ทีละคู่แล้วบวกกัน (ผลคูณเชิงสเกลาร์ของแถวกับหลัก)
| การดำเนินการ | เงื่อนไข | ขนาดผลลัพธ์ |
|---|---|---|
| A × B | หลักของ A = แถวของ B | (แถวของ A) × (หลักของ B) |
| k × A | ทุกขนาด | เท่ากับ A (คูณ k ทุกสมาชิก) |
| Aⁿ = A·A·…·A | A ต้องเป็นจัตุรัส | เท่ากับ A |
ตัวอย่างการคำนวณ
โจทย์: A = [1 2 3; 4 5 6] (2 × 3), B = [7 8; 9 10; 11 12] (3 × 2) จงหา AB
- ตรวจขนาด: (2 × 3)(3 × 2) เลขกลางเท่ากัน จึงคูณได้ ผลลัพธ์มีขนาด 2 × 2
- c₁₁ = 1·7 + 2·9 + 3·11 = 7 + 18 + 33 = 58
- c₁₂ = 1·8 + 2·10 + 3·12 = 8 + 20 + 36 = 64
- c₂₁ = 4·7 + 5·9 + 6·11 = 28 + 45 + 66 = 139
- c₂₂ = 4·8 + 5·10 + 6·12 = 32 + 50 + 72 = 154
ดังนั้น AB = [58 64; 139 154] ส่วน BA จะมีขนาด 3 × 3 ซึ่งต่างจาก AB โดยสิ้นเชิง
สมบัติที่ต้องรู้ของการคูณเมทริกซ์
- ไม่มีสมบัติการสลับที่ โดยทั่วไป AB ≠ BA บางครั้ง AB หาได้แต่ BA หาไม่ได้ด้วยซ้ำ
- เปลี่ยนกลุ่มได้ (AB)C = A(BC) และแจกแจงได้ A(B + C) = AB + AC
- เมทริกซ์เอกลักษณ์ AI = IA = A
- ทรานสโพสกลับลำดับ (AB)ᵀ = BᵀAᵀ และอินเวอร์ส (AB)⁻¹ = B⁻¹A⁻¹
- ดีเทอร์มิแนนต์ det(AB) = det(A)·det(B) และ det(kA) = kⁿ det(A) เมื่อ A มีขนาด n × n
- AB = 0 ได้ แม้ A ≠ 0 และ B ≠ 0 จึงใช้กฎ “ผลคูณเป็นศูนย์แล้วตัวใดตัวหนึ่งต้องเป็นศูนย์” ไม่ได้
เมทริกซ์ยกกำลังใช้ทำอะไร
Aⁿ ใช้คำนวณระบบที่เปลี่ยนสถานะซ้ำ ๆ เช่น โซ่มาร์คอฟ (ความน่าจะเป็นหลัง n ขั้น) การเติบโตของประชากรแยกช่วงอายุ หรือจำนวนเส้นทางยาว n ก้าวในกราฟ ตัวอย่างคลาสสิกคือ [1 1; 1 0]ⁿ ซึ่งให้จำนวนฟีโบนักชี: [1 1; 1 0]¹⁰ = [89 55; 55 34]
คำถามที่พบบ่อย
เมทริกซ์ 2 × 3 คูณกับ 2 × 3 ได้ไหม
ไม่ได้ เพราะจำนวนหลักของตัวหน้า (3) ไม่เท่ากับจำนวนแถวของตัวหลัง (2) แต่ถ้าทรานสโพสตัวหลังเป็น 3 × 2 ก่อนจะคูณได้ และได้ผลลัพธ์ขนาด 2 × 2
ทำไม AB ไม่เท่ากับ BA
เพราะ AB ใช้แถวของ A คูณหลักของ B ส่วน BA ใช้แถวของ B คูณหลักของ A จึงเป็นการคำนวณคนละชุด แม้ทั้งสองเป็นเมทริกซ์จัตุรัสขนาดเดียวกันก็มักได้ผลต่างกัน โปรแกรมนี้ตรวจให้ว่า AB = BA หรือไม่เมื่อทั้งคู่เป็นจัตุรัส
คูณเมทริกซ์ 3 × 3 ต้องคูณกี่ครั้ง
แต่ละตำแหน่งใช้การคูณ 3 ครั้งและบวก 2 ครั้ง มีทั้งหมด 9 ตำแหน่ง จึงเป็นการคูณ 27 ครั้งและบวก 18 ครั้ง โดยทั่วไป (m × n)(n × p) ใช้การคูณ m·n·p ครั้ง
A⁰ และ A⁻² หมายถึงอะไร
A⁰ คือเมทริกซ์เอกลักษณ์ I ขนาดเดียวกับ A ส่วน A⁻² = (A⁻¹)² หาได้เฉพาะเมื่อ A มีอินเวอร์ส คือ det(A) ≠ 0