3.3.1.Thuật toán tiến hóa bầy hạt
Thuật toán tiến hóa bầy hạt (PSO) là phương pháp thông dụng ựể giải quyết
các vấn ựề tối ưu hóa trong hệ thống ựiện. Phương pháp PSO ựược phát triển bởi Kennedy và Eberhat vào năm 1995 (Kennedy & Eberhart,1995), lấy cảm hứng từ sự
chuyển ựộng của một ựàn chim hay một ựàn cá tìm thức ăn. Kịch bản hứng thú cho phương pháp này ựược miêu tả như sau. Một ựàn chim tìm kiếm thức ăn trong một
vùng ựã biết mà ở ựó chỉ có một mẩu thức ăn ựược phát hiện. Mặc dù các con chim không biết thức ăn chắnh xác là ở ựâu, có xa không. Chiến lược tốt nhất cho việc
tìm thức ăn theo các con chim mà nơi nào gần thức ăn nhất. Các ý tưởng PSO cũng dựa từ kịch bản ựó và thực hiện ựể giải quyết các vấn ựề về thuyết tiến hóa. Nhằm thực hiện PSO, từng con chim duy nhất ựược gọi như một hạt ựại diện ựể thiết lập
các giải pháp ựề xuất trong không gian tìm kiếm và ựàn chim cũng có thể ựược gọi như ựại diện bầy ựàn ựể thiết lập các giải pháp ựưa ra. để ựánh giá các giải pháp
ựưa ra, sử dụng chức năng kết hợp với mỗi hạt và lặp ựi lặp lại ựể thực hiện việc
ựánh giá.
Tương tự các kỹ thuật công nghệ tắnh toán tiến hóa khác như thuật toán di truyền (GA), lập trình tiến hóa (EP), ban ựầu PSO cũng khởi tạo với các giải pháp ngẫu nhiên và tìm kiếm bằng cách cập nhật thường xuyên. Tuy nhiên, PSO không
có người phát triển cũng như ựột biến như GA va EP. Trong PSO, các giải pháp tiềm năng ựại diện bởi các hạt bay qua không gian của vấn ựề ựược dựa vào tốc ựộ và vị trắ tốt nhất dòng ựiện của chúng. So với các phương pháp nhân tạo khác, ựiểm thuận lợi của PSO là nó dễ thực hiện và có một số tham số có thể ựiều chỉnh ựược.
PSO là một phương pháp nhân tạo nó tạo ra một vài giả thiết giả ựịnh về vấn
ựề ựược ựề cập và có thể phối hợp cùng với các vấn ựề có quy mô lớn và không gian rộng các giải pháp ựề nghị. Hơn thế nữa, PSO không dùng ựộ chênh lệch của vấn ựề thực hiện liên quan như một số phương pháp thuyết tiến hóa cổ ựiển như
phương pháp ựộ lệch và NewTon. Do ựó, PSO không cần thực hiện thuyết tiến hóa
ựể có thể khác nhau.
Vấn ựề giải quyết việc thuyết tiến hóa PSO bởi các giải pháp thông thường hay các hạt và sự chuyển ựộng của các hạt này trong không gian nghiên cứu là sử dụng dạng công thức toán học ựơn giản trên vận tốc và vị trắ các hạt. Trong mỗi bước lại, mỗi hạt ựược cập nhật dựa trên các hai giá trị tốt nhất. Giá trị ựầu tiên là giải pháp tốt nhất hạt thu ựược và giá trị sau cùng là giải pháp tốt nhất mà ựàn thu
ựược.
Xét kắch thước n, vấn ựề thuyết tiến hóa với ựối tượng như sau :
Min f(x) (3.3.1)
xmin≤ x ≤ x max (3.3.2)
Ở ựây : x = {x1, x2,Ầxn}T là vector của các biến n không phụ thuộc, và xmax và
xmin là vector giới hạn thay ựổi cao nhất và nhỏ nhất.
để thiết lập PSO, toàn bộ hạt ựược dùng ựể tìm kiếm giải pháp tối ưu cho vấn
ựề. Giả sử rằng có np hạt trong quần thể, vector vận tốc và vector vị trắ của hạt d
ựặc trưng tương ứng bởi xd = {x1d,x2d,Ầxnd}T và vd = {v1d,v2d,Ầvnd}T, d = 1,Ầnp, ở ựây xdlà vị trắ của hạt d và vd là vận tốc của hạt d
để ựánh giá giải pháp tốt nhất cho mỗi hạt và cho toàn bộ, một hàm tương ứng thiết lập hàm mục tiêu và mỗi hạt phối hợp với hàm tương ứng. Vị trắ hạt d tốt nhất
là dựa vào sự so sánh giá trị hàm tương ứng của nó hiện tại lặp lại và giá trị tốt nhất
hàm tương ứng của tất cả các hạt. Vị trắ tốt nhất trước ựó của hạt d ựược thay bởi pbestd={p1d,p2d,Ầ.pnd}T,, d=1,Ần và hạt tốt nhất trong quần thể ựặc trưng bởi gbest={g1,g2,Ầgn]T.
Giả sử k là vị trắ tốt nhất hiện tại của mỗi hạt và quần thể ựược chấp nhận, vận tốc và vị trắ của mỗi hạt trong bước lặp tiếp theo (k+1) nhằm ựánh giá hàm tương
ứng ựược cập nhật như sau : ) ( ) ( ( ) ( ) 2 2 ( ) ( ) 1 1 ) ( ) 1 ( k id k i k id k id k id k
id v c rand pbest x c rand gbest x
v + = + ừ ừ − + ừ ừ − (3.3.3) ) 1 ( ) ( ) 1 ( + = + k+ id k id k id x v x (3.3.4)
Ở ựây hằng số c1 và c2 là các thông số nhận biết và xã hội tương ứng, và rand1
và rand2 là giá trị ngẫu nhiên nằm trong khoảng [0,1]
Các dãy số cao nhất, thấp nhất cho vị trắ của mỗi phần tử trong hạt xid giới
hạn bằng giới hạn (max, min) các biến thay ựổi ựược ựặc trưng bằng các hạt tương
ứng. Tốc ựộ của mỗi hạt ựược giới hạn trong phạm vi [-vid,max, vid,max] khi i=1,Ầ,n
và d=1,Ầnp, ở ựây tốc ựộ (max, min) của phần tử thứ i thuộc về hạt d trong không gian nghiên cứu ựược xác ựịnh bởi :
vid,max = R ừ (xid,max Ờ xid,min) (3.3.5)
vid,min = - vid,max (3.3.6)
R là hệ số giới hạn tốc ựộ, thường chọn trong khoảng [0.1,0.25].
Quá trình thực hiện PSO ựược mô tả như sau: Chọn các thông số
Khởi tạo vận tốc và vị trắ ban ựầu cho mỗi hạt
Thiết lập giá trị ban ựầu cho mỗi hạt có vị trắ tốt nhất (pbestd)
Thiết lập vị trắ các hạt với hàm tối ưu nhất toàn bộ hạt tốt nhất (gbest)
Vòng lặp WHILE<Tiêu chuẩn ựầu cuối không lặp>
Tắnh toán tốc ựộ mới cho từng hạt Cập nhật vị trắ mới cho từng hạt
đánh giá hàm thắch hợp cho từng hạt
Nếu giá trị thắch hợp tốt hơn giá trị trước, cài ựặt vị trắ hạt hiện tại là
pbestd mới
Ngược lại,vị trắ hạt có giá trị tốt nhất tương ứng của tất cả các hạt gbest mới
END
gbest ựược chọn là giải pháp tối ưu nhất