PHÉP ÁNH XẠ CỦA THUẬT TOÁN GA

Một phần của tài liệu TỐI ƯU HÓA VÙNG PHỦ SÓNG MẠNG THÔNG TIN DI ĐỘNG SỬ DỤNG THUẬT TOÁN BIẾN ĐỔI GEN (Trang 86 - 89)

Phân tích tính hội tụ của thuật toán GA là vấn đề được nhiều nhà nghiên cứu về lĩnh vực lập trình quan tâm. Một trong những nghiên cứu giải thích về quá trình hội tụ của thuật toán GA là lý thuyết của Banach [14]. Lý thuyết Banach được xây dựng trên cơ sở phân tích biến đổi GA là các phép ánh xạ.

Một tập hợp S với một ánh xạ f: S x S → R là một không gian ánh xạ nếu các điều kiện sau thỏa mãn với mọi x, y ∈ S.

a. f(x,y)≥0 và f(x,y) = 0 nếu x = y; b. f(x,y) = f(y,x);

c. f(x,y) + f(y,z)≥f(x,z);

Cho (S,f) là một không gian ánh xạ và f: S→S là một phép ánh xạ. Chúng ta có thể gọi f là một phép ánh xạ nếu tồn tại một giá trị hệ số ε∈[0,1] mà với mọi x, y∈S ta có:

f(f(x,y),f(y))≤ε .f(x,y) (3.1)

Một chuỗi các yếu tố po, p1,p2,….. của không gian ánh xạ (S,f) gọi là một chuỗi Cauchy nếu với bất kỳ một giá trị ε > 0 đều có một giá trị k thỏa mãn m,n>k, f(pm,pn)< ε và một không gian ánh xạ là đầy đủ nếu mỗi chuỗi Cauchy bất kỳ là có giới hạn [14].

Định lý 3.1: Cho (S,f) là một không gian ánh xạ và f: S→S là một phép ánh xạ. Khi đó f tồn tại một điểm duy nhất X ∈ S mà với bất kỳ Xo∈ S, thỏa mãn:

X = limi fi(Xo)

→ (3.2) Ở đây fo(Xo) = Xo và fi+i(Xo) = f(fi(Xo))

Không mất tính tổng quát, giả sử chúng ta xét trường hợp bài toán tối đa hóa giá trị hàm mục tiêu bất kỳ, tức là một giải pháp xi là tốt hơn giải pháp xj nếu hàm giá trị phù hợp fitniess(xi)>fitness(xj). Giả sử rằng kích thước dân số n là cố định như vậy mỗi một tập hợp dân số sẽ có dạng X = {x1,x2,…,xn}.

Như vậy hàm giá trị phù hợp cho một tập hợp dân cư X là: Fitness(X) = ∑ ∈X x i i x fitness n ( ) 1 (3.3)

Ở đây fitness(xi), fitness(xj) là hàm giá trị phù hợp của một cá thể xi, xj ∈X.

Tập hợp S bao gồm tất cả các khả năng của tập hợp dân cư X. Tiếp theo cần định nghĩa phép ánh xạ f: S x S →R và phép ánh xạ f: S→S trong không gian ánh xạ (S,f). Ánh xạ f trong không gian ánh xạ S của tập hợp dân số X có thể được định nghĩa như sau:

M là giới hạn trên của hàm fitness trong miền xem xét hay fitness(x)≤M với mọi cá thể x (kết quả là Fitness(P)≤M với tất cả các khả năng có thể của X). Điều này là hiển nhiên vì theo tính chất của không gian ánh xạ, ta có:

a. f(X1,X2)≥0 với mọi X1,X2 và f(X1,X2) = 0 nếu X1 = X2. b. f(X1,X2) = f(X1,X2) c. f(X1,X2)+f(X2,X3)=1+MFitness(X1) + ) ( 1 ) ( 1 ) (

1+MFitness X2 + +MFitness X2 +MFitness X3

) , ( ) ( 1 ) ( 1+MFitness X1 + +MFitness X3 = f X1 X3 ≥

Do vậy, (S,f) là một không gian ánh xạ. Ngoài ra không gian ánh xạ (S,f) còn là không gian ánh xạ đầy đủ, do chuỗi Cauchy X1, X2, …, Xn của tập dân cư là tồn tại giá trị k mà với mọi n>k, Xn = Xk. Như vậy các chuỗi Cauchy Xi có giới hạn. Một phép ánh xạ f: S→ S được thực hiện bằng một lần lặp của thuật toán GA là một quá trình biến đổi có chiều hướng tốt hơn (đối với hàm giá trị phù hợp Fitness) từ tập hợp dân số X(t) đến tập dân số X(t+1), như vậy f(X(t)) = X(t+1). Hãy nói một cách khác, lần lặp thứ t của thuật toán GA là một phép ánh xạ f nếu Fitness(X(t))<Fitness(X(t+1)). Quá trình thực hiện phép ánh xạ như vậy được biểu diễn như sau:

Khởi tạo t←0 Khởi tạo X(t) Đánh giá X(t)

Trong khi kiểm tra điều kiện kết thúc, thực hiện: Bắt đầu phép ánh xạ f(X(t))→X(t+1) = ) , (X1 X2 f    − + + − + ( ) 1 ( ) 1 0 2 1 M Fitness X X Fitness M Nếu X1 = X2 (3.4) Nếu khác

t←t + 1 Lựa chọn X(t) Đánh giá X(t)

Nếu Fitness(X(t-1))≥Fitness(X(t)) thì t←t + 1 Kết thúc.

Như vậy quá trình biến đổi của thuật toán GA là thỏa mãn một phép ánh xạ vì một quá trình lặp f: X(t)→X(t+1) là tốt hơn đối với hàm Fitness tức là:

Fitness(X1(t))<Fitness(f(X1(t))) = Fitness(X1(t+1)) (3.5) Fitness(X2(t))<Fitness(f(X2(t))) = Fitness(X2(t+1)) (3.6) Khi đó:

f(f(X1(t)),f(X2(t))) = 1+MFitness(f(X1(t))) +1+MFitness(f(X2(t)))

<1+MFitness(X1(t+1)) +1+MFitness(X2(t+1)) = f(X1(t),X2(t)) (3.7)

Như vậy quá trình biến đổi của thuật toán GA cơ bản phù hợp với ngiên cứu của Banach về phép ánh xạ. Không gian (S,f) là một không gian ánh xạ đầy đủ và phép biến đổi f: X(t)→X(t+1) là phép ánh xạ, kết quả là:

X* = limt→∞ fi(X(0)) (3.8)

Như vậy thuật toán biến đổi GA là hội tụ tại một tập hợp dân cư X*, mà đó là điểm duy nhất cố định trong không gian của tất cả các tập hợp dân cư. Tại X* ta sẽ đạt được giá trị tối ưu tổng thể: Fitness(X) = ∑ ∈X x i i x fitness n ( ) 1 (3.9) Hay X* đạt được khi tất cả các cá thể trong tập hợp dân cư có giá trị tối ưu tổng thể và X* không phụ thuộc vào tập hợp dân cư ban đầu X(0) [14].

Trong quá trình biến đổi GA thực tế, trong mỗi lần thực hiện thuật toán cho kết quả hội tụ tại một giá trị tối ưu của lần chạy đó. Quá trình biến đổi của thuật toán GA theo giả thuyết Banach là một phép ánh xạ và hội tụ tại một giá trị tối ưu tổng thể với điều kiện trong thời gian vô hạn. Tuy nhiên trong mỗi một số bước (hay trạng thái) của thuật toán nếu không xuất hiện một tập hợp dân cư mới, thậm chí tác động của các toán tử đột biến và giao hoán cũng không tạo ra được các tập dân cư tốt hơn thì thuật toán sẽ đi vào vòng lặp để cố gắng tìm tập hợp dân cư mới. Như vậy việc lựa chọn việc lựa chọn các tập dân cư ban đầu và hàm đánh giá các giá trị phù hợp có ảnh hưởng quan trọng đến quá trình

hội tụ của GA vì vậy việc lựa chọn tập hợp dân cư ban đầu và hàm đánh giá sẽ tạo điều kiện cho thuật toán hội tụ nhanh hơn trong từng bài toán cụ thể.

Một phần của tài liệu TỐI ƯU HÓA VÙNG PHỦ SÓNG MẠNG THÔNG TIN DI ĐỘNG SỬ DỤNG THUẬT TOÁN BIẾN ĐỔI GEN (Trang 86 - 89)

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

(117 trang)
w