Trong phần này sẽ trình bày thuật toán tối ưu giải quyết bài toán phân bổ công suất trên giải thuật PSO cơ bản. Trên cơ sở đó là tiền đề cho sự phát triển các thế hệ sau tối ưu hơn.
Mô tả các yếu tố cơ bản cần thiết cho sự phát triển của Giải pháp thuật toán PSO cơ bản được trình bày dưới đây:
- Cá thể X(t): là một giải pháp đại diện bởi một véc tơ m đa chiều, trong đó m là số lượng tham số tối ưu. Tại thời điểm t, cá thể thứ ở vị trí
được mô tả là , trong đó là vị trí của
cá thể liên quan đến chiều (không gian) thứ , tức là giá trị tối ưu tham số thứ k trong các giải pháp cá thể chọn lọc thứ .
- Quần thể : là tập hợp các cá thể tại thời điểm , tức là .
- Bầy đàn ( : là của một quần thể gần như không trật tự di chuyển có xu hướng chụm lại với nhau, mà mỗi cá thể có vẻ là di chuyển theo một hướng ngẫu nhiên.
- Vận tốc cá thể : vận tốc di chuyển của mỗi cá thể đại diện bởi một vec tơ đa chiều . Tại thời điểm cá thể thứ j chuyển động với vận tốc
được mô tả như sau: , với là
thành phần vận tốc của cá thể thứ liên quan đến chiều thứ k.
- Quán tính trọng lượng : là một tham số điều khiển để kiểm soát tác động của vận tốc trước đó lên vận tốc hiện tại. Do đó nó tác động đến sự thoả hiệp, thăm dò khả năng giữa các cá thể cục bộ và toàn thể, trọng
lượng quán tính lớn để năng cao tính thăm dò toàn thể, được “tiến cử” ở trạng thái ban đầu cho đến trạng thái cuối cùng, trọng lượng quán tính giảm tính thăm dò cục bộ tốt hơn.
- Vị trí tìm kiếm tốt nhất : trong quá trình tìm kiếm, cá thể so sánh giá trị thích hợp tại vị trí hiện tại, đến giá trị thích hợp nhất đã có được bất kỳ lúc nào ngay lúc đó. Vị trí tốt nhất đó liên quan đến giá trị thích hợp nhất (best fitness) cho đến khi được chọn là vị trí tốt nhất tại thời điểm t gọi là . Bằng cách này, vị trí tốt nhất cho mỗi cá thể trong bầy đàn, có thể được xác định và cập nhật trong suốt quá trình tìm kiếm. Ví dụ, trong một vấn đề giảm đến mức tối đa hàm mục tiêu J, vị trí tốt nhất của cá thể thứ j được xác định là:
. Giả sử đơn giản hoá rằng: . Cho cá thể thứ j, vị trí tốt nhất có thể được diễn giải như sau: ]. - Toàn bộ tốt nhất : đó là vị trí tốt nhất giữa tất cả các vị trí tốt nhất.
Do đó, toàn bộ tốt nhất có thể được xác định như sau:
, . Giả sử đơn giản hoá rằng: .
- Tiêu chí dừng: các điều kiện trong qua trình tìm kiếm sẽ chấm dứt. Trong trường hợp này, quá trình tìm kiếm sẽ chấm dứt nếu xảy ra một trong các điều kiện sau đây được đáp ứng :
a/ Số lần lặp, sự thay đổi ở giải pháp cuối cùng xảy ra tốt nhất lớn hơn được xác định ở lần trước đó. Hoặc.
b/ Số lần lặp đến số lượng tối đa cho phép. Với sự mô tả các yếu tố cơ bản trên, các thuật toán giải pháp được phát triển đưa ra dưới đây:
+ Để thực hiện sự tìm kiếm thống nhất trong giai đoạn đầu và tìm kiếm ở các vùng cục bộ sau đó, một quy trình rèn luyện như sau. Hàm suy giảm cho sự suy giảm quán tính trọng lượng được cho là , α là hằng số suy giảm nhỏ hơn nhưng gần bằng 1, được xem xét ở đây.
+ Kiểm tra tính khả thi cho việc áp dụng các quy trình của vị trí cá thể, sau đó cập nhật vị trí và ngăn ngừa các cá thể khác từ không gian bay vào vị trí khả thi.
+ Vận tốc của cá thể trong chiều không gian thứ k ( ) bị giới hạn bởi một vài giá trị lớn nhất . Với giới hạn này, việc tăng cường thăm dò trong không gian cục bộ được thực hiện và mô phỏng thực tế này làm gia tăng sự thay đổi học hỏi của con người. Để đảm bảo thống nhất vận tốc thông qua tất cả các chiều không gian, vận tốc lớn nhất của chiều thứ được viết như sau:
Trong thuật toán PSO, quần thể có cá thể, mỗi cá thể là một vec tơ không gian đa chiều , với là thông số tối ưu. Kết hợp với sự sửa đổi trên, việc tính toán dòng chảy công suất bằng thuật toán PSO theo từng bước như sau:
Bƣớc 1: Khởi tạo
Cài đặt thời gian đếm ( , tạo ngẫu nhiên cá thể ,
với .
) được tạo ra bằng cách chọn ngẫu nhiên một giá trị có khả năng xảy ra đồng bộ trên thông số tối ưu thứ trong không gian tìm kiếm
.
Tương tự, tạo ra vận tốc ngẫu nhiên ban đầu của tất cả các cá thể
với .
) được tạo ra bằng cách chọn ngẫu nhiên một giá trị có khả năng xảy ra đồng bộ trên chiều không gian thứ , [ ].
Mỗi cá thể trong quần thể ban đầu được đánh giá bằng cách sử dụng hàm mục tiêu .
Đối với mỗi cá thể, thiết lập và . Tìm kiếm cho giá trị tốt nhất của hàm mục tiêu .
Thiết lập mối liên hệ liên quan đến cá thể tốt nhất toàn bộ, với hàm mục tiêu của .
Thiết lập giá trị ban đầu của quán tính trọng lượng .
Bƣớc 2: Cập nhật thời gian Cập nhật thời gian đếm Bƣớc 3: Cập nhật trọng lƣợng Cập nhật quán tính trọng lượng Bƣớc 4: Cập nhật vận tốc Bằng cách sử dụng toàn bộ tốt nhất và từng cá thể tốt nhất, vận tốc cá thể thứ trong chiều không gian , được cập nhật theo phương trình sau:
Với là hằng số vị trí, là giá trị đồng bộ phân phối ngẫu nhiên[0,1]. Giá trị đề cập đến ở kỳ thứ 2 đại diện cho sự liên quan đến một phần của PSO, trong đó sự thay đổi vận tốc của cá thể dựa trên sự tư duy và trí nhớ của chính nó. Đến lần thứ ba, nó đại diện cho một phần có tính chất thành viên của một xã hội của PSO trong đó sự thay đổi vận tốc của cá thể dựa trên sự thích nghi xã hội, kinh nghiệm của nó. Nếu một cá thể vi phạm giới hạn tốc độ, thiết lập giới hạn vận tốc ngang bằng.
Bƣớc 5: Cập nhật vị trí
Dựa trên sự thay đổi vận tốc được cập nhật, sự thay đổi vị trí của mỗi cá thể theo phương trình:
Nếu một cá thể nào vi phạm giới hạn vị trí trong bất kỳ khoảng cách nào, việc thiết lập vị trí tại một giới hạn thích hợp.
Bƣớc 6: Cập nhật vị trí tốt nhất (của một cá thể tốt nhất)
Mỗi cá thể được đánh giá theo một vị trí cập nhật của nó. Nếu
vị trí tốt nhất sau đó được cập nhật là và . Đi tiếp bước 7, hoặc khác.
Bƣớc 7: Cập nhật vị trí tốt nhất toàn bộ
Việc tìm kiếm giá trị tối thiểu giữa và , với là chỉ số của các cá thể với hàm mục tiêu tối thiểu, tức là, nếu . Nếu
, sau đó cập nhật giá trị tốt nhất toàn bộ là và . Đi tiếp bước 8, hoặc khác.
Bƣớc 8: Tiêu chí dừng
Nếu một trong tất cả các tiêu chí dừng lại đạt thì sẽ dừng, nếu không quay lại bước 2.