LAMPIRAN
1.
Tampilan GUI
Simulasi yang dilakukan pada Tugas Akhir ini dirancang menggunakan
GUI (Graphic User Interface) pada software Matlab. Adapun tampilan awal
program simulasinya ditunjukkan pada Gambar 1.
Gambar 1 Tampilan awal program
Berikutnya dilakukan optimasi kanal trafik berdasarkan data trafik
menggunakan metode DDS (Dynamic Discount Solution) dan metode Goal
Programming. Tampilan GUI saat dilakukan optimasi menggunakan kedua
metode ditunjukkan pada Gambar 2.
2.
Source Code
Berikut source code program simulasi optimasi kanal trafik menggunakan
software matlab:
% --- Pembangkitan bilangan acak berdistribusi poisson. for bil=1:24
u=rand(1,1); if bil>=1 && bil<=5 m=10;
elseif bil>=6 && bil<=8 m=28;
elseif bil>=9 && bil<=10 m=39.5;
elseif bil>=11 && bil<=12 m=49.5;
elseif bil==13 m=28;
elseif bil>=14 && bil<=17 m=39.5;
elseif bil>=18 && bil<=21 m=28;
elseif bil>=22 && bil<=24 m=10; if bil1>=1 && bil1<=5 m=10;
elseif bil1>=6 && bil1<=10 m=28;
elseif bil1>=11 && bil1<=17 m=68;
elseif bil1>=23 && bil1<=24 if bil2>=1 && bil2<=5 m=10;
elseif bil2>=6 && bil2<=7 m=28;
elseif bil2>=8 && bil2<=10 m=39.5;
elseif bil2>=11 && bil2<=17 m=78;
elseif bil2>=18 && bil2<=22 m=49.5;
% --- Optimasi metode DDS. for n=1:24
x=(a-thk(n))*(thk(n)/a); added_t=round(x); if added_t>=0
disc=(1-(thk(n)/a));
delta_t = binornd(added_t,disc); else
disc=-((1-(thk(n)/a))/100);
delta_t = -binornd(-(added_t),disc); end
disc1(n)=disc;
dds1(n)=thk(n)+delta_t; end
for o=1:24
y=(a-tap(o))*(tap(o)/a); added_t=round(y); if added_t>=0
disc=(1-(tap(o)/a));
delta_t = binornd(added_t,disc); else
disc=-((1-(tap(o)/a))/100);
delta_t = -binornd(-(added_t),disc); end
disc2(o)=disc;
dds2(o)=tap(o)+delta_t; end
for p=1:24
z=(a-tlhb(p))*(tlhb(p)/a); added_t=round(z); if added_t>=0
disc=(1-(tlhb(p)/a));
delta_t = binornd(added_t,disc); else
disc=-((1-(tlhb(p)/a))/100);
delta_t = -binornd(-(added_t),disc); end
disc3(p)=disc;
dds3(p)=tlhb(p)+delta_t; end
optimasidds=[dds1' dds2' dds3'];
end
gp3 = round(gptlhb); end
end
optimasigp=[gp1' gp2' gp3'];
set(handles.tabelgp,'data',optimasigp);
% --- Menentukan jumlah kanal berdasarkan GOS. gos=str2num(get(handles.gos,'string'));
for a=1:24
nthk(a)=erlangbinv(gos,thk(a)); ntap(a)=erlangbinv(gos,tap(a)); ntlhb(a)=erlangbinv(gos,tlhb(a)); ndds1(a)=erlangbinv(gos,dds1(a)); ndds2(a)=erlangbinv(gos,dds2(a)); ndds3(a)=erlangbinv(gos,dds3(a)); ngp1(a)=erlangbinv(gos,gp1(a)); ngp2(a)=erlangbinv(gos,gp2(a)); ngp3(a)=erlangbinv(gos,gp3(a)); end
maxthk=max(nthk); maxtap=max(ntap); maxtlhb=max(ntlhb); maxdds1=max(ndds1); maxdds2=max(ndds2); maxdds3=max(ndds3); maxgp1=max(ngp1); maxgp2=max(ngp2); maxgp3=max(ngp3);
maxat=[maxthk maxtap maxtlhb]; maxdds=[maxdds1 maxdds2 maxdds3]; maxgp=[maxgp1 maxgp2 maxgp3];