Programa Linier : Metode Simpleks PDF

Title Programa Linier : Metode Simpleks
Author Oscar Suryaputra
Pages 22
File Size 270.5 KB
File Type PDF
Total Downloads 619
Total Views 784

Summary

Programa Linier : Metode Simpleks BAB V PROGRAMA LINIER : METODE SIMPLEKS 5.1 Metode Simpleks Metode simpleks ialah suatu cara penyelesaian masalah programa linier yang diperkenalkan pertama kali oleh Dantzig pada tahun 1947, yakni suatu cara penyelesaian dengan menggunakan metode “ Row operation ma...


Description

Programa Linier : Metode Simpleks

BAB V PROGRAMA LINIER : METODE SIMPLEKS 5.1 Metode Simpleks Metode simpleks ialah suatu cara penyelesaian masalah programa linier yang diperkenalkan pertama kali oleh Dantzig pada tahun 1947, yakni suatu cara penyelesaian dengan menggunakan metode “ Row operation matrix “ yang khusus disebut

“ Pivot Operation ”. Metode ini telah terbukti efisien untuk

memecahkan persoalan programa linier dalam skala besar. Kecuali untuk persoalan yang kecil, metode ini selalu dikerjakan dengan menggunakan komputer. Metode simpleks sesungguhnya merupakan suatu algoritme. Secara sederhana algoritme adalah proses di mana prosedur sistematis diulang-ulang (diiterasi) hingga diperoleh hasil yang diinginkan. Setiap kali prosedur sistematik digunakan disebut satu iterasi. Di dalam algoritme termasuk prosedur untuk memulai dan kriteria untuk menentukan kapan harus berhenti. Secara ringkas struktur algoritme ditunjukkan pada Gambar 5.1. Bagi kebanyakan algoritme dalam penelitian operasional, termasuk metode simpleks, iterasi berhenti apabila sudah hasil optimal. Dalam hal ini, aturan untuk berhenti sesungguhnya adalah pengujian optimalitas, seperti ditunjukkan pada Gambar 5.2. Cara penyelesaiannya ialah dimulai dari pemecahan dasar awal yang feasible meningkat ke pemecahan dasar feasible berikutnya, sehingga dicapai suatu pemecahan yang optimal. Pemecahan dasar awal yang feasible ( = initial basic feasible solution ) harus memenuhi syarat-syarat : a. Harus ada Basic Variable yang nilainya = kapasitas yang non negatif. b. Harus ada Non Basic Variable yang nilainya pada tahap awal bi = 0 c. Entry dari Basic Variable pada tahap awal harus membentuk identity matrix, yakni terdapat matrix satuan Im

Programa Linier : Metode Simpleks

Langkah Inisialisasi Langkah Iterasi

Tidak

Periksa Aturan Berhenti

Aturan Berhenti Dipenuhi? Ya Selesai

Gambar 5.1 Struktur Algoritme

Langkah Inisialisasi Langkah Optimalitas Tidak Tes Optimalisasi Ya Selesai

Gambar 5.2 Struktur Algoritme Simpleks

Programa Linier : Metode Simpleks

Untuk memenuhi ketentuan ini, maka bentuk pertidaksamaan dari consraint diubah dulu menjadi “persamaan” dengan cara memasukkan : 1. Slack variable untuk constraint yang berbentuk  bi 2. Surplus variable dan artificial variable untuk constraint yang berbentuk  bi 3. Hanya artificial variable pada bentuk constraint = bi Untuk memudahkan pemahaman mengenai metode ini, kita selesaikan contoh 1) : persoalan maksimasi dengan metode grafik. Bentuk constraint dari soal tersebut adalah : x + 2y  1.600 3 x + y  2.400 x + y  1.000 x0;y0 yang diubah menjadi persamaan dengan memasukkan slack variable ( = kapasitas yang tidak terpakai ) :

x +2y + S1 3x+y+ x+y+

= 1.600 S2

= 2.400 S3 = 1.000

x , y , S 1 , S2 , S 3  0

Agar constraint ini dapat disusun menjadi suatu matrix dengan fungsi objectivenya, maka fungsi objective diubah menjadi bentuk : Z – 1.000 x – 1.500 y + 0. S1 + 0. S2 + 0. S3 = 0 Dengan demikian soal programa linier ini dapat disusun dalam bentuk matrix :

Programa Linier : Metode Simpleks

0 0  0  1

Z    1 2 1 0 0  x  1600  3 1 0 1 0   y  2400  x  1 1 0 0 1  S1  1000      1000  1500 0 0 0   S 2   0     S3 

Pada persamaan matrix ini terdapat 6 variabel : Z, x, y, S1 , S2 , dan S3 dan karena hanya terdapat 4 persamaan (3 constraint dan 1 persamaan objective) maka dari 6 variabel ini hanya 4 variabel yang dapat merupakan basic variabel dan 2 variabel lainnya adalah non basic variabel yang nilainya dianggap 0. Berdasarkan susunan matrix ini dapat disusun tabel I yang merupakan tabel awal yang memenuhi Initial Basic Feasible Solution : Tabel I : Basic Variabel

Z

x

y

S1

S2

S3

Nilai

S1

0

1

2

1

0

0

1600

S2

0

3

1

0

1

0

2400

S3

0

1

1

0

0

1

1000

Z

1

- 1000

- 1500

0

0

0

0

Tabel ini disusun dari matrix koefisien dan faktor konstan dari ruas kanan sebagai argumentasi matrix dan tabel ini dalam metode Simpleks merupakan bentuk baku (standard form). Tabel ini merupakan bentuk baku (standar form) dan tahap awal dari proses penyelesaian programa linier, dan disebut : Initial Basic Feasible Solution. Pada tahap awal ini slack variabel S1 , S2 , dan S3 merupakan basic variabel (dapat dilihat dari entry pada baris dan kolom S1 , S2 , dan S3 , yang masing-masing mempunyai entry “1” dan entry lainnya adalah nol yang membentuk Identity Matrix).

Programa Linier : Metode Simpleks

Sedangkan x dan y masih merupakan non basic variabel, sebab pada tahap awal ini x = y = 0 (belum ada output) dan karena itu S1 = 1600 ; S2 = 2400 ; S3 = 1000. Sedangkan fungsi objectivenya = 0. Dengan menggunakan pivot operation, volume output x dan y dapat ditingkatkan dari tahap awal ke tahap berikutnya, sehingga sampai ke tahap akhir di mana fungsi objectivenya telah mencapai harga optimal. Proses peningkatan output dari tahap awal ke tahap berikutnya adalah sebagai berikut : Pertama

: Selidiki dulu apakah tabel I telah memenuhi ketentuan fungsi constraint dengan slack variabel dan fungsi objective, dan apakah telah memenuhi ketentuan sebagai Initial Basic Feasible Solution, yakni terdapat basic variabel dan non basic variabel.

Kedua

: Tentukan kolom pivot dari tabel I, yang dimaksud dengan kolom pivot ialah kolom dari variabel non basic (pada contoh ini ialah kolom x atau y) yang entrynya pada baris paling bawah (baris pada fungsi objective) merupakan bilangan negatif yang harga mutlaknya terbesar. Untuk contoh 1) kolom pivotnya ialah kolom y. Variabel y dari kolom pivot ini akan merupakan entering variabel (incoming variabel) sebab tiap unit dari variabel ini akan memberikan kontribusi laba terbesar (Rp. 1.500,- tiap kg). Jika dari tabel I suatu soal terdapat 2 entry negatif yang sama pada baris paling bawah yang harga mutlaknya terbesar, maka kolom pivot diambil dari kolom non basic variabel yang letaknya sebelah kiri. Jika baris dari fungsi objective tidak mengandung entry yang negatif, maka proses penyelesaian tidak dapat dilanjutkan lagi dan telah dicapai optimum dari fungsi objective.

Ketiga

: Tentukan pivot dari kolom pivot. Yang dimaksud dengan pivot ialah entry dari kolom pivot yang “replacement quotient” - nya terkecil.

Programa Linier : Metode Simpleks

Sedangkan pivot ini terletak pada baris pivot yang basic variabelnya akan merupakan leaving variabel (outgoing variabel) digantikan oleh variabel yang terletak pada kolom pivot yang akan merupakan entering variabel (incoming variabel). Basic variabel mana yang dipilih di antara alternatif yang ada ditentukan oleh replacement quotientnya yang terkecil. Karena 1 unit dari entering variabel pada contoh ini akan menggunakan masing-masing 2 unit, 1 unit dan 1 unit kapasitas yang tersedia dari basic variabel S1 , S2 , dan S3

pada tiap

constraint, maka replacement quotient untuk tiap constraint ialah : Baris I

1600 : 2 = 800

Baris II

2400 : 1 = 2400

Baris III

1000 : 1 = 1000

Ternyata replacement quotient terkecil terletak pada baris I sehingga baris I akan merupakan baris pivot dan pivotnya ialah entry “2”. Keempat

: Dan basic variabel S1 pada baris ini akan merupakan leaving variabel digantikan oleh non basic variabel y yang akan menjadi basic variabel pada tahap berikutnya.

Catatan

: Kalau dalam suatu soal ternyata ada 2 replacemant quotient terkecil yang sama, maka pivotnya dipilih diantara entry pembagi terbesar yang non negatif.

Proses penggantian antara leaving variabel dengan entering variabel akan terlaksana setelah : entry pivot dijadikan “1” dengan cara membagi semua entry pada baris pivot dengan pivot.

Pada contoh 1) maka baris pivot akan menjadi :

Z 0/2 = 0

x

y

1/2 = 1/2 2/2 = 1

S1

S2

S3

Nilai

1/2 = 1/2

0/2 = 0

0/2 = 0

1600/2 = 800

Programa Linier : Metode Simpleks

Kemudian dilakukan row operation dengan baris pivot yang baru sebagai poros, proses ini disebut sebagai proses “pivoting”, yakni sampai semua entry yang terletak di atas dan di bawah entry “1” pada kolom pivot menjadi 0. Pada contoh 1) hal ini dilaksanakan sebagai berikut :

Tabel I .a : Basic Variabel

Z

x

y

S1

S2

S3

Nilai

S1

0

1/2

1

1/2

0

0

800

S2

0

3

1

0

1

0

2400

S3

0

1

1

0

0

1

1000

Z

1

- 1000

- 1500

0

0

0

0

Nilai

(Baris Z ini dapat juga diletakkan di baris pertama) -

baris kedua dikurangi 1 kali baris pertama

-

baris ketiga dikurangi 1 kali baris pertama

-

baris keempat ditambah 1500 kali baris pertama

Dengan demikian tabel I akan menjadi tabel II berikut ini : Tabel II : Basic Variabel

Z

x

y

S1

S2

S3

Y

0

½

1

½

0

0

800

S2

0



0



1

0

1600

S3

0

½

0



0

1

200

Z

1

- 250

0

750

0

0

1,2 jt

Langkah selanjutnya kita kembali ke proses semula mulai dari langkah pertama sampai keempat.

Programa Linier : Metode Simpleks

Z 0x2 = 0

x

y

(1/2)x2 = 0x2 1

0

S1 = -(1/2)x2 = -1

S2 0x2

S3 = 1x2 = 2

Nilai 200x2 = 400

0

Tabel IIa :

Basic Variabel

Z

x

y

S1

S2

S3

Nilai

Y

0

½

1

½

0

0

800

S2

0



0



1

0

1600

x

0

1

0

-1

0

2

400

Z

1

- 250

0

750

0

0

1,2 jt

Dari tabel II : kolom pivot ialah kolom x sedangkan baris pivot ialah baris ketiga, sehingga basic variabel S3 akan digantikan oleh entering variabel x dan setelah melalui proses pivoting, kita sampai pada tabel III, dengan cara : -

Baris ketiga tabel III = baris ketiga tabel II dibagi pivot ½ (atau dikalikan 2)

-

Baris pertama tabel III = baris pertama tabel II dikurangi ( 1 x baris ketiga tabel II)

-

Baris kedua tabel III = baris kedua tabel II dikurangi (5 x baris ketiga tabel II)

-

Baris keempat tabel III = baris keempat tabel II + (500 kali baris ketiga tabel II) Tabel III : Basic Variabel

Z

x

y

S1

S2

S3

Nilai

Y

0

0

1

1

0

-1

600

S2

0

0

0

2

1

-5

600

x

0

1

0

-1

0

2

400

Z

1

0

0

500

0

500

1,3 jt

Programa Linier : Metode Simpleks

Karena pada tabel III ini semua entry pada baris dari fungsi objective yakni entry di kolom x, y, S1 , S2 , dan S3 tidak ada lagi yang negatif, maka tabel ini merupakan tahap akhir penyelesaian soal yang telah meningkatkan fungsi objective sehingga mencapai Laba Maksimum. Dari tabel ini dapat kita hitung bahwa : 1. Z = 1,3 juta – 500 S1 – 500 S3 Ini berarti bahwa laba maksimum = Rp. 1,3 juta yang hanya mungkin dicapai kalau : S1 = S3 = 0 2. y = 600 – S1 + S3 S2 = 600 – 2 S1 + 5 S3 x = 400 + S1 – 2 S3 Namun karena S1 = S3 = 0, maka laba maksimum ini dicapai kalau : y = 600 kg produk B S2 = 600 ini adalah sisa kapasitas jam pengolahan yang tidak terpakai pada mesin II x = 400 kg produk A Dari penyelesaian soal ini dapat dilihat bahwa : Laba maksimum = 1000 (400) + 1500 (600) = Rp. 1.300.000,- jumlah ini cocok dengan entry baris keempat kolom nilai tabel III. Bandingkan hasil dari metode Simplek ini dengan metode Grafik ! Bagaimana hasilnya ?

5.2 Surplus Variable dan Artificial Variable Dalam suatu persoalan memaksimumkan fungsi objective bentuk constraintnya mungkin saja ada yang berbentuk

 bi atau = bi , dan demikian pula pada

persoalan yang meminimumkan fungsi objective selain terdapat constraint  bi , mungkin saja ada yang berbentuk  bi atau = bi. Jika pada bentuk constraint b kita masukkan slack variabel maka : a. Setiap bentuk constraint  bi diubah menjadi persamaan dengan cara mengurangi ruas kiri constraintnya dengan surplus variabel, sehingga entrynya “- 1” pada setiap constraint, sebab surplus ini merupakan jumlah

Programa Linier : Metode Simpleks

bahan yang dipakai diatas batas kapasitas minimum b i. Namun berbeda dengan slack variable yang langsung dapat merupakan basic variable, maka surplus variable ini belum dapat merupakan basic variabel pada tabel awal, sebab kalau non basic variabel = Nol, maka surplus variabel akan = - bi (negatif) hal mana bertentangan dengan ketentuan bahwa setiap variabel harus  0, karena itu pada constraint  bi , dimasukkan pula “artificial variable” dengan entry “1” yang pada tahap awal akan merupakan basic variable dan yang dalam proses selanjutnya harus menjadi leaving variable digantikan oleh entering variable. b. Khusus untuk constrain = bi

yang telah terbentuk persamaan hanya

dimasukkan artificial variable dengan entry “1” agar himpunan constraint dari suatu masalah programa linier yang terdiri dari m constraint akan mempunyai identity matrix = Im pada tabel awal yang telah memenuhi ketentuan initial basis fisible solution.

5.3 Metode Big-M (metode penalty) Perhatikan persoalan di bawah ini : Maksimumkan : z = 3x1 + 5x2 Berdasarkan pembatas : 4

x1

2x2  12 3x1 + 2x2 = 18 x1 , x2  0

Karena pembatas ketiga bertanda ( =), maka untuk mendapatkan solusi basis awalnya kita harus menambahkan variabel artifisial sehingga diperoleh bentuk : Maksimumkan : z = 3x1 + 2x2 + 0S1 + 0S2 - MA1 Berdasarkan pembatas : x1

+ S1 2x2

3x1 + 2x2

=4 + S2

= 12

+ A1 = 18

Programa Linier : Metode Simpleks

x1 , x2 , S1, S2 , A1  0 Untuk memasukkan model diatas ke dalam bentuk tabel, maka terlebih dahulu substitusikan A1 dengan cara : A1 = 18 - 3x1 - 2x2 Kemudian masukkan ke dalam persamaan z sebagai berikut : z = 3x1 + 2x2 + 0S1 + 0S2 – M(18 - 3x1 - 2x2) atau : z = (3M + 3) x1 + (2M + 5) x2 + 0S1 + 0S2 - 18M z - (3M + 3) x1 - (2M + 5) x2 - 0S1 - 0S2 = - 18 M Hal ini dilakukan dengan maksud agar dalam pembuatan tabel simpleks awalnya,

sudah

secara

otomatis

“dipaksa”

berharga

nol.

Selanjutnya

penyelesaian persoalan di atas dapat dilakukan sebagai berikut :

Iterasi

0

1

2

Basis

x1

x2

S1

S2

A1

Solusi

S1

1

0

1

0

0

4

S2

0

2

0

1

0

12

A1

3

2

0

0

1

18

z

(-3M-3)

(-2M-5)

0

0

0

- 18 M

x1

1

0

1

0

0

4

S2

0

2

0

1

0

12

A1

0

2

-3

0

1

6

z

0

(-2M-5)

(3M+3)

0

0

-6M +12

x1

1

0

1

0

0

4

S2

0

0

3

1

-1

6

x2

0

1

- 3/2

0

1/2

3

z

0

0

-9/2

0

(M+5/2)

27

x1

1

0

0

- 1/3

1/3

2

Programa Linier : Metode Simpleks

3

S1

0

0

1

1/3

- 1/3

2

x2

0

1

0

1/2

0

6

z

0

0

0

3/2

(M+1)

36

Contoh lainnya : Minimumkan : z = 3x1 + 5x2 Berdasarkan pembatas : 4

x1

2x2 = 12 3x1 + 2x2  18 x1 , x2  0 Bentuk standar : z = 3x1 + 2x2 + 0S1 + 0S2 + MA1 + MA2 x1

+ S1

=4

2x2 3x1 + 2x2

+ A1

= 12

- S2

+ A2 = 18

x1 , x2 , S1, S2 , A1 , A2  0 (perhatikan bahwa penalty M bertanda positip). Substitusi : A1 = 12 - 2x2 A2 = 18 - 3x1 - 2x2 + S2 Sehingga didapat : z = 3x1 + 2x2 + 0S1 + 0S2 + M(12 - 2x2) + M(18 - 3x1 - 2x2 + S2) Atau : z = (-3M+3) x1 + (-4M+5) x2 + 0S1 + MS2 + 30M z - (-3M+3) x1 - (-4M+5) x2 - 0S1 - MS2 = 30M Iterasi

0

Basis

x1

x2

S1

S2

A1

A2

Solusi

S1

1

0

1

0

0

0

4

A1

0

2

0

0

1

0

12

Programa Linier : Metode Simpleks

1

2

A2

3

2

0

-1

0

1

18
<...


Similar Free PDFs