Giải thuật PSO

Một phần của tài liệu Nghiên cứu thị trường bán buôn điện cạnh tranh, tối ưu dòng chảy công suất và xác định phí trên lưới điện truyền tải (Trang 104)

Các yếu tố cơ bản của kỹ thuật PSO được thể hiện ngắn gọn và được định nghĩa như sau:

ƒ Phn t (Particle), X(t): Là một giải pháp ứng cử được đại diện bởi một vector m-chiều (dimension), trong đó m là số tham số tối ưu. Tại thời điểm t, phần tửXj(t) thứj có thểđược mô tả là Xj(t) = [xj,1(t),…,xj,m(t)], trong đó xs là các thông số tối ưu hóa và xj,k(t) là vị trí của phần tử thứj liên quan đến chiều thứk, tức là giá trị của thông số tối ưu thứk trong giải pháp ứng cử thứj.

ƒ Tp hp (Population), pop(t): Là một tập hợp các phần tửn tại thời điểm t, tức là pop(t) = [X1(t),…,Xn(t)]T.

ƒ Đàn (Swarm): Là một tập hợp dường như vô tổ chức của việc di chuyển phần tử mà có xu hướng chụm lại với nhau (cluster) trong khi mỗi phần tử

dường nhưđang di chuyển theo một hướng ngẫu nhiên (random).

ƒ Vn tc phn t (Particle velocity), V(t): Là vận tốc của việc di chuyển các phần tử được biểu diễn bởi 1 vector m-chiều. Tại thời điểm t, vận tốc Vj(t)

của phần tử thứj có thểđược mô tả là Vj(t) = [vj,1(t),…,vj,m(t)], trong đó vj,k(t)

là thành phần vận tốc của phần tử thứjth liên quan đến chiều thứk.

ƒ Trng lượng quán tính (Inertia weight), w(t): Là một tham số kiểm soát

được sử dụng để kiểm soát sự tác động của các vận tốc trước đó đến vận tốc hiện tại. Do đó, nó ảnh hưởng đến sự cân bằng (trade-off) giữa những khả

năng thăm dò địa phương và toàn cục của phần tử. Đối với giai đoạn đầu của quá trình tìm kiếm, trọng lượng quán tính lớn để tăng cường sự thăm dò toàn cục được đề nghị, trong khi các giai đoạn cuối trọng lượng quán tính giảm

đối với sự thăm dò địa phương tốt hơn.

ƒ Cá nhân tt nht (Individual best), X*(t): Khi một phần tử di chuyển qua không gian tìm kiếm, nó so sánh giá trị tương ứng (fitness value) của nó tại vị trí hiện tại với giá trị tương ứng tốt nhất (best fitness value) nó từng đạt

được bất cứ lúc nào cho đến thời điểm hiện tại. Vị trí tốt nhất đó được kết hợp với sự gặp phải tương ứng tốt nhất từ trước đến giờ thì được gọi là cá nhân tốt nhất, X*(t). Đối với mỗi một phần tử trong đàn, X*(t) có thểđược xác

định và cập nhật trong suốt thời gian tìm kiếm. Trong một bài toán cực tiểu với hàm mục tiêu J, cá nhân tốt nhất X*j(t)của phần từ thứj được xác định:

J(X*j(t)) ≤J(Xj(τ)), τ t. Đểđơn giản, giảđịnh rằng J*j =J(X*j(t)). Đối với phần tử thứj, cá nhân tốt nhất có thểđược biểu diễn: [ ( ),..., ( )] ) ( * , * 1 , * t x t x t Xj = j jm . (3.15)

ƒ Toàn cc tt nht (Global best), X**(t): Là vị trí tốt nhất trong số tất cả các vị trí cá nhân tốt nhất đạt được từ trước đến giờ. Do đó, toàn cục tốt nhất có thểđược xác định: J(X**(t))J(X*j(t)), j = 1,…,n. Đểđơn giản, giả sử rằng

J** = J(X**(t)).

ƒ Tiêu chun dng (stopping criteria): Đây là những điều kiện mà quá trình tìm kiếm sẽ chấm dứt. Việc tìm kiếm sẽ chấm dứt nếu một trong các tiêu chí sau đây thỏa mãn: (a) số lần lặp lại kể từ khi thay đổi cuối cùng của giải pháp tốt nhất là lớn hơn một sốđược xác định trước đó hoặc (b) số lần lặp lại đạt

đến số cho phép tối đa.

Trong nghiên cứu này, PSO cơ bản được phát triển như sau:

ƒ Một quy trình tôi luyện đã được kết hợp để thực hiện việc tìm kiếm thống nhất trong các giai đoạn đầu và tìm kiếm rất địa phương trong các giai đoạn sau. Một hàm giảm (decrement function) cho việc giảm trọng lượng quán tính được cho là w(t) = αw(t-1), α là một hằng số giảm nhỏ hơn nhưng gần với 1, được đề xuất trong nghiên cứu này.

ƒ Tính khả thi kiểm tra quy trình của các vị trí phần tửđã được áp đặt sau khi cập nhật vị trí để ngăn chặn những phần tử từ bên ngoài bay vào không gian tìm kiếm khả thi.

ƒ Vận tốc phần tử trong chiều thứk bị giới hạn bởi một vài giá trị tối đa, vkmax. Giới hạn này tăng cường thăm dò địa phương của không gian bài toán và nó mô phỏng thực tế những sự thay đổi gia tăng của việc học của con người. Để đảm bảo vận tốc thống nhất thông qua tất cả các chiều, vận tốc tối đa trong chiều thứkđược đề xuất là:

N x

x

vkmax =( kmax − kmin)/ (3.16)

Trong giải thuật PSO, tập hợp có n phần tử và mỗi phần tử là một vector m-chiều, trong đó m là số lượng các thông số tối ưu. Kết hợp với sự sửa đổi ở trên, dòng chảy tính toán của kỹ thuật PSO có thểđược mô tả trong các bước sau:

Bước 1 (Khi to - Initiation): Đặt thời gian đếm t = 0 và tạo những phần tử n

ngẫu nhiên, {Xj(0), j = 1,…,n}, trong đó Xj(0) = [xj,1(0),…,xj,m(0)]., xj,k(0) được tạo bằng cách chọn lựa ngẫu nhiên một giá trị với xác suất thống nhất trên không gian tìm kiếm[xkmin,xkmax] của thông số tối ưu thứk. Tương tự như vậy, tạo ra các vận tốc ban đầu ngẫu nhiên của tất cả các phần tử, {Vj(0), j = 1,…,n}, trong đó Vj(0) = [vj,1(0), …,vj,m(0)]. Vj,k(0)được tạo ra bằng cách chọn lựa ngẫu nhiên một giá trị với xác suất thống nhất [−vkmax,vkmax] trên chiều thứ k . Mỗi phần tử trong tập hợp ban

đầu được ước lượng sử dụng hàm mục tiêu, J. Đối với mỗi phần tử, thiết lập

) 0 ( ) 0 ( * j j X X = và J*j =Jj, j = 1,…,n. Tìm kiếm giá trị tốt nhất của hàm mục tiêu Jbest. Thiết lập phần tử liên quan với Jbest như là toàn cục tốt nhất, X**(0), với một hàm mục tiêu của J**. Thiết lập giá trị ban đầu của trọng lượng quán tính w(0).

Bước 2 (Cp nht thi gian - Time updating): Cập nhật thời gian đếm t = t + 1

Bước 3 (Cp nht trng lượng – Weight updating): Cập nhật trọng lượng quán tính w(t) = αw(t-1).

Bước 4 (Cp nht vn tc - Velocity updating): Sử dụng toàn cục tốt nhất (global best) và cá nhân tốt nhất (individual best) của mỗi phần tử, vận tốc phần tử thứ j

chiều thứkđược cập nhật theo công thức sau:

)) 1 ( ) 1 ( ( )) 1 ( ) 1 ( ( ) 1 ( ) ( ) ( ** , , 2 2 , * , 1 1 , , t =wt v t− +c r x t− −x t− +c r x t− −x tvjk jk jk jk jk jk (3.17)

Trong đó c1c2 là hằng số dương và r1r2 những số được phân bố đều ngẫu nhiên trong [0,1]. Điều đáng nói đến là kỳ thứ hai miêu tả một phần nhận thức của PSO trong đó phần tử thay đổi vận tốc của nó dựa trên tư duy và trí nhớ của mình. Kỳ thứ ba miêu tả cho một phần xã hội của PSO trong đó phần tử thay đổi vận tốc của nó dựa trên sự thích nghi xã hội-tâm lý (social-psychological) của sự nhận biết. Nếu một phần tử vi phạm các giới hạn vận tốc (velocity limits), thiết lập vận tốc của nó bằng với giới hạn.

Bước 5 (Cp nht v trí – Position updating): Dựa trên các vận tốc được cập nhật, mỗi phần tử thay đổi vị trí của nó theo công thức sau:

Nếu một phần tử vi phạm các giới hạn vị trí của nó trong bất kỳ chiều nào, thiết lập vị trí của nó ở giới hạn thích hợp.

Bước 6 (Cp nht cá nhân tt nht - individual best updating): Mỗi phần tử được

ước lượng căn cứ vào vị trí cập nhật của nó. Nếu *

j j J

J < , j = 1,…,n, khi đó cập nhật cá nhân tốt nhất là X*j(t)= Xj(t) và J*j =Jj và đi đến bước 7, còn lại đi đến bước 7.

Bước 7 (Cp nht toàn cc tt nht – global best updating): Tìm kiếm giá trị cực tiểu Jmin trong *

j

J , trong đó min là chỉ số của phần tử với hàm mục tiêu cực tiểu, tức là min {j; j = 1,…,n}. Nếu Jmin < J**, khi đó cập nhật toàn cục tốt nhất là X**(t) = Xmin(t)J**= Jmin và đi đến bước 8; còn lại đi đến bước 8.

Bước 8 (Tiêu chun dng – Stopping criteria): Nếu một trong số tiêu chuẩn dừng thỏa mãn khi đó dừng lại; còn lại đi đến Bước 2.

Một phần của tài liệu Nghiên cứu thị trường bán buôn điện cạnh tranh, tối ưu dòng chảy công suất và xác định phí trên lưới điện truyền tải (Trang 104)