»
"NEVER GIVE UP, KEEP FIGHT"

Rabu, 01 Juli 2009

Optimasi Metode Simplex dengan menggunakan Matlab 7.0.1

Program ini dibuat menggunakan Matlab 7.0.1, yang dapat digunakan untuk menyelesaikan permasalahan optimasi dengan metoda simplex. Sebelum menggunakan program ini harus dipastikan bahwa masalah yang ada telah sesuai aturan-aturan penggunaan metode simplek, atau tidak ada penyimpangan dari bentuk standart. Masukan dari fungsi adalah matriks yang berisi parameter fungsi tujuan dan fungsi kendala yang telah disesuaikan dengan aturan penggunaan metode simplex.


Listing fungsi:

%Fungsi ini hanya untuk menghitung masalah yang tidak mengandung %penyimpangan apapun
%Bila ada penyimpangan maka pengguna diharapkan
%menyesuaikanya secara manual kedalam bentuk standar
function [z]=simplex(z)
ident
ztrans=z';
le=length(ztrans(1,:));
l=length(z(1,:));
lagi=1;
while lagi==1
lagi=0;
mtam(1:le,1)=1;
[nkol,kol]=kolkunci(z);%mencari kolom kunci
[nbrs,bar]=brskunci(z,kol);%mencari baris kunci
mtam(bar,1)=0;%matrix ini digunakan agar
%baris yang pernah mjd brs kunci tdk di update lagi
nkunci=z(bar,kol);%mencari nilai kunci
z(bar,:)=z(bar,:)/nkunci;%update untuk baris kunci
for baris=1:le
if baris~=bar %update selain baris kunci
z(baris,:)=z(baris,:)-z(baris,kol)*z(bar,:)*mtam(baris,1);
end
end
for ke=1:l
if z(1,ke)<0 lagi=1; end end end Dalam listing diatas digunakan fungsi ‘kolkunci’ dan ‘brskunci’ yang listingnya sebagai berikut: Fungsi kolkunci: % nkol adalah nilai kolom kunci % kol adalah kolom yang merupakan kolom kunci % fungsi ini digunakan untuk mencari kolom kunci function [nkol,kol]=kolkunci(z) nkol=1; l=length(z(1,:)); for a=1:(l-1) if z(1,a)<0 if z(1,a)

1 komentar: