Bài giảng Phân tích thiết kế giải thuật - Chương 2: GreedyAlgos

Baøi toaùn choïn hoaït ñoäng (activity-selection problem)  
°
Cho  
– Moät taäp caùc hoaït ñoäng S = {1, 2,…, n}  
– Moät taøi nguyeân chung maø taïi moïi thôøi ñieåm noù ñöôïc duøng bôûi  
nhieàu laém laø moät hoaït ñoäng  
– Hoaït ñoäng i coù thôøi ñieåm baét ñaàu laø si vaø thôøi ñieåm chaám döùt laø  
fi  
– Neáu hoaït ñoäng i ñöôïc choïn thì i tieán haønh trong thôøi gian [si , fi )  
– Hai hoaït ñoäng i vaø j laø töông thích nhau (“compatible”) neáu  
[si , fi ) vaø [sj , fj ) khoâng chaïm nhau.  
°
Baøi toaùn choïn hoaït ñoäng laø tìm moät taäp caùc hoaït ñoäng töông thích  
nhau maø coù soá phaàn töû lôùn nhaát.  
29.01.04  
1
Giaûi thuaät greedy cho baøi toaùn choïn hoaït ñoäng  
°
Giaûi thuaät  
– Giaû söû: f1 f2 … fn .  
GREEDY-ACTIVITY-SELECTOR(s, f)  
1
2
3
4
5
6
7
8
n length[s]  
A {1}  
j 1  
for i 2 to n  
do if si fj  
then A A {i}  
j i  
return A  
29.01.04  
2
Chaïy GREEDY-ACTIVITY-SELECTOR leân moät ví duï  
2
voøng laëp for vôùi i = 2  
1
3
voøng laëp for vôùi i = 3  
i
1
si  
1
3
0
5
3
5
6
8
8
2
fi  
4
1
1
1
1
1
1
1
1
1
1
4
2
5
5
3
6
4
4
4
4
4
4
4
6
4
7
5
8
7
6
9
8
7
10  
11  
12  
13  
8
9
9
8
8
8
8
10  
10  
11 12 14  
11  
11  
4
0
1
2
3
4
5
6
7
8
9
10  
11 12  
13 14 thôøi gian  
29.01.04  
3
Correctness cuûa giaûi thuaät greedy cho baøi toaùn choïn hoaït  
ñoäng  
°
°
Ñònh lyù Giaûi thuaät GREEDY-ACTIVITY-SELECTOR tìm ñöôïc lôøi giaûi toái öu  
cho baøi toaùn choïn hoaït ñoäng.  
Chöùng minh  
– Goïi S = {1, 2,…, n} laø taäp hôïp caùc hoaït ñoäng. Caùc hoaït ñoäng ñöôïc xeáp  
thöù töï theo thôøi ñieåm chaám döùt. Do ñoù hoaït ñoäng 1 coù thôøi ñieåm chaám  
döùt sôùm nhaát.  
– Ta chöùng minh coù lôøi giaûi toái öu baét ñaàu baèng hoaït ñoäng do choïn löïa  
greedy, töùc laø baét ñaàu baèng hoaït ñoäng 1:  
Giaû söõ A S laø lôøi giaûi toái öu, ta xeáp thöù töï caùc hoaït ñoäng trong A  
theo thôøi ñieåm chaám döùt. Giaû söõ k laø hoaït ñoäng ñaàu tieân trong A.  
Neáu k = 1 thì ta xong. Neáu k 1, ta xeùt B = A − {k} {1}. Vì f1 fk,  
neân B cuõng laø lôøi giaûi toái öu.  
– Neáu A laø lôøi giaûi toái öu cho baøi toaùn nguyeân thuûy S, thì A’ = A − {1} laø  
lôøi giaûi toái öu cho baøi toaùn S’ = {i S : si f1}.  
29.01.04  
4
ppt 4 trang baolam 19440 Free
Bạn đang xem tài liệu "Bài giảng Phân tích thiết kế giải thuật - Chương 2: GreedyAlgos", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pptbai_giang_phan_tich_thiet_ke_giai_thuat_chuong_2_greedyalgos.ppt