ครั้งที่ 13

Download Report

Transcript ครั้งที่ 13

887110
Introduction to discrete structure
บทที่ 7 เทคนิคการนับขั้นสูง (2)
1
ความสัมพันธ์เวียนบังเกิด (RECURRENCE
RELATIONS)
2
ความสัมพันธ์เวียนบังเกิด (Recurrence relations)
• โจทย์ปญ
ั หาเกี่ยวกับการนับบางปัญหา ไม่สามารถหาคาตอบได้ด้วย
วิธีการที่กล่าวมา (ฟังก์ชันก่อฟำเนิ
ก ด)
• แต่ต้องใช้ความสัมพันธ์ระหว่างจานวนวิธีของเหตุการณ์ที่เกิดขึ้นก่อน และ
จานวนวิธีของเหตุการณ์ที่เกิดตามหลัง
3
ตัวอย่าง
ในห้องทดลองชีววิทยาพบว่า จานวนแบคทีเรียจะเพิ่มขึ้นเป็น 2 เท่าใน
ทุกฟชั่วโมง สมมุติว่ำเมื่อเริ่มทดลองมีแบคทีเรีย 5 ตัว อยากทราบว่า หลังจาก
ผ่านไป 3 ชั่วโมง จะมีจานวนแบคทีเรียเท่าไหร่
วิธีทา กาหนดให้ a3 เป็นจานวนแบคทีเรียเมื่อสิ้นสุดชั่วโมงที่ 3
ฟึ่งมีฟำนวนเป็
จ
น 2 เท่าของชั่วโมงก่อนหน้า a2 ฟึ่งมำจำก (a3-1) จะได้
a3 = 2 a2
แต่ปัญหาจริ งๆเขาไม่ได้อยากรู ้เท่านี้
a2 = 2(2 a1)
= 2 2 a1
a1 = 23a0 โดยที่ a0 คือ จานวนแบคทีเรียในตอนเริ่มต้น
a0 = 5
ดังนั้น a3 = 23 . 5 = 40 ตัว
4
ตัวอย่าง
ในห้องทดลองชีววิทยาพบว่า จานวนแบคทีเรียจะเพิ่มขึ้นเป็น 2 เท่าในทุกฟ
ชั่วโมง สมมุติว่าเมื่อเริ่มทดลองมีแบคทีเรีย 5 ตัว อยากทราบว่า หลังจากผ่านไป n ชั่วโมง
จะมีจานวนแบคทีเรียเท่าไหร่
วิธีทา กาหนดให้ an เป็นจานวนแบคทีเรียเมื่อสิ้นสุดชั่วโมงที่ n
ฟึ่งมีฟำนวนเป็
จ
น 2 เท่าของชั่วโมงก่อนหน้า (an-1) จะได้
an = 2 an-1
ความสัมพันธ์เวียนบังเกิด
---------------------- (1)
= 2(2 an-2)
= 22 an-2
…
= 2(2 (2…2a0))
= 2na0 โดยที่ a0 คือ จานวนแบคทีเรียในตอนเริ่มต้น
a0 = 5
---------------- (2) เงื่อนไขเริ่มต้น
ดังนั้น an = 2n . 5
---------------- (3)
คาตอบเฉพาะ
5
ความสัมพันธ์เวียนบังเกิด (Recurrence relations)
นิยาม ความสัมพันธ์เวียนบังเกิดสาหรับลาดับ {an} คือ สมการที่แสดง
ความสัมพันธ์ระหว่าง an กับพจน์ที่มาก่อนหน้า คือ a0, a1, …, an-1
6
ตัวอย่าง
ถ้าลาดับ {an} สอดคล้องกับความสัมพันธ์เวียนบังเกิด an = an-1 – an-2
เมื่อ n = 2, 3, 4, … และ สมมุติว่า a0 = 3 และ a1 = 5 แล้ว a2 กับ a3 มี
ค่าเท่าไหร่
วิธีทา จากความสัมพันธ์ an = an-1 – an-2
ดังนั้น a2
= a1 – a0
=5–3=2
และ ในทานองเดียวกัน a3
= a2 – a1
= 2 – 5 = -3
7
กิจกรรมที่ 4
นายแดงนาเงิน 10000 บาทไปฝากธนาคารแบบประจาได้ดอกเบี้ย 11%
(ดอกเบี้ยทบต้น) อยากทราบว่าเมื่อครบ 30 ปี นายแดงจะมีเงินในบัญชีกี่
บาท สมมุติว่านายแดงไม่ได้ถอนเงินจากบัญชีนี้เลย
8
ความสัมพันธ์เวียนบังเกิด : Fibonacci
• ความสัมพันธ์เวียนบังเกิดที่เป็นที่รู้จักกันดีในกลุ่มนักคณิตศาสตร์คือ
ปัญหาของ Leonard di Pisa ฟึ่งรู้จักกันในนำมของ Fibonacci
• Fibonacci ได้ตั้งปัญหาในหนังสือ Liber abaci ดังนี้
– “กระต่ายแรกเกิดเพศผู้และเพศเมียคู่หนึ่งถูกนาไปปล่อยไว้ที่เกาะ อยากทราบว่า
เมื่อเวลาผ่านไป n เดือน จะมีกระต่ายทั้งหมดกี่คู่
– เมื่อสมมุติให้ เมื่อกระต่ายทั้งสองมีอายุครบ 2 เดือน จึงจะสามารถให้กาเนิด
กระต่ายเพศผู้และเพศเมียอีก 1 คู่ และในตอนเริ่มต้นบนเกาะนั้นไม่มีกระต่ายอยู่
เลย
9
ตารางแสดงจานวนกระต่ายบนเกาะ
เดือน จานวนคู่ที่เกิดใหม่
1
0
2
0
3
1
4
1
5
2
6
3
จานวนคู่ที่มีอยู่เดิม
1
1
1
2
3
5
จานวนทั้งหมด
1
1
2
3
5
8
10
วิธีทา
• กาหนดให้ fn เป็นจานวนคู่ของกระต่าย เมื่อตอนต้นเดือนที่ 1
• จากตาราง พบว่า จานวนกระต่ายของเดือนที่ 3 = จานวนกระต่ายเดือนที่
2 + จานวนกระต่ายเดือนที่ 1
• จานวนกระต่ายในเดือนที่ 4 = จานวนกระต่ายเดือนที่ 3 + จานวน
กระต่ายเดือนที่ 2 เป็นเช่นนี้ไปเรื่อยฟ
• ดังนั้น fn = fn-1 + fn-2 ---------------------------- (4)
11
วิธีทา 2
• ถ้ากาหนด f0 = 1 สมการที่ 4 จะเป็นไปได้สาหรับ n 2 และเราทราบว่า
f1 = 1 ดังนั้น
f2 = f1 + f0 = 2
f3 = f2 + f1 = 3
f4 = f3 + f2 = 5
f5 = f4 + f3 = 8
…
• สังเกตเห็นว่า ความสัมพันธ์เวียนบังเกิดในสมการที่ 4 ไม่สามารถจัดในรูป
คาตอบเฉพาะได้อย่างง่าย
12
หอคอยแห่งฮานอย
• โจทย์ปญ
ั หานี้ ตั้งคาถามว่า จงหาจานวนวิธีในการเคลื่อนย้ายแผ่นไม้จาก
เสาที่ 1 ฟึ่งวำงเรียงฟ้อนกันจำกแผ่นใหญ่สุดไปยังแผ่นเล็กสุด ดังรูป ไป
ยังเสาต้นอื่นฟภำยใต้ข้อตกลงต่อไปนี้
– สามารถเคลื่อนย้ายแผ่นไม้ทีละแผ่นเท่านั้น
– แผ่นไม้ที่ใหญ่จะฟ้อนบนแผ่นไม้ที่มีขนำดเล็กกว่ำไม่ได้
เสาต้ นที่ 1
เสาต้ นที่ 2
เสาต้ นที่ 3
13
วิธีการแก้ปญ
ั หา
• กาหนดให้ Hn เป็นจานวนครั้งของการย้ายแผ่นไม้จากเสาต้นที่ 1 ไปยังต้น
อื่น
• ถ้าเราเริ่มจากมีแผ่นไม้ n แผ่นบนเสาต้นที่ 1
– เราสามารถย้ายแผ่นไม้ n-1 แผ่น ไปไว้เสาที่ 3 โดยใช้จานวนครั้งในการย้ายแผ่น
ไม้ทั้งหมด Hn-1 ครั้ง
– จากนั้นย้ายแผ่นไม้ที่ใหญ่ที่สุดไปไว้ที่เสาที่ 2
14
วิธีการแก้ปญ
ั หา 2
• และย้ายแผ้นไม้ n-1 แผ่นจากเสาที่ 3 ไปยังเสาที่ 2 ด้วยการย้ายทั้งหมด
Hn-1 ครั้ง
15
วิธีแก้ปัญหา 3
• จานวนครั้งของการย้ายแผ่นไม้ ทั้งหมด n แผ่นคือ Hn = 2 Hn-1 + 1
• โดยที่ H1 = 1 เพราะเราสามารถย้ายแผ่นไม้ 1 แผ่นจากเสาที่ 1 ไปเสาที่ 2 ได้
โดยจานวนครั้งที่น้อยที่สุดเป็น 1
• หากเราใช้การแทนค่าด้วยเทอมทีอ่ ยู่ก่อนหน้า จะได้
Hn = 2 Hn-1 + 1
= 2 (2 Hn-2 + 1) + 1
= 22 Hn-2 + 2 + 1
= 22 (2 Hn-3 + 1) + 2 + 1 = 22 Hn-3 + 22 + 2 + 1
…
= 2n-1 + 2n-2 + … + 22 + 1
= 2n – 1 ----------------------------------------(5)
• จากสมการที่ 5 ในที่นี้เรามีแผ่นไม้ 5 แผ่น ดังนั้น จานวนครั้งของการย้ายคือ
H5 = 25 – 1 = 32 -1 = 31 ครั้ง
16
ตัวอย่าง
• ค่าผ่านทางด่วนช่วงระหว่างถนนพระราม 9 ถึงถนนรามคาแหงเท่ากับ n
บาท ถ้าชูศรีมีเงินในกระเป๋าดังนี้
– เหรียญบาท 1
– เหรียญ 5 บาท
– เหรียญ 10 บาท
– ธนบัตรใบละ 10 บาท
• ชูศรีมีวิธีจ่ายค่าทางด่วนที่แตกต่างกันทั้งหมดกี่วิธี ถ้าสมมุติว่าจานวนเงิน
ในแต่ละประเภทมีไม่จากัด
17
วิธีทา
• กาหนดให้ an เป็นจานวนวิธีสาหรับการจ่ายเงิน n บาท
– ถ้า a1 คือ การจ่ายเงินไปแล้ว 1 บาท ชูศรีจะต้องจ่ายเงินอีก n-1 บาท ฟึ่งมี
จานวนวิธีเป็น an-1
– ทานองเดียวกัน ถ้าจ่ายไปแล้ว 5 บาท จะมีจานวนวิธีจ่ายอีก an-5
– ถ้าจ่ายไปแล้ว 10 บาท จะจานวนวิธีที่จ่ายอีก an-10 สาหรับจานวนที่เหลือ
• จากกฟกำรบวกจะได้
an = an-1 + an-5 + 2an-10
18
เอกสารอ้างอิง
• อติวงศ์ สุชาโต. เอกสารคาสอนวิชา 2110200. ภาควิชาวิศวกรรม
คอมพิวเตอร์ จุฬาลงกรณ์มหาวิทยาลัย
• ดร. รวิวรรณ เทนอิสระ. ความสัมพันธ์เวียนบังเกิด. หลักสูตร บูรณาการ
ความรู้พื้นฟำนด้ำนวิทยำกำรคอมพิวเตอร์
• สมชาย ประสิทธิ์จูตระกูล. คณิตศาสตร์ภินทนะ. ภาควิชาวิศวกรรม
คอมพิวเตอร์ จุฬาลงกรณ์มหาวิทยาลัย
19