Bai Giang Chuyen de 3 Quy Hoach Dong Cua Thay Luu Quang Liem

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 21

GV: Lưu Quang Liêm

1. Công thức truy hồi

a. Khái niệm:
Công thức truy hồi (hay hệ thức truy hồi)
đối với dãy số {an} là công thức biểu diễn an
qua một hay nhiều số hạng đi trước của dãy.
Dãy số được gọi là lời giải hay nghiệm
của công thức truy hồi nếu các số hạng của nó
thỏa mãn công thức truy hồi này.
1. Công thức truy hồi

b. Ví dụ 1: (Lãi kép)
Giả sử một người gửi 10.000 đô la vào
tài khoản của mình tại một ngân hàng với lãi
suất kép 11% mỗi năm. Sau 30 năm anh ta có
bao nhiêu tiền trong tài khoản của mình?
1. Công thức truy hồi

b. Ví dụ 1: (Lãi kép)
Gọi Pn là tổng số tiền có trong tài khoản sau n
năm.
Vì số tiền có trong tài khoản sau n năm bằng số
tiền có sau n - 1 năm cộng với lãi suất của năm thứ n,
nên ta thấy dãy {Pn} thoả mãn công thức truy hồi sau:  
Pn = Pn-1 + 0,11Pn-1 = (1,11)Pn-1
Với điều kiện đầu P0 = 10.000 đô la. Từ đó suy ra
Pn = (1,11)n * 10.000
Thay n = 30 cho ta P30 = 228922,97 đô la.
1. Công thức truy hồi

b. Ví dụ 2: (Xâu nhị phân)


Tìm công thức truy hồi và cho điều kiện
đầu để tính số các xâu nhị phân độ dài n và
không có hai số 0 liên tiếp. Có bao nhiêu xâu
nhị phân như thế có độ dài bằng 5?
1. Công thức truy hồi

b. Ví dụ 2: (Xâu nhị phân)


Gọi Sn là số các xâu nhị phân độ dài n và
không có hai số 0 liên tiếp.
Để nhận được công thức truy hồi cho {Sn},
ta có số các xâu nhị phân độ dài n và không có
hai số 0 liên tiếp bằng số các xâu nhị phân như
thế kết thúc bằng số 1 cộng với số các xâu như
thế kết thúc bằng số 0. Giả sử n ≥ 3.
1. Công thức truy hồi

b. Ví dụ 2: (Xâu nhị phân)


Các xâu nhị phân độ dài n, không có hai số 0 liên
tiếp kết thúc bằng số 1 chính là xâu nhị phân như thế, độ
dài n - 1 và thêm số 1 vào cuối của chúng. Vậy chúng có
tất cả là Sn-1 xâu
Các xâu nhị phân độ dài n, không có hai số 0 liên
tiếp và kết thúc bằng số 0, cần phải có bit thứ n - 1 bằng
1, nếu không thì chúng có hai số 0 ở hai bit cuối cùng.
Trong trường hợp này chúng có tất cả là Sn-2.
1. Công thức truy hồi

b. Ví dụ 2: (Xâu nhị phân)


Cuối cùng ta có được:
Sn = Sn-1 + Sn-2   với n ≥ 3.
Điều kiện đầu là S1 = 2 và S2 = 3.
Khi đó S5 = S4 + S3 = S3 + S2 + S3
= 2(S2 + S1) + S2 = 13
1. Công thức truy hồi

Bài tập:
Tìm công thức truy hồi và điều kiện đầu
để tính số cách đi lên n bậc thang nếu mỗi
bước có thể đi 1, 2 hoặc 3 bậc thang.
1. Công thức truy hồi

Bài tập:
Có một con đường ngang 2m, dài n mét
được lát những tấm đan kích thước 1mx2m.
Tính số cách lát.
2. Phương pháp quy hoạch động

a. Bài toán quy hoạch:


Là bài toán tối ưu gồm một hàm f gọi là
hàm mục tiêu hay hàm đánh giá, và các hàm g1,
g2, …, gn cho giá trị logic gọi là hàm ràng buộc.
Yêu cầu: tìm một cấu hình x thỏa mãn tất
cả các ràng buộc gi(x) = True (với mọi 1≤i≤n) và
x là tốt nhất (tức là nếu tồn tại một cấu hình y cũng
thỏa mãn các ràng buộc thì f(x) phải tốt hơn f(y) ).
2. Phương pháp quy hoạch động

Ví dụ:
Tìm hai số x, y thỏa mãn x + y đạt giá trị
lớn nhất và x2 + y2 ≤ 1
Hàm mục tiêu: f(x,y) = x + y → max
Hàm ràng buộc: g(x,y)= x2 + y2 ≤ 1
2. Phương pháp quy hoạch động

b. Phương pháp quy hoạch động:


Dùng để giải bài toán tối ưu có bản chất đệ quy,
tức là việc tìm phương án tối ưu cho bài toán đó có thể
đưa về tìm phương án tối ưu của một số hữu hạn các bài
toán con.
Khi không biết cần phải giải quyết các bài toán con
nào, ta sẽ giải quyết tất cả các bài toán con và lưu lại đáp
số của chúng nhằm mục đích sử dụng lại khi cần mà
không phải giải lại để tránh mất thời gian.
2. Phương pháp quy hoạch động

b. Phương pháp quy hoạch động:


Các bài toán con nhỏ nhất có ngay lời giải để từ
đó giải quyết các bài toán lớn hơn gọi là cơ sở quy hoạch
động.
Không gian lưu trữ lời giải các bài toán con gọi là
bảng phương án.
Công thức phối hợp nghiệm của các bài toán con
để có nghiệm của bài toán lớn gọi là công thức truy hồi
của quy hoạch động
2. Phương pháp quy hoạch động

c. Ví dụ:
Dãy số Fibonacci là dãy số nguyên dương
được định nghĩa như sau:
F1 = F2 = 1
Fi = Fi-1 + Fi-2 (với mọi i≥3)
Hãy tính F6
2. Phương pháp quy hoạch động

c. Ví dụ:
2. Phương pháp quy hoạch động

c. Ví dụ:
F[1] := 1;
F[2] := 1;
For i := 3 to 6 do
F[i] := F[i-1] + F[i-2];
Writeln(F[6]);
2. Phương pháp quy hoạch động

Chú ý: Khi áp dụng phương pháp quy hoạch động ta


phải xét xem phương pháp đó có thỏa mãn những yêu
cầu sau hay không:
- Bài toán lớn phải phân rã được thành nhiều bài
toán con, mà sự phối hợp lời giải của các bài toán con đó
cho ta lời giải của bài toán lớn.
- Vì quy hoạch động phải giải tất cả các bài toán
con nên nếu không đủ không gian vật lý lưu trữ lời giải
các bài toán con đó thì phương pháp quy hoạch động
cũng không thể thực hiện được.
2. Phương pháp quy hoạch động

d. Các bước cài đặt chương trình QHĐ:


1. Giải tất cả các bài toán cơ sở (thường rất dễ) và
lưu vào bảng phương án
2. Dùng công thức truy hồi để phối hợp lời giải của
những bài toán nhỏ đã lưu trong bảng phương án để tìm
lời giải những bài toán lớn hơn và lưu lại. Lặp lại cho đến
khi bài toán ban đầu tìm được lời giải.
3. Dựa vào bảng phương án, truy vết tìm ra
nghiệm tối ưu
3. Một số bài toán quy hoạch động

You might also like