Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 137 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
137
Dung lượng
2,25 MB
Nội dung
TRƯ NG ð I H C SƯ PH M K THU T HƯNG YÊN KHOA CÔNG NGH THÔNG TIN GIÁO TRÌNH H C PH N TỐN R I R C Trình đ đào t o : ð i h c H đào t o : Chính quy / lien thơng Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 M ñ u Lý thuy t ñ th m t lĩnh v c có t lâu có nhi u ng d ng hi n ñ i Nh ng tư tư ng b n c a lý thuy t ñ th ñư c ñ xu t vào nh ng năm ñ u c a th k 18 b i nhà toán h c l i l c ngư i Th y S Lenhard Eurler Chính ơng ngư i ñã s d ng ñ th ñ gi i toán n i ti ng v c u thành ph Konigsberg ð th ñư c s d ng đ gi i tốn nhi u lĩnh v c khác Ch ng h n, ñ th có th s d ng đ xác đ nh m ch vịng v n đ gi i tích m ch n Chúng ta có th phân bi t h p ch t hóa h c h u khác v i công th c phân t khác v c u trúc phân t nh đ th Chúng ta có th xác đ nh hai máy tính m ng có th trao đ i thơng tin đư c v i hay khơng nh mơ hình đ th c a m ng máy tính ð th có tr ng s c nh có th s d ng đ gi i tốn như: Tìm đư ng ng n nh t gi a hai thành ph m ng giao thơng Chúng ta cịn s d ng đ th đ gi i tốn v l p l ch, th i khóa bi u, phân b t n s cho tr m phát truy n hình Hưng Yên, tháng năm 2010 B môn Công ngh ph n m m Khoa Cơng ngh thơng tin Trư ng đ i h c sư ph m k thu t Hưng Yên Trang Giáo trình TỐN R I R C B mơn Công ngh ph n m m - 2010 M cl c M ñ u Danh m c hình v Bài Các khái ni m b n c a Lý thuy t ñ th 1.1 ð nh nghĩa b n v ñ th 1.2 ðư ng chu trình ð th liên thơng 1.3 Phân lo i ñ th 12 1.3.1 ð th vô hư ng liên thông .12 1.3.2 ð th có hư ng liên thông .14 1.4 M t s lo i ñ th ñ c bi t .15 Bài Bi u di n đ th máy tính .20 2.1 M t s phương pháp bi u di n ñ th máy tính 20 2.2.1 Ma tr n k Ma tr n tr ng s 20 2.2.2 Danh sách c nh (cung) 22 2.2.3 Danh sách k .23 Bài ð th Euler 28 3.1 ð nh nghĩa 28 3.2 Các ví d 29 3.3 ð nh lý Euler thu t toán Flor 29 Bài ð th Hamilton 33 4.1 ð nh nghĩa .34 4.2 ð nh lý thu t toán li t kê t t c chu trình Hamilton 35 Bài Th o lu n cài ñ t ñ th , thu t toán li t kê chu trình Euler Hamilton Th o lu n v t p l n .38 5.1 Cài ñ t bi u di n ñ th máy tính 38 5.2 Cài đ t thu t tốn li t kê chu trình Euler 38 5.3 Cài đ t thu t tốn li t kê chu trình Hamilton 40 Bài Thu t tốn tìm ki m ñ th ng d ng 41 6.1 Duy t ñ th theo chi u r ng (BFS) .41 6.2 Duy t ñ th theo chi u sâu (DFS) 44 Bài Cây khung .45 7.1 Cây khung 45 7.1.1 Cây 45 7.1.2 Cây khung c a ñ th 47 7.2 Bài toán khung nh nh t 47 7.3 Xây d ng t p chu trình b n c a ñ th 49 7.4 Thu t toán Prim .50 7.5 Thu t toán Kruskal 54 Bài Th o lu n v cài đ t thu t tốn tìm khung nh nh t ñ th 57 8.1 Cài ñ t xây d ng t p chu trình b n c a đ th 57 8.2 Cài ñ t thu t toán Prim 59 8.3 Cài ñ t thu t toán Kruskal .60 Trang Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 8.4 M t s thu t toán xây d ng khung(*) .62 Bài 10 Bài tốn tìm ñư ng ñi ng n nh t 65 10.1 Các khái ni m m ñ u 65 10.2 ðư ng ñi ng n nh t xu t phát t m t đ nh Thu t tốn Ford-Bellman 66 10.3 Trư ng h p ma tr n tr ng s khơng âm Thu t tốn Dijkstra .67 Bài 11 Bài tốn tìm đư ng ng n nh t (ti p) 69 11.1 ðư ng ñi ñ th khơng có chu trình 69 11.2 ðư ng ñi ng n nh t gi a t t c c p ñ nh 74 11.3 Cài ñ t thu t toán Dijkstra 75 Bài 12 Bài tốn lu ng c c đ i m ng 76 12.1 M ng Lu ng m ng Bài toán lu ng c c ñ i 76 12.2 Lát c t ñư ng tăng lu ng ð nh lý ford_fulkerson .77 12.3 Thu t tốn tìm lu ng c c ñ i 81 Bài 13 Lý thuy t ñ th ng d ng .91 13.1 Các toán liên quan t i ñ th 91 13.1.1 Các toán liên quan t i b c c a ñ th 91 13.1.2 Các toán liên quan đ n tính liên thơng c a đ th 93 13.1.3 Các toán liên quan t i chu trình 94 13.1.4 Các tốn có liên quan đ n đư ng chu trình Hamilton 96 13.1.5 Các toán liên quan ñ n ñ th tô màu .100 13.1.6 Bài toán v .110 13.1.7 Bài toán v ghép c p 111 13.1.8 ð th Euler 112 13.1.9 Các tốn có tính t ng h p 112 13.2 S liên h gi a t p ñ c bi t ñ th v i toán bàn c 115 13.3 Duy t r ng m ng hai chi u 119 Bài 14 M t s ng d ng ñ th 126 14.1 Bài tốn đám cư i vùng quê 126 14.2 Bài tốn v h th ng đ i di n chung 127 14.3 Bài toán t i ưu r i r c 128 Bài tốn phân nhóm sinh ho t 128 Bài toán l p l ch cho h i ngh 129 14.4 M t s toán liên quan ñ n vi c t ch c m ng v n chuy n bưu 129 Mơ hình đ nh n m ng đư ng thư c p 130 Bài toán l p k ho ch v n chuy n bưu g i .130 Mơ hình m ng đư ng thư thành ph .133 TÀI LI U THAM KH O 136 Trang Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 Danh m c hình v Hình 1.1 Sơ đ m ng máy tính Hình 1.2 Sơ đ m ng máy tính v i đa kênh tho i Hình 1.3 Sơ đ m ng máy tính v i kênh tho i thông báo Hình 1.4 M ng máy tính v i kênh tho i m t chi u Hình 1.5 ðư ng ñ th Hình 1.6 ð th G H 10 Hình 1.7 ð th liên thơng m nh G đ th liên thơng y u H 12 Hình 1.8 ð th vô hư ng 13 Hình 1.9 ð th có hư ng 14 Hình 1.10 ð th ñ y ñ 15 Hình 1.11 ð th vòng C3, C4, C5, C6 .16 Hình 1.12 ð th bánh xe W3, W4, W5, W6 16 Hình 1.13 ð th l p phương Q1, Q2, Q3 16 Hình 1.14 ð th hai phía 17 Hình 1.15 ð th K4 ñ th ph ng 18 Hình 1.16 Các mi n tương ng v i bi u di n ph ng c a ñ th 18 Hình 2.1 ð th vơ hư ng G ð th có hư ng G1 21 Hình 3.1 Mơ hình c u Konigsberg 28 Hình 3.2 ð th G1, G2, G3 29 Hình 3.3 ð th H1, H2, H3 29 Hình 3.4 Minh ho cho ch ng minh ð nh lý 3.1 31 Hình 4.1 Du l ch 20 thành ph 33 Hình 4.2 ð th Hamilton G3, n a Hamilton G2 , G1 .34 Hình 4.3 ð th ñ u lo i D5, ñ u lo i liên thông m nh D6 36 Hình 4.4 ð th li t kê chu trình Hamilton c a theo thu t tốn quay lui 37 Hình 5.1 ð th li t kê chu trình Hamilton c a theo thu t tốn quay lui 40 Hình 6.1 ð th vô hư ng 42 Hình 7.1 Cây r ng 45 Hình 7.2 ð th khung c a 47 Hình 7.3 ð th khung nh nh t 53 Hình 8.1 H chu trình đ c l p cho đ th vô hư ng G .57 Hình 8.2 H chu trình đ c l p cho đ th có hư ng G1 57 Hình 8.3 Minh h a t ng bư c thu t tốn Prim tìm khung nh nh t 60 Hình 8.4 Minh h a t ng bư c thu t toán Kruskal tìm khung nh nh t .61 Hình 11.1 ð th khơng có chu trình 69 Hình 11.2 ð th minh ho PERT 73 Hình 12.1 M ng G lu ng f ð th có tr ng s Gf tương ng 79 Hình 12.2 M ng G minh h a t ng bư c thu t toán Ford-Fullkerson 86 Hình 12.3 M ng G v i lu ng c c ñ i lát c t h p nh t 87 Hình 12.4 Ví d t i t đ i v i thu t toán Ford_Fulkerson 89 Hình 12.5 Tăng lu ng d c theo ñư ng tăng 90 Hình 13.1 K t qu thi ñ u c a ñ i bóng chuy n A, B, C, B, E .96 Hình 13.2 Sơ đ nhà c a h c sinh 97 Trang Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 Hình 13.3 10 thành ph 98 Hình 13.4 b trí l ch thi cho h c sinh THPT v i môn thi ngày 99 Hình 13.5 V trí nhà ñư ng n i gi a nhà c a h c sinh 100 Hình 13.6 B n đ có mi n .101 Hình 13.7 L p l ch thi mơn 104 Hình 13.8 Tơ màu cho đ th l ch thi 105 Hình 13.9 Phân chia kênh truy n hình .107 Hình 13.10 Tơ màu cho đ th phân chia kênh truy n hình 107 Hình 13.11 Thanh ghi ch s CPU 109 Hình 13.12 Tơ màu cho th ghi ch s .110 Hình 13.13 K t qu x p h ng c a ñ i 111 Hình 13.14 Tuy n ch n biên d ch viên 114 Hình 13.15 Quy t c ñi c a quân mã 116 Hình 13.16 Quy t c c a qn mã bàn c × .116 Hình 13.17 Quy t c c a quân tư ng bàn c × 117 Hình 13.18 Quy t c ñi c a quân xe bàn c × .117 Hình 13.19 Quy t c c a qn h u bàn c × 118 Hình 13.20 Hư ng di chuy n c a robot 120 Hình 14.1 M ng tương ng v i tốn đám cư i vùng q .127 Trang Giáo trình TỐN R I R C Bài B môn Công ngh ph n m m - 2010 Các khái ni m b n c a Lý thuy t ñ th 1.1 ð nh nghĩa b n v ñ th ð th m t c u trúc r i r c bao g m ñ nh c nh n i ñ nh Chúng ta phân bi t lo i ñ th khác b i ki u s lư ng c nh n i hai đ nh c a đ th ð có th hình dung đư c t i l i c n ñ n lo i ñ th khác nhau, s nêu ví d s d ng chúng đ mơ t m t m ng máy tính Gi s ta có m t m ng g m máy tính kênh ñi n tho i (g i t t kênh tho i) n i máy tính Chúng ta có th bi u di n v trí đ t náy tính b i m kênh tho i n i chúng b i đo n n i, xem hình 1.1 Hình 1.1 Sơ đ m ng máy tính Nh n th y r ng m ng hình 1.1, gi a hai máy b t kỳ ch có nhi u nh t m t kênh tho i n i chúng, kênh tho i naỳ cho phép liên l c c hai chi u khơng có máy tính l i đư c n i v i Sơ đ m ng máy cho hình đư c g i đơn đ th vơ hư ng Ta ñ n ñ nh nghĩa sau ð nh nghĩa 1.1 ðơn đ th vơ hư ng G = (V,E) bao g m V t p ñ nh, E t p c p khơng có th t g m hai ph n t khác c a V g i c nh Trong trư ng h p gi a hai máy tính thư ng xuyên ph i truy n t i nhi u thông tin ngư i ta ph i n i hai máy nàu b i nhi u kênh tho i M ng v i ña kênh tho i gi a máy đư c cho hình 1.2 Trang Giáo trình TỐN R I R C B mơn Cơng ngh ph n m m - 2010 Hình 1.2 Sơ đ m ng máy tính v i đa kênh tho i ð nh nghĩa 1.2 ða đ th vơ hư ng G= (V, E) bao g m V t p ñ nh, E t p c p khơng có th t g m hai ph n t khác c a V g i c nh Hai c nh e1 e2 ñư c g i c nh l p n u chúng tương ng v i m t c p đ nh Hình 1.3 Sơ đ m ng máy tính v i kênh tho i thơng báo Rõ ràng m i ñơn ñ th ñ u ña ñ th , khơng ph i đa đ th đơn đ th , đa đ th có th có hai (ho c nhi u hơn) c nh n i m t c p ñ nh Trong m ng máy tính có th có nh ng kênh tho i n i m t náy v i (ch ng h n v i m c đính thơng báo) M ng v y đư c cho hình Khi ña ñ th không th mô t ñư c m ng v y, b i có nh ng khuyên (c nh n i m t ñ nh v i nó) Trong trư ng h p nàychúng ta c n s d ng ñ n khái ni m gi đ th vơ hư ng, đư c đ nh nghĩa sau: ð nh nghĩa 1.3 Trang Giáo trình TỐN R I R C B mơn Cơng ngh ph n m m - 2010 Gi ñ th vô hư ng G = (V, E) bao g m V t p ñ nh E t p c p khơng có th t g m hai ph n t (không nh t thi t ph i khác nhau) c a V g i c nh C nh e ñư c g i khuyên n u có d ng e = (u, u) Hình 1.4 M ng máy tính v i kênh tho i m t chi u Các kênh tho i m ng máy tính có th ch cho phép truy n tin theo m t chi u Ch ng h n, hình 1.4 máy ch Hà N i ch có th nh n tin t máy đ a phương, có m t s máy ch có th g i tin đi, cịn kênh tho i cho phép truy n tin theo c hai chi u ñư c thay th b i hai c nh có hư ng ngư c chi u Ta ñi ñ n ñ nh nghĩa sau ð nh nghĩa 1.4 ðơn ñ th có hư ng G = (V, E) bao g m V t p ñ nh E t p c p có th t g m hai ph n t khác c a V g i cung N u m ng có th có đa kênh tho i m t chi u, ta s ph i s d ng ñ n khái ni m đa đ th có hư ng: ð nh nghĩa 1.5 ða đ th có hư ng G = (V, E) bao g m V t p ñ nh E t p c p có th t g m hai ph n t khác c a V g i cung Hai cung e1, e2 tương ng v i m t c p ñ nh ñư c g i cung l p Trong ph n ti p theo ch y u s làm vi c v?i ñơn ñ th vô hư ng ñơn ñ th có hư ng Vì v y, đ cho ng n g n, ta s b qua tính t đơn nh c đ n chúng Trang Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 1.2 ðư ng ñi chu trình ð th liên thơng ð nh nghĩa 1.6 ðư ng ñi ñ dài n t ñ nh u ñ n đ nh v, n s ngun dương, đ th vơ hư ng G = (V, E) dãy x0, x1,…, xn-1, xn u = x0 , v = xn , (xi , xi+1)∈ E, i = 0, 1, 2,…, n-1 ðư ng ñi nói cịn có th bi u di n dư i d ng dãy c nh: (x0, x1), (x1, x2), …, (xn-1, xn) ð nh u g i ñ nh ñ u, ñ nh v g i ñ nh cu i c a ñư ng ñi ðư ng có đ nh đ u trùng v i ñ nh cu i (t c u = v) đư c g i chu trình ðư ng ñi hay chu trình ñư c g i ñơn n u khơng có c nh b l p l i Ví d 1.1 Trên đ th vơ hư ng cho Hình 1.5: a, d, c, f, e đư ng đơn đ dài Cịn d, e, c, a khơng đư ng đi, (c,e) khơng ph i c nh c a đ th Dãy b, c, f, e, b chu trình đ dài ðư ng a, b, e, d, a, b có đ dài khơng ph i ñư ng ñi ñơn, c nh (a, b) có m t l n Hình 1.5 ðư ng ñi ñ th Khái ni m đư ng chu trình đ th có hư ng đư c đ nh nghĩa hồn tồn tương t trư ng h p đ th vơ hư ng, ch khác ta có ý đ n hư ng cung ð nh nghĩa 1.7 ðư ng ñi ñ dài n t ñ nh u ñ n ñ nh v, ñó, n s ngun dương, đ th có hư ng G = (V, A) dãy x0, x1,…, xn-1, xn u = x0, v = xn, (xi, xi+1)∈ E, i = 0, 1, 2,…, n-1 ðư ng nói cịn có th bi u di n dư i d ng dãy cung: (x0, x1), (x1, x2), …, (xn-1, xn) Trang Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 Assign (f, ‘inp.txt); Reset(f); Readln (f,N,M); For i: = to N For j: = to M Readln (f, a[i,j]); Readln (f, xp1, xp2); Readln (f, kt1, kt2); Close (f); (* Các bên ngồi lư i ta coi ñ t v t c n nên gán giá tr c a chúng b ng 1*) Fori: = to M Begin a[0,i]: = 1; a[N +1; i]: = 1; end; For i = to N Begin a[i, 0]: = a[i, M +1]: = 1; End; End; Procedure InitQ: Begin ql : = 0; qf: = 1; End; Trang 122 Giáo trình TỐN R I R C B mơn Cơng ngh ph n m m - 2010 Procedure Put (u,v:integer); Begin inc(ql); q[ql,l]: = u; q[ql,2]: = v; End; Procedure Get (var u, v: integer); Begin u: = q[qf,1]; v: = q[qf,2]; inc(qf); End; Function Qempty: Boolean; Begin Qempty: = (qf>ql); End; Procedure Latnguoc; Var u,v, h:integer; Begin If truoc[kt1, kt2]0 then Begin solad: = 0; u: = kt1; v: = kt2; REPEAT inc(sold); Trang 123 Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 duong[sold,1]: = u; duong[sold,2]: = v; case truoc [u,v] of 4: h: = 2; 2: h: = 4; 1: h: = 3; 3: h: = 1; end; u: = u + dh[h]: v: = v + dc[h]; UNILT (truoc[u,v] = -1; End; End; Procedure Inkq; Var f: text; ij: integer; Begin For i: = solad downto Writeln (duong [i,1], ‘ ‘ , duong[i,2]); Readln; End; Procedure Duyet; Var i,j, h, u, v: integer; Begin InitQ; Fillchar (truoc, sizeof(truoc), 0); truoc [xp1; xp2]: = -1; Trang 124 Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 Put (xp1, xp2); REPEAT Get (u,v); For h: = to If (a[u + dh [h],v + dc[h] ] = and(truoc [u+ dh[h],v + dc[h]] = 0) then Begin truoc[u + dh[h], v + dc[h]]: = h; Put (u + dh[h],v + dc[h]); End; UNILT Qempty; Latnguoc; End; BEGIN Docfile; Duyet; Inkq; END Trang 125 Giáo trình TOÁN R I R C Bài 14 M t s B môn Công ngh ph n m m - 2010 ng d ng đ th Bài tốn lu ng c c đ i có r t nhi u ng d ng vi c gi i toán t h p Khó khăn ph i xây d ng m ng tương ng cho vi c tìm lu ng c c đ i s tương ñương v i vi c gi i tốn t h p đ t M c s gi i thi u m t s toán v y 14.1 Bài tốn đám cư i vùng quê Có m chàng trai m t vùng quê n ð i v i m i chàng trai ta bi t cô gái mà v a ý H i có th t ch c đám cư i chàng trai sánh dun v i gái mà v a ý Ta có th xây d ng đ th v i ñ nh bi u th chàng trai gái, cịn cung bi u th s v a ý c a chàng trai v i gái Khi ta thu ñư c m t ñ th hai phía Ví d 14.1 Có chàng trai { T1, T2, T3,T4} cô gái { G1, G2, G3,G4, G5} S v a ý cho b ng sau Chàng trai Các cô gái mà chàng trai ưng ý T1 G1 , G4 , G5 T2 G2 T3 G2, G3,G4 T4 G2 , G4 ð th tương ng ñư c cho hình 14.1 Trang 126 Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 Hình 14.1 M ng tương ng v i tốn đám cư i vùng q ðưa vào ñi m phát s ñi m thu t N i s v i t t c ñ nh bi u th chàng trai, n i t v i t t c ñ nh bi u th cô gái T t c cung c a đ th đ u có kh thơng qua b ng B t ñ u t lu ng 0, ta tìm lu ng c c đ i m ng xây d ng ñư c theo thu t tốn Ford-Fulkerson T đ nh lý v tính ngun, lu ng cung s ho c Rõ ràng n u lu ng c c ñ i đ th có giá tr Vmax = m, tốn có l i gi i, cung v i lu ng b ng s ch cách t ch c ñám cư i tho mãn ñi u ki n ñ t Ngư c l i, n u tốn có l i gi i Vmax = m Bài tốn v đám cư i vùng quê m t trư ng h p riêng c a tốn v c p ghép đ th hai phía mà đ gi i có th xây d ng thu t toán hi u qu 14.2 Bài tốn v h th ng đ i di n chung Cho t p m ph n t X={ z1, z2, ,zm} Gi s hai dãy t p c a X Dãy g m n ph n t khác c a X: ñư c g i h th ng ñ i di n chung c a hai dãy ñã cho n u tìm đư c m t hốn v s c a t p {1, 2, .,n} cho < a1, a2, ,an> h th ng ñ i di n phân bi t c a hai dãy , t c ñi u ki n sau ñư c tho mãn: ∈ Ai ∩ Bs (i), i = 1, 2, ,n Xây d ng m ng G = (V, E) v i t p ñ nh V = { s, t} ∪ { x1, x2, ,xn} ∪ {u1, u2, ,un} ∪ { v1, v2, ,vn} ∪ { y1, y2, ,yn} đ nh xi tương ng v i t p Ai, ñ nh yi tương ng v i t p Bi, ph n t uj, yj tương ng v i ph n t zj T p cung c a m ng G ñư c xác ñ nh sau E = { (s, xi): 1≤i≤n} ∪ { (xi,uj): v i zj ∈ Ai, 1≤i≤n, 1≤j≤m} ∪ { (uj,vj):1≤j≤m} ∪ {(vj, yi): v i zj ∈ Bi, 1≤i≤n, 1≤j≤m} ∪ { (yi, t): 1≤i≤n} Trang 127 Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 Kh thông qua c a t t c cung ñư c ñ t b ng D dàng th y r ng h th ng ñ i di n chung c a hai dãy t n t i ch m ng G=(V,E) tìm ñư c lu ng v i giá tr n ð xét s t n t i c a lu ng v y có th s d ng thu t tốn tìm lu ng c c đ i t s ñ n t m ng G=(V, E) 14.3 Bài toán t i ưu r i r c Trong m c ta s trình bày thu t tốn đư c xây d ng d a thu t toán tìm lu ng c c đ i đ gi i m t toán t i ưu r i r c mơ hình tốn h c cho m t s toán t i ưu t h p Xét toán t i ưu r i r c: (1) f(x1,x2, ,xn) = v i ñi u ki n (2) (3) aij ∈ { 0,1} , i = 1, 2, , m; j=1, 2, n, pi –nguyên dương, i = 1, 2, ,m Bài tốn (1)-(3) mơ hình tốn h c cho nhi u toán t i ưu t h p th c t Dư i ñây ta d n m t vài ví d n hình Bài tốn phân nhóm sinh ho t Có m sinh viên n nhóm sinh ho t chuyên ñ V i m i sinh viên i, bi t + aij =1, n u sinh viên i có nguy n v ng tham gia vào nhóm j, + aij =0, n u ngư c l i, + pij s lư ng nhóm chun đ mà sinh viên i ph i tham d , i = 1, 2, ,m; j=1, 2, ,n Trong s cách phân sinh viên vào nhóm chun đ mà h có nguy n v ng tham gia ñ m b o m i sinh viên i ph i tham gia pi nhóm, tìm cách phân ph i v i s ngư i nhóm có nhi u sinh viên tham gia nh t nh nh t có th đư c ðưa vào bi n s Trang 128 Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 xij = 1, n u sinh viên i tham gia vào nhóm j, xij = 0, n u ngư c l i, i = 1, 2, ,m, j=1, 2, .,n, d th y mơ hình tốn h c cho tốn đ t tốn (1)-(3) Bài tốn l p l ch cho h i ngh M t h i ngh có m ti u ban, m i ti u ban c n sinh ho t m t ngày t i phòng h p phù h p v i Có n phịng h p dành cho vi c sinh ho t c a ti u ban Bi t aij = 1, n u phòng h p i thích h p v i ti u ban j, aij=0, n u ngư c l i, i = 1, 2, ,m, j =1, 2, .,n Hãy b trí phịng h p cho ti u ban cho h i ngh k t thúc sau ngày làm vi c nh t ðưa vào bi n s xij = 1, n u b trí ti u ban i làm vi c phịng j, xij =0, n u ngư c l i, i =1, 2, ,m, j =1, 2, .,n, d th y mơ hình tốn h c cho tốn đ t tốn (1)-(3), pi=1, i =1, 2, ,m 14.4 M t s tốn liên quan đ n vi c t ch c m ng v n chuy n bưu Các tốn t i ưu m ng, m t ph n c a lý thuy t ñ th h u h n m t lý thuy t tốn h c đư c ng d ng r ng rãi kinh t , quân s Ngư i đ t n n móng đ u tiên cho lý thuy t đ th nhà tốn h c Euler, v i “bài toán b y c u” n i ti ng vào năm 1736 Trong trình khai thác khía c nh khác c a tốn, nhà tốn h c d n d n ñ t s lý lu n cho m t lý thuy t toán h c m i đ i, lý thuy t đ th h u h n (lý thuy t Graph) ð n lý thuy t ñ th h u h n ñã ñư c nghiên c u ng d ng h u h t lĩnh v c c a ho t ñ ng kinh t xã h i, cơng c tốn h c s c bén nghiên c u h th ng k thu t -công ngh , h th ng kinh t -xã h i, h th ng quân s , h th ng bưu vi n thơng v.v Trang 129 Giáo trình TỐN R I R C B mơn Cơng ngh ph n m m - 2010 Trong nh ng năm g n ñây nh s h tr c a cơng ngh thơng tin máy tính n t , lý thuy t graph tr thành công c hi u qu , ñ ng gi i quy t nhi u tốn liên quan đ n nghiên c u phân tích h th ng Mơ hình đ nh n m ng ñư ng thư c p M ng ñư ng thư c p m t th c ch t m t đ th có đ nh nút trung tâm Bưu Bưu ñi n trung tâm V n chuy n gi a nút m ng có th qua ñư ng tr c ti p ho c qua nút trung gian Do v y xu t hi n tốn l a ch n n đư ng v n chuy n T c ph i ch cách v n chuy n t m t nút b t kỳ t i m t nút b t kỳ khác c n ph i qua nút trung gian Gi a đ nh s có cung liên k t n u chúng có đư ng v n chuy n tr c ti p v i ð gi i tốn xác đ nh đư ng v n chuy n bưu c n có khái ni m sau: Lưu lư ng (lu ng) v n chuy n bưu g i: S lư ng bưu g i xu t hi n t i m t nút m ng b t kỳ c n ph i chuy n t i m t nút m ng khác ð i lư ng tính m t đơn v th i gian (gi , ngày, tu n, tháng), ñư c g i t i tr ng Do ñ c ñi m không ñ ng ñ u c a t i tr ng theo ngày tu n tháng năm nên ta ch xét t i tr ng trung bình ngày đ l p k ho ch v n chuy n (th ng kê m t tháng tiêu bi u chia trung bình cho m t ngày) Trong mơ hình, t i tr ng gi a nút m ng ñư c bi u di n dư i d ng ma tr n mà ph n t (ij) ñư c hi u t i tr ng m t ngày t nút m ng i t i nút m ng j Kh lưu thoát c a nút m ng s lư ng bưu g i có th đư c khai thác t i m t nút m ng m t ngày Kh lưu thoát ph thu c vào nhi u y u t di n tích m t b ng, m c đ gi i hố, t ñ ng hoá, t ch c s n xu t, m c đ khơng đ ng đ u c a t i tr ng, t n s th i gian kh i hành c a phương ti n v n chuy n Giá tr c a cung (chi u dài cung) giá thành v n chuy n m t ñơn v s n ph m theo t ng cung liên k t, ho c th i gian v n chuy n gi a nút m ng ðơn v s n ph m có th m t túi thư, m t container ho c m t bưu ki n tuỳ vào toán c th Giá thành v n chuy n m t ñơn v s n ph m ñư c bi u di n qua chi u dài cung ho c th i gian v n chuy n gi a nút m ng Bài toán l p k ho ch v n chuy n bưu g i Trư c tiên, xét hai nút m ng c n trao ñ i bưu g i, m t nút m ng ngu n ws, m t nút đích wt, lu ng t i tr ng t ngu n t i ñích s là: (x1 , ,xj , ,xn) Trang 130 Giáo trình TỐN R I R C B mơn Công ngh ph n m m - 2010 cung dj v i xj > t o thành n v n chuy n t i tr ng xj t ngu n ws t i đích wt , n v n chuy n ñư c xác ñ nh m t t p h p nút m ng (hay t p h p cung) tham gia vào n v n chuy n Như v y, tốn đ nh n m ng v n chuy n bưu g i c n xác ñ nh lu ng bưu g i t m t nút m ng t i m t nút m ng khác c n ph i qua nút trung gian đ t i thi u hố chi phí v n chuy n c a toàn b m ng, ñ ng th i vi c l a ch n n ñư ng c n tho mãn ñi u ki n ràng bu c v th i gian tồn trình kh lưu c a t ng nút m ng Trong m ng v n chuy n bưu chính, m ng đ ng th i th c hi n nhi u lu ng trao ñ i, m i m t lu ng có nút kh i ñ u nút k t thúc Do v y, c n ñưa vào ký hi u t ng lu ng véc tơ xq: xq =(xq1, , xqj, ,xqn) Xq c n tho mãn ñi u ki n khơng âm u ki n b o tồn lu ng nghĩa là: AXq =Vq Xq ≥ Trong ñó: Vq: véctơ t t c ph n t ñ u b ng 0, ngo i tr hai ph n t tương ng v i nút m ng kh i đ u nút k t thúc có giá tr -vq Vq (vR lưu lư ng c n v n chuy n c a m i lu ng); A: Ma tr n liên k t cung nút ch a m dòng n c t ñó m s nút m ng n s cung Ma tr n A mơ hình ñ nh n m ng v n chuy n c a t ng lu ng c n xác ñ nh Ma tr n liên k t cung nút c a graph G = (W,D), ký hi u A=[aij] có kích thư c m x n v i ph n t ñư c xác ñ nh sau: aij = 1, n u wi ñ nh ñ u c a cung dj −1, n u wi ñ nh cu i c a cung dj 0, n u wi khơng đ nh đ u ho c cu i c a cung dj Ngoài lu ng Xq cịn ph i tho mãn u ki n ràng bu c khơng đư c vư t q kh khai thác c a t ng nút m ng wi Trang 131 Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 Xét véc tơ Pi (Pi1, Pi2, Pin) Pi = l n u dj hư ng t i ñ nh wi Pi = n u ngư c l i Véc tơ Pi dịng i c a ma tr n liên k t cung nút A mà t t c ph n t -l ñư c thay b ng Như v y, ñi u ki n ràng bu c v kh lưu thoát c a nút m ng là: Trong đó: hi : Kh Lưu c a nút m ng W r: S đơi nút m ng m ng có trao đ i bưu g i Tiêu chí t i ưu c a tốn v n chuy n bưu g i sau: Gi s C (C1,C2, Cn) Véctơ chi phí v n chuy n Cj cư c v n chuy n l ñơn v s n ph m qua cung dj (chi u dài cung dj) Khi chi phí v n chuy n s là: Z = CX1 + + CXq + + CXr = C(X1 + + Xq + + Xr ) → V y mơ hình v n chuy n t i ưu là: min[Z = C(X1 + + Xq + + Xr)] P1(X1 + + Xq + + Xr) ≤ h1 Pm(X1 + + Xq + + Xr) ≤ hm AX1 = V1 AXq = Vq AXr = Vr Trong trư ng h p khơng có u ki n h n ch v kh lưu thoát c a nút m ng, tốn đ nh n m ng bưu ch đơn gi n tốn tìm đư ng ng n nh t gi a t ng đơi nút m ng Bài tốn tìm đư ng ng n nh t đư c gi i b ng thu t toán dán nhãn c a Dijkstra Trang 132 Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 Mơ hình m ng đư ng thư thành ph M ng ñư ng thư thành ph m t đ th đ nh c a bưu c c Hai ñ nh c a ñ th s ñư c n i k t v i b ng cung liên k t n u gi a chúng có n đư ng Trong thành ph gi a bưu c c bao gi có đư ng thư, nên đ th đư c k t n i theo ki u ñi m n i ñi m ð th m ng ñư ng thư thành ph m t đ th có hư ng kho ng cách i t i j j t i i có th khơng trùng (ñư ng m t chi u) Giá tr c a cung ñư c bi u di n b ng kho ng cách ho c th i gian v n chuy n gi a nút m ng ho c chi phí v n chuy n gi a nút m ng Ta có chi phí v n chuy n gi a nút m ng là: c j = krij rij : Kho ng cách gi a nút i nút j (c n ñư c xác ñ nh theo kho ng cách th c t ph i l a ch n rij ñư ng ng n nh t, t c ph i tho mãn ñi u ki n rij ≤ rik + rkj m t c nh tam giác nh t ng c nh cịn l i) k: Chi phí v n chuy n l km b ng ô tô Th i gian v n chuy n cung ij Vij : V n t c v n chuy n ô tô t nút i t i nút j t0j : Th i gian trao ñ i t i nút m ng j Khi t ch c m ng ñư ng thư có th s d ng phương th c đư ng th ng, đư ng vịng ho c h n h p M ng đư ng vịng có ưu m s d ng phương ti n v n chuy n hi u qu Do v y thành ph thư ng s d ng đư ng vịng tính kinh t c a Bài tốn Bài tốn t ch c m ng đư ng thư thành ph xác đ nh hành trình c a t ng chi c ô tô ph i qua nút m ng nào, theo trình t đ đ m b o chi phí v n chuy n tồn m ng nh nh t (ho c t ng quãng ñư ng hay t ng th i gian v n chuy n nh nh t) ñ ng th i tho mãn ràng bu c v th i gian v n chuy n c a t ng ô tô dung lư ng v n chuy n c a t ng tơ Trang 133 Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 Trong h th ng khai thác t p trung t n t i m t Bưu ñi n trung tâm nh t N u chia nút m ng làm hai lo i ngu n đích, nút m ng trung tâm s ngu n, nút m ng l i s đích ho c ngư c l i Trong mơ hình v n chuy n bưu g i thành ph , ñ nh ñ th ñư c ñ c trưng b i s lư ng bưu g i mà c n nh n đư c t qi ho c ngư c l i c n g i ñi ri Trong ñó: 0: nút ngu n i = l ÷ N : đích Trong h th ng khai thác phân tán đ th s đư c chia thành ñ th con, m i m t ñ th ch có m t nút m ng ngu n nh t vi c gi i toán th c t gi i t ng toán N u m ng v n chuy n thành ph ch y u b ng ô tô, ta gi s : M: s tơ tồn m ng Qj - dung lư ng c a j ô tô, ph thu c vào lo i ô tô T - th i gian v n chuy n t i ña cho phép m t ñư ng thư T ñư c xác ñ nh d a ñ nh m c (T = gi ) Qj = (Pj / b, Vj / d) Trong Pj : t i tr ng c a ô tô; Vj : th tích v n chuy n c a tơ; b: Kh i lư ng trung bình c a túi thư; d: th tích trung bình c a túi thư Mơ hình tốn h c Gi s g i xijk n c n tìm, xijk = n u tun vịng k, đ nh j s đư c t i sau ñ nh i, Xijk = trư ng h p ngư c l i, mơ hình tốn h c c a tốn m ng đư ng thư thành ph là: Trang 134 Giáo trình TỐN R I R C B môn Công ngh ph n m m - 2010 Bi n Xijk c n tho mãn ràng bu c sau: j=0÷N (1) k = ÷ M, p = ÷ N (2) k=1÷M (3) k=1÷M (4) Trong ñó t0i : th i gian trao ñ i t i nút m ng i (l): Do m i ñ nh ñ th ch thu c m t n ñư ng vòng; (2): ð i v i m i m t ñ nh, s lư ng cung ñi vào ñi ph i b ng t i m t ñ nh; (3): Ràng bu c v dung lư ng c a ô tô; (4): Ràng bu c v th i h n v n chuy n c a t ng tơ ðây tốn t ng quát v m ng v n chuy n thư thành ph Bài tốn tìm hành trình c a bưu tá qua n ñi m trư ng h p riêng ch có n ñư ng vòng qua n ñi m (M=1), tốn c n xác đ nh M n ñư ng cho M ô tô c n tho mãn h n ch (ràng bu c) v ch tiêu th i gian dung lư ng v n chuy n c a tơ Trang 135 Giáo trình TỐN R I R C B mơn Cơng ngh ph n m m - 2010 TÀI LI U THAM KH O [1] Lý thuy t t h p đ th , Ngơ ð c Tân, Vi n Tốn H c, NXB ð i h c Qu c Gia Hà N i, 2003 [2] Toán r i r c, Nguy n ð c Nghĩa, Nguy n Tô Thành, NXB Giáo d c, Hà n i 1997 [3] Lý thuy t ñ th , ð ng Huy Ru n, NXB ðHQG, 1997 [4] Discrete Mathematics and Its Applications, 6th Edition, Kenneth H Rosen, McGraw Hill, 2007 [5] Handbook of Discrete and Combinatorial Mathematics, Kenneth H.Rosen (chief of editor), CRC Press, 2000 Trang 136 ... .20 2. 1 M t s phương pháp bi u di n ñ th máy tính 20 2. 2.1 Ma tr n k Ma tr n tr ng s 20 2. 2 .2 Danh sách c nh (cung) 22 2. 2.3 Danh sách k .23 Bài ð... cơng th c: TP2 T= PTP; TP2 T= P2 ; PT2 T= T2 ; P5 =T5 =1; PT2 P=TPT; Do nên ta có 1=P5 = P2 P3 =( TP3 T) P3 =( TP3 )2 =[T(TP3 T)P] =[ T3 P3TPTP ]2 = =TTTPPPTPTPTTTPPPTPTP Tích cu i g m 20 ch cái,... có deg-(a)=1, deg-(b) =2, deg-(c) =2, deg-(d) =2, deg-(e) = deg+(a)=3, deg+(b)=1, deg+(c)=1, deg+(d) =2, deg+(e) =2 Trang 14 Giáo trình TỐN R I R C B môn Công ngh ph n m m - 20 10 Do m i cung (u, v)