เครื่องคำนวณหาผลต่างของ Babbage
นี้ทำงานโดยอาศัยเครื่องจักรกล (สมัยนั้นยังไม่มีไฟฟ้าใช้)
ประกอบด้วยฟันเฟืองหลาย ๆ ตัวเป็นตัวขับเคลื่อน เครื่องนี้ใช้ในการหาค่าของฟังก์ชันโพลิโนเมียล
(Polynomial) ออกมาเป็นเป็นตาราง ซึ่งได้จากการวิเคราะห์ผลต่าง
(สามารถหาค่าของฟังก์ชันลอการิทึม (logarithm function) และ
ฟังก์ชันตรีโกณมิติ (Trigonometric function) ได้ด้วยเนื่องจากฟังชันก์ทั้งสองนี้สามารถประมาณค่าโดยฟังก์ชันโพลิโนเมียลได้)
ตัวอย่าง ต้องการหาค่าของฟังก์ชัน p(x)
= 2x2 − 3x + 2 เมื่อ x =
0, x =0.1, x=0.2, x=0.3 และ x=0.4 เครื่องนี้จะสร้างตารางดังนี้
คอลัมน์ 1แสดงค่าของฟังก์ชัน, คอลัมน์ 2 เป็นผลต่างของ
2 ค่าที่อยู่ติดด้านซ้าย, คอลัมน์ 3 หาผลต่างของ 2 ค่าที่อยู่ติดด้านซ้ายซึ่งก็คือคอลัมน์ที่
2
p(0)=2.0 |
|
2.0−1.72=0.28 |
p(0.1)=1.72 |
|
0.28−0.24=0.04 |
|
1.72−1.48=0.24 |
p(0.2)=1.48 |
|
0.24−0.20=0.04 |
|
1.48−1.28=0.20 |
p(0.3)=1.28 |
|
0.20−0.16=0.04 |
|
1.28−1.12=0.16 |
p(0.4)=1.12 |
ให้สังเกตว่าในคอมลัมน์ที่ 3 ผลต่างมีค่าเป็น
0.4 เท่ากันหมด เราเรียกค่านี้ว่าค่าคงที่ (เพราะค่านี้คงที่แล้ว)
ในทุก ๆ ฟังก์ชันเมื่อสร้างตารางจะได้ค่าคงที่ค่าหนึ่งออกมาเสมอ
และไม่จะเป็นต้องหาผลต่างต่อไปอีก (เพราะไม่ต่างกันแล้ว) ให้หยุดตรงคอมลัมน์ที่มีค่าคงที่นี้
จากนั้น เมื่อต้องการหาค่าของฟังก์ชันเมื่อ x = 0.5 ก็สามารถหาได้โดยเริ่มจากมุมขวาล่างสุดคือค่า
0.04 ย้อนรอยไปคอลัมน์ที่ 2 ได้โดยการลบ 0.04 ออกจาก 0.16
ได้ 0.12, จากนั้นลบค่าคอลัมน์ที่ 1 คือ 1.12 ด้วย 0.12 จะได้
1 ดังนั้นค่าของฟังก์ชัน p(0.5) คือ 1.12-0.12 = 1.0 จะเห็นว่าเครื่องนี้สามารถหาค่าของฟังก์ชันได้จากการหาผลต่าง
จึงเป็นที่มาของชื่อ Different Engine ไงครับ
p(0)=2.0 |
|
2.0−1.72=0.28 |
p(0.1)=1.72 |
|
0.28−0.24=0.04 |
|
1.72−1.48=0.24 |
p(0.2)=1.48 |
|
0.24−0.20=0.04 |
|
1.48−1.28=0.20 |
p(0.3)=1.28 |
|
0.20−0.16=0.04 |
|
1.28−1.12=0.16 |
p(0.4)=1.12 |
|
0.20−0.16=0.04 |
|
0.16 - 0.4 =0.12 |
p(0.5)=1.00 |
|
ลองทำดู กำหนดให้ p(x)
= 2x2 − 3x + 2 แล้ว
P(1) มีค่าเท่าไรครับ
|