BÀI GIẢNG GIẢI THUẬT VÀ LẬP TRÌNH - QUY HOẠCH ĐỘNG - LÊ MINH HOÀNG - 2
Số trang: 36
Loại file: pdf
Dung lượng: 1.45 MB
Lượt xem: 21
Lượt tải: 0
Xem trước 4 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Mã đi tuần: Cho bàn cờ tổng quát kích thước nxn và một quân Mã, hãy chỉ ra một hành trình của quân Mã xuất phát từ ô đang đứng đi qua tất cả các ô còn lại của bàn cờ, mỗi ô đúng 1 lần. Bài 10 Chuyển tất cả các bài tập trong bài trước đang viết bằng sinh tuần tự sang quay lui. Bài 11 Xét sơ đồ giao thông gồm n nút giao thông đánh số từ 1 tới n và m đoạn đường nối chúng, mỗi đoạn đường nối 2 nút giao thông. Hãy nhập...
Nội dung trích xuất từ tài liệu:
BÀI GIẢNG GIẢI THUẬT VÀ LẬP TRÌNH - QUY HOẠCH ĐỘNG - LÊ MINH HOÀNG - 2Bài toán liệt kê 23Mã đi tuần: Cho bàn cờ tổng quát kích thước nxn và một quân Mã, hãy chỉ ra một hành trình củaquân Mã xuất phát từ ô đang đứng đi qua tất cả các ô còn lại của bàn cờ, mỗi ô đúng 1 lần.Bài 10Chuyển tất cả các bài tập trong bài trước đang viết bằng sinh tuần tự sang quay lui.Bài 11Xét sơ đồ giao thông gồm n nút giao thông đánh số từ 1 tới n và m đoạn đường nối chúng, mỗi đoạnđường nối 2 nút giao thông. Hãy nhập dữ liệu về mạng lưới giao thông đó, nhập số hiệu hai nút giaothông s và d. Hãy in ra tất cả các cách đi từ s tới d mà mỗi cách đi không được qua nút giao thôngnào quá một lần.Lê Minh Hoàng 24 Chuyên đề §4. KỸ THUẬT NHÁNH CẬN4.1. BÀI TOÁN TỐI ƯUMột trong những bài toán đặt ra trong thực tế là việc tìm ra một nghiệm thoả mãn một số điều kiệnnào đó, và nghiệm đó là tốt nhất theo một chỉ tiêu cụ thể, nghiên cứu lời giải các lớp bài toán tối ưuthuộc về lĩnh vực quy hoạch toán học. Tuy nhiên cũng cần phải nói rằng trong nhiều trường hợpchúng ta chưa thể xây dựng một thuật toán nào thực sự hữu hiệu để giải bài toán, mà cho tới nayviệc tìm nghiệm của chúng vẫn phải dựa trên mô hình liệt kê toàn bộ các cấu hình có thể và đánhgiá, tìm ra cấu hình tốt nhất. Việc liệt kê cấu hình có thể cài đặt bằng các phương pháp liệt kê: Sinhtuần tự và tìm kiếm quay lui. Dưới đây ta sẽ tìm hiểu phương pháp liệt kê bằng thuật toán quay luiđể tìm nghiệm của bài toán tối ưu.4.2. SỰ BÙNG NỔ TỔ HỢPMô hình thuật toán quay lui là tìm kiếm trên 1 cây phân cấp. Nếu giả thiết rằng ứng với mỗi núttương ứng với một giá trị được chọn cho xi sẽ ứng với chỉ 2 nút tương ứng với 2 giá trị mà xi+1 cóthể nhận thì cây n cấp sẽ có tới 2n nút lá, con số này lớn hơn rất nhiều lần so với dữ liệu đầu vào n.Chính vì vậy mà nếu như ta có thao tác thừa trong việc chọn xi thì sẽ phải trả giá rất lớn về chi phíthực thi thuật toán bởi quá trình tìm kiếm lòng vòng vô nghĩa trong các bước chọn kế tiếp xi+1,xi+2, … Khi đó, một vấn đề đặt ra là trong quá trình liệt kê lời giải ta cần tận dụng những thông tinđã tìm được để loại bỏ sớm những phương án chắc chắn không phải tối ưu. Kỹ thuật đó gọi là kỹthuật đánh giá nhánh cận trong tiến trình quay lui.4.3. MÔ HÌNH KỸ THUẬT NHÁNH CẬNDựa trên mô hình thuật toán quay lui, ta xây dựng mô hình sau:procedure Init;begin ;end;{Thủ tục này thử chọn cho xi tất cả các giá trị nó có thể nhận}procedure Try(i: Integer);begin for (Mọi giá trị V có thể gán cho xi) do begin ; if (Việc thử trên vẫn còn hi vọng tìm ra cấu hình tốt hơn BESTCONFIG) then if (xi là phần tử cuối cùng trong cấu hình) then else begin ; Try(i + 1); {Gọi đệ quy, chọn tiếp xi+1 } ; end; Đại học Sư phạm Hà Nội, 1999-2002Bài toán liệt kê 25 end;end;begin Init; Try(1); end.Kỹ thuật nhánh cận thêm vào cho thuật toán quay lui khả năng đánh giá theo từng bước, nếu tạibước thứ i, giá trị thử gán cho xi không có hi vọng tìm thấy cấu hình tốt hơn cấu hìnhBESTCONFIG thì thử giá trị khác ngay mà không cần phải gọi đệ quy tìm tiếp hay ghi nhận kếtquả làm gì. Nghiệm của bài toán sẽ được làm tốt dần, bởi khi tìm ra một cấu hình mới (tốt hơnBESTCONFIG - tất nhiên), ta không in kết quả ngay mà sẽ cập nhật BESTCONFIG bằng cấu hìnhmới vừa tìm được4.4. BÀI TOÁN NGƯỜI DU LỊCH4.4.1. Bài toánCho n thành phố đánh số từ 1 đến n và m tuyến đường giao thông hai chiều giữa chúng, mạng lướigiao thông này được cho bởi bảng C cấp nxn, ở đây Cij = Cji = Chi phí đi đoạn đường trực tiếp từthành phố i đến thành phố j. Giả thiết rằng Cii = 0 với ∀i, Cij = +∞ nếu không có đường trực tiếp từthành phố i đến thành phố j.Một người du lịch xuất phát từ thành phố 1, muốn đi thăm tất cả các thành phố còn lại mỗi thànhphố đúng 1 lần và cuối cùng quay lại thành phố 1. Hãy chỉ ra cho người đó hành trình với chi phí ítnhất. Bài toán đó gọi là bài toán người du lịch hay bài toán hành trình của một thương gia(Traveling Salesman)4.4.2. Cách giảiHành trình cần tìm có dạng (x1 = 1, x2, …, xn, xn+1 = 1) ở đây giữa xi và xi+1: hai thành phố liên tiếptrong hành trình phải có đường đi trực tiếp (Cij ≠ +∞) và ngoại trừ thành phố 1, không thành phốnào được lặp lại hai lần. Có nghĩa là dãy (x1, x2, …, xn) lập thành 1 hoán vị của (1, 2, …, n).Duyệt quay lui: x2 có thể chọn một trong các thành phố mà x1 có đường đi tới (trực tiếp), với mỗicách thử chọn x2 như vậy thì x3 có thể chọn một trong các thành phố mà x2 có đường đi t ...
Nội dung trích xuất từ tài liệu:
BÀI GIẢNG GIẢI THUẬT VÀ LẬP TRÌNH - QUY HOẠCH ĐỘNG - LÊ MINH HOÀNG - 2Bài toán liệt kê 23Mã đi tuần: Cho bàn cờ tổng quát kích thước nxn và một quân Mã, hãy chỉ ra một hành trình củaquân Mã xuất phát từ ô đang đứng đi qua tất cả các ô còn lại của bàn cờ, mỗi ô đúng 1 lần.Bài 10Chuyển tất cả các bài tập trong bài trước đang viết bằng sinh tuần tự sang quay lui.Bài 11Xét sơ đồ giao thông gồm n nút giao thông đánh số từ 1 tới n và m đoạn đường nối chúng, mỗi đoạnđường nối 2 nút giao thông. Hãy nhập dữ liệu về mạng lưới giao thông đó, nhập số hiệu hai nút giaothông s và d. Hãy in ra tất cả các cách đi từ s tới d mà mỗi cách đi không được qua nút giao thôngnào quá một lần.Lê Minh Hoàng 24 Chuyên đề §4. KỸ THUẬT NHÁNH CẬN4.1. BÀI TOÁN TỐI ƯUMột trong những bài toán đặt ra trong thực tế là việc tìm ra một nghiệm thoả mãn một số điều kiệnnào đó, và nghiệm đó là tốt nhất theo một chỉ tiêu cụ thể, nghiên cứu lời giải các lớp bài toán tối ưuthuộc về lĩnh vực quy hoạch toán học. Tuy nhiên cũng cần phải nói rằng trong nhiều trường hợpchúng ta chưa thể xây dựng một thuật toán nào thực sự hữu hiệu để giải bài toán, mà cho tới nayviệc tìm nghiệm của chúng vẫn phải dựa trên mô hình liệt kê toàn bộ các cấu hình có thể và đánhgiá, tìm ra cấu hình tốt nhất. Việc liệt kê cấu hình có thể cài đặt bằng các phương pháp liệt kê: Sinhtuần tự và tìm kiếm quay lui. Dưới đây ta sẽ tìm hiểu phương pháp liệt kê bằng thuật toán quay luiđể tìm nghiệm của bài toán tối ưu.4.2. SỰ BÙNG NỔ TỔ HỢPMô hình thuật toán quay lui là tìm kiếm trên 1 cây phân cấp. Nếu giả thiết rằng ứng với mỗi núttương ứng với một giá trị được chọn cho xi sẽ ứng với chỉ 2 nút tương ứng với 2 giá trị mà xi+1 cóthể nhận thì cây n cấp sẽ có tới 2n nút lá, con số này lớn hơn rất nhiều lần so với dữ liệu đầu vào n.Chính vì vậy mà nếu như ta có thao tác thừa trong việc chọn xi thì sẽ phải trả giá rất lớn về chi phíthực thi thuật toán bởi quá trình tìm kiếm lòng vòng vô nghĩa trong các bước chọn kế tiếp xi+1,xi+2, … Khi đó, một vấn đề đặt ra là trong quá trình liệt kê lời giải ta cần tận dụng những thông tinđã tìm được để loại bỏ sớm những phương án chắc chắn không phải tối ưu. Kỹ thuật đó gọi là kỹthuật đánh giá nhánh cận trong tiến trình quay lui.4.3. MÔ HÌNH KỸ THUẬT NHÁNH CẬNDựa trên mô hình thuật toán quay lui, ta xây dựng mô hình sau:procedure Init;begin ;end;{Thủ tục này thử chọn cho xi tất cả các giá trị nó có thể nhận}procedure Try(i: Integer);begin for (Mọi giá trị V có thể gán cho xi) do begin ; if (Việc thử trên vẫn còn hi vọng tìm ra cấu hình tốt hơn BESTCONFIG) then if (xi là phần tử cuối cùng trong cấu hình) then else begin ; Try(i + 1); {Gọi đệ quy, chọn tiếp xi+1 } ; end; Đại học Sư phạm Hà Nội, 1999-2002Bài toán liệt kê 25 end;end;begin Init; Try(1); end.Kỹ thuật nhánh cận thêm vào cho thuật toán quay lui khả năng đánh giá theo từng bước, nếu tạibước thứ i, giá trị thử gán cho xi không có hi vọng tìm thấy cấu hình tốt hơn cấu hìnhBESTCONFIG thì thử giá trị khác ngay mà không cần phải gọi đệ quy tìm tiếp hay ghi nhận kếtquả làm gì. Nghiệm của bài toán sẽ được làm tốt dần, bởi khi tìm ra một cấu hình mới (tốt hơnBESTCONFIG - tất nhiên), ta không in kết quả ngay mà sẽ cập nhật BESTCONFIG bằng cấu hìnhmới vừa tìm được4.4. BÀI TOÁN NGƯỜI DU LỊCH4.4.1. Bài toánCho n thành phố đánh số từ 1 đến n và m tuyến đường giao thông hai chiều giữa chúng, mạng lướigiao thông này được cho bởi bảng C cấp nxn, ở đây Cij = Cji = Chi phí đi đoạn đường trực tiếp từthành phố i đến thành phố j. Giả thiết rằng Cii = 0 với ∀i, Cij = +∞ nếu không có đường trực tiếp từthành phố i đến thành phố j.Một người du lịch xuất phát từ thành phố 1, muốn đi thăm tất cả các thành phố còn lại mỗi thànhphố đúng 1 lần và cuối cùng quay lại thành phố 1. Hãy chỉ ra cho người đó hành trình với chi phí ítnhất. Bài toán đó gọi là bài toán người du lịch hay bài toán hành trình của một thương gia(Traveling Salesman)4.4.2. Cách giảiHành trình cần tìm có dạng (x1 = 1, x2, …, xn, xn+1 = 1) ở đây giữa xi và xi+1: hai thành phố liên tiếptrong hành trình phải có đường đi trực tiếp (Cij ≠ +∞) và ngoại trừ thành phố 1, không thành phốnào được lặp lại hai lần. Có nghĩa là dãy (x1, x2, …, xn) lập thành 1 hoán vị của (1, 2, …, n).Duyệt quay lui: x2 có thể chọn một trong các thành phố mà x1 có đường đi tới (trực tiếp), với mỗicách thử chọn x2 như vậy thì x3 có thể chọn một trong các thành phố mà x2 có đường đi t ...
Tìm kiếm theo từ khóa liên quan:
toán kinh tế kiến thức thống kê giáo trình đại học bài giảng chứng khoán đề cương ôn tập câu hỏi trắc nghiệmTài liệu liên quan:
-
Giáo trình phân tích một số loại nghiệp vụ mới trong kinh doanh ngân hàng quản lý ngân quỹ p5
7 trang 473 0 0 -
Giáo trình Toán kinh tế: Phần 1 - Trường ĐH Kinh doanh và Công nghệ Hà Nội (năm 2022)
59 trang 319 0 0 -
MARKETING VÀ QUÁ TRÌNH KIỂM TRA THỰC HIỆN MARKETING
6 trang 301 0 0 -
Đề cương học phần Toán kinh tế
32 trang 227 0 0 -
QUY CHẾ THU THẬP, CẬP NHẬT SỬ DỤNG CƠ SỞ DỮ LIỆU DANH MỤC HÀNG HÓA BIỂU THUẾ
15 trang 210 1 0 -
BÀI GIẢNG KINH TẾ CHÍNH TRỊ MÁC - LÊNIN - TS. NGUYỄN VĂN LỊCH - 5
23 trang 209 0 0 -
Giáo trình hướng dẫn phân tích các thao tác cơ bản trong computer management p6
5 trang 199 0 0 -
Giáo trình chứng khoán cổ phiếu và thị trường (Hà Hưng Quốc Ph. D.) - 4
41 trang 198 0 0 -
BÀI GIẢNG LÝ THUYẾT MẠCH THS. NGUYỄN QUỐC DINH - 1
30 trang 175 0 0 -
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG - NGÂN HÀNG ĐỀ THI HẾT HỌC PHẦN HỌC PHẦN: TOÁN KINH TẾ
9 trang 173 0 0