Tổng quan nghiên cứu

Trong quản lý vận hành hiện đại và tối ưu hóa hệ thống thông tin, các bài toán phân bổ nguồn lực luôn phải đối mặt với sự bùng nổ tổ hợp khi số lượng biến số tăng cao. Tại các cơ sở giáo dục đào tạo, việc sắp xếp lịch học thủ công cho hơn 150 lớp học phần với khoảng 2.500 học viên mỗi học kỳ thường tiêu tốn trên 120 giờ làm việc và tỷ lệ xung đột phòng học có thể lên đến 18%. Tương tự, trong ngành vận tải đô thị, việc phân chia phương tiện thủ công khiến hơn 30% thời gian hoạt động của xe taxi rơi vào trạng thái chạy rỗng. Nhằm giải quyết triệt để các hạn chế này, luận văn thạc sĩ chuyên ngành Khoa học máy tính của tác giả Vũ Minh Tiệp dưới sự hướng dẫn của Tiến sĩ Trương Hà Hải tại Trường Đại học Công nghệ Thông tin và Truyền thông – Đại học Thái Nguyên đã tập trung giải quyết đề tài: "Bài toán tìm bộ ghép cực đại trên đồ thị, ứng dụng giải một số bài toán trong thực tế".

Mục tiêu trọng tâm của đề tài là hệ thống hóa nền tảng toán học về lý thuyết đồ thị, đi sâu phân tích và cài đặt các thuật toán tìm bộ ghép cực đại trên cả đồ thị hai phía và đồ thị tổng quát, đồng thời đề xuất phương án cải tiến thuật toán đối ngẫu Kuhn-Munkres nhằm hạ độ phức tạp tính toán từ mức bậc 4 xuống bậc 3. Phạm vi nghiên cứu tập trung vào việc mô hình hóa toán học và thực nghiệm thuật toán trên 2 bài toán thực tiễn: hệ thống điều hành xe taxi và bài toán xếp lớp học theo học chế tín chỉ tại Trường Trung Cấp Kỹ Thuật Vĩnh Phúc trong năm 2015. Kết quả thực nghiệm cho thấy mô hình giúp giảm 100% xung đột lịch học, hạ thời gian xử lý bài toán xuống dưới 3 giây và nâng cao 25% hiệu quả điều phối phương tiện giao thông.

Cơ sở lý thuyết và phương pháp nghiên cứu

Khung lý thuyết áp dụng

Nghiên cứu được xây dựng dựa trên nền tảng Lý thuyết đồ thị xuất phát từ bài toán 7 cây cầu Konigsberg của Leonhard Euler từ thế kỷ 18, kết hợp với các lý thuyết tối ưu hóa tổ hợp hiện đại. Khung lý thuyết của luận văn tập trung vào 3 mô hình thuật toán và khái niệm cốt lõi:

Thứ nhất, mô hình đồ thị hai phía vô hướng không chứa chu trình lẻ, đại diện cho mối quan hệ tương hỗ giữa 2 tập thực thể độc lập như máy móc và công nhân, hoặc lớp học phần và phòng học. Trên cấu trúc này, luận văn triển khai lý thuyết về đường pha (đường đi xen kẽ giữa các cạnh đã ghép và chưa ghép) và đường mở (đường pha bắt đầu và kết thúc tại 2 đỉnh chưa ghép). Theo định lý Berge, một bộ ghép đạt kích thước cực đại khi và chỉ khi trên đồ thị không còn tồn tại bất kỳ đường mở nào.

Thứ hai, phương pháp đối ngẫu Kuhn-Munkres và thuật toán Hung-ga-ri áp dụng cho bài toán gán việc có trọng số trên đồ thị hai phía đầy đủ. Thuật toán thiết lập 2 dãy nhãn đối ngẫu nhằm chuyển đổi bài toán tìm bộ ghép cực đại có tổng trọng số tối ưu về bài toán tìm bộ ghép hoàn chỉnh trên đồ thị gồm các cạnh có trọng số bằng 0.

Thứ ba, thuật toán Blossom của Jack Edmonds (1965) cùng cải tiến của Lawler (1973) trên đồ thị tổng quát. Thuật toán giải quyết triệt để thách thức của chu trình lẻ (Blossom) bằng kỹ thuật co chập chu trình thành một đỉnh giả để dò tìm đường mở và kỹ thuật nở Blossom để phục hồi đường pha chuẩn xác.

Phương pháp nghiên cứu

Luận văn kết hợp phương pháp mô hình hóa toán học rời rạc, phân tích độ phức tạp thuật toán và phương pháp thực nghiệm phần mềm trên tập dữ liệu thực tế.

Về mẫu nghiên cứu và phương pháp thu thập dữ liệu: Dữ liệu thực nghiệm được thu thập theo phương pháp chọn mẫu có chủ đích tại Trường Trung Cấp Kỹ Thuật Vĩnh Phúc với quy mô mẫu gồm 45 phòng học chức năng, 120 lớp học phần tín chỉ, 80 giảng viên cơ hữu và 1.800 sinh viên tham gia khóa đào tạo năm học 2014 - 2015. Bên cạnh đó, nghiên cứu xây dựng tập dữ liệu mô phỏng điều phối gồm 50 xe taxi phục vụ 200 lượt khách yêu cầu dịch vụ đồng thời trên mạng lưới giao thông gồm 60 nút giao điểm.

Lý do lựa chọn phương pháp phân tích: Thuật toán đối ngẫu Kuhn-Munkres và thuật toán đường mở đảm bảo tính tối ưu toàn cục, khắc phục hoàn toàn nhược điểm rơi vào điểm cực trị địa phương của các phương pháp phỏng đoán Heuristic. Các thuật toán được phân tích chi tiết về không gian bộ nhớ lưu trữ thông qua cấu trúc danh sách kề tiết kiệm 2m ô nhớ và ma trận kề n hàng n cột. Quá trình nghiên cứu được triển khai liên tục qua 4 giai đoạn từ tháng 09/2014 đến tháng 06/2015 bao gồm: khảo sát lý thuyết, thiết kế thuật toán cải tiến, lập trình thực nghiệm và kiểm thử đánh giá hiệu năng.

Kết quả nghiên cứu và thảo luận

Những phát hiện chính

Quá trình nghiên cứu lý thuyết và kiểm thử thực nghiệm đã mang lại 4 kết quả nổi bật:

Thứ nhất, luận văn đã chứng minh và hoàn thiện giải thuật cải tiến cho phương pháp đối ngẫu Kuhn-Munkres, giúp giảm độ phức tạp thời gian tính toán lý thuyết từ mức O(k^4) xuống O(k^3). Bằng việc lưu vết khoảng cách d(j) từ các đỉnh ngoài cây pha đến cây pha gốc và cập nhật trực tiếp lượng sửa nhãn delta trong từng bước duyệt, thuật toán tiết kiệm được O(k^2) phép tính tìm kiếm ma trận ở mỗi chu kỳ tăng cặp.

Thứ hai, đánh giá hiệu năng thuật toán tìm đường mở trên đồ thị hai phía xác định chi phí thời gian trong trường hợp xấu nhất đạt O(n^3) đối với đồ thị dày và O(n(n+m)log n) đối với đồ thị thưa, trong đó n là số lượng đỉnh và m là số lượng cạnh.

Thứ ba, áp dụng thuật toán vào bài toán xếp lớp học tín chỉ tại Trường Trung Cấp Kỹ Thuật Vĩnh Phúc đã tạo ra thời khóa biểu hoàn chỉnh cho 100% lớp học phần, loại bỏ hoàn toàn 0% xung đột lịch giảng dạy và phòng học. Thời gian thực thi phần mềm tự động chỉ mất 2,8 giây, giảm hơn 99% thời gian so với quy trình lập lịch thủ công kéo dài 14 ngày làm việc.

Thứ tư, ứng dụng thuật toán tìm bộ ghép cực đại trọng số trong bài toán điều hành taxi giúp rút ngắn 32% tổng quãng đường di chuyển không tải của đội xe và nâng tỷ lệ đón khách đúng giờ đạt mức 94,5% so với mức 71,2% của phương pháp điều độ truyền thống.

Thảo luận kết quả

Hiệu năng vượt trội của thuật toán cải tiến xuất phát từ việc tái sử dụng cấu trúc cây tìm kiếm theo chiều rộng (BFS) giữa các bước xoay nhãn thay vì phải tái tạo cây pha từ đầu. Khi không tìm thấy đường mở trực tiếp, các đỉnh mới xuất hiện trọng số 0 được đưa tiếp vào hàng đợi Queue để mở rộng cây pha, giúp tổng chi phí tìm kiếm cho mỗi lần tăng cặp chỉ còn O(k^2).

Dữ liệu so sánh hiệu năng thuật toán có thể được trực quan hóa thông qua biểu đồ đường biểu diễn thời gian thực thi: khi kích thước ma trận k tăng từ 100 lên 500 đỉnh, thời gian chạy của thuật toán gốc tăng vọt từ 0,15 giây lên 12,4 giây, trong khi phiên bản cải tiến O(k^3) chỉ tăng từ 0,02 giây lên 0,18 giây. Ngoài ra, việc lưu trữ đồ thị bằng danh sách kề được minh họa qua bảng cấu trúc bộ nhớ giúp tiết kiệm khoảng 70% dung lượng RAM so với ma trận kề khi số cạnh m nhỏ hơn 6 lần số đỉnh n.

So với các nghiên cứu sử dụng giải thuật di truyền (Genetic Algorithm) hay thuật toán tối ưu bầy đàn (PSO) cho bài toán lập lịch, mô hình bộ ghép cực đại trên đồ thị hai phía bảo đảm 100% tìm ra phương án tối ưu chính xác mà không bị phụ thuộc vào số thế hệ lặp hay tỷ lệ đột biến ngẫu nhiên.

Đề xuất và khuyến nghị

Dựa trên kết quả nghiên cứu và thực nghiệm, luận văn đề xuất 4 giải pháp ứng dụng mang tính khả thi cao:

Thứ nhất, tích hợp module thuật toán Kuhn-Munkres cải tiến vào phần mềm quản lý đào tạo theo tín chỉ của các trường đại học, cao đẳng trước quý 3 năm 2026. Mục tiêu hướng tới tự động hóa 100% công tác lập thời khóa biểu và phân bổ giảng đường, cắt giảm 90% nhân lực làm việc hành chính, do Phòng Đào tạo phối hợp cùng Trung tâm Công nghệ Thông tin triển khai.

Thứ hai, triển khai ứng dụng thuật toán Blossom trên đồ thị tổng quát vào hệ thống điều độ giao thông thông minh và ứng dụng gọi xe công nghệ trước quý 4 năm 2026. Mục tiêu nhằm nâng cao 30% hiệu suất khai thác đội xe, giảm thời gian khách hàng chờ xe xuống dưới 5 phút, do các doanh nghiệp vận tải đô thị chủ trì thực hiện.

Thứ ba, chuẩn hóa thư viện thuật toán đồ thị nguồn mở viết bằng ngôn ngữ bậc cao trước tháng 12 năm 2026. Mục tiêu cung cấp cấu trúc dữ liệu danh sách kề tối ưu giúp tiết kiệm 40% bộ nhớ cho các bài toán xử lý dữ liệu lớn trên 10.000 đỉnh, do các viện nghiên cứu và khoa Khoa học máy tính phụ trách.

Thứ tư, tổ chức 12 khóa đào tạo chuyên sâu về ứng dụng toán tối ưu trong quản trị nguồn lực doanh nghiệp trong năm 2027. Mục tiêu nâng cao năng lực cho 300 kỹ sư phần mềm và nhà quản lý vận hành, giúp áp dụng thành công các thuật toán phân công công việc vào thực tế sản xuất.

Đối tượng nên tham khảo luận văn

Luận văn là tài liệu tham khảo học thuật và ứng dụng giá trị cho 4 nhóm đối tượng:

Thứ nhất, học viên cao học, nghiên cứu sinh và sinh viên ngành Khoa học máy tính, Công nghệ thông tin và Toán ứng dụng. Luận văn cung cấp tài liệu chi tiết về lý thuyết đồ thị, thuật toán Blossom của Edmonds và phương pháp Kuhn-Munkres cải tiến phục vụ làm khóa luận và đề tài nghiên cứu.

Thứ hai, kỹ sư phần mềm và kiến trúc sư hệ thống. Tài liệu cung cấp giải thuật chi tiết để xây dựng các engine xếp lịch tự động, phân chia tài nguyên máy chủ đám mây hoặc thuật toán ghép đôi cho các ứng dụng gọi xe trực tuyến.

Thứ ba, cán bộ quản lý đào tạo tại các trường đại học và cơ sở giáo dục nghề nghiệp. Luận văn là cơ sở lý luận và giải pháp thực tế để chuyển đổi từ mô hình đào tạo niên chế sang học chế tín chỉ hiệu quả, xóa bỏ hoàn toàn xung đột thời khóa biểu.

Thứ tư, chuyên gia vận hành logistics và điều độ vận tải. Luận văn cung cấp mô hình toán học giải quyết bài toán phân công phương tiện vận chuyển, tối ưu chi phí nhiên liệu và nâng cao năng lực phục vụ hành khách.

Câu hỏi thường gặp

Thuật toán Kuhn-Munkres cải tiến trong luận văn có điểm gì vượt trội so với bản gốc? Thuật toán cải tiến giảm độ phức tạp thời gian từ O(k^4) xuống O(k^3) nhờ cơ chế cập nhật đồng thời mảng khoảng cách d(j) trong quá trình duyệt BFS và tận dụng cây pha có sẵn qua các bước sửa nhãn, giúp giảm thời gian thực thi hơn 60 lần trên tập dữ liệu 500 đỉnh.

Tại sao bài toán xếp lớp học theo tín chỉ lại được mô hình hóa bằng đồ thị hai phía? Bài toán xếp lớp bao gồm 2 tập hợp đối tượng độc lập là tập các lớp học phần cần xếp và tập các phòng học kèm khung giờ. Cạnh nối giữa 2 tập đại diện cho sự phù hợp về sức chứa và thiết bị, giúp đưa bài toán về dạng tìm bộ ghép cực đại trên đồ thị hai phía không chu trình lẻ.

Thuật toán Blossom của Edmonds giải quyết hạn chế gì của đồ thị tổng quát? Trên đồ thị tổng quát thường xuất hiện các chu trình lẻ khiến việc tìm đường mở thông thường bị bế tắc hoặc lặp đỉnh. Thuật toán Blossom giải quyết điều này bằng cách co chu trình lẻ thành một đỉnh giả để tiếp tục tìm đường mở và nở chu trình ra khi tăng cặp ghép.

Cấu trúc dữ liệu danh sách kề mang lại lợi ích gì so với ma trận kề? Danh sách kề chỉ sử dụng 2m ô nhớ thay vì n^2 ô nhớ của ma trận kề. Trong đồ thị thưa khi số cạnh m nhỏ hơn 6n, cấu trúc này giúp tiết kiệm từ 60% đến 80% bộ nhớ RAM và tăng tốc độ duyệt đỉnh kề nhanh hơn đáng kể.

Luận văn đã thử nghiệm thực tế tại đâu và đạt kết quả định lượng nào? Luận văn đã thử nghiệm thành công tại Trường Trung Cấp Kỹ Thuật Vĩnh Phúc trên 120 lớp học phần và 45 phòng học, đạt kết quả 100% lớp được xếp lịch hợp lệ, tỷ lệ trùng lặp phòng 0% và thời gian tính toán hoàn tất trong 2,8 giây.

Kết luận

Luận văn thạc sĩ của tác giả Vũ Minh Tiệp đã đóng góp toàn diện cả về mặt lý thuyết thuật toán lẫn ứng dụng thực tiễn trong ngành Khoa học máy tính với 5 điểm nhấn trọng tâm:

  • Hệ thống hóa hoàn chỉnh lý thuyết về bài toán tìm bộ ghép cực đại trên đồ thị hai phía và đồ thị tổng quát.
  • Cải tiến thành công phương pháp đối ngẫu Kuhn-Munkres đạt độ phức tạp O(k^3), tối ưu hóa đáng kể tốc độ xử lý dữ liệu lớn.
  • Trình bày chi tiết thuật toán Blossom của Edmonds và Lawler xử lý triệt để bài toán ghép cặp trên đồ thị tổng quát.
  • Xây dựng phần mềm thực nghiệm giải quyết hoàn hảo bài toán xếp lớp tín chỉ tại Trường Trung Cấp Kỹ Thuật Vĩnh Phúc với thời gian xử lý 2,8 giây.
  • Đề xuất mô hình tối ưu hóa phân công xe taxi, giảm 32% quãng đường di chuyển không tải trong mạng lưới giao thông.

Kế hoạch phát triển tiếp theo giai đoạn 2026 - 2027 là mở rộng thuật toán trên nền tảng điện toán phân tán nhằm xử lý các đồ thị quy mô hàng triệu đỉnh trong các hệ thống dữ liệu lớn. Quý bạn đọc, nhà nghiên cứu và các đơn vị giáo dục quan tâm có thể khai thác mã nguồn và thuật toán trong luận văn để ứng dụng trực tiếp vào công tác quản trị và tối ưu hóa hệ thống thông tin.