Tải bản đầy đủ (.doc) (25 trang)

Nhom2 ly thuyet do thi chu trình đường đi eluer và ứng dụng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (230.14 KB, 25 trang )

Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

MỤC LỤC.
LỜI MỞ ĐẦU......................................................................................................1
CHƯƠNG 1
SƠ LƯỢC VÊ LICH SỬ....................................................3
CHƯƠNG 2 ĐẠI CƯƠNG VỀ ĐỒ THỊ VÔ HƯỚNG..................................6
1. Đồ thị vô hướng:...........................................................................................6
2. Bậc của đồ thị:...............................................................................................7
3.Đường đi, chu trình, tính liên thông:.............................................................7
4. Biểu diễn đồ thị vô hướng:............................................................................9
CHƯƠNG 3 CHU TRÌNH VÀ ĐƯỜNG ĐI ELUER....................................11
1. Chu trình Eluer:...........................................................................................11
2. Các thuật toán tìm chu trình Euler:..............................................................14
CHƯƠNG 4
BÀI TOÁN ỨNG DỤNG........................................................18
1. Bài toán Domino:........................................................................................18
2. Bài bài toán người phát thư Trung Hoa:......................................................19
3.Bài toán sắp xếp chỗ ngồi:..........................................................................20
KẾT LUẬN........................................................................................................23
Tài liệu tham khảo

24

Nhóm thực hiện: Nhóm 2

1



Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

LỜI MỞ ĐẦU
Lý thuyết đồ thị là một lĩnh vực nghiên cứu đã có từ lâu đời và có nhiều
ứng dụng hiện đại. Những tư tưởng cơ bản của lý thuyết đồ thị đươc đề xuất từ
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ĩ Leonhard
Euler. Chính ông là người đã sử dụng đồ thị để giải bài toán nổi tiếng về các cái
cầu ở thành phố Konigsberg. Từ đó lý thuyết đồ thị ngày càng khẳng định được
vị trí quan trọng trong việc áp dụng để giải quyết các bài toán thực tế nhờ vào
việc tìm ra ngày càng nhiều các định lý, công thức và thuật toán. Lý thuyết đồ thị
không những có nhiều ứng dụng trong thực tế mà còn là công cụ đắc lực cho
ngành công nghệ thông tin. Nó giúp cho chúng ta mô tả một cách dễ dàng các
bài toán phức tạp cụ thể, để từ đó ta có thể mã hoá các bài toán đó vào máy tính.
Ngoài ra lý thuyết đồ thị được sử dụng để giải quyết các bài toán trong nhiều
lĩnh vực khác nhau. Hiện nay có rất nhiều tài liệu, sách, giáo trình đã viết về lý
thuyết đồ thị với những nội dung, đầy đủ giúp cho những người muốn nghiên
cứu về lý thuyết đồ thị tham khảo.
Lý do của sự quan tâm ấy chính là sự vận dụng rộng rãi của đồ thị trong rất
nhiều lĩnh vực khác nhau. Chẳng hạn, đồ thị có thể xác định các mạch vòng
trong vấn đề giải tích mạch điện. Chúng ta có thể phân biệt các hợp chất hóa học
hữu cơ khác nhau với cùng công thức phân tử nhưng khác nhau về cấu trúc phân
tử nhờ đồ thị. Chúng ta có thể xác định xem hai máy tính trong mạng có thể trao
đổi thông tin được với nhau hay không nhờ mô hình đồ thị mạng máy tính. Đồ
thị có trọng số trên các cạnh có thể sử dụng để giải các bài toán như: Tìm đường
đi ngắn nhất giữa hai thành phố trong một mạng giao thông. Chúng ta cũng còn
sử dụng đồ thị để giải các bài toán về lập lịch, thời khóa biểu, và phân bố tần số

cho các trạm phát thanh truyền hình . Tuy nhiên, đối với những bài toán trong
thực tế, lượng dữ liệu vào cũng như dữ liệu ra là tương đối lớn. Một số bài toán
có số lượng các đỉnh đến hàng nghìn, tương ứng với nó là số lượng kết quả đưa
Nhóm thực hiện: Nhóm 2

2


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

ra có thể lên đến hàng trăm nghìn, ví dụ như bài toán kiểm thử tốc độ tính toán
của các thuật toán dùng trong các bộ tìm kiếm trên mạng. Với một đồ thị như
trên, lượng đỉnh và cạnh của đồ thị là lớn cho nên ta cần có được cách tổ chức dữ
liệu cho hợp lý cho bài toán là một vấn đề cần đặt ra..Xuất phất từ đó nhóm tôi
chọn đề tài “ Đường đi Eluer và ứng dụng”.
Tiểu luận gồm các nội dung sau :
 Chương 1 : Sơ lược về lịch sử
 Chương 2 : Đại cương về đồ thị vô hướng – định nghĩa, ví dụ về đồ thị
vô hướng.
 Chương 3: Chu trình về đường đi Eluer – định nghĩa,ví dụ về đường đi
Eluer.
 Chương 4 : Một số bài toán ứng dụng về chu trình, đường đi Eluer.



STT
1

2
3
4
5

Nhóm thực hiện : Nhóm 1

Họ và tên
Bùi Quốc Thịnh
Phạm Lê Kim Thanh
Lê Thị Thi
Võ Thị Ni Na
Lê Thị Thu Vân

Nhóm thực hiện: Nhóm 2

Công việc
Chương 2,3
Chương 3,4
Chương 1,3
Chương 2,4
Chương 2,3

Chữ ký

Nhận xét của GV

3



Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

CHƯƠNG 1

GVHD: Trần Qu ốc

SƠ LƯỢC VÊ LICH SỬ

Có thể nói lý thuyết đồ thị bắt đầu với tư cách là một ngành Toán học bằng
bài báo nổi tiếng của nhà toán học Euler năm 1736 và những cái cầu ở
Konigsberg. Mãi hơn 100 năm sau, tức là giữa thế kỷ 19, người ta mới chú ý đến
các vấn đề lý thuyết đồ thị, đăc biệt ở nước Anh.
Có nhiều lý do dẫn đến sự hồi sinh của Lý thuyết đồ thị. Trước hết đó là các
nguyên cứu về mạng điện và các mô hình tinh thể và cấu trúc phân tử. Sự phát
triển của Logic hình thức dẫ đến việc nghiên cứu quan hệ hai ngôi dưới dạng đồ
thị. Nhiều bài toán đố vui nổi tiếng cũng được phát biểu dưới dạng đồ thị.
Bài toán nổi tiếng nhất là Giả thiết bốn mùa do DeMorgan đưa ra lần đầu
tiên năm 1850. Có thể nói không có bài toán đồ thị nào làm tốn nhiều giấy mực
và có nhiều đóng góp cho lý thuyết đồ thị như bài toán giả thuyết bốn mùa.
Ngày nay Lý thuyết đồ thị đã phát triển thành một ngành Toán học có vị trí
đặc biệt quan trong về mặt lý thuyết cũng như ứng dụng. Lý thuyết đồ thị là kiến
thức cơ sở cho nhiều ngành khoa học kỹ thuật khác nhau như Điện tử, Hóa học,
Ngôn ngữ học, Kinh tế học, Máy tính…
Bài toán 7 cây cầu ở Königsberg: Thành phố Königsberg thuộc Phổ (bây
giờ gọi là Kaliningrad thuộc Cộng hòa Liên bang Nga) được chia thành bốn
vùng bằng các nhánh sông Pregel. Các vùng này gồm 2 vùng bên bờ sông, đảo
Kneiphof và một miền nằm giữa 2 nhánh của sông Pregel. Vào thế kỷ thứ XVIII,
người ta đã xây 7 cây cầu nối các vùng lại với nhau như sơ đồ sau:


Nhóm thực hiện: Nhóm 2

4


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

Vào chủ nhật, người dân ở đây thường đi bộ dọc theo các vùng trong
thành phố. Họ tự hỏi “Có thể xuất phát tại một điểm nào đó trong thành phố, đi
qua tất cả 7 cây cầu, mỗi cây một lần, rồi trở về điểm xuất phát được không?”
Nhà toán học Thụy Sĩ Leonard Euler đã nghiên cứu giải bài toán này. Lời
giải của ông được công bố năm 1736. Bài toán này có thể được coi là một trong
những ứng dụng đầu tiên của lý thuyết đồ thị.
Ta có thể xây dựng đồ thị G = (V, E) mô tả bài toán như sau:
+ Đỉnh: Lấy các điểm trên mặt phẳng hay trong không gian tương
ứng với các vùng đất trong sơ đồ. Đối tượng của bài toán ở đây là một vùng
đất trong sơ đồ. Vậy, mỗi đỉnh

biểu diễn cho một vùng đất. Đồ thị G sẽ

có 4 đỉnh A, B, C, D tương ứng với 4 vùng đất.
Euler đã nghiên cứu bài toán này, mô hình nó
bằng một đa đồ thị, bốn vùng được biểu diễn bằng 4
đỉnh, các cầu là các cạnh như đồ thị sau:
+ Cạnh: Trong đồ thị G các đỉnh




được nối với nhau bằng một

cạnh e đại diện cho một chiếc cầu nối giữa hai vùng đất. Đồ thị G sẽ có 7 cạnh
tương ứng với 7 chiếc cầu nối giữa các vùng đất trong sơ đồ.

Nhóm thực hiện: Nhóm 2

5


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

Bài toán tìm đường đi qua tất cả các cầu mỗi cầu không quá một lần có
thể được phát biểu lại bằng mô hình này như sau: “Tồn tại hay không một chu
trình đơn trong đa đồ thị G= (V, E) có chứa tất cả các cạnh?”

Nhóm thực hiện: Nhóm 2

6


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

CHƯƠNG 2


GVHD: Trần Qu ốc

ĐẠI CƯƠNG VỀ ĐỒ THỊ VÔ HƯỚNG

1. Đồ thị vô hướng:
Định nghĩa:
Đồ thị vô hướng G = (V, E) gồm một tập V các đỉnh và E các cạnh.
Mỗi cạnh e �E được liên kết với một cặp đỉnh v, w ( không kể thứ tự) như
hình sau :
V

e

W

Ví dụ 1: Hình a. là đồ thị 4 đỉnh và 7 cạnh. Hình b. là 5 đỉnh và 5 cạnh

Hình a

Hình b

Cho đồ thị G = ( V, E).
Nếu cạnh e liên kết đỉnh v, w thì ta nói cạnh e liên thuộc; đỉnh v, w các v,w
liên thuộc cạnh e, các đỉnh v, w là các đỉnh biên của ạnh e và đỉnh v kề đỉnh w.
Nếu chỉ có duy nhất một cạnh e liên kết với cặp đỉnh v, w ta viết e=( v, w).
Nếu e là cung thi v gọi là đỉnh đầu và w gọi là đỉnh cuối của cung e.
Nếu có nhiều cạnh liên kết với cùng một đỉnh thì ta nói đó là các cạnh song
song.
Cạnh có hai đỉnh liên kết trùng nhau gọi là khuyên
Đỉnh không kề với đỉnh khác gọi là đỉnh cô lập

Số đỉnh của một độ thị gọi là bậc của đồ thị, số cạnh hoặc số cung của đồ thị
gọi là cỡ của đồ thị.
Nhóm thực hiện: Nhóm 2

7


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

Đồ thị hữu hạn là đồ thị bậc và cỡ hữu hạn.
Đồ thị đơn là đồ thị không có khuyên và không có cạnh song song.
Đồ thị vô hướng đủ là đồ thị mà mọi cặp đỉnh đều kề nhau.
Đồ thị có hướng đủ là đồ thị có đồ thị có lót đủ.

2. Bậc của đồ thị:
Cho đồ thị G = (V, E).
Định nghĩa:
Giả sử v �V có p khuyên và q cạnh liên thuộc ( không phải khuyên). Khi
đó bậc của đỉnh v là 2p +q và kí hiệu là deg G( v) hoặc đơn giản là deg (v).
Số bậc đỉnh lớn nhất của G kí hiệu là  (G), số bậc đỉnh nhỏ nhất của G kí hiệu là
 (G).

Từ định nghĩa suy ra đỉnh cô lập trong đồ thi đơn là đỉnh có bậc bằng 0.
Đỉnh có bậc bằng 1 gọi là đỉnh treo.
Ví dụ:
v1


v2

v3
v4

v5

v6

v7

Ta có deg(v 1)=7, deg(v2)=5, deg(v3)=3, deg(v4)=0, deg(v5)=4, deg(v6)=1,
deg(v7)=2. Đỉnh v4 là đỉnh cô lập và đỉnh v6 là đỉnh treo.

3. Đường đi, chu trình, tính liên thông:
Định nghĩa 1:
Cho đồ thi G=(V, E)
Dây  từ đỉnh v đến đỉnh w là tập hợp các đỉnh và các cạnh nối tiếp nhau
bắt đầu từ đỉnh v và kết thúc tại đỉnh w.Số cạnh trên  gọi là độ dài của dây  .
Dây  từ đỉnh v đến đỉnh w đọ dài k được biểu diễn như sau
 (v, e1 , v1 , e2 , v 2 ,..., v k  1 , ek , w)

Nhóm thực hiện: Nhóm 2

8


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến


GVHD: Trần Qu ốc

Trong đó vi( i=1,…,k-1) là các đỉnh trên dây và e i (i= 1,…,k-1)là các cạnh
trên dây liên thuộc đỉnh kề trước và sau nó. Các đỉnh và các cạnh trên dây có thể
lặp lại.
Đường đi từ đỉnh v đến đỉnh w là dây từ đỉnh v đến w, trong đó các cạnh
không lặp lại.
Đường đi sơ cấp là đường đi không đi qua một đỉnh quá một lần.
Chú ý: Trong đồ thị n đỉnh, đường đi sơ cấp giữa hai đỉnh khác nhau có nhiều
nhất n-1 cạnh.
Vòng là dây có đỉnh đầu và đỉnh cuối trùng nhau.
Chu trình là đường đi có đỉnh đầu và đỉnh cuối trung nhau.
Chu trình sơ cấplà chu trinh không đi qua một đỉnh quá 1 lần
Ví dụ :
x

y

z

w

v

u

Trong đơn đồ thị trên, x, y, z, w, v, y là đường đi đơn (không sơ cấp) độ
dài 5; x, w, v, z, y không là đường đi vì (v, z) không là cạnh; y, z, w, x, v, u, y là
chu trình sơ cấp độ dài 6.
Định nghĩa 2:

Một đồ thị (vô hướng) được gọi là liên thông nếu có đường đi giữa mọi
cặp đỉnh phân biệt của đồ thị.
Một đồ thị không liên thông là hợp của hai hay nhiều đồ thị con liên
thông, mỗi cặp các đồ thị con này không có đỉnh chung. Các đồ thị con liên
thông rời nhau như vậy được gọi là các thành phần liên thông của đồ thị đang
xét. Như vậy, một đồ thị là liên thông khi và chỉ khi nó chỉ có một thành phần
liên thông.

Nhóm thực hiện: Nhóm 2

9


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

Ví dụ :
x

y

z

a

b

g


v

w

d

c

h

k

u
t

G

i

l

G’

Đồ thị G là liên thông, nhưng đồ thị G’ không liên thông và có 3 thành
phần liên thông.

4. Biểu diễn đồ thị vô hướng:
Định nghĩa:
Cho đồ thị vô hướng G =(V,E) có n đỉnh theo thứ tự v 1,v2,…,vn. Ma trận kề

của đồ thị G là ma trận vuông A= (a ij)mxn, trong đó aij là số cạnh (khuyên) nối vi
với vj.Lưu ý rằng khi tinh bậc của đỉnh mỗi khuyên được tính hai bậc.
Từ định nghĩa suy ra rằng ma trận kề của đồ thị vô hướng luôn đối xứng
qua đường chéo chính
Ví dụ: Đồ thị
v1

v2
v3

v4

v5

có ma trận kề là

V1
0
1
0
0
1

V2
1
0
1
0
1


Nhóm thực hiện: Nhóm 2

V3
0
1
1
0
1

V4
0
0
0
0
1

V5
1
1
1
1
0

10


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc


Mệnh đề. Cho đồ thị G=( V, E) với ma trận kề (aij).Khi đó
n

n

j 1

j 1

deg(vi )  a ij a ij  a ji  aij , vi  V

Chứng minh. Suy ra từ định nghĩa.
Định lý :
Cho đồ thị đơn G=( V, E) có n đỉnh, V={ v1,v2,…,vn} và ma trận kề của đồ thị G
là ma trận A=(aij)nxm. Giả sử Ak= (cij)nxm, k 1.Khi đó cij, i j, là số chiều dài k từ
đỉnh vi đến vj. Đặc biệt phần từ trên ô [i,j], 1 i n , của A2 là bậc của đỉnh vi.
Chứng minh.
Quy nạp
Hệ quả:
Cho đồ thị đơn G=(V, E) có n đỉnh, V={ v 1,v2,…,vn} và ma trận kề của đồ thị G
là ma trận A=(aij)nxm.Kí hiệu
T  A  A 2  ...  A n  1

Khi đó đồ thị G lien thông khi và chỉ khi các phần từ ngoài đường chéo chính
của ma trận T đều lớn hơn 0
Chứng minh
Sử dụng định lí ở mục trên, suy ra đồ thị G liên thông khi và chỉ khi các cấp đỉnh
đều có đường đi sơ cấp nối chúng với nhau. Mặt khác các đường đi sơ cấp có đọ
dài không quá (n-1). Từ đó áp dụng định lí trên ta suy được điều phải chứng

minh.
Chú ý. Nếu đồ thị có 2 thành phần lien thông thì ta có thể đánh số lại các đỉnh và
 A1

ma trận kề có dạng 
0

0
A2 

Nếu đồ thị lưỡng phân thì ta có thher đánh số lại các đỉnh và ma trận kề
 0

có dạng  T
A

A
0 

Nhóm thực hiện: Nhóm 2

11


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

CHƯƠNG 3

GVHD: Trần Qu ốc


CHU TRÌNH VÀ ĐƯỜNG ĐI ELUER

Lý thuyết về chu trình. Đường đi Euler đã có từ lâu và được nguyên cứu
nhiều ta có thể bắt gặp bài toán trong thực tiễn mà có thể sử dụng lý thuyết về
chu trình, đường đi Euler để giải quyết, ví dụ như sử lí lý thuyết đường đi, chu
trình Eluer để tìm hành trình đường đi cho người phát thư, cho xe rửa đường…
sao cho hành trình tối ưu.

1. Chu trình Eluer:
Định nghĩa:
Cho đồ thị G=(V,E).
Chu trình Euler là chu trình qua mọi cạnh G và mọi đỉnh đồ thị, mỗi cạnh
không đi quá 1 lần.
Đường Euler trong đồ thị G=(x,u) là đường đi qua tất cả các cạnh của đồ
thị, mỗi cạnh đi qua đúng một lần.
Cho đồ thị có hướng G=(V,E).
Chu trình có hướng Euler là chu trình có hướng qua mọi cung và mọi
đỉnh đồ thị, mỗi cung không đi quá 1 lần.
Đồ thị chứa chu trình Euler gọi là Đồ thị Euler.
Ví dụ. Đồ thị
1

2

3
4

5


6

có chu trình Euler
Nhóm thực hiện: Nhóm 2

12


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

(1, 2, 4, 3, 6, 5, 2, 3, 1)
 Định lý 1 (Định lý Euler)
Đồ thị G có chu trình Euler khi và chỉ khi G liên thông và mọi đỉnh có bậc
chẵn khác 0.
Chứng minh
(i)

(): Giả sử G có chu trình Euler và v là đỉnh bất kỳ của G. Khi đó chu
trình Euler đến v theo cạnh e thì ra khỏi v bằng cạnh e’  e. Do đó bậc của
v phải là số chẵn. G hiển nhiên là liên thông.

(ii)

(): Giả sử G liên thông và mọi đỉnh có bậc chẵn khác 0. Ta chứng minh
G có chu trình Euler quy nạp theo số cạnh m của G.
 m = 1: Vì G liên thông và mọi đỉnh bậc chẵn nên G chỉ có 1 đỉnh và 1
khuyên. Khuyên đó cũng tạo thành chu trình Euler.


 Giả sử G có m cạnh, số đỉnh n > 0 và mọi đồ thị liên thông có số cạnh nhỏ hơn
m với mọi đỉnh bậc chẵn đều có chu trình euler.
+ Trường hợp n = 1 hoặc 2 thì hiển nhiên tồn tại chu trình Euler .
+ Trường hợp n > 2. Vì bậc của các đỉnh chẵn  2, bao giờ cũng chọn được 3
đỉnh a, b, c với các cạnh x=(a,b), y=(a,c).
-

Giả sử G chứa cạnh z=(b,c).
Xét đồ thị G’ thu được từ G bằng cách loại bỏ ba cạnh x,y,z. Sẽ xảy

ra 1 trong ba khả năng sau:
. G’ liên thông. Vì số cạnh của G’ nhỏ hơn m và các đỉnh vẫn có bậc
chẵn nên theo giả thiết quy nạp tồn tại chu trình Euler C’ của G’. Nối
chu trình con (x,y,z) với C’ ta thu được chu trình Euler C của G.
. G’ có 2 thành phần liên thông G1 và G2. Không mất tính tổng quát
giả sử G1 chứa a, G2 chứa b và c. G1 có chu trình Euler C1, G2 có chu
trình Euler C2. Ta xây dựng chu trình Euler C của G như sau. Xuất phát
từ đỉnh a đi theo chu trình C1 quay về a, sau đó đi theo cạnh x=(a,b) đến
Nhóm thực hiện: Nhóm 2

13


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

đỉnh b, từ b đi theo chu trình C 2 quay về b, sau đó đi theo cạnh z=(b,c)

và y=(c,a) quay về a.
. G’ có 3 thành phần liên thông G1 , G2 và G3. Không mất tính tổng
quát giả sử G1 chứa a, G2 chứa b và G3 chứa c. G1 có chu trình Euler
C1, G2 có chu trình Euler C2 , G3 có chu trình Euler C3. Ta xây dựng chu
trình Euler C của G như sau. Xuất phát từ đỉnh a đi theo chu trình C 1
quay về a, sau đó đi theo cạnh x=(a,b) đến đỉnh b, từ b đi theo chu trình
C2 quay về b, sau đó đi theo cạnh z=(b,c) đến đỉnh c, từ c đi theo chu
trình C3 quay về c, sau đó đi theo cạnh y=(c,a) quay về a.
-

Giả sử G không chứa cạnh z=(b,c)
Xét đồ thị G’ thu được từ G bằng cách loại bỏ 2 cạnh x,y và thêm

cạnh z. Sẽ xảy ra 1 trong hai khả năng sau:
. G’ liên thông. Vì số cạnh của G’ nhỏ hơn m và các đỉnh vẫn có bậc
chẵn nên theo giả thiết quy nạp tồn tại chu trình Euler C’ của G’. Thay
cạnh z C’ bằng cạnh x và y ta thu được chu trình Euler C của G.
. G’ có 2 thành phần liên thông G1 và G2. Không mất tính tổng quát
giả sử G1 chứa a, G2 chứa b và c. G1 có chu trình Euler C1, G2 có chu
trình Euler C2. Ta xây dựng chu trình Euler C của G như sau. Thay cạnh
zC2 bằng các cạnh x và y ta có chu trình C 2’. Nối C2’ với C1 ta thu
được chu trình Euler C của G.
 Định lý 2
Cho đồ thị G có k đỉnh bậc lẻ. Khi đó số đường đi tối thiểu phủ G là k/2.
Chứng minh.
Ta đã biết số đỉnh bậc lẻ là chẵn, k=2n. Chứng minh quy nạp theo n.

Nhóm thực hiện: Nhóm 2

14



Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến
(i)

GVHD: Trần Qu ốc

n=1: Nối 2 đỉnh bậc lẻ với nhau bằng cạnh z ta thu được đồ thị G’ thoả
định lý Euler. Như vậy G’ có chu trình Euler C’. Bỏ cạnh z trên C’ ta thu
được đường đi Euler phủ G.

(ii)

Giả sử G có số đỉnh bậc lẻ là 2n và định lý đúng với k<2n. Nối 2 đỉnh bậc
lẻ a,b nào đó với nhau bằng cạnh z ta thu được đồ thị G’ có 2n-2 đỉnh bậc
lẻ. Theo giả thiết quy nạp G’ có n-1 đường đi phủ G’. Gọi P là đường đi
qua cạnh z. Hiển nhiên a, b không phải đỉnh đầu hoặc cuối của P, vì vậy
nếu bỏ cạnh z ta thu được 2 đường đi P1 và P2 cùng với n-2 đường đi còn
lại phủ đồ thị G.
Bây giờ xét đồ thị có hướng G = (V, A). Ký hiệu

R = {u  V : dI(v) = dO(v)}
S = {u  V : dI(v) > 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

vS

O

(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

 Định lý 3
(i) Đồ thị có hướng G có chu trình có hướng Euler khi và chỉ khi G liên
thông yếu và mọi đỉnh có nửa bậc vào bằng nửa bậc ra, tức S =  và T = 
(ii) Nếu S  , thì số đường đi có hướng tối thiểu phủ G là k. Các
đường đi này nối các đỉnh của T đến các đỉnh của tập S.
Chứng minh. Tương tự như trường hợp vô hướng (bài tập).

2. Các thuật toán tìm chu trình Euler:

 Thuật toán

+ Đầu vào. Đồ thị G  , không có đỉnh cô lập.
Nhóm thực hiện: Nhóm 2

15



Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

+ Đầu ra . Chu trình Euler C của G, hoặc kết luận G không có chu trình Euler.
+ Phương pháp.
(1) phát: Đặt H := G, k := 1, C := . Chọn đỉnh v  G bất kỳ.
(2) Xuất phát từ v, xây dựng chu trình bất kỳ Ck trong H.
Nếu tồn tại Ck , nối Ck vào C, C := C  Ck. Sang bước (3)
Nếu không tồn tại Ck , thì 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 các đỉnh cô lập. thì loại chúng khỏi
H. Sang bước (4)
(4) Nếu H = , thì kết luận C là chu trình Euler, kết thúc. Ngược lại sang
bước (5)
(5) Nếu H và C không có đỉnh chung, thì kết luận không có chu trình Euler,
kết thúc.
Nếu H và C có đỉnh chung. Chọn v là đỉnh chung của H và C. Đặt k :=
k+1. Quay lại bước (2).
+ Ví dụ
Cho G là đồ thị Thanh mã tấu Mohammed.
a

j
c

b


f

i

d

g

c

h
k

Ta áp dụng thuật toán 1 để tìm chu trình Euler.
(1) Đặt H := G, k := 1, C := , v := f.
(2) Ta xây dựng chu trình C1 trong H:
C1 := (f,g,k,h,i,e,b,c,d,f)
Nhóm thực hiện: Nhóm 2

16


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

Đặt C := C  C1 = (f,g,k,h,i,e,b,c,d,f)
(3) Loại C1 ra khỏi H, ta được đồ thị H như sau
a


j
e
b

f

i

d

g

h

Các đỉnh c và k là các đỉnh cô lập, vì thế ta loại chúng ra khỏi H và nhận được
đồ thị H sau
a

e

b

i

j

f
d


h
g

(5) Chọn đỉnh chung của H và C là v := f. Đặt k := k+1 = 2. Quay lại bước(2)
(2) Ta xây dựng chu trình C2 trong H:
C2 := (f,i,j,h,g,d,b,a,e,f)
Nối C2 vào C ta được chu trình C sau
C := C  C2 = (f,g,k,h,i,e,b,c,d,f)  (f,i,j,h,g,d,b,a,e,f)
= (f,g,k,h,i,e,b,c,d,f,i,j,h,g,d,b,a,e,f)
(3) Loại C2 ra khỏi H, ta được đồ thị H gồm toàn các đỉnh cô lập. Loại nốt
các đỉnh cô lập ta có H = .
(4) Vì H = , ta kết luận C là chu trình Euler, kết thúc.
 Thuật toán 2 (Fleury)

Nhóm thực hiện: Nhóm 2

17


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

+ Đầu vào. Đồ thị G  , không có đỉnh cô lập.
+ Đầu ra . Chu trình Euler C của G, hoặc kết luận G không có chu trình Euler.
+ Phương pháp.
(1) Chọn đỉnh xuất phát bất kỳ v0 . Đặt v1 := v0 , C := (v0). H := G.
(2) Nếu H = , thì kết luận C là chu trình Euler, kết thúc. Ngược lại sang
bước (3).

(3) Chọn cạnh đi tiếp:
-

Trường hợp đỉnh v1 là đỉnh treo: Tồn tại duy nhất đỉnh v2 kề v1 .

Chọn cạnh (v1 , v2 ). Sang bước (4).
-

Trường hợp đỉnh v1 không là đỉnh treo:
Nếu mọi cạnh liên thuộc v1 là cầu, thì không có chu trình Euler, kết
thúc.
Ngược lại, chọn cạnh (v1 , v2 ) bất kỳ không phải là cầu trong H.

Thêm vào đường đi C đỉnh v2 . Sang bước (4).
(4) Xoá cạnh vừa đi qua, và xoá đỉnh cô lập:
Loại khỏi H cạnh (v1 , v2 ). Nếu H có đỉnh cô lập, thì loại chúng khỏi
H.
Đặt v1 := v2 . Sang bước (2).
+ Ví dụ
Cho G là đồ thị hình sau
v1
v2
v3

v6
Nhóm thực hiện: Nhóm 2

v4

v5


v7
18


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

Đồ thị liên thông và có các đỉnh bậc chẵn. Ta có chu trình Euler sau
(v6, v4, v7, v5, v1, v3, v4, v2, v1, v4, v5, v2, v3, v6)

CHƯƠNG 4

BÀI TOÁN ỨNG DỤNG

1. Bài toán Domino:
Domino là một hình chữ nhật chia thành 2 hình vuông mỗi hình mang một
trong các số 0,1,2,3,4,5,6. Hai hình vuông trên một domino có thể mang cùng
một số. Ví dụ

5 6

0 2

4 4

Có tất cả 28 quân Domino khác nhau. Chứng minh rằng ta có thể sắp xếp
các domino thành hình tròn sao cho hai hình vuông kề nhau trên 2 domino khác

nhau sẽ mang cùng số.
Giải:
Ta lập đồ thị 7 đỉnh
v0, v1, v2, v3, v4, v5, v6
mỗi đỉnh vi ứng với số i, i=0,...,6. Mỗi đỉnh có thể nối với các đỉnh còn lại và
chính nó để tạo thành domino.
Nhóm thực hiện: Nhóm 2

19


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

Ta có đồ thị sau :
0

6

1

5

2

4

3


liên thông với tất cả các đỉnh có bậc chẵn bằng 8. Do vậy tồn tại chu trình Euler.
Mỗi chu trình Euler sẽ cho tương ứng một cách xếp.

2. Bài bài toán người phát thư Trung Hoa:
Một nhân viên đi từ sở bưu điện, qua một số đường phố để phát thư, rồi
quay về sở. Người ấy phải đi qua các đường theo chu trình tự nào để đường đi là
ngắn nhất?
Bài toán này được nhà toán học Trung Hoa Guan nêu lên đầu tiên (1960),
vì vậy thường được gọi là “ Bài toán người phát thu Trung Hoa”. Ta xét bài toán
ở dạng đơn giản như sau.
Cho đồ thị liên thông G. Một chu trình qua mọi cạnh của G gọi là một hành
trình trong G. Trong các hành trình đó, hãy tìm hành trình ngắn nhất, tức là qua ít
cạnh nhất.

Nhóm thực hiện: Nhóm 2

20


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

Rõ ràng nếu G là đồ thị Euler ( mọi đỉnh đều có bậc chẵn) thì chu trình
Euler trong G ( qua mỗi cạnh của G đúng một lần) là hành trình ngắn nhất cần
tìm.
Chỉ còn xét trường hợp G có một số đỉnh bậc lẻ ( số định bậc lẻ là một số
chẵn). Khi đó mọi hành trình trong phải đi qua ít nhất hai lần một số cạnh nào

đó.
Dễ dàng rằng một hành trình qua một canh (u, v) nào đó quá hai lần thì
không phải là hành trình ngắn nhất trong G. Vì vây, ta chỉ cần xét những hành
trình T đi qua hai lần một số cạnh nào đó của G.
Ta quy ước xem một hành trình T trong g là một hành trình trong đồ thị Euler
GT, có được từ G bằng cách vẽ thêm một cạnh song song đối với những cạnh mà
T đi qua hai lần. bài toán đặt ra được đua về bài toán như sau:
Trong các đồ thị Euler GT, tìm đồ thị có số cạnh ít nhất ( khi đó chu trình
Eluer trong đồ thị này là hành trình ngắn nhất).
Ví dụ: Gải bài toán người phát thư Trung Hoa cho đồ thị sau:

D
C

D
E

C

B

A

F
J

K

I


H

E

B

F
J

G

A

I

K
H

G

Tập hợp các đỉnh bậc lẻ V O (G) ={ B, G, H, K} và tập hợp các phân hoạch
cặp là P = { P1, P2, P3}, trong đó
Nhóm thực hiện: Nhóm 2

21


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến


GVHD: Trần Qu ốc

P1 = { (B,G), (H,K)} � d(P1) = d (B, G ) + d( H,K) =4+1 =5;
P1 = { (B,H), (G,K)} � d(P2) = d (B, H ) + d( G,K) =2+1 =3;
P1 = { (B,K), (G,H)} � d(P3) = d (B, K ) + d( G,H) =3+2 =5;
m(G) = min (d(P1), d (P2),d(P3))=3
Do đó GT có được từ G bằng cách thêm vào 3 cạnh: (B, I) , (I,H), (G,K) và
GT là đồ thị Euler. Vậy hành trình tìm đường đi ngắn nhất cần tìm đi theo chu
trình Euler trong GT: A,B,C,D,E,F,K,E,C,I,K,H,J,I,H,I,B,I,A.

3. Bài toán sắp xếp chỗ ngồi:
Có n đại biểu từ n nước đến dự hội nghị quốc tế. Mỗi ngày họp một lần
ngồi quanh một bàn tròn. Hỏi phải bố trí bao nhiêu ngày và bố trí như thế nào
sao cho trong mỗi ngày, mỗi người có hai người kế bên là bạn mới. Lưu ý rằng n
người đều muốn làm quen với nhau.
Xét đồ thị gồm n đỉnh, mỗi đỉnh ứng với mỗi người dự hội nghị, hai đỉnh
kề nhau khi hai đại biểu tương ứng muốn làm quen với nhau. Như vậy, ta có đồ
thị đầy đủ Kn. Đồ thị này là Hamilton và rõ ràng mỗi chu trình Hamilton là một
cách sắp xếp như yêu cầu của bài toán. Bái toán trở thành tìm các chu trình
Hamilton phân biệt của đồ thị đầy đủ Kn (hai chu trình Hamilton gọi là phân biệt
nếu chúng không có cạnh chung).
n 1
Định lý: Đồ thị đầy đủ Kn với n lẻ và n  3 có đúng
chu trình Hamilton
2
phân biệt.
n(n  1)
Chứng minh: Kn có
cạnh và mỗi chu trình Hamilton có n cạnh, nên số
2

n 1
chu trình Hamilton phân biệt nhiều nhất là
.
2
5
3
2

1

n

4

Giả sử các đỉnh của Kn là 1, 2, ..., n. Đặt đỉnh 1 tại tâm của một đường tròn và
các đỉnh 2, ..., n đặt cách đều nhau trên đường tròn (mỗi cung là 360 0/(n-1) sao
Nhóm thực hiện: Nhóm 2

22


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

cho đỉnh lẻ nằm ở nửa đường tròn trên và đỉnh chẵn nằm ở nửa đường tròn dưới.
Ta có ngay chu trình Hamilton đầu tiên là 1,2, ..., n,1. Các đỉnh được giữ cố định,
xoay khung theo chiều kim đồng hồ với các góc quay:
n  3 360 0

360 0
360 0
360 0
, 2.
, 3.
, ...,
.
,
2 n 1
n 1
n 1
n 1
n 3
n 1
ta nhận được
khung phân biệt với khung đầu tiên. Do đó ta có
chu
2
2
trình Hamilton phân biệt.
Ví dụ 5: Giải bài toán sắp xếp chỗ ngồi với n=11.
Có (111)/2=5 cách sắp xếp chỗ ngồi phân biệt như sau:
1 2 3 4 5 6 7 8 9 10 11 1
1 3 5 2 7 4 9 6 11 8 10 1
1 5 7 3 9 2 11 4 10 6 8 1
1 7 9 5 11 3 10 2 8 4 6 1
1 9 11 7 10 5 8 3 6 2 4 1
5

5


7

3

3

9

1

2

1

4

1

1

1

1

2

0

7

9

3

1

8

6

5
9

1

1

4

0

8

7

3

Nhóm thực hiện: Nhóm 2

1

6

5

2

2

1

4

0

8

9

1

1
6

1

7

3

9


2

1

5

7

1

1
1

23


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

KẾT LUẬN
Từ các ứng dụng của “ Chu trình, đường đi Eluer và ứng dụng” ta có thể giải
lớp các bài toán.. Các ứng dụng được minh họa bằng các ví dụ, bài toán cụ thể
và dễ hiểu. Từ đó lý thuyết đồ thị ngày càng khẳng định được vị trí quan trọng
trong việc áp dụng để giải quyết các bài toán thực tế nhờ vào việc tìm ra ngày
càng nhiều các định lý, công thức và thuật toán. Lý thuyết đồ thị không những có
nhiều ứng dụng trong thực tế mà còn là công cụ đắc lực cho ngành công nghệ
thông tin. Nó giúp cho chúng ta mô tả một cách dễ dàng các bài toán phức tạp cụ

thể, để từ đó ta có thể mã hoá các bài toán đó vào máy tính. Ngoài ra lý thuyết đồ
thị được sử dụng để giải quyết các bài toán trong nhiều lĩnh vực khác nhau. Hiện
Nhóm thực hiện: Nhóm 2

24


Đề tài: Chu trình đường đi Eluer và ứng dụng
Chiến

GVHD: Trần Qu ốc

nay có rất nhiều tài liệu, sách, giáo trình đã viết về lý thuyết đồ thị với những nội
dung, đầy đủ giúp cho những người muốn nghiên cứu về lý thuyết đồ thị tham
khảo.
Đề tài được hướng dẫn nhiệt tình của thầy PGS.TSKH Trần Quốc Chiến.
Tập thể nhóm xin gửi lời cảm ơn chân thành đến thầy.
Mặc dù đã cố gắng nhưng đề tài cũng không tránh khỏi thiếu sót. Tập thể
nhóm mong nhận ý kiến của thầy và các bạn để đề tài hoàn thiện hơn.

Tài liệu tham khảo
[1] Trần Quốc Chiến : Giáo trình Lý thuyết đồ thị và ứng dung. Đà Nẵng 2007.
[2] Nguyễn Tô Thành, Nguyễn Đức Nghĩa: Giáo trình Toán rời rạc. Trường Đại
học bách khoa Hà Nội. Hà Nội 1994.
[3] Nguyễn Cam, Chu Đức Khánh : Lý thuyết đồ thị. NXB TP Hò Chí Minh
1999.
[4] Nguyễn Xuân Quỳnh: Cơ sở Toán rời rạc và ứng dụng. NXB Giáo dục. Hà
Nội 1995.

Nhóm thực hiện: Nhóm 2


25


×