1. Trang chủ
  2. » Công Nghệ Thông Tin

Chap5New 110820050002 phpapp02

72 3 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Chapter 5 ALGORITHM DESIGN TECHNIQUES 1 Chương 4 Qui hoạch động và giải thuật tham lam Qui hoạch động Giải thuật tham lam 2 1 Qui hoạch động Quy hoạch động (dynamic programming) giải các bài toán bằng[.]

Chương Qui hoạch động giải thuật tham lam Qui hoạch động Giải thuật tham lam 1 Qui hoạch động Quy hoạch động (dynamic programming) giải toán cách kết hợp lời giải toán toán xét Phương pháp khả dụng tốn khơng độc lập nhau, tức toán có dùng chung tốn “cháu” (subsubproblem) Qui hoạch động giải toán “cháu” dùng chung lần lưu lời giải chúng bảng sau khỏi phải tính lại gặp lại tốn cháu Qui hoạch động áp dụng cho tốn tối ưu hóa (optimization problem) Bốn bước qui hoạch động Sự xây dựng giải thuật qui hoạch động chia làm bốn bước: Đặc trưng hóa cấu trúc lời giải tối ưu Định nghĩa giá trị lời giải tối ưu cách đệ quy Tính trị lời giải tối ưu theo kiểu từ lên Cấu tạo lời giải tối ưu từ thơng tin tính tốn Thí dụ1: Nhân xâu ma trận Cho chuỗi gồm n matrận, ta muốn tính tích ma trận A1 A2 … An (5.1) Tích xâu ma trận gọi mở-đóng-ngoặc-đầy-đủ (fully parenthesized ) ma trận đơn tích hai xâu ma trận mở-đóng-ngoặc-đầy-đủ Thí dụ: A1 A2 A3 A4 mở-đóng-ngoặc-đầy-đủ theo cách: (A1(A2(A3A4))) (A1((A2A3)A4) ((A1A2)(A3A4)) (A1(A2A3))A4) (((A1A2)A3)A4) Cách mà ta mở đóng ngoặc xâu ma trận có ảnh hưởng lớn đến chi phí tính tích xâu ma trận A1 10 × 100 A2 100 × A3 × 50 ((A1A2)A3)) thực 10.100.5 + 10.5.50 = 5000 + 2500 = 7500 phép nhân vô hướng (A1(A2A3)) thực 100.5.50 + 10.100.50 = 25000 + 50000 = 75000 phép nhân vơ hướng Thí dụ: Hai chi phí khác biệt Phát biểu toán nhân xâu ma trận Bài tốn tính tích xâu ma trận: '‘Cho chuỗi gồm n matrận, với i = 1, 2, …, n, ma trận Ai có kích thước pi-1 × pi, ta mở-đóngngoặc tích cho tối thiểu hóa tổng số phép nhân vơ hướng” Đây tốn tối ưu hóa thuộc loại khó Cấu trúc cách mở đóng ngoặc tối ưu Bước 1: Đặc trưng hóa cấu trúc lời giải tối ưu Dùng Ai j để ký hiệu ma trận kết việc tính Ai Ai+1…Aj Một mở đóng ngoặc tối ưu tích xâu ma trận A1.A2… An Tách xâu vị trí nằm Ak Ak+1 với trị nguyên k, ≤ k < n Nghĩa là, trước tiên ta tính chuỗi ma trận A1 k and Ak+1 n nhân chúng với A1.n Chi phí mở đóng ngoặc tối ưu = chi phí tính Al k + chí phí tính Ak+1 n, + chi phí nhân chúng lại với Diễn tả lời giải cách đệ quy Ở đây, toán ta toán xác định chi phí tối ưu ứng với mở đóng ngoặc cho chuỗi Ai.Ai+1… Aj với ≤ i ≤ j ≤ n Đặt m[i, j] tổng số tối thiểu phép nhân vơ hướng địi hỏi để tính ma trận Ai j Chi phí cách rẻ để tính A1 n ghi m[1, n] Giả sử mở đóng ngoặc tối ưu tách đơi tích chuỗi Ai Ai+l… Aj Ak and Ak+l, với i ≤ k < j Thì m[i, j] với chí phí tối thiểu để tính Ai k Ak+1 j, cọng với chi phí để nhân hai ma trận lại với m[i, j] = m[i, k] + m[k+1, j] + pi-1pkpj Một công thức đệ quy Như vậy, định nghĩa đệ quy cho chi phí tối thiểu mở đóng ngoặc cho Ai Ai+l… Aj sau: m[i, j] = i = j, = {m[i, k] + m[k + 1, j] + pi-1pkpj.} i < j (5.2) Để giúp theo dõi cách tạo lời giải tối ưu, định nghĩa: s[i, j]: trị k tách tích xâu ma trận AiAi+1…Aj để đạt đến mở đóng ngoặc tối ưu Một nhận xét quan trọng Một nhận xét quan trọng ''Sự mở đóng ngoặc xâu A1A2 Ak bên mở đóng ngoặc tối ưu xâu A1A2…An phải mở đóng ngoặc tối ưu'' Như vậy, lời giải tối ưu cho tóan tích xâu ma trận chứa đựng lời giải tối ưu tốn Bước thứ hai phương pháp qui hoạch động định nghĩa trị lời giải tối ưu cách đệ quy theo lời giải tối ưu toán 10

Ngày đăng: 11/04/2023, 20:11

Xem thêm:

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN