Phương pháp tối ưu bầy đàn là một dạng của các thuật tốn tiến hóa quần thể
được biết đến trước đây như giải thuật di truyền (Genetic Algorithm – GA) . PSO là kết quả của sự mơ hình hóa việc đàn chim bay đi tìm kiếm thức ăn cho nên nó thường
được xếp vào các loại thuật tốn có sử dụng trí tuệ bầy đàn. Được giới thiệu vào năm
1995 tại một hội nghị IEEE bởi James Kennedy và Russell C. Eberhart [17]. PSO chia sẻ nhiều điểm tương đồng các kỹ thuật tính tốn tiến hóa như thuật
tốn di truyền. Hệ thống được khởi tạo với 1 giải pháp ngẫu nhiên và tìm kiếm tối ưu bằng cách cập nhât các thế hệ. So với GA, lợi thể của PSO là dễ thực hiện và có
rất ít các thơng số để điều chỉnh. PSO đã được ứng dụng thành công trong nhiều lĩnh
vực chức năng tối ưu hóa, hệ thống điều khiển mở, mạng nural, mạng cảm biến vô
tuyến.
Để hiểu rõ thuật tốn PSO hãy xem một ví dụ đơn giản về quá trình tìm kiếm
thức ăn của một đàn chim. Khơng gian tìm kiếm thức ăn lúc này là tồn bộ không gian ba chiều mà chúng ta đang sinh sống. Tại thời điểm bắt đầu tìm kiếm cả đàn bay
lượng thức ăn vừa tìm kiếm, mà cá thể gửi tín hiệu đến các cá thể khác đang tìm kiếm
ở vùng lân cận. Tín hiệu này lan truyền trên tồn quần thể. Dựa vào thông tin nhận
được mỗi cá thể sẽ điều chỉnh hướng bay và vận tốc theo hướng về nơi có nhiều thức
ăn nhất. Cơ chế truyền tin như vậy thường được xem như là một kiểu hình của trí tuệ
bầy đàn, giúp cả đàn chim tìm ra nơi có nhiều thức ăn nhất trên khơng gian tìm kiếm
vơ cùng rộng lớn.
Như vậy đàn chim đã dùng trí tuệ, kiến thức và kinh nghiệm của cả đàn để nhanh chóng tìm ra nơi chứa thức ăn. Bây giờ chúng ta tìm hiểu làm cách nào mà
25
một mơ hình trong sinh học như vậy có thể áp dụng trong tính tốn và sinh ra thuật
toán PSO mà ta từng nhắc đến. Việc mơ hình hóa này thường được gọi là q trình
phỏng sinh học (bioinspired) mà chúng ta thường thấy trong các ngành khoa học khác.
Hãy xét bài toán tối ưu của hàm số F trong khơng gian n chiều. Mỗi vị trí trong khơng gian là một điểm tọa độ n chiều. Hàm F là hàm mục tiêu (fitness function) xác định trong không gian n chiều và nhận giá trị thực. Mục đích là tìm ra
điểm cực tiểu của hàm F trong miền xác định nào đó. Ta bắt đầu xem xét sự liên hệ
giữa bài tốn tìm thức ăn với bài tốn tìm cực tiểu của hàm theo cách như sau. Giả
sử rằng số lượng thức ăn tại một vị trí tỉ lệ nghịch với giá trị của hàm F tại vị trí đó.
Có nghĩa là ở một vị trí mà giá trị hàm F càng nhỏ thì số lượng thức ăn càng lớn. Việc tìm vùng chứa thức ăn nhiều nhất tương tự như việc tìm ra vùng chứa điểm cực
tiểu của hàm F trên khơng gian tìm kiếm.
PSO mơ phỏng hành vi của chim đổ Một đàn chim đang tìm kiếm ngẫu nhiên
thực phẩm trong khu vực. Chỉ có một miếng thức ăn trong khu vực đang tìm kiếm. Tất cả các lồi chim khơng biết thức ăn ở đâu, chỉ biết thức ăn xa như thế nào trong
mỗi lần lặp. Chiến lược để tìm kiếm thức ăn là thực hiện theo các con chim gần nhất
với thức ăn. PSO học được từ kịch bản này và sử dụng để giải quyết các vấn đề tối ưu hóa.
Đối với PSO, mỗi giải pháp duy nhất là một “con chim” trong khơng gian tìm kiếm, chúng ta gọi là “cá thể ’’. Các cá thể bay qua không gian bằng cách làm theo
các cá thể tối ưu hiện tại. PSO khởi tạo một nhóm các cá thể ngẫu nhiên sau đó tìm
ở
hiện tại, giá trị này được gọi là pbest. Giá trị tốt nhất thứ 2, được theo dõi bởi PSO, là giá trị tốt nhất thu được bởi bất kỳ cá thể trong quần thể, PSO được gọi là gbest giá trị tốt nhất toán cầu. Sau mỗi lần lặp pbest và gbest được cập nhật nếu tìm thấy
giá trị tốt hơn lần lượt trong từng cá thể và quần thể.
PSO trong một tập hợp các giải pháp tiềm năng được gọi là các cá thể được khởi tạo ngẫu nhiên, mỗi cá thể sẽ có 1 giá trị fitness (mục tiêu), sẽ được đánh giá
26