กำหนดการพลวัต ( dynamic programming )
DESCRIPTION
กำหนดการพลวัต ( Dynamic programming ). Dynamic programming จะเหมาะกับการแก้ปัญหา optimization ตัวอย่างเช่น Longest Common Subsequence. Longest Common Subsequence. X = มี subsequences < H , E , L, L, O > < H , E > < H , E , L, L, O > < H , E , O > - PowerPoint PPT PresentationTRANSCRIPT
1
กำ��หนดกำ�รพลวั�ต(Dynamic programming)
2☺Dynamic programming จะเหมาะกั�บกัาร
แกั�ปั�ญหา optimization ตั�วอย่�างเช่�น Longest Common Subsequence
3
4Longest Common Subsequence
☺X = <H, E, L, L, O> ม� subsequences <H, E, L, L, O> <H, E> <H, E, L, L, O> <H, E, O> <H, E, L, L, O> <> …☺Y = <H, E, R, O> <H, E, R, O> <H, E> <H, E, R, O> <H, O> <H, E, R, O> <H, E, O> …☺ ลำ�าดั�บย่�อย่ร�วม Common subsequence(X, Y)☺ ลำ�าดั�บย่�อย่ร�วมที่��ย่าวที่��สุ�ดั longest common subsequence(X, Y)
หร อLCS
ม�ลำ�าดั�บย่�อย่ที่�!งหมดั 25 = 32
5น"ย่าม
ตั�วว�ดัคุ�ณภาพของLCS
6คุ�าตัอบปั�ญหาใหญ�ไดั�จากัคุ�าตัอบปั�ญหาย่�อย่ๆ
7คุ�าตัอบปั�ญหาใหญ�ไดั�จากัคุ�าตัอบปั�ญหาย่�อย่ๆ
8Recurrence ของ L(i,j)
9Recurrence ของ L(i,j)
10Recurrence ของ L(i,j)
11LCS: Top-down
12 หาคุวามย่าว LCS : เวลำากัารที่�างาน
13LCS: Best case เม อ?
14Top-down + Memoization
15LCS: memoization
16LCS : Bottom-up
17LCS : Dynamic Programming
18 ตั�องกัาร LCS : จ�าผลำกัารตั�ดัสุ"นใจ
19จ�าผลำกัารตั�ดัสุ"นใจ
20ใช่�ผลำกัารตั�ดัสุ"นใจสุร�างคุ�าตัอบ
21 ตั�องกัารปัระหย่�ดั ไม�จ�าผลำกัารตั�ดัสุ"นใจ
22LCS_Soln(x,y,L)
23 สุะกัดัผ"ดั : หาคุ�าใกัลำ�เคุ�ย่ง
24Minimum Edit Distance
25 สุร�ปัลำ�กัษณะของปั�ญหาที่��เหมาะกั�บ Dynamic Prog.
26Optimal substructures
27Longest Simple Path
280/1 Knapsack
290/1 Knapsack
30แบ�งปั�ญหาใหญ�เปั-นปั�ญหาย่�อย่
31หาคุ�าตัอบใหญ�จากัคุ�าตัอบเลำ.กั
32 ปั�ญหาใหญ� : ปั�ญหาย่�อย่
33 เข�ย่น recurrence V(i, j)
34Knapsack : Top-down
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49