1 Write the MATLAB code for Particle swarm optimization to s
1. Write the MATLAB code for Particle swarm optimization to sequence an assembly line for cars. (matalab10 and later version.
Solution
[fmin0,i0]=min(f0);
gb=y0(i0,:);
pb=y0;
v=0.1*y0;
ite=1;
max=1000;
tolerance=1;
while ite<=max && tolerance>10^-8
for k=1:n
for l=1:m
v(k,l)=0.7*(v(k,l)+2.0*rand()*(pb(k,l)-y(k,l))+2.0*rand()*(gb(1,l)-y(k,l)));
end
end
for h=1:n
for m=1:m
x(h,m)=y(h,m)+v(h,m);
end
end
for p=1:n
aa=y(p,1);
rs=y(p,2);
rp=x(i,3);
vmp=vmpn+kvoc*dt;
imp=impn+kisc*dt;
ipvn=((rs+rp)/rp)*iscn;
ipv=(g/gn)*(ipvn+kisc*dt);
isc=(rp/(rs+rp))*(ipv-i0*(exp(iscc*rs/(aa*ns*vt))-1));
fics(p)=(isc/iscc)-1;
voc=rp*(ipv-i0*(exp(vocc/(aa*ns*vt))-1));
fvoc(p)=(voc/vocc)-1;
pmp=(rp*vmp/(rs+rp))*(ipv-i0*(exp((vmp+imp*rs)/(aa*ns*vt))-1)-vmp/rp);
fpmp(p)=(pmp/pmpc)-1;
p(p)=0;
if voc>vocn || voc<0
p(p)=1;
end
f(p,1)=abs(fics(p))+abs(fvoc(p))+abs(fpmp(p))+10000*p(p)+1000*((sign(LB(1)-aa)+sign(UB(1)-aa))^2+(sign(LB(2)-rs)+sign(UB(2)-rs))^2+(sign(LB(3)-rp)+sign(UB(3)-rp))^2);
end
[fmin,i]=min(f);
ffmin(ite)=fmin;
if ite>100;
tolerance=abs(ffmin(ite-100)-fmin0);
end
if fmin<fmin0
gb=y(i,:);
fmin0=fmin;
end
for k=1:n
if f(k,1)<f0(k,1) && p(k)==0
pb(p,:)=y(k,:);
f0(p,1)=f(p,1);
end
end
[fmin,i]=min(f0);
ffmin(ite)=fmin;
if ite>100;
tolerance=abs(ffmin(ite-100)-fmin0);
end
if fmin<fmin0
gb=pb(i,:);
fmin0=fmin;
end
if ite==1
disp(sprintf(\'Iteration Best particle Objective fun\'));
end
disp(sprintf(\'%8g %8g %8.2f\',ite,i,fmin0));
ite=ite+1;
end
![1. Write the MATLAB code for Particle swarm optimization to sequence an assembly line for cars. (matalab10 and later version.Solution[fmin0,i0]=min(f0); gb=y0(i 1. Write the MATLAB code for Particle swarm optimization to sequence an assembly line for cars. (matalab10 and later version.Solution[fmin0,i0]=min(f0); gb=y0(i](/WebImages/15/1-write-the-matlab-code-for-particle-swarm-optimization-to-s-1021903-1761528660-0.webp)
![1. Write the MATLAB code for Particle swarm optimization to sequence an assembly line for cars. (matalab10 and later version.Solution[fmin0,i0]=min(f0); gb=y0(i 1. Write the MATLAB code for Particle swarm optimization to sequence an assembly line for cars. (matalab10 and later version.Solution[fmin0,i0]=min(f0); gb=y0(i](/WebImages/15/1-write-the-matlab-code-for-particle-swarm-optimization-to-s-1021903-1761528660-1.webp)