Thu t toán DE v n đang đ c xem là thu t toán t i u hoàn thi n, hi n đ i nh t đang đ c quan tâm, ng d ng vào gi i các bài toán t i u k thu thi n nay.
HU
TEC
H
toán t i u m i này vào gi i nh ng bài toán t i u khó h n cho các h th ng công su tnh sau:
• ng d ng DE vào các bài toán công su t khó h n nh các h th ng n ng l ng khác có s d ng nhi u lo i nhiên li u, nhi u ràng bu c h n và có xét thêm
nh h ng c a môi tr ng.
• Vi c l a ch n các h s t l F, h s xác su t lai ghép CR và h s ph t
trong DE ph thu c r t nhi u vào kinh nghi m c a ng i s d ng nên c n tránh ho c gi m b t vi c ph i l a ch n các h s này đ đ n gi n h n cho quá trình t i
u.
• Nâng c p mã thu t toán đ c i thi n quá trình th c thi và gi m b t s l n mô ph ng nh trong các bài toán OPF.
HU
TEC
H
PH L C 1:
clc
% So tham so dieu khien I_D = 5; % Kich co quan the
I_NP = input('Nhap kich co quan the NP = '); if (I_NP < 5)
I_NP = 50;
fprintf(1,'Kich co quan the toi thieu phai la 5, mac dinh la 50\n\n'); end
% So the he can lap
I_itermax = input('Nhap so the he can lap I = '); if (I_itermax <= 0)
I_itermax = 200;
fprintf(1,'So the he can lap phai la so duong, mac dinh la 200\n\n'); end
% He so ty le
F_weight = input('Nhap he so ty le F = '); if ((F_weight < 0) | (F_weight > 1.2))
F_weight = 0.8;
fprintf(1,'He so ty le phai nam trong [0 , 1.2], mac dinh la 0.8\n\n'); end
% Hang so lai ghep
HU
TEC
H
if ((F_CR < 0) | (F_CR > 1)) F_CR = 0.9;
fprintf(1,'Hang so lai ghep phai nam trong [0 , 1], mac dinh la 0.9\n\n'); end
% Cac rang buoc bien bat can bang
FVr_maxbound=[500 200 300 150 200]; FVr_minbound=[100 50 80 50 50]; S_struct.I_D = I_D; S_struct.I_NP = I_NP; S_struct.I_itermax = I_itermax; S_struct.F_weight = F_weight; S_struct.F_CR = F_CR; S_struct.FVr_minbound = FVr_minbound; S_struct.FVr_maxbound = FVr_maxbound; % Bat dau qua trinh toi uu hoa
tic % Bat dau do thoi gian thuc hien chuong trinh deopt('objfun',S_struct);
time = toc; % Dung thoi gian chay chuong trinh
fprintf('\nThoi gian tinh toan do duoc la %f (s)\n',time);
File objfun.m(file ch a hàm m c tiêu):
function S_MSE= objfun(P, S_struct) % Ham thich nghi
F_cost = 16426-5*P(1)-2*P(2)-3.5*P(3)-P(4)-1.5*P(5)+0.007*P(1)^2+ +0.0095*P(2)^2+0.009*P(3)^2+0.009*P(4)^2+0.008*P(5)^2+0.0075*(1263--P(1)-P(2)-P(3)-
HU
TEC
H
% Dieu kien truoc khi rang buoc S_MSE.I_nc = 0;
S_MSE.FVr_ca = 0;
S_MSE.I_no = 1; % So ham thich nghi
S_MSE.FVr_oa(1) = F_cost; % Gia tri ham thich nghi can tim
File left_win(file ch a hàm ki m tra ràng bu c và hàm thích nghi):
function I_z = left_win(S_x,S_y); I_z = 1;
% Qua trinh giai quyet rang buoc if (S_x.I_nc > 0)
for k=1:S_x.I_nc
if (S_x.FVr_ca(k) > 0) % Neu rang buoc chua thoa man
if (S_x.FVr_ca(k) > S_y.FVr_ca(k))% Neu bat ky rang buoc nao cua S_x khong duoc cai thien
I_z = 0; end end end end if (S_x.I_no > 0) for k=1:S_x.I_no
if (S_x.FVr_oa(k) > S_y.FVr_oa(k))% Neu bat ky gia tri ham chi phi nao cua S_x khong duoc cai thien
I_z = 0; end
HU
TEC
H
end end
File deopt.m(file chính ch a hàm th c hi n quá trình t i u DE):
function [FVr_bestmem,S_bestval,I_nfeval] = deopt(fname,S_struct) I_D = S_struct.I_D; I_NP = S_struct.I_NP; I_itermax = S_struct.I_itermax; F_weight = S_struct.F_weight; F_CR = S_struct.F_CR; FVr_minbound = S_struct.FVr_minbound; FVr_maxbound = S_struct.FVr_maxbound; % Khoi tao quan the va cac ma tran
FM_pop = zeros(I_NP,I_D); for k=1:I_NP
FM_pop(k,:) = FVr_minbound + rand(1,I_D).*(FVr_maxbound - FVr_minbound); end
FM_popold = zeros(size(FM_pop));
FVr_bestmem = zeros(1,I_D);% Cac ca the tot nhat tim duoc
FVr_bestmemit = zeros(1,I_D);% Cac ca the tot nhat trong quan the hien tai % Tim ca the tot nhat trong quan the ban dau
I_best_index = 1; % Bat dau kiem tra voi ca the dau tien S_val(1) = feval(fname,FM_pop(I_best_index,:),S_struct);
S_bestval = S_val(1); % Gia tri ham phu hop tot nhat tim duoc for k=2:I_NP % Kiem tra cac ca the con lai
HU
TEC
H
S_val(k) = feval(fname,FM_pop(k,:),S_struct); if (left_win(S_val(k),S_bestval) == 1)
I_best_index = k; % Ghi lai vi tri cua ca the tot nhat S_bestval = S_val(k); % Ghi lai gia tri ca the tot nhat end
end
FVr_bestmemit = FM_pop(I_best_index,:);
S_bestvalit = S_bestval; % Gia tri tot nhat cua ham phu hop trong the he hien tai FVr_bestmem = FVr_bestmemit;
FM_pm1 = zeros(I_NP,I_D); % Khoi tao ma tran 1 trong quan the FM_pm2 = zeros(I_NP,I_D); % Khoi tao ma tran 2 trong quan the FM_pm3 = zeros(I_NP,I_D); % Khoi tao ma tran 3 trong quan the
% Tao quan the trung gian chuan bi cho viec xao tron vector va cho quan the cu FM_ui = zeros(I_NP,I_D);
FM_mui = zeros(I_NP,I_D); FM_mpo = zeros(I_NP,I_D);
% Khoi tao cac vector chuan bi cho viec toi uu FVr_rot = (0:1:I_NP-1); FVr_rotd = (0:1:I_D-1); FVr_rt = zeros(I_NP); FVr_rtd = zeros(I_D); FVr_a1 = zeros(I_NP); FVr_a2 = zeros(I_NP); FVr_a3 = zeros(I_NP);
HU
TEC
H
FVr_ind = zeros(4);
% Bat dau thuc hien toi uu cho moi the he I_iter = 1;
while (I_iter < I_itermax+1)
FM_popold = FM_pop; % Ghi lai quan the cu S_struct.FM_pop = FM_pop; S_struct.FVr_bestmem = FVr_bestmem; FVr_ind = randperm(4); FVr_a1 = randperm(I_NP); FVr_rt = rem(FVr_rot+FVr_ind(1),I_NP); FVr_a2 = FVr_a1(FVr_rt+1); FVr_rt = rem(FVr_rot+FVr_ind(2),I_NP); FVr_a3 = FVr_a2(FVr_rt+1); FM_pm1 = FM_popold(FVr_a1,:); FM_pm2 = FM_popold(FVr_a2,:); FM_pm3 = FM_popold(FVr_a3,:); FM_mui = rand(I_NP,I_D) < F_CR; FM_mpo = FM_mui < 0.5;
FM_ui = FM_pm3 + F_weight*(FM_pm1 - FM_pm2); % Thuc hien dot bien FM_ui = FM_popold.*FM_mpo + FM_ui.*FM_mui; % Thuc hien lai ghep FM_origin = FM_pm3;
% Chon cac vector tot hon de dua vao quan the ke tiep for k=1:I_NP
HU
TEC
H
for j=1:I_D
if (FM_ui(k,j) > FVr_maxbound(j))
FM_ui(k,j) = FVr_maxbound(j) + rand*(FM_origin(k,j) - FVr_maxbound(j)); end
if (FM_ui(k,j) < FVr_minbound(j))
FM_ui(k,j) = FVr_minbound(j) + rand*(FM_origin(k,j) - FVr_minbound(j)); end
end
% Kiem tra va cap nhat lai cac ca the tot hon S_tempval = feval(fname,FM_ui(k,:),S_struct); if (left_win(S_tempval,S_val(k)) == 1) FM_pop(k,:) = FM_ui(k,:); S_val(k) = S_tempval; if (left_win(S_tempval,S_bestval) == 1) S_bestval = S_tempval; FVr_bestmem = FM_ui(k,:); end end end % for k = 1:NP
% Moi khi hoan thanh 1 the he, tang so the he len 1 I_iter = I_iter + 1;
end
HU
TEC
H
fprintf('\nKET QUA TOI UU TIM DUOC VOI %d LAN LAP NHU SAU:\n\n',I_itermax);
fprintf(1,'So the he lap lai: %d, He so ty le: %f, Hang so lai ghep: %f, Kich co quan the: %d\n',I_itermax,F_weight,F_CR,I_NP);
format long e; for n=1:I_D
fprintf(1,'P(%d) = %f\n',n,FVr_bestmem(n)); end
FVr_bestmem_(6) = 1263 - (FVr_bestmem(1) + FVr_bestmem(2) + FVr_bestmem(3) + FVr_bestmem(4) + FVr_bestmem(5));
fprintf('P(6) = %f\n',FVr_bestmem_(6)); fprintf('---\n');
HU
TEC
H
PH L C 2:
clc
% So tham so dieu khien I_D = 3; % Kich co quan the
I_NP = input('Nhap kich co quan the NP = '); if (I_NP < 5)
I_NP = 30;
fprintf(1,'Kich co quan the toi thieu phai la 5, mac dinh la 30\n\n'); end
% So the he can lap
I_itermax = input('Nhap so the he can lap I = '); if (I_itermax <= 0)
I_itermax = 200;
fprintf(1,'So the he can lap phai la so duong, mac dinh la 200\n\n'); end % He so ty le F_weight = input('Nhap he so ty le F = '); if ((F_weight < 0) | (F_weight > 1.2)) F_weight = 0.8;
fprintf(1,'He so ty le phai nam trong [0 , 1.2], mac dinh la 0.8\n\n'); end
HU
TEC
H
F_CR = input('Nhap hang so lai ghep CR = '); if ((F_CR < 0) | (F_CR > 1))
F_CR = 0.9;
fprintf(1,'Hang so lai ghep phai nam trong [0 , 1], mac dinh la 0.9\n\n'); end
% He so phat
F_R = input('Nhap he so phat (trong bai nay R nen chon trong (10 , 50) se toi uu ra duoc ket qua tot nhat) R = ');
if (F_R < 0) F_R = 20;
fprintf(1,'He so phat phai la so duong, mac dinh la 20\n\n'); end
% Cac rang buoc bien bat can bang FVr_maxbound=[85 80 70]; FVr_minbound=[10 10 10]; S_struct.I_D = I_D; S_struct.I_NP = I_NP; S_struct.I_itermax = I_itermax; S_struct.F_weight = F_weight; S_struct.F_CR = F_CR; S_struct.F_R = F_R; S_struct.FVr_minbound = FVr_minbound; S_struct.FVr_maxbound = FVr_maxbound; % Bat dau qua trinh toi uu hoa
HU
TEC
H
tic % Bat dau do thoi gian thuc hien chuong trinh deopt('objfun',S_struct);
time = toc; % Dung thoi gian chay chuong trinh
fprintf('\nThoi gian tinh toan do duoc la %f (s)\n',time);
File objfun.m:
function S_MSE= objfun(P, S_struct) F_R = S_struct.F_R;
% Ham thich nghi
F_cost = 0.008*P(1)^2+0.009*P(2)^2+0.007*P(3)^2+7*P(1)+6.3*P(2)+
+6.8*P(3)+520+F_R*abs(P(1)+P(2)+P(3)-0.000218*P(1)^2-0.000228*P(2)^2--0.000179*P(3)^2- 150);
% Dieu kien truoc khi rang buoc S_MSE.I_nc = 0;
S_MSE.FVr_ca = 0;
S_MSE.I_no = 1; % So ham thich nghi
S_MSE.FVr_oa(1) = F_cost; % Gia tri ham thich nghi can tim
File left_win:
function I_z = left_win(S_x,S_y); I_z = 1;
% Qua trinh giai quyet rang buoc if (S_x.I_nc > 0)
for k=1:S_x.I_nc
if (S_x.FVr_ca(k) > 0) % Neu rang buoc chua thoa man
if (S_x.FVr_ca(k) > S_y.FVr_ca(k)) % Neu bat ky rang buoc nao cua S_x khong duoc cai thien
HU TEC H I_z = 0; end end end end if (S_x.I_no > 0) for k=1:S_x.I_no
if (S_x.FVr_oa(k) > S_y.FVr_oa(k)) % Neu bat ky gia tri ham chi phi nao cua S_x khong duoc cai thien
I_z = 0; end end end
File deopt.m:
function [FVr_bestmem,S_bestval,I_nfeval] = deopt(fname,S_struct) I_D = S_struct.I_D; I_NP = S_struct.I_NP; I_itermax = S_struct.I_itermax; F_weight = S_struct.F_weight; F_CR = S_struct.F_CR; F_R = S_struct.F_R; FVr_minbound = S_struct.FVr_minbound; FVr_maxbound = S_struct.FVr_maxbound; % Khoi tao quan the va cac ma tran
HU
TEC
H
FM_pop = zeros(I_NP,I_D); for k=1:I_NP
FM_pop(k,:) = FVr_minbound + rand(1,I_D).*(FVr_maxbound - FVr_minbound); end
FM_popold = zeros(size(FM_pop));
FVr_bestmem = zeros(1,I_D);% Cac ca the tot nhat tim duoc
FVr_bestmemit = zeros(1,I_D);% Cac ca the tot nhat trong quan the hien tai % Tim ca the tot nhat trong quan the ban dau
I_best_index = 1; % Bat dau kiem tra voi ca the dau tien S_val(1) = feval(fname,FM_pop(I_best_index,:),S_struct);
S_bestval = S_val(1); % Gia tri ham phu hop tot nhat tim duoc for k=2:I_NP % Kiem tra cac ca the con lai
S_val(k) = feval(fname,FM_pop(k,:),S_struct); if (left_win(S_val(k),S_bestval) == 1)
I_best_index = k; % Ghi lai vi tri cua ca the tot nhat S_bestval = S_val(k); % Ghi lai gia tri ca the tot nhat end
end
FVr_bestmemit = FM_pop(I_best_index,:);
S_bestvalit = S_bestval; % Gia tri tot nhat cua ham phu hop trong the he hien tai FVr_bestmem = FVr_bestmemit;
FM_pm1 = zeros(I_NP,I_D); % Khoi tao ma tran 1 trong quan the FM_pm2 = zeros(I_NP,I_D); % Khoi tao ma tran 2 trong quan the FM_pm3 = zeros(I_NP,I_D); % Khoi tao ma tran 3 trong quan the
HU
TEC
H
% Tao quan the trung gian chuan bi cho viec xao tron vector va cho quan the cu FM_ui = zeros(I_NP,I_D);
FM_mui = zeros(I_NP,I_D); FM_mpo = zeros(I_NP,I_D);
% Khoi tao cac vector chuan bi cho viec toi uu FVr_rot = (0:1:I_NP-1); FVr_rotd = (0:1:I_D-1); FVr_rt = zeros(I_NP); FVr_rtd = zeros(I_D); FVr_a1 = zeros(I_NP); FVr_a2 = zeros(I_NP); FVr_a3 = zeros(I_NP); FVr_ind = zeros(4);
% Bat dau thuc hien toi uu cho moi the he I_iter = 1;
while (I_iter < I_itermax+1)
FM_popold = FM_pop; % Ghi lai quan the cu S_struct.FM_pop = FM_pop; S_struct.FVr_bestmem = FVr_bestmem; FVr_ind = randperm(4); FVr_a1 = randperm(I_NP); FVr_rt = rem(FVr_rot+FVr_ind(1),I_NP); FVr_a2 = FVr_a1(FVr_rt+1); FVr_rt = rem(FVr_rot+FVr_ind(2),I_NP);
HU TEC H FVr_a3 = FVr_a2(FVr_rt+1); FM_pm1 = FM_popold(FVr_a1,:); FM_pm2 = FM_popold(FVr_a2,:); FM_pm3 = FM_popold(FVr_a3,:); FM_mui = rand(I_NP,I_D) < F_CR; FM_mpo = FM_mui < 0.5;
FM_ui = FM_pm3 + F_weight*(FM_pm1 - FM_pm2); % Thuc hien dot bien FM_ui = FM_popold.*FM_mpo + FM_ui.*FM_mui; % Thuc hien lai ghep FM_origin = FM_pm3;
% Chon cac vector tot hon de dua vao quan the ke tiep for k=1:I_NP
% Kiem tra va dieu chinh lai cac rang buoc bien neu vi pham for j=1:I_D
if (FM_ui(k,j) > FVr_maxbound(j))
FM_ui(k,j) = FVr_maxbound(j) + rand*(FM_origin(k,j) - FVr_maxbound(j)); end
if (FM_ui(k,j) < FVr_minbound(j))
FM_ui(k,j) = FVr_minbound(j) + rand*(FM_origin(k,j) - FVr_minbound(j)); end
end
% Kiem tra va cap nhat lai cac ca the tot hon S_tempval = feval(fname,FM_ui(k,:),S_struct); if (left_win(S_tempval,S_val(k)) == 1)
HU TEC H S_val(k) = S_tempval; if (left_win(S_tempval,S_bestval) == 1) S_bestval = S_tempval; FVr_bestmem = FM_ui(k,:); end end end % for k = 1:NP
% Moi khi hoan thanh 1 the he, tang so the he len 1 I_iter = I_iter + 1;
end
% Gia tri ham chi phi toi uu
F_cost = 0.008*FVr_bestmem(1)^2+0.009*FVr_bestmem(2)^2+0.007* *FVr_bestmem(3)^2+7*FVr_bestmem(1)+6.3*FVr_bestmem(2)+6.8* *FVr_bestmem(3)+520;
% Gia tri ham ton that cong suat tac dung toi uu
P_L = 0.000218*FVr_bestmem(1)^2+0.000228*FVr_bestmem(2)^2+ +0.000179*FVr_bestmem(3)^2;
% Xuat ket qua ra man hinh
fprintf('\nKET QUA TOI UU TIM DUOC VOI %d LAN LAP NHU SAU:\n\n',I_itermax);
fprintf(1,'So the he lap lai: %d, He so ty le: %f, Hang so lai ghep: %f, Kich co quan the: %d\n',I_itermax,F_weight,F_CR,I_NP);
format long e; for n=1:I_D
HU
TEC
H
end
fprintf('---\n');
fprintf('Gia tri ham chi phi toi uu tim duoc F(cost) = %f\n',F_cost);
HU
TEC
H
TÀI LI U THAM KH O:
[1] S. Das, A. Abraham, A. Konar, “Particle Swarm Optimization and Differential Evolution Algorithms: Technical Analysis, Applications and Hybridization Perspectives,”Available at www.softcomputing.net/aciis.pdf. [2] Nidul Sinha, R. Chakrabarti and P. K. Chattopadhyay, “Evolutionary
Programming Techniques for Economic Load Dispatch,” IEEE Transactions on Evolutionary Computation, Vol. 7 No.1, pp. 83-94, 2003.
[3]Differential Evolution Approach for Optimal Power Flow Solution
K. Vaisakh, L.R.Srinivas
Department of Electrical Engineering, Andhra University, Visakhapatnam, AP, India-530003
Department of Electrical Engineering, SKKR Engineering College, Bhimavaram, W.G.Dist, AP, India, 534 204
[4] A hybrid Differential Evolution Algorithm to Solve Power Flow Problem in Rectangular Coordinator
K.Gnanambal, N.S.Marimuth, C.K.Babulal
[5] Differential Evolution Algorithm for Optimal Reactive Power Dispatch
A.A.Abou El Ela, M.A.Abido, S.R.Spea
Electrical Engineering Department, Facuty of Engineering, Menoufiya University, Egypt Electrical Engineering Department, King Fahd Unversity of Petroleum and Minerals, Saudi Arabia
[6] R. Storn, K. Price, Differential Evolution, “A Simple and Efficient Adaptive Scheme for Global Optimization over Continuous Spaces,” Technical Report TR-95-012, ICSI, 1995.
[7] N. Mo, Z.Y. Zou, K.W. Chan and T.Y.G. Pong, “Transient stability constrained optimal power flow using particle swarm optimisation,” IEEE
Generation, Transmission & Distribution, Volume 1, Issue 3, pp. 476–483, May 2007.
[8] Bo Zhao, Quanyuan Jiang, Chuangxin Guo, Yijia Cao, “A novel particle swarm optimization approach for optimal reactive power dispatch,” 15th PSCC, Liege, Session 21, 22-26 August 2005.
[9] R. Storn, K. Price, “Differential evolution, a simple and efficient heuristic strategy for global optimization over continuous spaces,” J. Global Optim. 11 (1997) 341–359.
[10] J. Vesterstrøm, R. Thomsen, “A comparative study of differential evolution, particle swarm optimization, and evolutionary algorithms on numerical benchmark problems,” IEEE Congress on Evolutionary Computation, 2004, pp. 980–987.
HU
TEC
H
[11] Zhenyu Yang, Ke Tang, Xin Yao, “Differential evolution for high- dimensional function optimization,” IEEE Congress on Evolutionary Computation (CEC2007), 2007, pp. 3523–3530.
HU
TEC
H
tài:
NG D NG THU T TOÁN DE VÀO GI I BÀI
TOÁN PHÂN B CÔNG SU T T I U
TRONG H TH NG I N
CÁC CH VI T T T:
DE: Differential Evolution
OPF: Optimal Power Flow
ELD: Economic Load Dispatch
PSO: Particle Swarm Optimization
GA: Genetic Algorithm
HU
TEC
H
N I DUNG :
Thu t toán DE đ c dùng đ gi i quy t 2 v n
đ sau:
1. Bài toán đi u ph i công su t ELD - Bài toán đi u ph i kinh t c đi n
- Bài toán đi u ph i kinh t có đi m van công su t
HU
TEC
H
Bài toán đi u ph i kinh t c đi n:
Là bài toán t i u nh m xác đ nh công su t phát
ra c a các nhà máy đ đ t đ n k t qu là c c ti u chi phí v n hành. 1 min ( ) G i N i G i C F P = = ∑ 2 ( ) i i i i G i i G i G F P = +a b P+ c P Hàm m c tiêu: 1 G i N G D L i P P P = = + ∑ Ràng bu c đ ng th c: Ràng bu c b t đ ng th c:
HU
TEC
H
Bài toán đi u ph i kinh t có đi m van công
su t: min max G G G P ≤ P ≤ P 1 G i N G D L i P P P = = + ∑ ( ) ( ) 2 min ( ) sin i i i i i i G i i G i G i i G G F P = +a b P+ c P+ e f P − P
V trí van công su t th ng đ c mô hình b ng
cách thêm hàm sin vào hàm chi phí b c hai c đi n. min i G P max P Gi i h n th p nh t Gi i h n cao nh t PD t ng t i trong h th ng PL.c ng su t t n hao
HU
TEC
H
Hàm chi phí nhiên li u c a nhà máy nhi t đi n v i 3 van n p
Bài toán đi u ph i kinh t có đi m van công
HU
TEC
H
Bài toán đi u ph i công su t t i u OPF
v i y: t p các bi n đi u khi n.
x: t p các bi n ph thu c.
f(x, y): hàm đ i t ng vô h ng.
g(x,y): các ph ng trình dòng ch y công su t.
h(x,y): gi i h n c a các bi n đi u khi n và v n
hành cho các ph n t trong h th ng.
Bài toán OPF đ c đ nh ngh a nh sau:
Min f( x, y) Subject to g( x, y) = 0 min ( , ) max h ≤ h x y ≤ h 2 ( ) ( ) G N i i Gi i Gi F x = ∑ a + b P + c P Hàm chi phí máy phát:
HU
TEC
H
T NG QUAN THU T TOÁN DE
Thu t toán DE đ c đ xu t b i hai tác gi
Price và Storn vào n m 1995. Thu t toán này
đ c xem nh m t gi i pháp m i trong vi c t i
u hoá ngu n đi n và đ c đ t tên là DE.
Thu t toán này d a trên các nguyên lý v ti n
hóa t nhiên b ng cách s d ng m t qu n th P có NP cá th s th c đ c mã hóa, ti n hóa qua các G th h đ h ng t i m t gi i pháp t i u.
M i cá th hay đáp án đ xu t, là m t vector
ch a nhi u tham s là các bi n D đ gi i quy t
HU
TEC
H
T NG QUAN THU T TOÁN DE
Trong DE, qu n th có kích c NP là h ng s không đ i trong su t quá trình t i u.
P (G ) (G ) (G ) 1 N T (G ) (G ) (G ) i 1,i D,i P p X ,..., X X X ,..., X ,i 1,..., N = ==
HU
TEC
H
Quá trình t i u này đ c th c hi n qua 3 ti n trình c b n:
- Mutation ( t Bi n)
- Crossover (Lai Ghép) - Selection (Ch n L c)
T NG QUAN THU T TOÁN DE
B c đ u tiên trong quá trình t i u hóa c a
DE là t o ra m t qu n th ban đ u b ng cách