Bài giảng Phân tích thiết kế giải thuật - Chương 10: Single-Source Shortest Paths

45 1 0
Bài giảng Phân tích thiết kế giải thuật - Chương 10: Single-Source Shortest Paths

Đ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

Shortest Paths Single Source Shortest Paths 20 11 2004 * Các đường đi ngắn nhất từ một đỉnh nguồn Bài toán các đường đi ngắn nhất một số thuật ngữ Cho một đồ thị có trọng số, có hướng G = (V, E), với[.]

Single-Source Shortest Paths Các đường ngắn từ đỉnh nguồn ª Bài tốn đường ngắn nhất: số thuật ngữ Cho đồ thị có trọng số, có hướng G = (V, E), với hàm trọng số w:E – Trọng số đường p = v0 , v1,…, vk  • w(p) = i = 1…k w(vi , vi ) – Trọng số đường ngắn (shortest path weight) từ u đến v p min{w(p) : u v} có đường từ (u, v) = u đến v  trường hợp khác – Đường ngắn từ u đến vt đường v p từ u đến v cho w(p) = (u, v) u 20.11.2004 x y Các đường ngắn từ đỉnh nguồn (tiếp) ª Bài tốn đường ngắn từ nguồn (Single-source shortest-paths problem): – Cho đồ thị G = (V, E) đỉnh nguồn s  V – Tìm đường ngắn từ s đến đỉnh v  V s 20.11.2004 Ch 10: Single-Source Shortest Paths Cạnh có trọng số âm ª Giả thiết: Trọng số cạnh âm – Chu trình có trọng số âm – Nếu tồn chu trình có trọng số âm đến (reachable) từ s trọng số đường ngắn không định nghĩa: không đường từ s đến đỉnh nằm chu trình đường ngắn 3 s 4 a c 1 b d 11 g  h  e  6 20.11.2004 f  8 3 i   j số đỉnh trọng số đường ngắn từ đỉnh nguồn s Ch 10: Single-Source Shortest Paths Cạnh có trọng số âm (tiếp) – Nếu tồn chu trình có trọng số âm đường từ s đến v, ta định nghĩa (s, v) =  – Trong ví dụ sau, đỉnh h, i, j khơng đến từ s nên có trọng số đường ngắn  (chứ không  chúng nằm chu trình có trọng số âm) a 4 b 1 s c d 11 g  3 e  f  h  i  8  j 6 20.11.2004 Ch 10: Single-Source Shortest Paths Biểu diễn đường ngắn ª Đồ thị G = (V, E ) – Với đỉnh v, đỉnh cha (predecessor) v đỉnh khác NIL Duy trì [v], trỏ đến đỉnh cha Dùng  để suy đường ngắn từ s đến v – Đồ thị G  (V , E ) (predecessor subgraph) • V = {v  V : [v]  NIL}  {s} • E = {([v], v)  E : v  V  {s}} [v] 20.11.2004 v Ch 10: Single-Source Shortest Paths Biểu diễn đường ngắn (tiếp) ª Cho G = (V, E) đồ thị có hướng, có trọng số; G khơng chứa chu trình trọng số âm đến từ đỉnh nguồn s  V Cây đường ngắn với gốc s đồ thị có hướng G’ = (V’, E’), với V’  V E’  E cho V’ tập đỉnh đến (reachable) từ s G G’ có gốc với gốc s Với v  V’, đường đơn từ s đến v đường ngắn từ s đến v G 20.11.2004 Ch 10: Single-Source Shortest Paths Cây đường ngắn có gốc đỉnh nguồn s Ví dụ: (b) (c) hai đường ngắn có gốc đỉnh nguồn s đồ thị (a) u v u 6 s s x 11 y (a) u (c) v 3 s 20.11.2004 1 v x (b) 11 y x 11 y Ch 10: Single-Source Shortest Paths Cấu trúc đường ngắn ª Lemma 25.1 (Đường đường ngắn đường ngắn nhất) Cho – Đồ thị có trọng số, có hướng G = (V, E) với hàm trọng số w:E – p = v1 , v2 ,…, vk đường ngắn từ v1 đến vk – Với i, j mà  i  j  k, gọi pij = vi , vi + ,…, vj  đường (subpath) p từ vi đến vj   pij đường ngắn từ vi đến vj pjk v1 20.11.2004 p1i vi pij vk vj Ch 10: Single-Source Shortest Paths Cấu trúc đường ngắn (tiếp) Chứng minh Phản chứng p’ij v1 20.11.2004 p1i vi pij pjk vk vj Ch 10: Single-Source Shortest Paths 10

Ngày đăng: 29/06/2023, 06:09