Tiểu luận môn toán ứng dụng Chu trình Euler và bài toán người đưa thư

30 1.9K 13
Tiểu luận môn toán ứng dụng Chu trình Euler và bài toán người đưa thư

Đ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

MỤC LỤC GIỚI THIỆU CHƯƠNG ĐẠI CƯƠNG VỀ ĐỒ THỊ 1.1 Giới thiệu 1.2 Định nghĩa đồ thị .4 1.3 Một số thuật ngữ 1.4 Đường đi, chu trình đồ thị liên thơng 1.5 Biểu diễn đồ thị máy tính CHƯƠNG CHU TRÌNH EULER VÀ BÀI TỐN NGƯỜI ĐƯA THƯ 2.1 Định nghĩa 2.2 Điều kiện cần đủ 2.2.1 Định lý (Định lý Euler) 2.3 Các thuật tốn tìm chu trình Euler 10 2.4 Thiết kế cấu trúc liệu giải thuật tìm đường đi, chu trình Euler .12 2.5 Bài toán người đưa thư 14 2.5.1 Phát biểu toán .14 2.5.2 Giải thuật 14 2.5.3 Giải thuật mịn 15 CHƯƠNG III CÀI ĐẶT BÀI TOÁN NGƯỜI ĐƯA THƯ 18 3.1 Tìm đường đi, chu trình Euler 18 3.2 Giải toán người đưa thư 21 KẾT LUẬN .29 TÀI LIỆU THAM KHẢO 30 Toán ứng dụng Chu trình Euler tốn người đưa thư GIỚI THIỆU Lý thuyết đồ thị ngành khoa học phát triển từ lâu lại có nhiều ứng dụng đại Những ý tưởng đưa từ kỷ XVIII nhà toán học Thụy sĩ tên Leonhard Euler Lý thuyết đồ thị dùng để giải toán nhiều lĩnh vực khác Chúng ta xác định hai máy tính mạng trao đổi thơng tin với hay khơng nhờ mơ hình đồ thị mạng máy tính Đồ thị có trọng số cạnh sử dụng để giải tốn như: Tìm đường ngắn hai thành phố mạng giao thơng Chúng ta cịn sử dụng đồ thị để giải toán 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… Ngày Lý thuyết đồ thị phát triển thành ngành Toán học ứng dụng có vị trí đặc biệt quan trọng mặt lý thuyết ứng dụng Trong nội dung tiểu luận nhóm chúng tơi xin trình bày “Chu trình Euler tốn người đưa thư” Đồng Hới, tháng 05 năm 2012 Tiểu luận nhóm Trang Tốn ứng dụng Chu trình Euler tốn người đưa thư - Đề tài: Chu trình Euler tốn người đưa thư - Nhóm: người STT Họ tên Nguyễn Trần Sỹ Võ Phi Thanh Nguyễn Thị Hà Phương Hoàng Cơng Tiến Hồng Đình Tuyền Nguyễn Duy Linh Tiểu luận nhóm Cơng việc (theo mục lục) Chương 2.12.4 2.5 2.5 Chương Chương Chữ ký Nhận xét giáo viên Trang Tốn ứng dụng Chu trình Euler toán người đưa thư CHƯƠNG ĐẠI CƯƠNG VỀ ĐỒ THỊ 1.1 Giới thiệu Lý thuyết đồ thị lĩnh vực nghiên cứu có từ lâu có nhiều ứng dụng ngành cơng nghệ thông tin Những tư tưởng lý thuyết đồ thị đề xuất vào năm đầu kỷ 18 nhà toán học lỗi lạc người Thụy Sỹ: Leonhard Euler Chính ơng người sử dụng đồ thị để giải toán tiếng cầu thành phố Konigberg Những ứng dụng đồ thị như: - Xác định tính liên thơng mạng máy tính: hai máy tính truyền liệu cho khơng - Tìm đường ngắn mạng giao thông -… 1.2 Định nghĩa đồ thị Định nghĩa 1.2.1 Một đơn đồ thị vô hướng G=, đó: - V ≠ Ø tập hợp hữu hạn gồm đỉnh đồ thị - E tập hợp cặp khơng có thứ tự gồm hai phần tử khác V gọi cạnh Như vậy, theo định nghĩa trên, đơn đồ thị khơng thể có cặp cạnh nối cặp đỉnh (do E tập hợp nên có cặp trùng nhau), cạnh khơng phân biệt thứ tự nên cạnh [u,v] cạnh [v,u] coi cạnh nhất, điều phù hợp với việc biểu diễn đường chiều, hiển nhiên khơng có cặp [u,u] E Ví dụ 1.1 a Đơn đồ thị vơ hướng b Không phải đơn đồ thị vô hướng có cặp cạnh nối cặp đỉnh c Khơng phải đơn đồ thị vơ hướng có cạnh nối đỉnh với Định nghĩa 1.2.2 Đa đồ thị vơ hướng G=, - V ≠ Ø tập hợp hữu hạn gồm đỉnh đồ thị - E họ cặp khơng có thứ tự V gọi cạnh Định nghĩa 1.2.3 Đơn đồ thị có hướng G=, đó: - V ≠ Ø tập hợp hữu hạn gồm đỉnh đồ thị - E tập hợp cặp có thứ tự gồm hai phần tử khác V gọi cung Ví dụ: Tiểu luận nhóm Trang Tốn ứng dụng Chu trình Euler tốn người đưa thư Định nghĩa 1.2.4 Đa đồ thị có hướng G=, - V ≠ Ø tập hợp hữu hạn gồm đỉnh đồ thị - E họ cặp có thứ tự V gọi cung Các cung nối cặp đỉnh gọi cung song song Ví dụ: Chú ý: - Đồ thị sau coi đơn đồ thị có hướng e1và e2, e3 e4 cung song song (do khác hướng) 1.3 Một số thuật ngữ Định nghĩa 1.3.1 Cho đồ thị vô hướng G= - Hai đỉnh u v đồ thị gọi kề (u,v) cạnh đồ thị - Nếu e=(u,v) cạnh đồ thị ta nói cạnh liên thuộc với hai đỉnh u v Cạnh nói nối đỉnh u v Đỉnh u v gọi đỉnh đầu cạnh e Định nghĩa 1.3.2 Cho đồ thị vô hướng G= Bậc đỉnh v đồ thị, ký hiệu deg(v), số cạnh liên thuộc với Đỉnh có bậc gọi đỉnh lập, đỉnh có bậc gọi đỉnh treo Định nghĩa 1.3.3 Cho đồ thị có hướng G= - Hai đỉnh u v đồ thị gọi kề (u,v) cung đồ thị - Nếu e=(u,v) cung đồ thị ta nói cung khỏi đỉnh u vào vào đỉnh v Đỉnh u gọi đỉnh đầu cung e đỉnh v gọi đỉnh cuối cung e 1.4 Đường đi, chu trình đồ thị liên thơng Định nghĩa 1.4.1 Cho đồ thị *G = (* ký hiệu cho dùng chung đồ thị vơ hướng có hướng) Đường độ dài n từ đỉnh u đến đỉnh v (n số nguyên dương) dãy: Tiểu luận nhóm Trang Tốn ứng dụng Chu trình Euler tốn người đưa thư * Ta dùng thuật ngữ đồ thị để chung cho đồ thị vơ hướng đồ thị có hướng Đường nói cịn biểu diễn dãy cạnh/cung: Đỉnh u gọi đỉnh đầu đường đi, đỉnh v gọi đỉnh cuối đường Đường có đỉnh đầu đỉnh cuối trùng (u=v) gọi chu trình Ví dụ: Cho đồ thị vô hướng sau: Một số đường từ đỉnh đến đỉnh 7: - Đường d1: (đường độ dài 3) - Đường d2: (đường độ dài 6) Một số chu trình đồ thị trên: - Chu trình C1: (chu trình có độ dài 3) - Chu trình C2: (chu trình có độ dài 7) Định nghĩa 1.4.2 Đồ thị vô hướng G = gọi liên thông tìm đường hai đỉnh Ví dụ: Xét đồ thị vơ hướng sau: Trong đồ thị G1là đồ thị liên thơng, cịn G2 khơng phải đồ thị liên thơng hai đỉnh khơng tồn đường Định nghĩa 1.4.3 Cho đồ thị G = (V,E) Đồ thị H = gọi đồ thị G W € V F € E Trong trường hợp đồ thị vơ hướng G khơng liên thơng, phân thành đồ thị độc lập chúng liên thông Mỗi đồ thị gọi thành phần liên thông G Định nghĩa 1.4.4 Cho đồ thị vô hướng G = Đỉnh v đồ thị gọi đỉnh rẽ nhánh việc loại bỏ v cạnh liên thuộc với khỏi đồ thị làm tăng số thành phần liên thông đồ thị Cạnh e đồ thị gọi cầu việc loại bỏ khỏi đồ thị làm tăng số thành phần liên thông đồ thị Ví dụ: Xét đồ thị sau: Tiểu luận nhóm Trang Tốn ứng dụng Chu trình Euler toán người đưa thư Trong đồ thị trên, đỉnh đỉnh rẽ nhánh việc loại đỉnh với cạnh (2,3), (2,1), (2,6) làm đồ thị có thành phần liên thơng Cạnh (2,3) cầu Các cạnh cịn lại khơng phải cầu Đối với đồ thị có hướng khái niệm liên thơng khó thỏa mãn cung bị hạn chế chiều Từ đó, bên cạnh khái niệm liên thơng đề cập đồ thị vô hướng, ta đưa thêm khái niệm liên thông nhẹ hơn: liên thông yếu Định nghĩa 1.4.5 Cho G = đồ thị có hướng a G gọi liên thơng mạnh ln tìm đường hai đỉnh b G gọi liên thơng yếu đồ thị vơ hướng tương ứng với (đồ thị vơ hướng có cách biến cung chiều thành cạnh hai chiều) đồ thị vô hướng liên thông 1.5 Biểu diễn đồ thị máy tính Định nghĩa 1.5.1.1 Cho đồ thị G = , với tập đỉnh V = {v1, v2, , vn} Ta gọi ma trận kề đồ thị ma trận A, kích thước nxn xác định sau: Ví dụ: a Xét đồ thị vơ hướng sau: Ma trận kề đồ thị là: Tiểu luận nhóm Trang Tốn ứng dụng Chu trình Euler toán người đưa thư CHƯƠNG CHU TRÌNH EULER VÀ BÀI TỐN NGƯỜI ĐƯA THƯ 2.1 Định nghĩa Cho đồ thị G=(V,E), V tập hợp đỉnh, E tập hợp cạnh Chu trình Euler chu trình qua cạnh đỉnh đồ thị, cạnh không lần Đường Euler đường qua cạnh đỉnh đồ thị, cạnh không lần Cho đồ thị có hướng G=(V,E) Chu trình có hướng Euler chu trình có hướng qua cung đỉnh đồ thị, cung không lần Đường có hướng Euler đường có hướng qua cung đỉnh đồ thị, cung khơng q lần Đồ thị chứa chu trình Euler gọi Đồ thị Euler 2.2 Điều kiện cần đủ 2.2.1 Định lý (Định lý Euler) Đồ thị G có chu trình Euler G liên thơng đỉnh có bậc chẵn khác Chứng minh (i) (): Giả sử G có chu trình Euler v đỉnh G Khi chu trình Euler đến v theo cạnh e khỏi v cạnh e’  e Do bậc v phải số chẵn G hiển nhiên liên thông (ii) (): Giả sử G liên thơng đỉnh có bậc chẵn khác Ta chứng minh G có chu trình Euler quy nạp theo số cạnh m G  m = 1: Vì G liên thông đỉnh bậc chẵn nên G có đỉnh khuyên Khuyên tạo thành chu trình Euler  Giả sử G có m cạnh, số đỉnh n > đồ thị liên thơng có số cạnh nhỏ m với đỉnh bậc chẵn có chu trình euler + Trường hợp n = hiển nhiên tồn chu trình Euler + Trường hợp n > Vì bậc đỉnh chẵn  2, chọn đỉnh a, b, c với cạnh x = (a,b), y = (a,c) - Giả sử G chứa cạnh z = (b,c) Xét đồ thị G’ thu từ G cách loại bỏ ba cạnh x,y,z Sẽ xảy ba khả sau: Tiểu luận nhóm Trang Tốn ứng dụng Chu trình Euler tốn người đưa thư  G’ liên thơng Vì số cạnh G’ nhỏ m đỉnh có bậc chẵn nên theo giả thiết quy nạp tồn chu trình Euler C’ G’ Nối chu trình (x,y,z) với C’ ta thu chu trình Euler C G  G’ có thành phần liên thơng G G2 Khơng tính tổng qt giả sử G1 chứa a, G2 chứa b c G có chu trình Euler C 1, G2 có chu trình Euler C2 Ta xây dựng chu trình Euler C G sau Xuất phát từ đỉnh a theo chu trình C1 quay a, sau theo cạnh x = (a,b) đến đỉnh b, từ b theo chu trình C2 quay b, sau theo cạnh z = (b,c) y = (c,a) quay a 2.2.2 Định lý Cho đồ thị G có k đỉnh bậc lẻ Khi số đường tối thiểu phủ G k/2 Chứng minh Ta biết số đỉnh bậc lẻ chẵn, k=2n Chứng minh quy nạp theo n (i) n=1: Nối đỉnh bậc lẻ với cạnh z ta thu đồ thị G’ thoả định lý Euler Như G’ có chu trình Euler C’ Bỏ cạnh z C’ ta thu đường Euler phủ G (ii) Giả sử G có số đỉnh bậc lẻ 2n định lý với k dO(v)} T = {u  V : dI(v) < dO(v)} Từ bổ đề bắt tay ta có d vV O (v ) =  d (v )    d (v )  d I I vV O vS (v )  =  d O (v )  d I ( v )  vT Ta ký hiệu k=   d (v )  d I vS O (v )  =  d O (v )  d I ( v )  vT 2.2.3 Định lý Tiểu luận nhóm Trang Tốn ứng dụng Chu trình Euler tốn người đưa thư (i) Đồ thị có hướng G có chu trình có hướng Euler G liên thơng yếu đỉnh có nửa bậc vào nửa bậc ra, tức S =  T =  (ii) Nếu S  , số đường có hướng tối thiểu phủ G k Các đường nối đỉnh T đến đỉnh tập S Ví dụ: Đồ thị A B D C Đồ thị có chu trình Euler: (A,B,C,D,A) 2.3 Các thuật tốn tìm chu trình Euler 2.3.1 Thuật toán + Đầu vào Đồ thị G  , khơng có đỉnh lập + Đầu Chu trình Euler C G, kết luận G khơng có chu trình Euler + Phương pháp (1) Xuất phát: Đặt H := G, k := 1, C :=  Chọn đỉnh v  G (2) Xuất phát từ v, xây dựng chu trình Ck H Nếu tồn Ck , nối Ck vào C, C := C  Ck Sang bước (3) Nếu khơng tồn Ck , kết luận khơng có chu trình Euler, kết thúc (3) Loại khỏi H chu trình Ck Nếu H chứa đỉnh lập loại chúng khỏi H Sang bước (4) (4) Nếu H = , kết luận C chu trình Euler, kết thúc Ngược lại sang bước (5) (5) Nếu H C khơng có đỉnh chung, kết luận khơng có chu trình Euler, kết thúc Nếu H C có đỉnh chung Chọn v đỉnh chung H C Đặt k := k+1 Quay lại bước (2) Ví dụ Cho G đồ thị Thanh mã tấu Mohammed a e b Tiểu luận nhóm c d j f i h g k Trang Toán ứng dụng Chu trình Euler tốn người đưa thư //Lưu số thứ tự cặp đỉnh chọn vào mảng C C[DSC]=k; If (số cặp đỉnh lẻ = đếm số cặp) then If Tổng k/c

Ngày đăng: 24/03/2015, 08:51

Từ khóa liên quan

Mục lục

  • CHƯƠNG 1. ĐẠI CƯƠNG VỀ ĐỒ THỊ

  • CHƯƠNG 2. CHU TRÌNH EULER VÀ BÀI TOÁN NGƯỜI ĐƯA THƯ

    • 2.1. Định nghĩa

    • 2.2. Điều kiện cần và đủ

    • 2.2.1. Định lý 1 (Định lý Euler)

    • 2.3. Các thuật toán tìm chu trình Euler

    • 2.4. Thiết kế cấu trúc dữ liệu và giải thuật tìm đường đi, chu trình Euler

    • 2.5. Bài toán người đưa thư

    •  3.1. Tìm đường đi, chu trình Euler

    • 3.2. Giải bài toán người đưa thư

Tài liệu cùng người dùng

Tài liệu liên quan