Bài giảng Phân tích thiết kế giải thuật - Chương 37: Giải thuật xấp xỉ
Số trang: 21
Loại file: ppt
Dung lượng: 412.50 KB
Lượt xem: 16
Lượt tải: 0
Xem trước 3 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Nhằm giúp các bạn có thêm tài liệu phục vụ nhu cầu học tập và nghiên cứu về Công nghệ thông tin, mời các bạn cùng tham "Bài giảng Phân tích thiết kế giải thuật - Chương 37: Giải thuật xấp xỉ" dưới đây. Nội dung bài giảng cung cấp cho các bạn những kiến thức về cách tiếp cận một bài toán NP-đầy đủ, bài toán che phủ đỉnh, giải thuật xấp xỉ, ... Hy vọng đây là tài liệu tham khảo hữu ích cho các bạn.
Nội dung trích xuất từ tài liệu:
Bài giảng Phân tích thiết kế giải thuật - Chương 37: Giải thuật xấp xỉ Giải Thuật Xấp Xỉ Chapter 37 Approximation Algorithms Tiếp cận một bài toán NPđầy đủ ° Nếu một bài toán là NPđầy đủ thì không chắc rằng ta sẽ tìm được một giải thuật thời gian đa thức để giải nó một cách chính xác. ° Tiếp cận một bài toán NPđầy đủ 1) Nếu các input có kích thước nhỏ thì một giải thuật chạy trong thời gian số mũ vẫn có thể thoả mãn yêu cầu 2) Thay vì tìm các lời giải tối ưu, có thể tìm các lời giải gần tối ưu trong thời gian đa thức. 21.5.2004 Chương 37 2 Approximation Algorithms Giải thuật xấp xỉ ° Một giải thuật xấp xỉ là một giải thuật trả về lời giải gần tối ưu. ° Giả sử: chi phí của lời giải 0. Gọi C là chi phí của lời giải tối ưu. Một giải thuật xấp xỉ cho một bài toán tối ưu được gọi là có tỉ số xấp xỉ (n (approximation ratio, ratio bound) nếu với mọi input có kích thước n thì chi phí của lời giải do giải thuật xấp xỉ tìm được sẽ thoả • max(C C , C C r(n 21.5.2004 Chương 37 3 Approximation Algorithms Giải thuật xấp xỉ ° Chi phí của lời giải do giải thuật xấp xỉ tìm được thỏa, với tỉ số xấp xỉ (n , • max(C C , C C r(n – Bài toán tối đa: 0 C C , vậy max(C C , C C = C C r(n . Chi phí của lời giải tối ưu r(n lần chi phí của lời giải gần đúng. – Bài toán tối thiểu: 0 C C, vậy max(C C , C C = C C r(n . Chi phí của lời giải gần đúng (n lần chi phí của lời giải tối ưu. ° Một giải thuật xấp xỉ có tỉ số xấp xỉ (n được gọi là một giải thuật (n xấp xỉ. 21.5.2004 Chương 37 4 Approximation Algorithms Bài toán che phủ đỉnh Nhắc lại ° Một che phủ đỉnh (vertex cover) của một đồ thị vô hướng G = (V, E) là một tập con V’ V sao cho nếu (u, v) E thì u V’ hay v V’ (hoặc cả hai V’). Kích thước của một che phủ đỉnh là số phần tử của nó. ° Bài toán che phủ đỉnh là tìm một che phủ đỉnh có kích thước nhỏ nhất trong một đồ thị vô hướng đã cho. Bài toán này là dạng bài toán tối ưu của ngôn ngữ NPđầy đủ VERTEXCOVER { G, k : đồ thị G có một che phủ đỉnh có kích thước k} . 21.5.2004 Chương 37 5 Approximation Algorithms Một giải thuật xấp xỉ cho bài toán che phủ đỉnh APPROXVERTEXCOVER(G) 1 C 2 E’ E[G] 3 while E’ 4 do xét (u, v) là một cạnh bất kỳ của E’ 5 C C {u, v} 6 tách khỏi E’ tất cả các cạnh liên thuộc tại u hay v 7 return C 21.5.2004 Chương 37 6 Approximation Algorithms Thực thi APPROXVERTEXCOVER b c d b c d a e f g a e f g b c d b c d a e f g a e f g b c d b c d a e f g a e f g 21.5.2004 Chương 37 7 Approximation Algorithms Phân tích APPROXVERTEXCOVER Nhận xét: Thời gian chạy của APPROXVERTEXCOVER là O(E). Định lý 37.1 APPROXVERTEXCOVER là một giải thuật 2xấp xỉ trong thời gian đa thức. 21.5.2004 Chương 37 8 Approximation Algorithms Bài toán người bán hàng rong với bất đẳng thức tam giác ° Cho một đồ thị đầy đủ vô hướng G = (V, E) cùng với một hàm chi phí c : E Z+. Tìm một chu trình hamilton (một tour) của G với phí tổn nhỏ nhất. ° Điều kiện: Hàm chi phí c: E Z+ thỏa mãn bất đẳng thức tam giác c(u, w) c(u, v) + c(v, w), u, v, w V . APPROXTSPTOUR(G, c) 1 chọn một đỉnh r V G làm một đỉnh “gốc” 2 nuôi lớn một cây khung nhỏ nhất T cho G từ gốc r dùng giải thuật MSTPRIM(G, c, r) 3 gọi L là danh sách các đỉnh được thăm viếng bởi phép duyệt cây theo kiểu tiền thứ tự 4 return chu trình hamilton H viếng các đỉnh theo thứ tự L 21.5.2004 Chương 37 9 Approximation Algorithms Thực thi APPROXTSPTOUR lên một ví dụ a d a d e e b f g b f g c c h h (a) (b) Cây khung nhỏ nhất T tính bởi MST PRIM, đỉnh a là đỉnh gốc. 21.5.2004 Chương 37 10 Approximation Algorithms Thực thi APPROXTSPTOUR lên một ví dụ (tiếp) a ...
Nội dung trích xuất từ tài liệu:
Bài giảng Phân tích thiết kế giải thuật - Chương 37: Giải thuật xấp xỉ Giải Thuật Xấp Xỉ Chapter 37 Approximation Algorithms Tiếp cận một bài toán NPđầy đủ ° Nếu một bài toán là NPđầy đủ thì không chắc rằng ta sẽ tìm được một giải thuật thời gian đa thức để giải nó một cách chính xác. ° Tiếp cận một bài toán NPđầy đủ 1) Nếu các input có kích thước nhỏ thì một giải thuật chạy trong thời gian số mũ vẫn có thể thoả mãn yêu cầu 2) Thay vì tìm các lời giải tối ưu, có thể tìm các lời giải gần tối ưu trong thời gian đa thức. 21.5.2004 Chương 37 2 Approximation Algorithms Giải thuật xấp xỉ ° Một giải thuật xấp xỉ là một giải thuật trả về lời giải gần tối ưu. ° Giả sử: chi phí của lời giải 0. Gọi C là chi phí của lời giải tối ưu. Một giải thuật xấp xỉ cho một bài toán tối ưu được gọi là có tỉ số xấp xỉ (n (approximation ratio, ratio bound) nếu với mọi input có kích thước n thì chi phí của lời giải do giải thuật xấp xỉ tìm được sẽ thoả • max(C C , C C r(n 21.5.2004 Chương 37 3 Approximation Algorithms Giải thuật xấp xỉ ° Chi phí của lời giải do giải thuật xấp xỉ tìm được thỏa, với tỉ số xấp xỉ (n , • max(C C , C C r(n – Bài toán tối đa: 0 C C , vậy max(C C , C C = C C r(n . Chi phí của lời giải tối ưu r(n lần chi phí của lời giải gần đúng. – Bài toán tối thiểu: 0 C C, vậy max(C C , C C = C C r(n . Chi phí của lời giải gần đúng (n lần chi phí của lời giải tối ưu. ° Một giải thuật xấp xỉ có tỉ số xấp xỉ (n được gọi là một giải thuật (n xấp xỉ. 21.5.2004 Chương 37 4 Approximation Algorithms Bài toán che phủ đỉnh Nhắc lại ° Một che phủ đỉnh (vertex cover) của một đồ thị vô hướng G = (V, E) là một tập con V’ V sao cho nếu (u, v) E thì u V’ hay v V’ (hoặc cả hai V’). Kích thước của một che phủ đỉnh là số phần tử của nó. ° Bài toán che phủ đỉnh là tìm một che phủ đỉnh có kích thước nhỏ nhất trong một đồ thị vô hướng đã cho. Bài toán này là dạng bài toán tối ưu của ngôn ngữ NPđầy đủ VERTEXCOVER { G, k : đồ thị G có một che phủ đỉnh có kích thước k} . 21.5.2004 Chương 37 5 Approximation Algorithms Một giải thuật xấp xỉ cho bài toán che phủ đỉnh APPROXVERTEXCOVER(G) 1 C 2 E’ E[G] 3 while E’ 4 do xét (u, v) là một cạnh bất kỳ của E’ 5 C C {u, v} 6 tách khỏi E’ tất cả các cạnh liên thuộc tại u hay v 7 return C 21.5.2004 Chương 37 6 Approximation Algorithms Thực thi APPROXVERTEXCOVER b c d b c d a e f g a e f g b c d b c d a e f g a e f g b c d b c d a e f g a e f g 21.5.2004 Chương 37 7 Approximation Algorithms Phân tích APPROXVERTEXCOVER Nhận xét: Thời gian chạy của APPROXVERTEXCOVER là O(E). Định lý 37.1 APPROXVERTEXCOVER là một giải thuật 2xấp xỉ trong thời gian đa thức. 21.5.2004 Chương 37 8 Approximation Algorithms Bài toán người bán hàng rong với bất đẳng thức tam giác ° Cho một đồ thị đầy đủ vô hướng G = (V, E) cùng với một hàm chi phí c : E Z+. Tìm một chu trình hamilton (một tour) của G với phí tổn nhỏ nhất. ° Điều kiện: Hàm chi phí c: E Z+ thỏa mãn bất đẳng thức tam giác c(u, w) c(u, v) + c(v, w), u, v, w V . APPROXTSPTOUR(G, c) 1 chọn một đỉnh r V G làm một đỉnh “gốc” 2 nuôi lớn một cây khung nhỏ nhất T cho G từ gốc r dùng giải thuật MSTPRIM(G, c, r) 3 gọi L là danh sách các đỉnh được thăm viếng bởi phép duyệt cây theo kiểu tiền thứ tự 4 return chu trình hamilton H viếng các đỉnh theo thứ tự L 21.5.2004 Chương 37 9 Approximation Algorithms Thực thi APPROXTSPTOUR lên một ví dụ a d a d e e b f g b f g c c h h (a) (b) Cây khung nhỏ nhất T tính bởi MST PRIM, đỉnh a là đỉnh gốc. 21.5.2004 Chương 37 10 Approximation Algorithms Thực thi APPROXTSPTOUR lên một ví dụ (tiếp) a ...
Tìm kiếm theo từ khóa liên quan:
Phân tích thiết kế giải thuật Bài giảng Phân tích thiết kế giải thuật Giải thuật xấp xỉ Bài toán che phủ đỉnh Bài toán NP-đầy đủ Phân tích thiết kế giải thuật chương 37Gợi ý tài liệu liên quan:
-
40 trang 30 0 0
-
Phần tích thiết kế giải thuật (phần 1)
11 trang 28 0 0 -
Bài giảng Cấu trúc dữ liệu và giải thuật - TS. Phan Thị Hà
140 trang 27 0 0 -
Bài giảng Phân tích thiết kế giải thuật: Branch and Bound - GV. Hà Đại Dương
14 trang 23 0 0 -
Bài giảng Phân tích thiết kế giải thuật: The Greedy algorithms - GV. Hà Đại Dương
21 trang 22 0 0 -
Phần tích thiết kế giải thuật (phần 15)
0 trang 21 0 0 -
Bài giảng Phân tích thiết kế giải thuật: Đánh giá độ phức tạp thuật toán - GV. Hà Đại Dương
17 trang 21 0 0 -
Bài giảng Cấu trúc dữ liệu giải thuật: Phân tích thiết kế giải thuật
50 trang 20 0 0 -
Phân tích và thiết kế giải thuật
349 trang 20 0 0 -
Phần tích thiết kế giải thuật (phần 4)
11 trang 20 0 0