Thuật toán tô màu tham lam

Từ testwiki
Bước tới điều hướng Bước tới tìm kiếm

Bản mẫu:Chú thích trong bài Trong lý thuyết đồ thịtrí tuệ nhân tạo, Thuật toán tô màu tham lam (tiếng Anh: Greedy coloring) là một trong những phương pháp tô màu cho đồ thị áp dụng giải thuật tham lam (tiếng Anh: Greedy algorithm). Thuật toán tô màu Greedy chưa phải là một thuật toán tô màu hoàn toàn chính xác. Có hai trường hợp tiêu biểu thể hiện sự chưa chính xác của thuật toán.

  • Đôi khi áp dụng thuật giải này ta sẽ nhận được kết quả với số màu được tô không phải là ít nhất.
  • Trên cùng một đồ thị, khi áp dụng thuật toán có thể ra các kết quả khác nhau.

Thuật toán

Tư tưởng thuật toán

Thuật toán tô màu tham lam xem xét đồ thị G(V) với tập hợp các đỉnh V=[v1,...,vn] và tập các đỉnh kề Avj. Đầu tiên ta xét các đỉnh theo thứ tự và gán cho mỗi đỉnh một màu riêng theo nguyên tắc: các đỉnh không kề với đỉnh đang xét (không có cạnh nối trực tiếp) thì được phép tô cùng một màu, cấm tô màu đó cho các đỉnh có cạnh kề với đỉnh đang xét. Thuật toán lặp lại cho đến khi tất cả các đỉnh được tô màu.

Mã giả

SET c(vj)01jn.

SET c(v1)1.

FOR 2jn.

{ Tô màu k > 0 cho đỉnh vj khác với đỉnh kề nó

c(vj) MIN (kZk>0 AND c(ω)kωAvj)

} Lặp lại đến tô màu xong.

Minh họa thuật giải

Xem thêm

Tham khảo

Bản mẫu:Refend