... để giải quyết bài
toán tìmđườngđingắnnhất giữa 2 đi m như sau:
Bài toán: Cho đồthị G với tập đỉnh V và tập các cạnh E (đồ thị có hướng hoặc vô hướng). Mỗi cạnh của đồ
thị được gán một nhãn ... toán kinh đi n.
Dijkstra là thuật toán định tuyến đơn giản để tìmđườngđingắnnhất giữa 2 đi m bất kỳ. Không mất tính tổng
quát, ta coi mỗi đi m (nút mạng) là một đỉnh của một đồ thị, ta sẽ ... trị của cạnh. Cho trước một đỉnh xác
định v, gọi là đỉnh nguồn. Tìmđườngđingắnnhất từ đỉnh v đến các đỉnh còn lại của G. (Tức là tìmđường đi
từ v đến các đỉnh còn lại với tổng các giá của...
... X. Tìm các
đờng đingắnnhất giữa 2 đỉnh a, b.
2. Thuật toán tìm đờng đingắnnhất cho đồthị có trọng số
2.1 Cơ sở thuật toán tìm đờng đingắn nhất
Cho G = <X, U> tìm đờng đingắnnhất ... 4
Đờng đingắnnhất trong đồ thị
Giới thiệu:
Trong các ứng dụng thực tế bài toán tìm đờng đingắnnhất giữa hai đỉnh của một
đồ thị liên thông có ý nghĩa rất lớn. Bài toán tìm đờng đingắnnhất ... công của một công trình
Ta có thể mở rộng bài toán tìm đờng đingắnnhất là bài toán tìm đờng đi dài
nhất. Với bài toán này chỉ có một đi m khác duy nhất là thay vì tìm trọng số nhỏ
nhất là tìm...
... X. Tìm
các đườngđingắnnhất giữa 2 đỉnh a, b.
2. Thuật toán tìmđườngđingắnnhất cho đồthị có trọng số
2.1 Cơ sở thuật toán tìmđườngđingắnnhất
Cho G = <X, U> tìmđườngđingắn ... giải đườngđingắnnhất trong đồthị giải quyết bài toán sửa gói
tin sai trong việc truyền tin dưới đây ta xét một số thuật toán để tìmđườngđi
ngắn nhất trong đồthị có trọng số và đồthị ... số.
I. ĐƯỜNGĐINGẮN NHẤ
T TRONG ĐỒTHỊ KHÔNG CÓ TRỌNG SỐ
1. Định nghĩa: Đồthị không có trọng số là đồthị hữu hạn trên các cạnh
không có trọng số. Bài toán tìmđườngđingắnnhất giữa...
... tìmđườngđingắnnhất trên đồthị không có
chu trình được mô tả trong sơ đồ sau đây :
Procedure Critical_Path;
(* Tìmđườngđingắnnhất từ đỉnh nguồn đến tất cả các đỉnh còn lại trên đồ
thị ... minh.
Khi đã tìm được độ dài đườngđingắnnhất d[v] thìđưòngđi này có thể tìm dựa
vào nhãn Trước[v],v
∈
V.
Thí dụ 1: Tìmđườngđingắnnhất từ đỉnh 1 đến các đỉnh còn lại củađồthị ở hình ... đi như là số cung củađường đi.
Bài toán tìmđườngđingắnnhất trên đồthị dưới dạng tổng quát có thể được phát
biểu dưới dạng tổng quát như sau : Tìmđườngđi có độ dài nhỏ nhất từ một đỉnh...
... tồn tại đường
đingắn nhất, tìmđườngđingắnnhấtđó và lưu vào tệp
FLOYD-WARSHALL.OUT có cấu trúc:
D ma trận độ dài đườngđingắnnhất giữa
mọi cặp đỉnh
…
P ma trận định đườngđingắnnhất giữa
mọi ... TÌM
ĐƯỜNG ĐINGẮNNHẤT GIỮA MỌI CẶP ĐỈNH
TRONG ĐỒTHỊ CÓ HƯỚNG CÓ TRỌNG SỐ BẰNG
CHƯƠNG TRÌNH PASCAL.
Thuật toán Floyd-warshall.
Chương trình dùng thuật toán Floyd-warshall tìm đường
đingắnnhất ... Floyd-warshall.
Chương trình dùng thuật toán Floyd-warshall tìm đường
đingắnnhất giữa mọi cạp đỉnh trong đồthị có hướng có trọng
số.
Dữ liệu được lấy từ tệp FLOYD-WARSHALL.INP có cấu
trúc :
n
(số đỉnh)
m
(số...
... T:TJpegimage;
begin
SaveDialog1.DefaultExt:='*.JPG';
156
PHẦN PHỤ LỤC
Phụ lục 1
Unit chứa khai báo các cấu trúc dữ liệu cho đồ thị
và cài đặt thủ tục tìmđườngđingắnnhất theo thuật toán
unit Func_DoThi;
interface
type
TypeToaDo=record
x,y:integer;
...
... nh a,z ca th. Bi toán đặt ra là tìmđườngđingắnnhất từ a đến z.
2. Thuật toán Dijkstra
Thật toán tìmđườngđingắnnhất từ đỉnh a đến đỉnh z trong đóđồthị liên thông có trọng
số. trọng ... dài ngắnnhất từ a đến z.
Đầu vào: đồthị liên thông G=(V,E) có trọng số w(i,j)>0 với mọi cạnh (i,j), đỉnh
a và z
Đầu ra :L(z) chiều dài đườngđingắnnhất từ a đến z và đườngđingắn nhất.
... đỉnh đã được ghi nhớ
z c b a→ → →
. Ta suy ra đường
đi ngắnnhất là
a b c z→ → →
.
Ví dụ2: Tìmđườngđingắnnhất từ tỉnh a đến tỉnh z trong đồthị sau:
Giải:
- Ta thực hiện bước 1:
Đặt T:={a,b,c,d,e,f,g,z}
b(2...
... Bài toán tìmđườngđingắn nhất.
Trương Mỹ Dung
33
CHƯƠNG 3.
BÀI TOÁN TÌMĐƯỜNGĐINGẮN
NHẤT.
Những bài toán tìmđườngđi trong các đồthị (đặc biệt là tìmđườngđingắn nhất)
được ... tập đườngđi con của tập đườngđingắn
nhất là những đườngngắn nhất.
BỔ ĐỀ.
Xét đồthị G = (X,U) và một hàm trọng lượng l : X x X R, Cho
C = ô x
1
, x
2
,,x
k
ằ laứ đườngđingắnnhất ... Chương 3. Bài toán tìmđườngđingắn nhất.
Trương Mỹ Dung
34
Và loại bài toán sau được xét :
♦ Tìmđườngđingắnnhất từ một đỉnh đến các đỉnh còn lại,
♦
Tìm đườngđingắnnhất giữa các cặp...
... như sau: để đi từ địa đi m A
đến địa đi m B trong thành phố, có nhiều đường đi, nhiều cách đi; có lúc ta chọn đường
đingắnnhất (theo nghĩa cự ly), có lúc lại cần chọn đườngđi nhanh nhất (theo ... với phần mềm hỗ trợ tìmđườngđingắn nhất, người dùng
chỉ cần đưa ra vị trí xuất phát và đi m cần đến, chương trình sẽ đưa ra con đường ngắn
nhất từ vị trí xuất phát đến đi m đích cho người ... chọn một hành trình “tiết kiệm” ta có thể sử
dụng thuật toán tìmđườngđingắnnhất và cho ra sản phẩm phần mềm hổ trợ tìm
đườngđingắnnhất cho người dùng.
Nội dung nguyên tắc: Sử dụng đối tượng...
... minh.
Khi đã tìm được độ dài đườngđingắnnhất d[v] thìđưòngđi này có thể tìm dựa
vào nhãn Trước[v],v
∈
V.
Thí dụ 1: Tìmđườngđingắnnhất từ đỉnh 1 đến các đỉnh còn lại củađồthị ở hình ... tìmđườngđingắnnhất trên đồthị không có
chu trình được mô tả trong sơ đồ sau đây :
Procedure Critical_Path;
(* Tìmđườngđingắnnhất từ đỉnh nguồn đến tất cả các đỉnh còn lại trên đồ
thị ... đi như là số cung củađường đi.
Bài toán tìmđườngđingắnnhất trên đồthị dưới dạng tổng quát có thể được phát
biểu dưới dạng tổng quát như sau : Tìmđườngđi có độ dài nhỏ nhất từ một đỉnh...