Thuật toỏn tham lam (Greedy Algorithm)

Một phần của tài liệu Thuật toán phỏng bầy kiến giải bài toán k median (Trang 48 - 50)

BÀI TOÁN K-MEDIAN

3.3.1 Thuật toỏn tham lam (Greedy Algorithm)

Gọi S là tập chứa cỏc đỉnh median đang được xõy dựng, k là số median cần tỡm kiếm, c(S) là chi phớ khỏch hàng được phục vụ bởi dịch vụ trong S.

Thuật toỏn thực hiện theo nguyờn tắc như sau:

Procedure GreedyAlgorithm

S=∅;

While |S|<k

<Chọn một đỉnh p khụng thuộc S sao cho:

c(S∪{p}) = min{c(S∪{q}) với mọi q khụng thuộc S}>

doS<- S∪{p}

ReturnS;

End; //Kết thỳc thủ tục

Liờn quan đến giải thuật vột cạn, một số tỏc giả cũn đề xuất giải thuật vột cạn ngược (Reverse Greedy). Giải thuật hoạt động ngược với giải thuật trờn, theo nguyờn tắc như sau: Giải thuật bắt đầu với tập S chứa tất cả cỏc

điểm. Tại mỗi bước lặp, giải thuật loại bỏ dần cỏc đỉnh trong S sao cho tối thiểu chi phớ phục vụ tập cỏc đỉnh đó loại bỏ. Vũng lặp kết thỳc khi tập S chứa

49

3.3.2 Thuật toỏn Local Search

Giả sử ε >0 là một hằng số dương tuỳ ý, n=|F| là số lượng cỏc khả

năng, m=|C| là số lượng cỏc khỏch hàng, p(m,n) là một hàm đa thức của m

n. Hàm chi phớ cost(S) và toỏn hạng op(S) sẽđược định nghĩa khỏc nhau cho cỏc bài toỏn khỏc nhaụ Thuật toỏn thực hiện như sau:

Procedure LocalSearch

S <- <Một lời giải khả thi bất kỳ>

While <∃ một toỏn hạng op sao cho> cost(op(S))≤ (1- ) , (m n p ε )cost(S) doS <- op(S) ReturnS; End; //Kết thỳc thủ tục

Thuật toỏn Local Search này khi ỏp dụng cho bài toỏn k-median cú hai cỏch khỏc nhaụ

ạ Thuật toỏn Local Search đơn trao đổi

Trong trường hợp này quỏ trỡnh trao đổi được thực hiện bằng cỏch chọn một đỉnh sSs’S. Khi đú toỏn hạng op được định nghĩa như sau:

op(S)= S s + s’

50

b. Thuật toỏn Local Search đa trao đổi

Trong trường hợp này cú p đỉnh triển vọng được trao đổi một cỏch

đồng thời thay vỡ 1 đỉnh như trường hợp ạ Khi đú toỏn tử op được định nghĩa như sau:

op(S) = (S\A)∪B với AS, BF\S và |A|=|B|≤p.

Trong trường hợp này, thuật toỏn đó được chứng minh là đạt được kết quả triển vọng tốt hơn trong trường hợp ạ

Một phần của tài liệu Thuật toán phỏng bầy kiến giải bài toán k median (Trang 48 - 50)

Tải bản đầy đủ (PDF)

(87 trang)