Chu trình trung bình nhỏ nhất

Trong lý thuyết đồ thị, bài toán chu trình trung bình nhỏ nhất yêu cầu tìm trong một đồ thị có hướng cho trước một chu trình có trọng số trung bình nhỏ nhất. Trọng số trung bình của một chu trình là tỉ số giữa tổng trọng số các cung của chu trình và số cung của nó. Bài toán này có nhiều ứng dụng trong lý thuyết đồ thị, và phân tích hệ thống sự kiện rời rạc[1].

Định nghĩa

sửa

Xét đồ thị có hướng   và một hàm trọng số  . Trọng số của một chu trình  , ký hiệu là  , là tổng trọng số các cung của  ,

 

Trọng số trung bình của   được định nghĩa là tỉ số  .

Thuật toán

sửa

Cho đơn giản, mở rộng   bằng cách thêm vào một đỉnh gốc   có cung độ dài 0 tới tất cả các đỉnh khác. Do   không có thêm chu trình nào nên chu trình trung bình nhỏ nhất là không đổi.[2]

Thuật toán Karp

sửa

Có rất nhiều thuật toán cho bài toán tìm chu trình trung bình nhỏ nhất. Thuật toán đầu tiên cho bài toán này là của Karp.[3] Định nghĩa   là độ dài đường đi ngắn nhất từ   tới   gồm đúng   cung. Nếu không có đường đi nào gồm đúng   cung thì  . Định nghĩa,

 

Có thể chứng minh rằng   chính là trung bình nhỏ nhất của các chu trình trong  . Để tính  , thuật toán tính tất cả các giá trị   theo công thức sau:

 

Thời gian thực thi của thuật toán là  .

Ghi chú

sửa

Xem thêm

sửa

Tham khảo

sửa
  • Dasdan, Ali (2004), “Experimental analysis of the fastest optimum cycle ratio and mean algorithms”, ACM Trans. Des. Autom. Electron. Syst., ACM, 9 (4): 385–418, doi:10.1145/1027084.1027085, ISSN 1084-4309
  • Georgiadis, Loukas; Goldberg, Andrew V.; Tarjan, Robert E.; Werneck, Renato F. (2009), “An Experimental Study of Minimum Mean Cycle Algorithms”, ALENEX (PDF), tr. 1–13, Bản gốc (PDF) lưu trữ ngày 18 tháng 10 năm 2012, truy cập ngày 11 tháng 9 năm 2012
  • Karp, R. M. (1978), “A characterization of the minimum cycle mean in a digraph”, Disc. Math., 23: 309–311