Vấn đề chu trình là một vấn đề trung tâm của lý thuyết đồ thị và đã có rất nhiều công trình nghiên cứu tới vấn đề này, đặc biệt là chu trình Hamilton với khoảng 400 bài báo khoa học được
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN HÀN LÂM
KHOA HỌC VÀ CÔNG NGHỆ VN HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ
Nguyễn Hữu Xuân Trường
CHU TRÌNH HAMILTON VÀ CHU TRÌNH DÀI NHẤT TRONG MỘT SỐ LỚP ĐỒ THỊ CÓ TỔNG BẬC LỚN
Chuyên ngành: Cơ sở toán học cho tin học
Mã số: 62 46 01 10
LUẬN ÁN TIẾN SĨ TOÁN HỌC
Hà Nội – 2016
Trang 2Công trình được hoàn thành tại: Học Viện Khoa Học và Công Nghệ - Viện Hàn Lâm
Khoa Học và Công Nghệ Việt Nam, số 18 Hoàng Quốc Việt, Cầu Giấy, Hà Nội, Việt Nam
Người hướng dẫn khoa học: 1 PGS.TSKH Vũ Đình Hòa
2 GS.TS Vũ Đức Thi
Phản biện 1:……….………
………
Phản biện 2:……….………
………
Phản biện 3:……….………
………
Luận án sẽ được bảo vệ trước Hội đồng chấm luận án cấp nhà nước họp tại: ……….………
………
Vào hồi giờ ngày tháng năm Có thể tìm hiểu luận án tại thư viện: ……….…
Trang 3MỞ ĐẦU
Các vấn đề của lý thuyết đồ thị đã có từ vài trăm năm trước (năm 1736 với bài toán 7 cây cầu ở thành phố Konigsber) nhưng phải tới vài chục năm gần đây, theo cùng sự phát triển của công nghệ thông tin, thì lý thuyết đồ thị mới thực sự phát triển mạnh mẽ không ngừng cả về chiều sâu cũng như chiều rộng Sự phát triển của lý thuyết đồ thị gắn liền với những tên tuổi các nhà toán học lớn như Euler, Gauss, Hamilton, Erdos Một trong những
lý do khiến lý thuyết đồ thị phát triển mạnh mẽ như vậy là vì lý thuyết đồ thị khá gần gũi với thực tế và có những ứng dụng sâu rộng trong công nghệ thông tin và nhiều ngành khoa học khác
Vấn đề chu trình là một vấn đề trung tâm của lý thuyết đồ thị và đã có rất nhiều công trình nghiên cứu tới vấn đề này, đặc biệt là chu trình Hamilton với khoảng 400 bài báo khoa học được đăng tải trên các tạp chí khoa học quốc tế có uy tín hàng đầu trong vòng 20 năm gần đây [25], [26], [27] Hiện nay, các nghiên cứu về chu trình nói chung và chu trình Hamilton rộng trên nhiều khía cạnh, trong đó tập trung chủ yếu tới bậc của đỉnh; ngoài ra còn nghiên cứu trên các đồ thị 1-tough, đồ thị path-tough, đồ thị có tập láng giềng lớn, đồ thị phẳng, đồ thị ngẫu nhiên, đồ thị lưỡng phân và chu trình dài nhất, chu trình Dominating Tại Việt Nam, một số tác giả cũng đã tập trung nghiên cứu về chu trình Hamilton trên các lớp đồ thị khác nhau, chẳng hạn như Ngô Đắc Tân nghiên cứu trên lớp đồ thị split và cubic, Vũ Đình Hòa nghiên cứu trên lớp đồ thị 1-tough có tổng bậc lớn…
Chu trình Hamilton có nhiều ứng dụng trong thực tế, ví dụ như trong bài toán người bán hàng, lập kế hoạch, hay trong thiết kế vi mạch, thiết kế đường truyền trong mạng… Bài toán (xác định sự tồn tại của chu trình Hamilton trong đồ thị) được biết là bài toán [23] nên trong trường hợp tổng quát sẽ không có thuật toán tốt (thời gian đa thức) để giải
nó Do đó, việc tìm ra được các trường hợp thuộc lớp của bài toán cũng như việc thiết
kế được thuật toán thời gian đa thức để xác định được chu trình Hamilton có ý nghĩa hết sức quan trọng
Các nghiên cứu hiện nay hầu hết là dựa trên những lớp đồ thị đặc biệt và tập trung vào việc chỉ ra sự tồn tại của chu trình Hamilton trong những lớp đồ thị đó Có rất nhiều lớp đồ thị được xét tới, trong đó phần lớn các lớp đồ thị này được xác định theo điều kiện tổng bậc (của đỉnh) đủ lớn [15], [17], [18], [20], [22], [29], [30], [31], [36] Một số tác giả nghiên cứu độ phức tạp của bài toán [3], [15], [23], [34], [37], hoặc đánh giá số lượng chu trình Hamilton [14]… Một số khác nghiên cứu đến việc thiết kế các thuật toán để xác định chu trình Hamilton, trong đó có các thuật toán Backtrack, Heuristic và các thuật toán thời gian
đa thức áp dụng cho những lớp đồ thị đặc biệt [5], [12], [22], [28], [38], [44]…
Trong [15] (Định lý 16), các tác giả đã đánh giá độ phức tạp của bài toán với lớp
đồ thị thỏa mãn vẫn còn là bài toán với mọi Có thể nói rằng kết quả này là tiền đề cho nghiên cứu về chu trình Hamilton của tác giả trong luận án Thêm vào đó, một số kết quả trong [11], [17], [32], [36] đã khẳng định sự tồn tại của chu trình Hamilton trong các lớp đồ thị được xác định theo điều kiện của tổng bậc và đủ lớn, tuy nhiên các lớp đồ thị được xác định theo điều kiện và là chưa có thuật toán xác định chu trình Hamilton
Trang 4Cùng với chu trình Hamilton, chu trình dài nhất trong đồ thị cũng được tập trung nghiên cứu tới và có nhiều kết quả đối với chu trình dài được áp dụng cho việc chứng minh
sự tồn tại cũng như thiết kế thuật toán để xác định chu trình Hamilton Trong một bài báo của các tác giả D Bauer, G Fan, H J Veldman [8] đã đưa ra một Giả thuyết đánh giá độ dài chu trình dài nhất theo giá trị mà cho tới nay vẫn chưa có chứng minh thỏa đáng nào cho Giả thuyết này
Mục tiêu nghiên cứu của luận án là:
Nghiên cứu bài toán trên các lớp đồ thị có tổng bậc và lớn, trong đó tập trung vào trường hợp
Đánh giá độ phức tạp của bài toán theo một tham số Xác định để bài toán chuyển từ lớp sang lớp
Xây dựng thuật toán thời gian đa thức để xác định chu trình Hamilton trong một số lớp đồ thị đã khảo sát
Đánh giá tính hiệu quả và khả thi của các thuật toán bằng chương trình thực nghiệm trên các đồ thị lớn
Đánh giá độ dài của chu trình dài nhất trong lớp đồ thị 1-tough với
Kết cấu của luận án gồm: phần mở đầu, 4 chương và phần kết luận
Chương 1: Tổng quan về chu trình trong đồ thị
Giới thiệu một số vấn đề cơ bản của lý thuyết đồ thị, các khái niệm, các quy ước và ký hiệu sử dụng trong luận án Tiếp đến, giới thiệu tổng quan về vấn đề chu trình trong đồ thị, trọng tâm là chu trình Hamilton Ngoài ra, tác giả đưa ra một số kết quả nghiên cứu về bao đóng của đồ thị để sử dụng trong một số chứng minh của luận án
Chương 2: Một số lớp đa thức của bài toán
Chương này nghiên cứu về chu trình Hamilton theo hai bài toán và (với nguyên dương, số thực là tham số) như sau:
Trang 5Chương này sẽ thiết kế thuật toán đa thức xác định chu trình Hamilton cho các lớp đồ thị và , sau đó tác giả tiến hành thực nghiệm trên các đồ thị lớn (hàng nghìn đỉnh) để cho thấy tính hiệu quả và khả thi thực hiện của các thuật toán Thêm vào đó, tác giả đưa ra một số đề xuất mới để làm tăng hiệu năng thực hiện của thuật toán
Chương 4: Đánh giá độ dài chu trình dài nhất trong đồ thị 1-tough với
Chương này của luận án sẽ đưa ra một chứng minh cho Giả thuyết của các tác giả Bauer, Fan, Veldman [8] về cận dưới của độ dài chu trình dài nhất rằng:
Nếu là đồ thị 1-tough và thì
Giả thuyết trên cũng đã được một số tác giả khác quan tâm và tìm cách chứng minh, tuy nhiên các chứng minh đưa ra đều chưa thỏa đáng Cho đến nay vẫn chưa có chứng minh đúng nào cho Giả thuyết này và đây vẫn là vấn đề mở
CHƯƠNG 1 TỔNG QUAN VỀ CHU TRÌNH TRONG ĐỒ THỊ
1.1 Một số khái niệm và quy ước
Trong luận án chỉ xét tới các đồ thị hữu hạn, đơn, vô hướng và không có trọng số Khái niệm đường đi và chu trình trong luận án là đơn, nghĩa là chúng chỉ đi qua các
đỉnh không quá một lần Một đường đi (đơn) là một đồ thị con không rỗng có cấu trúc: và , trong đó, với mọi Các đỉnh được nối bởi , và gọi là các đỉnh cuối; các đỉnh
gọi là các đỉnh trong của
Nếu là một đường đi và thì được gọi là
một chu trình, khi đó chu trình được viết như sau: Số cạnh của chu trình gọi là độ dài của nó, ký hiệu là
Các ký hiệu khi viết không kèm theo đồ thị tường minh thì hiểu mặc định là đồ thị
Ví dụ, viết tương ứng thay cho
Giả sử là một đường đi và là một chu trình của đồ thị Trong luận án, đôi khi ta
có thể xem như là một tập đỉnh con của (tương ứng thay cho )
Một đường đi là mở rộng (theo tập đỉnh) của đường đi nếu Tương
tự, một chu trình là mở rộng của chu trình nếu
Với , ta ký hiệu là đoạn đường chạy dọc theo từ đỉnh tới đỉnh Như vậy, nếu là các đỉnh cuối của thì cũng chính là Ngoài ra, | | quy ước là số đỉnh nằm trên đoạn đường con này
Giả sử chu trình Ta quy định một chiều quay ⃗⃗⃗ theo thứ tự chỉ số các đỉnh (chỉ số được lấy theo ) Với đỉnh , ký hiệu lần lượt là đỉnh liền trước và liền sau của theo chiều quay đã định Với tập đỉnh thì , Với số nguyên dương , ký hiệu
Trang 6và Ta ký hiệu đoạn đường trên bắt đầu từ một đỉnh và kết thúc tại theo chiều quay đã quy định bởi ⃗⃗⃗ , đoạn đường đó theo chiều ngược lại ký hiệu là ⃖⃗⃗⃗ Nếu là một thành phần liên thông của , ký hiệu là tập hợp các láng giềng của trên Một dãy cung ngoại biên nối
hai đỉnh trên là một đường đi có các đỉnh cuối là 2 đỉnh đó và các đỉnh trong thuộc Đặc biệt, một cạnh nối 2 đỉnh trên cũng là một dãy cung ngoại biên
Đôi khi ta cũng thường không viết dấu phẩy (,) ngăn cách giữa các đỉnh của một chu trình hoặc một đường đi Ví dụ, viết thay cho
1.3 Chu trình Hamilton
Chu trình đi qua mọi đỉnh của đồ thị, mỗi đỉnh đi qua đúng một lần, gọi là chu trình
Hamilton Đồ thị có chu trình Hamilton được gọi là đồ thị Hamilton Tương tự, đường đi
qua mọi đỉnh của đồ thị, mỗi đỉnh đi qua đúng một lần, gọi là đường Hamilton và đồ thị có đường Hamilton gọi là đồ thị nửa Hamilton
Lịch sử phát sinh đồ thị Hamilton được xuất phát từ trò chơi đố vui của William
Rowan Hamilton vào năm 1859 Chu trình Hamilton có nhiều ứng dụng trong thực tế, ví dụ
như trong bài toán người bán hàng, lập kế hoạch, hay trong thiết kế vi mạch, thiết kế đường truyền trong mạng… Cho đến nay, vấn đề chu trình Hamilton vẫn còn là mở và trở thành một vấn đề trung tâm của lý thuyết đồ thị với rất nhiều công trình nghiên cứu Thông qua ba bài tổng quan của Ronald J Gould trong [25], [26], [27] thì có thể thấy rằng trong vòng 20 năm trở lại đây có khoảng 400 bài báo khoa học nghiên cứu về chu trình Hamilton được đăng tải trên các tạp chí khoa học quốc tế có uy tín hàng đầu
Trong luận án sẽ nghiên cứu chu trình Hamilton theo hướng sau:
Nghiên cứu bài toán trên lớp đồ thị có tổng bậc và lớn
Nghiên cứu độ phức tạp của bài toán và xác định ranh giới để bài toán chuyển
từ lớp sang lớp
Xây dựng thuật toán thời gian đa thức để xác định chu trình Hamilton trong một số lớp đồ thị đã khảo sát mà bài toán thuộc lớp
1.3.1 Độ phức tạp của bài toán
Bài toán đã được chứng minh trong [23] là các bài toán
(Hamiltonian Cycle Problem)
Instance: Đồ thị
Question: có là đồ thị Hamilton?
Một số tác giả đã nghiên cứu đến độ phức tạp của bài toán trên những lớp đồ thị đặc biệt, chẳng hạn như trong [37] đánh giá độ phức tạp trên lớp đồ thị có hướng phẳng, hay
Trang 7trong [3] nghiên cứu trên hai lớp đồ thị dạng lưỡng phân Trong [15], các tác giả đã chỉ ra rằng bài toán vẫn còn là bài toán trên lớp đồ thị với mọi :
Định lý 1.1 [15, Định lý 16] là bài toán với mọi
Kết quả trên là một tiền đề quan trọng để tác giả tiếp tục nghiên cứu đến độ phức tạp của bài toán trên các lớp đồ thị có tổng bậc và lớn
1.3.3 Một số điều kiện đủ đối với bậc của đỉnh
Các kết quả nghiên cứu về chu trình Hamilton hầu hết tập trung ở điều kiện đủ, đặc biệt là điều kiện đủ đối với bậc của đỉnh Ta bắt đầu bằng với một kết quả của Dirac:
Định lý 1.4 [17] Nếu đồ thị với đỉnh và bậc mỗi đỉnh đều không nhỏ hơn thì là
đồ thị Hamilton
Định lý Dirac là trường hợp riêng của Định lý Ore
Định lý 1.5 [36] Nếu đồ thị với đỉnh và thì là đồ thị Hamilton
Với đồ thị tough, mở rộng cho Định lý Ore, Jung có kết quả sau:
Định lý 1.6 [29] Cho là đồ thị 1-tough với đỉnh và Khi đó,G là đồ thị Hamilton
Mở rộng kết quả cho có:
Định lý 1.7 [18] Cho G là đồ thị 1-tough với đỉnh và Khi đó, là đồ
thị Hamilton
Với đồ thị -liên thông, Bondy đưa ra kết quả tổng quát cho như sau:
Định lý 1.8 [11] Nếu là đồ thị -liên thông thỏa mãn thì là đồ thị
Hamilton
Liên quan đến khoảng cách có kết quả sau:
Định lý 1.10 [32, Định lý 5] Cho là đồ thị 2-liên thông với đỉnh thỏa mãn Khi đó xảy ra một trong hai trường hợp sau:
1 là đồ thị Hamilton
2 là số lẻ và ̅ ̅ ̅
1.3.4 Một số thuật toán xác định chu trình Hamilton
Các nghiên cứu về thuật toán xác định chu trình Hamilton được tiếp cận theo các hướng sau:
Thuật toán Backtrack (Quay lui)
Thuật toán Heuristic
Thuật toán tìm kiếm chu trình Hamilton cho các lớp đồ thị đặc biệt
Trang 8Các thuật toán Backtrack luôn đảm bảo tìm được chu trình Hamilton (nếu có) hoặc sẽ kết thúc sau khi vét cạn các trường hợp mà đồ thị không có chu trình Hamilton, tuy nhiên khả năng thực hiện hạn chế và thời gian chạy không khả thi trên các đồ thị lớn Các thuật toán Heuristic có sự cải tiến về khả năng thực hiện trên các đồ thị lớn và thời gian chạy tuyến tính hoặc đa thức, tuy nhiên nó không đảm bảo rằng sẽ tìm được chu trình Hamilton, mặc dù được thực hiện trên đồ thị Hamilton Dưới đây là một số thuật toán Backtrack và Heuristic xác định chu trình Hamilton trong đồ thị [5], [12], [38]:
Bảng 1.1 Một số thuật toán Backtrack và Heuristic xác định chu trình Hamilton
Snakes and Ladders P Baniasadi, V Ejov, J.A Filar, M
Haythorpe, S Rossomakhine Heuristic
MultiPath cải tiến Andrew Chalaturnyk Backtrack
Một số tác giả khác đã nghiên cứu tới việc xây dựng các thuật toán xác định chu trình Hamilton trong các lớp đồ thị đặc biệt Các thuật toán này là chính xác và đảm bảo tìm được chu trình Hamilton, thời gian đa thức, tuy nhiên nhược điểm là không thực hiện được trên
đồ thị tổng quát Gần đây, các tác giả trong [28] đã đưa ra thuật toán thời gian trên đồ thị Circular-Arc, trong [22] sử dụng phương pháp “tham lam” và 2-matching để xây dựng thuật toán thời gian xác định chu trình Hamilton trong đồ thị ngẫu nhiên… Với đồ thị Ore (lớp đồ thị ), một số tác giả cũng đưa ra thuật toán đa thức để xác định chu trình Hamilton, chẳng hạn như thuật toán do Albertson đề xuất [4]…
Trang 9Hình 1.5 Quá trình tạo bao đóng đồ thị
Trong việc bổ sung lần lượt các cạnh mới để tạo bao đóng , ta thực hiện việc gán nhãn tăng dần theo thứ tự các cạnh được bổ sung bằng mảng Trước hết, [ ] với mọi cạnh và đặt Khi cạnh mới đầu tiên được bổ sung, ta gán [ ] , và thu được đồ thị mới Quá trình được thực hiện liên tục cho đến khi không có cạnh nào được bổ sung nữa và thu được đồ thị cuối cùng là Rõ ràng là:
Thuật toán 1.2 Xây dựng đồ thị bao đóng và gán nhãn cho các cạnh
Stop False; ; ; [ ] ; [ ] [ ] ; [ ] [ ] ; End;
Until Stop;
End;
Nếu là một đồ thị con của , ta đặt: [ ] [ ]
Trang 10Mệnh đề 1.2 Nếu thì là đồ thị Hamilton khi và chỉ khi là đồ thị
Hamilton
Thuật toán 1.3 Biến đổi chu trình Hamilton của đồ thị bao đóng
Input: là một chu trình Hamilton của
Output: Một chu trình Hamilton của đồ thị
End;
1.6 Chu trình trong đồ thị có tập láng giềng lớn
Định lý 1.20 [8] Nếu là đồ thị 2-liên thông và thì
Định lý 1.21 [8] Nếu là đồ thị 1-tough và thì
Bauer, Fan, Veldman đã đưa ra Giả thuyết quan trọng sau:
Giả thuyết 1.3 [8, Giả thuyết 27] Nếu là đồ thị 1-tough và thì
1.7 Kết luận Chương 1
Như vậy, chương này đầu tiên đã giới thiệu các khái niệm cơ bản nhất của lý thuyết đồ thị cần thiết cho luận án Kế đến giới thiệu các Bổ đề, Thuật toán cơ bản, đặc biệt là bao đóng đồ thị làm nền tảng cơ sở quan trọng cho các chứng minh trong luận án Cuối cùng trình bày tổng quan về chu trình trong đồ thị, tập trung trọng tâm tới chu trình Hamilton với các vấn đề nêu ra là: độ phức tạp bài toán của , một số điều kiện cần và đủ cho một đồ thị là Hamilton, một số thuật toán để xác định chu trình Hamilton trong đồ thị Ngoài ra, chu trình Dominating, chu trình trong đồ thị có tập láng giềng lớn cũng được đề cập tới
Định lý 1.1 của các tác giả trong [15] đã chỉ ra rằng bài toán trong lớp đồ thị vẫn còn là bài toán với mọi là tiền đề để tác giả tiếp tục nghiên cứu bài toán cho lớp đồ thị tổng quát hơn theo các giá trị (với tổng quát) và trong Chương 2 và Chương 3 Giả thuyết 1.3 của các tác giả trong [8] đưa ra đánh giá về độ
Trang 11dài của chu trình dài nhất hiện nay vẫn còn là vấn đề mở, trong Chương 4 tác giả sẽ đưa ra một chứng minh cho Giả thuyết này
2.1 Giới thiệu bài toán và
Với số nguyên dương và số thực ta xét bài toán tổng quát sau:
Trường hợp thì và chính là bài toán trong trường hợp tổng quát
2.2 Độ phức tạp của bài toán và
Từ Định lý 1.1, dễ dàng suy ra Hệ quả sau:
Hệ quả 2.1. là bài toán
Định lý 2.1 là bài toán
Định lý 2.2 là bài toán
Như vậy, với thì bài toán vẫn còn là bài toán
Giả thuyết 2.1 Với mọi số nguyên dương thì bài toán thuộc lớp
2.3 Độ phức tạp của bài toán
2.3.1 Một số kết quả với
Từ Định lý 1.4 (Dirac) và Định lý 1.5 (Ore) ta hiển nhiên có:
Hệ quả 2.2 và là các bài toán thuộc lớp
Từ Định lý 1.8 (Bondy) cho trường hợp , ta có:
Hệ quả 2.3 Mọi đồ thị 2-liên thông thỏa mãn là đồ thị Hamilton
Điều kiện là tốt nhất có thể theo nghĩa là tồn tại vô hạn đồ thị 2-liên thông thỏa mãn nhưng không Hamilton, chẳng hạn các đồ thị ̅ với
Trang 12Hệ quả 2.4 là bài toán thuộc lớp
Hệ quả 2.5 là bài toán thuộc lớp
Với kết quả của Bondy (Định lý 1.8) cho trường hợp thì không thể kết luận cho
độ phức tạp của bài toán vì điều kiện 3-liên thông không phải là điều kiện cần của một
đồ thị Hamilton Ta sẽ chứng minh cũng là bài toán thuộc lớp bằng việc khảo sát lớp đồ thị thỏa mãn
Định lý 2.3 Cho đồ thị 2-liên thông thỏa mãn Khi đó, hoặc là đồ thị
Hamilton, hoặc và có cấu trúc thuộc một trong 3 dạng sau:
1 Dạng 1: Tồn tại | | sao cho (Hình 2.1)
Hình 2.1 Đồ thị Dạng 1, Định lý 2.3
2 Dạng 2: có ba đồ thị con đầy đủ và một đỉnh sao cho tồn tại
, , và Hơn
nữa, tồn tại ba đỉnh , , sao cho
Ngoài ra, đỉnh có thể kề với bất kỳ đỉnh còn lại nào (Hình 2.2)
Hình 2.2 Đồ thị Dạng 2, Định lý 2.3
3 Dạng 3: có ba đồ thị con đầy đủ | | | | | | và tồn tại các
đỉnh với sao cho (Hình 2.3)
Trang 13Hình 2.3 Đồ thị Dạng 3, Định lý 2.3
Hệ quả 2.6 Mọi đồ thị 2-liên thông thỏa mãn và là đồ thị Hamilton
Từ thuật toán đa thức nhận biết 3 dạng đồ thị đặc biệt không Hamilton trong Định lý 2.3, ta có:
Định lý 2.4 là bài toán thuộc lớp
Output: Is_Graph4 = True nếu ̅ ̅ ̅ ,
ngược lại, Is_Graph4 = False
Hệ quả 2.7 là bài toán thuộc lớp
Hệ quả 2.8 là bài toán thuộc lớp