P. 1
Pemograman Linear

Pemograman Linear

|Views: 43|Likes:
Published by fira27

More info:

Published by: fira27 on Mar 19, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

05/12/2014

pdf

text

original

PEMROGRAMAN LINIER

1. PENDAHULUAN

Pemrograman linier mempunyai sumberdaya dari metoda input output dari analisa yang dikembangkan oleh seorang ahli ekonomi W. W. Leontif. Perkembangannya sedemikian pesatnya sehingga pemrograman linier yang kita kenai sekarang ini adalah hasil dari seorang ahli matematik Dr. George D. Dantzig dengan "metode simplex: yang diperkenalkannya sebagai suatu prosedur yang sistematis dalam memecahkan masalah pemrograman linier. Dantzig menyatakan bahwa pendekatan yang baru ini, tidak hanya dapat diterapkan dalam masalahmasaIah perencanaan militer saja tetapi dapat diterapkan lebih luas lagi sampai masalah-masalah bisnis, seperti sekarang ini banyak sekali diterapkannya.

2. PERSYARATAN-PERSYARATAN DASAR DARI SUATU MASALAH PEMROGRAMAN LINIER

Sebelum membahas persyaratan-persyaratan yang diperIukan untuk suatu masalah pemrograman linier, agaknya batasan (difinisi) dari pemrograman linier ini diperlukan. Dalam manajemen biasanya uang, manusia, mesin-mesin dan alat-alat terdapat dalam jumlah yang terbatas. Bila sumber-sumber ini berlimpahan tak terbatas, maka tidak diperlukan lagi suatu alat manajemen seperti pemrograman linier. Karena keterlibatan sumber-sumber ini, maka perusahaan itu harus mencari cara pembagian yang terbaik (the best allocation) dari sumber-sumbemya sehingga dapat memperoleh keuntungan yang maksimaI.

Barangkali cara yang terbaik untuk menentukan apa "pemrograman linier" adalah memperhatikan arti perkataan itu. Nama sifat "linier" dipakai untuk menyatakan atau menggambarkan suatu hubungan antara dua atau lebih variabelvariabel yang satu sarna lainnya berbanding lurus dan tepat.

MisaInya, bila kita berkata y = f (y) dimana f adalah fungsi linier, maka setiap perubahan dalam x berakibat suatu perubahan sebanding tetap dalam y. Bila ini digarnbarkan dalam grafik, maka hubungan ini akan merupakan suatu garis lurus yang disebut linier. Istilah "programming" mempergunakan teknik matematik tertentu agar sampai pada suatu hasil yang terbaik dalam pembagian sumber-sumber perusahaan yang terbatas itu. Kata lain dari "programming" atau pemrograman dapatjuga berarti perhitungan (computing), karena bermakna menghitung beberapa yang tidak diketahui dari seperangkat persamaan dan/atau ketidaksamaan

2

dalam keadaan tertentu yang dinyatakan secara matematik.

Jadi, pemrograman linier menyangkut perencanaan kegiatan untuk mencapai hasil yang "optimal", ialah hasil untuk mencapai tujuan-tujuan tertentu sebaikbaiknya atau yang terbaik (menurnt model matematik) dian tara semua kemungkinan yang ada.

Secara matematik, pengertian pemrograman linier, adalah : menentukan hargaharga ekstrim dari fungsi-fungsi linier, bila variabel-variabelnya harns memenuhi satu at au lebih kendala-kendala tambahan dalam bentuk persamaan atau ketidaksamaan.

Salah satu dari persyaratan-persyaratan dasar dari suatu masalah pemrograman linier adalah :

1. Sumber-sumbemya harus dalam persediaan yang terbatas,

Telah diterangkan di atas.

Persyaratan-persyaratan yang lain adalah :

2. Fungsi tujuannya harus jelas dan tepat.

3. Fungsi tujuan dan kendalanya hams dinyatakan secara matematik.

4. Variabel-variabel harus berhubungan satu sarna lain.

3. MODEL PEMROGRAMAN LINtER

Suatu pernyataan secara matematik dalam bentuk umum dari salah satu pemrograman linier adalah seperti berikut :

Tentukan xl' X2, ... , Xn yang memaksimalkan fungsi linier.

di bawah kendala-kendala

allxl + a12x2 + + alnXn ~ bI

<l:2IXI + <l:22X2 + + <l:2nXn ~ b2

3

3.3. xl ~ 0, X2 ~ 0, Xn ~ O.

dimana aij, b, dan cj adalah merupakan konstanta yang ditentukan.

Secara singkat penyajian secara matematik ini dapat ditulis .sebagai berikut :

Tentukan Xl' X2, Xn yang memaksimurnkan fungsi linier.

n

3.4. Z = L clj

j=l

di bawah kendala-kendala

n

L ~jXj:S: b, j=l

( i = 1, , m)

( j = 1, , n )

3.5. Xj ~ 0

dengan cj' ~j dan bi merupakan konstanta yang ditentukan, selain itu dapat diketahui pula bahwa n ~ m.

Fungsi yang akan dimaksimalkan dinamakan "Obyektive Function" atau fungsi obyektif atau fungsi tujuan. Kendala-kendala disebut contraints atau restraints. Variabel-variabel yang dicari dinamakan "decision variables" atau varibale-variable penentu.

Model pemrograman linier dapat dan mudah dijelaskan dengan keterangan seperti dalam pasal yang baru lalu.

Diketahui n kegiatan-kegiatan yang salingbersaingan, variabel-variabel penentu Xl' x2, . . . , Xn mewakili tingkat kegiatan-kegiatan itu. Misalnya, bila tiap-tiap kegiatan merupakan kegiatan produksi suatu barang, maka Xj merupakan besarnya barang j yang diproduksi dalam periode tertentu.

4

Z adalah pengukuran ketepat-gunaan keseluruhan yang merupakan keuntungan dalam periode tertentu. Cj adalah kenaikkan dalam pengukuran ketepat-gunaan dari tiap-tiap kesatuan dari xj. Banyaknya sumber-sumber yang terbatas adalah m, sehingga tiap-tiap ketidaksamaan linier merupakan pembatasan pada salah satu sumber-sumber itu. bi adalah besarnya sumber i yang dapat dipergunakan oleh n kegiatan-kegiatan itu. ~j adalah satuan dari kegiatan j. Karena itu ruas kanan dari ketidasamaan itu merupakan pemakaian total dari masing-masing sumber. Persyaratan non-negatif (Xj ;;:: 0) menghilangkan kemungkinan adanya tingkat kegiatan yang negatif.

Bentuk sederhana dari model pernrograman linier dan dengan anggapan bahwa b, ;;:: 0 dipakai sebagai dasar untuk penyajian cara penyelesaian dalam menerangkan metode simplex. Sebenarnya dapat dicatat bahwa model ini dapat ditulis dalam bentuk lain, misalnya fungsi tujuannya bukan kita maksimumkan, tetapi dirninimumkan dan pada kendala-kendala ketidaksamaan dapat mengambil bentuk "lebih besar atau sarna" (;;::). Selain dari pada itu dalam hal hanya beberapa dari kendala-kendala merupakan kesamaan dan yang lainnya ketidaksamaan, dapat pula diselesaikan.

Suatu kunci untuk keberhasilan seseorang dalam pemakaian pernrograman linier adalah kesanggupan untuk mengenal masalah-masalah mana yang dapat diselesaikan melalui pernrograman linier dan membuat perumusan modelnya.

Pasal 5 akan dibahas dalam hal pernrograman linier ini dapat dipakai dan dalam hal mana tidak dapat. Pada pasal 4 berikut ini akan diberikan beberapa contoh masalah-masalah dengan perumusannya.

4. CONTOH-CONTOH

Contoh 1.

Suatu perusahaan memproduksi tiga macam barang, sebutlah barang-barang 1, 2, dan 3. Kapasitas dari mesin-mesinnya tercantum pada tabel di bawah ini.

5

Macam mesin Waktu yang disediakan
(dalam jam mesin per minggu)
Mesin penggiling 200
Mesin bubut 100
Mesin pengasah 50 Jumlah jam mesin yang dibutuhkan untuk tiap-tiap unit dari masing-masing barang diberikan pada tabel di bawah ini.

Produktivitas
(dalam jam mesin per unit)
Macaw mesin
barang 1 barang 2 barang 3
Mesin penggiling 8 2 3
Mesin bubut 4 3 -
Mesin pengasah 2 - 1 Bagian penjualan dati perusahaan itu menyatakan bahwa potensi untuk barang 1 dan 2 melampaui maksimum laju produksi dan potensi penjualan untuk barang 3 adalah 20 unit per rninggu. Keuntungan per unit masing-masing untuk barang 1, 2, dan 3 adalah $20, $6, dan $ 8.

Masalahnya adalah, bagaimana merumuskan suatu model pernrograman linier untuk menentukan berapa tiap-tiap barang harus diproduksi untuk mencapai keuntungan yang maksimum.

Perumusan dari contoh 1.

Xi (i = 1, 2, 3) adalah jumlah unit dati barang i yang diproduksi per minggu.

Berhubung keuntungan itu diambil sebagai ukuran ketepatgunaan maka fungsi tujuan akan dimaksimalkan.

6

4.1. Maks. Z = 20 xl + 6x2 + 8 x3.

"Sumber terbatas" dalam keadaan ini adalah kapasitas dari ketiga mesin itu & potensi penjualan untuk barang 3. Karena itu, suatu kendala matematik harus dibuat untuk menggambarkan kendala-kendala dari sumber-sumber ini. Kendala yang pertama adalah bahwa tidak akan lebih dari 200 jam, mesin penggiling dapat disediakan untuk kegiatan-kegiatan mernproduksi ketiga barang itu.

Jumlah jam mesin penggiling yang tersedia adalah : 8xI + 2x2 + 3x3.

Karenanya, persamaan matematik dari kendala pertama adalah ;

dengan cara yang sarna kedua kendala berikutnya adalah ;

4XI + 3x2 ~ 100 2xI + x3 s 50

Persamaan matematik dari kendala potensi penjualan adalah ;

Akhimya kendala untuk non-negatif.

Jadi, model pemrograrnan linier untuk masalah ini adalah seperti berikut :

4.1. Maksimumkan Z = 20 Xl + 6 x2 + 8 x3 di bawah kendala-kendala

4.2. 8xI + 2x2 4xI + 3x2 2xI

+ 3x3 ~ 200 ~ 100 + x3 ~ 50 x3 ~ 20

7

Contoh 2.

Salah satu dari masalah-masalah klasik dari pemrograman linier adalah masalah pembatasan makanan (diet problem). Tujuannya adalah menetapkan jumlah dari makanan-makanan tertentu yang boleh dimakan untuk memenuhi persyaratan kadar makanan (nutrision) dengan ongkos minimal.

Misalkan makanan-makanan itu terbatas pada susu, daging, telor dan vitamin A, C dan D. Misalkan jumlah miligram dari tiap-tiap makanan diberikan seperti tabel di bawah ini :

Vita- Susu Daging Telor Persyaratan ..
persyaratan
min per gallon per pOD per lusin harlan minimum .
A 1 1 10 1 mg.
C 100 10 10 50 mg.
D 10 100 10 10 mg.
Harga $l.00 $1.10 $0.50 Bagaimanakah perumusan pemrograman linier dari masalah ini?

Perumusan dari soal 2.

Misalkan xS' xd dan xt merupakan jumlah dari masing-masing gallon susu, pon daging dan lusin telor. Tujuannya adalah meminimumkan biaya dengan persyaratan kendala terendah dari sumber-sumbemya.

Karena itu model pemrograman linier untuk soal ini adalah seperti berikut :

Minimumkan Z = l.0 Xs + 1.1 xd + 0.5 xt

di bawah kendala

Xs + xd + 10 xt 2:: 1
100 Xs + 10 xd + 10 xt 2:: 50
10 Xs + 100 xd + 10 xt 2:: 10
dan xs'd,t 2:: O. 8

5. PEMBATASAN (LIMITATION) DARI PEMROGRAMAN L1NIER

Kini dapat kita telaah setiap perkiraan dari pemrograman linier seperti tercantum di bawah ini yang membatasi penerapannya.

5.1. MENURUT PERIMBANGAN (PROPORTIONAO

Suatu persyaratan pertama dari pemrograman linier ialah bahwa fungsi tujuan dan tiap-tiap fungsi kendala (constraints) harns linier. lni berakibat bahwa ukuran ketepatgunaan (effectiveness) dan penggunaan sumber-sumber harus seimbang dengan tingkat tiap-tiap kegiatan yang dilakukan sendiri-sendiri.

Masalah pemrograman yang non linier karen a tidak adanya keseimbangan, sering pula terjadi dan penyelesaiannya dapat dengan segera diperoleh, tetapi hanya untuk keadaan-keadaan tertentu saja. Kadang-kadang mungkin juga merubah suatu masaah pemrograman yang non linier menjadi model pemrograman linier, sehingga metode simplex dapat dipergunakan, tetapi ini hanya merupakan upaya memudahkan masalahnya, dan bukan merupakan aturan tetapi lebih merupakan kekecualian yang menguntungkan.

5.2. MENURUT KEMUNGKINAN UNTUK DAPAT DIJUMLAHKAN (ADDITIVITY)

Misalkan ukuran ketepatgunaan dan tiap-tiap penggunaan sumber adalah seimbang dengan tingkat tiap-tiap kegiatan yang dilakukan sendiri-sendiri. Ini tidak cukup menjamin bahwa masalah itu merupakan masalah pemrograman linier. Suatu bentuk khusus ketidak-liniernya (non-linier) akan timbul bilaterdapat hal dimana antara kegiatan-kegiatan itu saling pengaruh mempengaruhi satu sarna lain berhubungan dengan ukuran ketepatgunaan total dan penggunaan tiap sumber.

Karena itu dikehendaki bahwa kegiatan-kegiatan itu dapat di "jurnlah" berkenaan dengan ketepatgunaan total dan penggunaan tiap-tiap sumber. Dengan perkataan lain, ukuran total ketepatgunaan dan tiap-tiap penggunaan sumber sebagai hasil dari tindakan-tindakan yang bersama-sama dari kegiatan-kegiatan itu, harus sarna dengan jurnlah masing-masing besaran-besaran ini yang dihasilkan oleh tiap-tiap kegiatan yang dilakukan sendiri-sendiri.

9

Sebagai contoh, misalkan sebuah pabrik memproduksi dua macam barang yang harus bersaing dalam pasar yang sarna. Misalkan keuntungan dalam memproduksi barang pertama xI adalah clxl bila barang yang kedua x2 tidak diproduksi, dan akan memperoleh keuntungan c2x2 bila memperoduksi barang yang kedua sedangkan barang yang pertama xI tidak diproduksi.

Kedua barang-barang ini dapat dijumlahkan dalam kaitannya dengan keuntungan, hanya kalau keuntungan totalnya adalah clxl + c2x2 bila xl > 0 dan x2 > O.

lni tidak benar, misalnya harga-harganya hams diperendah supaya dapat dijual kedua-duanya , xi dan x2 dari harga satu X I atau x2.

Suatu contoh mengenai dua macam kegiatan yang tidak dapat dijumlahkan berkaitan dengan penggunaan sumber, adalah bila terdapat barang sampingan (by product) yang diproduksi dari bagian materi dari barang pokok.

5.3. MENURUT PEMBAGIAN (DIVISIBILITY)

Biasanya variabel-variabel yang menentukan akan mempunyai arti fisik bila merupakan bilangan-bilangan bulat. Tetapi tidak ada kepastian bahwa cara penyelesaian seperti diterangkan di seksi 5.5 akan menghasilkan suatu hasil bilangan bulat. Karena itu, suatu pembatasan yang lain dari pernrograman linier dalam mencapai penyelesaian optimal ialah bahwa variabel-variabel yang menentukan itu diperbolehkan bila merupakan bilangan pecahan. Sekalipun demikian, adalah yang diinginkan bila hasil optimalnya merupakan bilangan bulat. Kalau tidak, cara lazimnya adalah dibulatkan ke bilangan yang terdekat. Tetapi cara ini mempunyai dua macam lubang perangkap. Pertama, bilangan bulat ini tidak perlu yang diizinkan (feasible). lni terjadi, bila beberapa dari aij adalah negatif. Kedua, walaupun yang diizinkan, hasilnya tidak perlu sangat dekat dengan optimal.

5.4. MENU RUT KEPASTIAN (DETERMINISTIC)

Semua koefisien pada model pernrograman linier (aij, b, dan ci) dianggap merupakan konstanta yang diketahui. Sebenarnya koefisien-koefisien itu tidak diketahui dan juga bukan merupakan konstanta. Pernrograman linier biasanya dirumuskan untuk memilih beberapa tindakan pada masa yang akan datang. Karena itu, koefisien-koefisien yang digunakan didasarkan atas ramalan keadaan yang akan datang. lnformasi yang didapat mungkin saja tidak sesuai untuk menentukan yang tepat besarnya harga dari koefisien-koefisien ini. Selanjutnya koefisien-koefisien

10

ini biasanya adalah variabel-variabel random, masing-masing mempunyai dasar distribusi probabilitas untuk harga yang akan dipakai selanjutnya bila keputusan dijalankan. Sejumlah pendekatan-pendekatan biasanya dipergunakan bila beberapa dari koefisien-koefisien bukan merupakan konstanta yang diketahui.

5.5. PEMBATASAN-PEMBATASAN YANG BERMAKNA (SIGNIFICANCE)

Dalam menarik kesimpulan dari penelaahan pembatasan-pembatasan dari pemrograman linier ini beberapa pokok-pokok harns diutamakan.

Masalah praktis yang memenuhi seluruh persyaratan dari pemrograman linier sebenamya sangat jarang. Tetapi model pemrograman linier biasanya merupakan gambaran yang tercermat dari masalahnya, dana akan memberikan saran-saran yang pantas untuk bertindak sebelum tindakan operasional dijalankan. Sekalipun demikian kita harns hati-hati untuk melakukan pendekatan dengan pemrograman linier, mengingat adanya dugaan-dugaan dan perkiraan-perkiraan dalam pembentukannya.

6. METODA SIMPLEX

Metoda simplex adalah metoda iteratif, dimulai dari suatu basis yang memenuhi dan kemudian mencari basis yang lain, yang juga memenuhi serta mempunyai hubungan dengan meningkatnya harga dari fungsi tujuan yang hendak dimaksimumkan.

Dengan perkataan yang lebih mudah adalah bahwa metoda ini merupakan prosedur aljabar yang progresif mencapai hasil yang optimal melalui suatu proses iteratif. Prosedur ini langsung menuju ke sasaran, hanya membutuhkan waktu dan kesabaran dalam mengerjakannya. Cara ini adalah yang paling cocok untuk suatu computer electronic.

Metoda iteratif ini akan dijelaskan dengan suatu contoh dan kemudian suatu kesimpulan dalam garis-garis besamya akan diberikan.

11

Perhatikan contoh di bawah ini :

Maksimumkah

6.1. Z = 3xI + 5x2
di bawah pembatasan
6.2. xl + 3x2 ::;; 10
6.3. 2xI + x2 ::;; 10
6.4. xl 2 0, x2 2 0 Dalam Gambar 6.1 telah digambarkan daerah dari titik-titik yang memenuhi kendala-kendala itu (daeah yang diarsir). langkah berikutnya, mernilih suatu titik di daerah ini yang memaksimumkan harga Z = 3xI + 5x2. Langkah ini akan menjadi biasa (otomatis) setelah melalui sedikit pengalaman, hanya untuk mencari dasar dari pernilihan ini dianjurkan dahulu melalui percobaan-percobaan (trial and error). Misalnya, cobalah Z = 0 = 3xI + 5x2 dan carilah apakah ada harga dari Xl dan x2 dalam daerah itu (x., X2) yang menghasilkan harga Z = 10.

Dengan menarik garis lurus 3xj + 5x2 = 10 temyata terdapat banyak sekali titik-titik pada garis ini yang terletak di daerah pemecahan itu (solution area). Cobalah memberikan harga yang lebih besar lagi untuk Z, misalnya Z = 15 = 3xI + 5x2. Sekali lagi suatu segmen dari garis 3xj + 5x2 = 15 terletak di dalam daerah pemecahan itu. Temyata dengan memberikan harga yang lebih besar untuk Z, garis fungsi itu akan bergerak sejajar ke kanan menjauhi titik O. Jelaslah sekarang bahwa prosedur percobaan-percobaan (trial and error) tidak lain menggambarkan garisgaris sejajar yang mempunyai sedikit-dikitnya sebuah titik di daerah pemecahan yang memenuhi semua kendala-kendala dan mernilih sebuah diantaranya garisgaris itu yang teletak paling jauh jaraknya dari titik asal (0), (dalam arah yang memuat Z lebih besar). Jelas bahwa garis itu pasti akan melalui titik (4,2), seperti terlihat pada gambar sehingga persamaan menjadi :

3xl + 5x2 = 3 (4) + 5 (2) = 22 = Z

Jadi hasil yang diinginkan adalah Xl = 4 dan x2 = 2. Sayang sekali metode secara grafik ini terbatas pada dua atau tiga variable (dimensi).

Untuk memudahkan mengikuti ieori metode simplex ini, maka pertama-tama beberapa peristilahan yang penting akan diperkenalkan.

12

D (0,10)

Z =22 ,

Z = 10,

,

, ,

~P(4'2)

°

,

,

, ,

x,

A (10,0)

Gambar 6.1

(1) Suatu hasil yang diizinkan adalah suatu harga dari (x., X2, ... , Xn) dimana semua kendala-kendala dipenuhi.

(2) Suatu hasil yang optimal, adalah hasil yang diizinkan yang memaksimurnkan fungsi tujuan (objective function).

Dalam gambar dapat dengan mudah dilihat bahwa hasil yang diizinkan adalah semua titik yang terletak di dalam daerah yang diizinkan termasuk titik-titik yang terletak pada garis batas. Hasil yang optimal dalam contoh di atas adalah xl = 4 dan x2 = 2.

Sekarang dimungkinkan untuk menyatakan beberapa sifat-sifat dasar dari metoda simplex.

Sifat 1 Sifat 2

Kumpulan dari hasil yang diizinkan merupakan set konfeks.

Bila terdapat hasil-hasil yang diizinkan, suatu hasil basis yang diizinkan terdapat pula (1), dimana hasil-hasil basis yang diizinkan ini mempunyai

13

hubungan dengan titik-titik ekstrim dari set hasil-hasil yang diizinkan itu.

Sifat 3 Sifat 4

Hanya terdapat jurnlah terbatas hasil basis yang diizinkan.

Bila fungsi tujuan mempunyai maksimum, maka sekurang-kurangnya sebuah hasil optimal adalah sebuah hasil basis yang diizinkan.

(1) Batasan mengenai hasil basis yang diizinkan akan diberikan kemudian.

(2) Pembuktian dari sifat-sifat ini tidak diberikan di sini. suatu keharusan diadakannya hipotesa dari sifat-sifat 2 dan 4 disebabkan karena tidak selamanya terdapat hasil yang diizinkan, demikian pula tidak selamanya fungsi tujuan itu mempunyai maksimum.

Makna dari sifat 1 akan diperlihatkan nanti, dan makna dari sifat-sifat yang lainnya akan dicoba sekarang memahaminya. Misalkan suatu hasil yang diizinkan terdapat dari harga optimum dari Z adalah terbatas (finite). Sifat 2 dan 3 menyatakan bahwa jurnlah dari hasil basis yang diizinkan adalah positif dan terbatas. Sifat 4 menyatakan bahwa jurnlah yang terbatas inilah yang diperlihatkan untuk memperoleh hasil yang optimal.

J adi, walaupun terdapat jurnlah hasil yang diizinkan yang tak terbatas, perhatian dapat dibatasi hanya pada jurnlah tertentu saja. Jadi hasilnya yang optimal dapat selamanya dicapai dengan meneliti tiap-tiap hasil basis yang diizinkan dan memilih salah satu yang menghasilkan harga Z yang terbesar.

Menerapkan kesimpulan ini pada contoh di atas, hasil basis yang diizinkan adalah : (0,0) dengan Z = 0, (0,31/3) dengan Z = 162/3, (4,2) dengan Z = 22, dan (5,0) dengan Z = 15.

Karena 22 adalah harga Z yang terbesar, maka (4,2) adalah merupakan hasil yang optimal.

Menyimpang sejenak, hendaknya diperhatikan bahwa hasil yang optimal tidak selamanya merupakan suatu hasil basis yang diizinkan. Ini dapat terjadi, bila beberapa hasil yang diizinkan menghasilkan harga yang maksimum untuk z, karena sifat 4 menyatakan bahwa sekurang-kurangnya satu dari hasil-hasil yang diizinkan itu adalah hasil basis yang diizinkan.

Untuk contoh dapat diperlihatkan, bila fungsi tujuan itu dalam contoh yang lalu diganti dengan Z = Xl + 3x2, maka dua buah hasil basis yang diizinkan (0, 31/3) dan (4,2) dan semua hasil non-basis yang diizinkan yang terletak di garis antara dua titik itu menghasilkan juga harga yang maksimum untuk Z.

14

Bagaimana cara bekerjanya metoda simplex ?

Dimulai dari suatu titik ekstrim yang sebenamya merupakan hasil basis yang diizinkan dan bergerak melalui suatu "garis batas" ke titik ekstrim sebelahnya yang mempunyai harga Z yang lebih besar. Bila tidak terdapat titik ekstrim yang terletak di sebelahnya yang mempunyai harga Z yang lebih besar, maka hasil optimal telah tercapai dan cara bekerja metoda ini berhenti di sini.

Karena tiap-tiap titik ekstrim yang berurutan menghasilkan harga Z yang lebih besar, maka tidaklah mungkin untuk kembali ke titik ekstrim yang telah dilalui. Jadi jumlah tahapan (iterations) tidak mungkin lebih besar dari jumlah titik-titik ekstrim yang menurut sifat 3 adalah terbatas. Telah dinyatakan, bahwa metoda simplex merupakan prosedur aljabar, sedangkan sampai kini baru dilihatnya dari sudut ilmu ukur.

Bagaimana caranya menerangkan konsep prosedur i1mu ukur ini secara aljabar?

Misalnya adalah menentukan titik-titik ekstrim (hasil basis yang diizinkan) secara aljabar.

Pertama-tama ketidaksamaan itu harus dirubah menjadi persamaan supaya pemecahannya secara aljabar lebih mudah. Caranya dengan mempergunakan "variable beda".

Misalnya ketidaksamaan Xl + 3x2 ::; 10.

Bagaimanakah merubah ketidaksamaan Illl menjadi persamaan yang equivalen ?

Andaikan : x3 = 10 - Xl - 3x2,

sehingga x3 merupakan beda antara kedua sisi dari tanda ketidaksamaan itu, karena itu disebut variable beda.

Kendala aslinya Xl + 3x2 ::; 10 akan tetap berlaku bila x3 ~ 0, jadi Xl + 3x2 ::; 10 adalah equivalen dengan Xl + 3x2 + X3 = 10 dan x3 ~ 10.

Dengan mempergunakan variable beda, maka model pemrograman linier yang asli diganti model yang equivalen;

15

Maksimumkan.

6.1.

Z = 3xI + 5x2 . di bawah kendala

6.2. 6.3. 6.4.

Xj ~ 0 untuk j = 1, 2, 3, 4.

walaupun program ini identik dengan rnasalah aslinya, namun bentuk ini lebih mudah untuk manipulasi aljabar dan untuk menentukan hasil basis yang diizinkan. Suatu batasan (definisi) aljabar yang umum mengenai hasil basis yang diizinkan dapat diberikan sekarang.

Batasan : Bila terdapat m persamaan dengan n variabel-variabel (n> m) suatu hasil basis dapat diperoleh dengan penyelesaian m variabel-variabel dimana (n - m) variabel-variabel sisanya dinyatakan sarna dengan nol.

Suatu hasil basis yang diizinkan dan tidak berubah, adalah suatu hasil basis dimana m variabel-variabel itu adalah positif ( > 0).

Suatu non yang menurun hasil basis yang diizinkan, dimana variabelvariabel itu positif ( > 0 ). m variabel-variabel itu disebut variabelvariabel "basis" atau variabel-variabel yang terdapat dalam basis, sedangkan (n - m) variabel-variabel disebut variabel-variabel "non basis".

Untuk memberikan gambaran (illustration) terhadap batasan ini, perhatikanlah rumusan masalah pemrograman linier dari contoh 6.1. sampai dengan 6.4. di atas yang mempunyai dua persamaan kendala dalam empat variabel-variabel (lihat hal 15).

Misalkan dipilih Xl dan x2 sebagai variable basis, maka x3 dan x4 merupakan

variabel-variabel non basis. .

Dengan memberikan harga nol kepada variabel-variabel non basis yaitu x3 dan x4, maka diperolehlah dengan mudah menurut penyelesaian aljabar secara sistematik

16

harga-harga Xl = 4 dan x2 = 2. Jadi (x., X2, X3, X4) = (4,2,0,0) adalah suatu hasil basis yang juga merupakan hasil basis yang diizinkan (feasible) yang non menurun.

Dalam gambar adalah titik ekstrim (xl,x2) = (4,2)

Setelah diketahui caranya menentukan hasil basis yang diizinkan tibalah waktunya untuk meneliti bagaimana caranya menentukan hasil basis yang diizinkan (feasible) selanjutnya.

Untuk mudahnya pilihlah m variabel-variabel beda itu sebagai hasil basis yang diizinkan (feasible) pertama-tama, yaitu x3 dan x4 sebagai variabel-variabel basis dan Xl dan x2 sebagai variabel-variabel non basis.

Mempergunakan batasan dari basis, maka

X3 = 10 - Xl + 3x2 x4 = 10 - 2xl + x2

Dan variabel-variabel non basis Xl dan x2 disamakan dengan nol. Jadi hasil basis yang diizinkan yang pertama-tama adalah Xl = O. X2 = 0, X3 = 10 dan x4 = 10.

Dengan cara ini, maka hasil basis yang diizinkan yang pertama-tama Xj = 0 untuk j = 1 , . . . . . . n - m dan xn-m+i = b untuk i = 1, 2, . . . . , m.

Kembali pada cara ilmu ukur, maka prosedur ini memilih titik asal (titik 0) sebagai titik ekstrim yang pertama (hasil basis yang diizinkan) sehingga z = O.

Bila diketahui suatu hasil basis yang diizinkan, maka metoda simplex akan menemukan hasil basis yang diizinkan yang berikutnya (atau menemukan bahwa hasil basis yang diizinkan yang diperolehnya itu optimal) dengan memilih titik ekstrim yang di sampingnya yang membuat harga Z lebih besar.

Dalam aljabar titik ekstrim yang disebelahnya itu merupakan pula suatu hasil basis yang terdiri dari semua variabel-variabel dalam baris kecuali sebuah. Jadi menemukan hasil basis yang diizinkan yang berikutnya, berarti memilih sebuah variabel basis, meninggalkan basis dan memilih sebuah variabel non basis menggantikan tempat variabel tadi.

17

Bagaimanakah memilih "variabel yang meninggalkan" dan "variabel yang memasuki" basis ?

Variabel yang memasuki basis dipilihnya dengan mengawasi fungsi tujuannya supaya mengetahui pengaruh dari tiap-tiap alternatif.

Sebagai contoh kedua calon variabel-variabel yang akan memasuki basis adalah xl dan x2 dan fungsi tujuannya adalah :

Karena variabel yang memasuki basis itu akan berubah dari non basis menjadi basis variabel, maka harganya akan bertambah dari nol menjadi suatu harga positif lainnya (kecuali dalam keadaan menurun).

Karena itu, salah satu Xl dan x2 akan memperbesar harga z dengan memasuki basis. Jadi dapat dengan positif dikatakan bahwa hasil yang diizinkan (feasible) yang pertama-tama itu tidak optimal dan salah satu dari kedua variabel itu 'harus dipilih untuk memasuki basis.

Ada banyak cara untuk memilih antara kedua variabel-variabel itu.

Salah satu yang dipakai adalah memilih salah satu yang merupakan harga Z dengan jumlah terbesar, ialah yang meningkatkan Z secepat mungkin dengan meningkatnya variabel itu. Karena x2 meningkatkan Z dengan kelipatan 5 per satuan peningkatan dalam x2 sedangkan Xl hanya tiga kali, maka X2 terpilih sebagai variabel yang menambah basis.

Calon-calon untuk variabel yang meninggalkan basis, adalah x3 dan x4.

Hasil pertama dari satu variabel meninggalkan basis, adalah bahwa variabel itu akan berkurang dari harganya yang positif menjadi nol. Variabel yang dipilih adalah yang mencapai nol tercepat dengan meningkat harga variabel yang memasuki basis dalam hal ini adalah x2. Ini akan meningkatkan Z sebesar yang dapat dicapai dengan meningkatnya x2, tak mungkin untuk meneruskan peningkatan dari x2 karena akan menghasilkan variabel-variabel negatif.

lni diperlihatkan dalam tabel berikut :

Penanaman

Peningkatan maksimum dari x2

X3 = 10 - xl + 3x2 x4 = 10 - 2x I + x2

X2 ~ 10/3 x2 s 10

Karena itu x3 harus dipilih sebagai variabel yang meninggalkan basis dan x2 diambil sarna dengan 10/3.

Langkah selanjutnya menentukan harga-harga dari variabel-variabel lainnya dalam basis. Ini dilaksanakan dengan metode eliminasi Gauss Jordan seperti diuraikan dalam appendix 2.

Untuk jelasnya perhatikan contoh soal :

(0) Z - 3xI - 5x2 = 0 (1) xl + 3x2 + x3 = 10 (2) 2x 1 + x2 + x4 = 10

Variabel-variabel basis adalah x3 dan x4.

Variabel basis yang baru, x2, akan menggantikan x3, yang merupakan variabel basis dalam persamaan (1).

Tetapi x2 itu harus dihilangkan dari persamaan-persamaan lainnya. Ini dilakukan dengan menambah atau mengurangi suatu perbanyakan dari persamaan (1) dari

atau kepada persamaan-persamaan lainnya. .

Jadi persamaan (2) yang baru adalah persamaan (2) yang lama dikurangi dengan 1/3 dari persamaan (1) dan persamaan (0) yang baru adalah persamaan (0) yang lama ditambah dengan 5/3 persamaan (1).

Ini semuanya menghasilkan persamaan-persamaan yang baru yang secara aljabar adalah equivalen dengan persamaan-persamaan yang pertama.

19

(0) Z_11/3 XI +

(1) xI + 3x2

(2) 1% xI

+ 12/3 x3 + X3

1/3 X3 + X4

= 162/3 = 10

= 62/3

Hasil basis yang diizinkan (feasible) yang kedua adalah XI = 0 " x2 = 31/3 ; x3 = 0 dan x4 = 62/3 ; dengan Z = 162/3,

Apakah hasil basis yang diizinkan (feasible) yang kedua ini optimal?

Seperti sebelumnya jawabannya dapat diperoleh dengan memperhatikan fungsi tujuan. Fungsi tujuan yang bam adalah Z = 162/3 + 11/3 XI - 12/3 x3. Dapat sekarang disimpulkan bahwa dengan meninggikan harga dari XI akan pasti meninggikan atau memperbesar harga dari Z, sehingga hasil-hasil yang diizinkan (feasible) yang kedua juga tidak optimal.

Jadi iterasi ini dapat dilanjutkan. Sebelum melanjutkan dengan iterasi selanjutnya, mungkinkah sekarang memberikan ikhtisar (summary) dari metoda simplex.

Ikhtisar dari Metode Simplex

Iterasi pertama : memperkenalkan variabel-variabel beda dan jadikan variabelvariabel beda (slack) ini menjadi variabel-variabel basis yang petama-tama, Sesudah itu temukan langkah ketiga.

Langkah 1. Tentukan variabel-variabel non basis yang memasuki basis :

Pilihlah variabel-variabel non basis yang bila meningkat harganya akan meningkat pula Z dengan laju yang paling cepat. lni dilakukan dengan meneliti koefisien-koefisien dalam fungsi tujuan dan pilihlah variabel non basis dengan koefisien yang terbesar (atau terkecil bila variabel-variabel itu tetletak di mas kiri).

Langkah 2. Tentukan variabel basis bam yang meninggalkan basis :

Pilihlah variabel basis yang mencapai nol lebih dahulu bila variabel yang memasuki basis meningkat. lni dilakukan dengan meneliti tiap persamaan untuk melihat berapa besar variabel non basis yang

20

memasuki basis ditingkatkan sebelum variabel basis pada persamaan itu mencapai no1.

Suatu prosedur aljabar yang formil untuk melaksanakan ini adalah sebagai berikut :

Misalkan e menyatakan tanda dari variabel non basis yang memasuki aie menyatakan koefisien dari variabel non basis yang memasuki basis pada persamaan i, dan bl menyatakan bilangan di mas kanan pada persamaan i (i = 1, 2, .... , m), maka batas atas dari x3 itu pada persamaan i adalah ;

+ ,bila ~e ~ 0

Karenanya tentukan persamaan yang mempunyai batas-batas itu yang terkecil dan pilihlah variabel-variabel basis pada persamaan itu yang akan meninggalkan basis.

Langkah 3. Tentukan hasil basis yang diizinkan yang bam :

Selesaikan untuk variabel-variabel basis dalam term variabel-variabel non basis dengan metode eliminasi Gauss - Jordan dan nyatakan variabel-variabel non basis sarna dengan no1.

Langkah 4. Tentukan apakah hasil ini sudah optimal :

Teliti apakah Z masih dapat ditingkatkan dengan meningkatkan tiaptiap variabel non basis.

Ini dilaksanakan dengan mengeliminir variabel-variabel basis dari fungsi tujuan dan selanjutnya diteliti tanda dari koefisien dari masingmasing variabel non basis.

Bila semua koefisien ini non positif (atau non negatif, bila variabel ini di mas sebelah kiri), maka hasil ini akan optimal maka berhentilah.

Bila tidak demikian kembali ke langkah 1.

21

Meninjau kembali approach ilmu ukur, maka metode Simplex memperhatikan tugas buah titik ekstrim, (0,0), (0,31/3), (4,2) dan (5,0) dengan titik ekstrim (4,2) sebagai hasil optimal. Sebelum kita mempergunakan cara yang lebih praktis dari metode Simplex ini, lebih baik melatih dahulu metode Simplex ini dengan beberapa contoh soal.

Prosedur ini mempergunakan "Simplex tableau: yang mencatat hanya informasiinformasi yang penting saja, ialah koefisien dari variabel-variabel dan konstanta pada mas sebelah kanan dari persamaan-persamaan :

Variabel Nomor Koefisien dan Ruas kanan
basis persamaan Z Xl X2 X3 X4 dari persamaan
z 0 1 -3 -5 0 0 0
x3 1 0 1 3 1 1 10
x4 2 0 2 1 0 1 10 Dasar perhitungan dalam mempergunakan Simplex tableau ini adalah sarna dengan yang terdahulu. Perubahannya hanya dalam penyajian dari informasiinformasi yang dengan cara ini akan lebih ringkas. Baiklah kita perhatikan, bagairnanakah ketiga langkah dari metode Simplex ini dipergunakan untuk memperoleh Simplex tableau berikutnya dari yang di atas ini.

1. Perhatikan "baris" 0 dari tabel; koefisien yang terkecil dari baris ini adalah - 5 ; jadi x2 terpilih sebagai variabel yang bam, yang memasuki basis.

2. Perhatikan bilangan-bilangan positif pada kolorn x2 (tidak dihitung baris 0).

Karena 10/3 < 10/1, maka variabel basis yang bam yang meninggalkan basis adalah variabel basis yang sekarang pada baris 1, ialah x3.

3. Perhatikan hasil ini dengan menggantikan x3 oleh x2 dalam kolom variabel basis. Karena 3 adalah koefisien dari x2 di baris 1, maka bagilah seluruh baris ini dengan 3. Karena -5 dan 1 adalah koefisien dari x2 di baris-baris 0 dan 2,m rnaka kurangkan (-5) dan (I) kali baris 1 dari baris-baris 0 dan 2.

22

Hasil tabel berikutnya adalah :

Variabel Nomor Koefisien dari Ruas kanan
basis persamaan Z xl Xz X3 x4 dati persamaan
Z 0 1 11/ 0 112/ 0 162/
- 3 3 3
x2 1 0 1/ 1 1/ 0 31/
3 3 3
x4 2 0 12/ 0 _1/ 1 62/
3 3 3 Jadi hasil basis variabel yang diizinkan yang bam adalah x2 = 31/3 dan Y4 = 62/3 dengan Z = 162/3,

4. Perhatikan lagi baris O. Karena salah satu koefisien (-11/3) adalah negatif, maka hasil ini belum optimal, jadi suatu iterasi berikutnya diperlukan.

Iterasi selanjutnya diserahkan kepada pembaca sebagai latihan.

7. KESULITAN-KESULITAN (COMPLICATION) DAN CARA PEMECAHANNYA

Sampai kini pembahasan dari metode simplex didasarkan atas model pernrograman linier seperti yang disajikan pada pasal 2. Sekarang kita akan membahasnya dalam bentuk pernrograman linier yang lain.

7. 1. MINIMALISIR

Lazim bila dalam suatu keadaan tertentu kita lebih membutuhkan rninimalisir dari pada memaksimalisir rnisalnya mengenai masalah biaya, maka lazim bila kita menghendaki rninimalisir.

23

Untuk maksud ini terdapat 2 (dua) jalan :

Cara pertama Dengan membuat perubahan-perubahan keeil saja pada metode Simplex. Variabel bam yang memasuki basis adalah variabel non basis yang akan menurunkan dari pada meningkatkan Z dalam waktu sesingkat-singkatnya bila variabel ini ditingkatkan harganya. Dengan eara yang sarna seperti dalam meneliti untuk mengoptimilisir Z, ialah bilamana masih dapat diturunkan harganya A dengan meningkatkan tiap variabel non basis.

Cara yang kedua: Untuk merninimalisir, ialah dengan mengubah problema itu ke dalam problema yang sederajat (equivalent), yang mengandung maksimalisasi dan selanjuunya seperti biasa dengan metode simplex.

Cara ini sebenamya ialah memaksimalisir negatif dari fungsi tujuan semula.

Meminimalisir setiap fungsi f(xj, x2, ... , xn) di bawah kendala-kendala tertentu adalah equivalen dengan memaksimalisir f(xj, x2, ... , xn) di bawah kendala yang sarna.

Sebagai eontoh, merninimalisir (-3xj - 5x2) di bawah kendala-kendala tertentu adalah sarna dengan memaksimalisir (3x1 + 5x2) di bawah kendala yang sarna.

7.2. KETIDAKSAMAAN DALAM ARAH YANG LAIN

Arah dari suatu ketidaksamaan selamanya berubah bila kedua ruasnya dikalikan dengan (-). Karenanya, bila suatu ketidaksamaan dalam kendala (bukan batas-batas non negatif) terdapat dalam arah yang lain ( ~ ), ini dapat diu bah ke dalarn ketidaksamaan dalam arah yang diingini ( ::; ) dengan mengubah semua tanda pada kedua belah pihak.

Sebagai eontoh, ketidaksamaan 3xj + 2x2 ~ 18 adalah sarna dengan -3xj - 2x2 ::; -18.

Sayang kerapkali terjadi bahwa prosedur ini membawa harga dari bi yang non positif seperti pada contoh di atas, dimana bi = -18. Signifikansi dari ini dan penyesuaian yang disyaratkan dibahas pada seksi berikut.

24

7.3. NON POS/TIF DARI bj

Untuk menggambarkan sifat masalah ini dalam pemecahannya, perhatikan contoh dari pasal -6, dengan satu perubahan ialah persamaan kedua dari kendalakendala diganti dengan -2xI - x2:S -10, maka perangkat (set) persamaan-persamaan itu menjadi seperti berikut :

(0) Z - 3xI - 5x2 = °

(1) Xl + 3x2 + x3 = 10

(2) - 2xI - x2 + x4 =-10

Dilanjutkan seperti biasa, maka basis yang pertama adalah xl = 0, X2 = 0, x3 = 10, dan x4 = -10. Tetapi hasil ini tidak diizinkan, tidak diizinkan (feasible) karena menurut syaratnya ialah x4 2 0. Jadi, intisari dari masalah ialah, dengan bi yang negatif tidak ada hasil basis yang dipakai sebagai titik tolak dari metode simplex.

Bila beberapa dari bi sarna dengan nol, tetapi tidak ada yang negatif, maka masih mungkin mempergunakan variabel-variabel beda (slack) untuk memperoleh hasil basis yang diizinkan (feasible) sebagai titik tolak, walaupun ini akan merupakan hasil yang menu run (degnerate) yang akan dibahas kemudian. Untunglah bahwa masalah ini tidak begitu sukar.

Salah satu prosedur yang sederhana untuk memperoleh suatu hasil basis yang diizinkan dengan negatif bi ialah dengan memilih beberapa kumpulan variabelvariabel yang bukan variabel beda (slack) sebagai variabel-variabel basis dan menyelesaikan selanjutnya seperti biasa. Hanya ini, memerlukan penyelesaianpenyelesaian secara aljabar yang di luar cara rutin dari metode simplex.

Prosedur yang umum dipakai ialah dengan cara mengurangkannya dengan suatu "variabel buatan", di ruas kiri dari persamaan-persamaan dengan negatif bi dan mempergunakan variabel buatan (artificial) ini sebagai variabel basis yang mula-mula dari pesamaan itu.

Sebagai contoh maka persamaan (2) menjadi :

yang akan ditulis kembali seperti :

25

Kendala bahwa Xs ~ 0 juga dapat diberikan sehingga Xs untuk selanjutnya dapat dianggap resmi dengan variabel-variabel lainnya. Maka hasil basis yang diizinkan yang mula-mula dari problema ini adalah Xl = 0, X2 = 0, X3 = 10, X4 = 0, Xs = 10. Tetapi ini bukan hasil basis yang diizinkan dari problema aslinya.

Problema aslinya telah diubah dengan diajukannya variabel buatan. Sebenarnya problema yang telah berubah ini adalah sarna dengan problema aslinya bila Xs = o.

Karena itu, bila fungsi tujuan yang asli Z = 3xI + 5x2 diubah menjadi Z = 3xI + 5x2 - Mx., dimana M adalah merupakan bilangan yang sangat besar, maka maksimum dari Z diperoleh bila Xs = 0 (xs tidak dapat negatit).

Metode ini yang membuat variabel buatan menjadi nol disebut metode "M besar".

Karena variabel-variabel buatan dipakai sebagai variabel basis permulaan, variabel-variabel ini harus dihilangkan dari fungsi tujuan (persamaan (0).

Jadi, karena persamaan (0) dan (2) dari contoh itu adalah :

(0) (2)

+ Mx, = 0

Maka M kali persamaan (2) harus dikurangkan dari persamaan (0) untuk menghilangkan Xs dari persamaan (0), menjadi :

(0) Z + (-3 - 2M) Xl + (-5-M) x2 + MX4 = - 10M.

Karena dua dari tiga variabel-variabel yang bukan basis ini mempunyai koefisien negatif, maka hasil ini belum optimal, jadi Xl dipilih sebagai variabel basis yang baru. Cara lain untuk menjadikan nol variabel buatan (artificial) ini adalah metode "Dua Phase".

Setelah menggunakan variabel buatan (artificial) ini dengan cara seperti diterangkan di atas, maka cara metode ini sebagai berikut :

26

Pada Phase I, gantikan fungsi tujuan dengan jumlah dari variabel-variabel buatan (artifical) itu.

Dalam contoh ini fungsi tujuan menjadi : W = xs'

Setelah meminimalisir fungsi tujuan ini di bawah kendala-kendala yang sarna dengan metode simplex.

Karena variabel buatan (artificial) itu seperti variabel-variabellainnya harns non negatif, harga minimum yang dapat diberikan pada W adalah no1.

Jadi, hasil optimal dari Phase I adalah bahwa semua variabel-variabel buatan (artificial) itu sarna dengan nol, dan haruslah suatu hasil basis yang diizinkan (feasible) dari aslinya.

''Phase II" ialah menyelesaikan problem aslinya ini dengan metode simplex, mempergunakan hasil dari phase I (tidak dengan variabel buatan) sebagai hasil basis pertama yang diizinkan (feasible).

7.4. PER 5 A M A A N

Misalkan pada contoh soal sub pasal 7.11 persamaan yang ketiga menjadi 3x1 + 2x2 = 18, sehingga ketidaksamaan menjadi persamaan. Karena untuk persamaan ini tidak perlu diberikan suatu variabel beda (slack), maka seperangkat persamaan itu menjadi :

(0) Z - 3xI - 5x2 = 0
(1) Xl + x3 = 4
(2) x2 + x4 = 6
(3) 3x1 + 2x2 = 18 Ternyata persamaan-persamaan ini tidak mempunyai hasil yang diizinkan (feasible) basis karena tidak adanya variabel beda (slack) pada persamaan ke -3.

Tiga prosedur diketahui untuk menyelesaikan problema ini, hanya salah datu dari prosedur itu hendak diterangkan di sini yang secara konsepsi adalah sarna dengan sub pasal 7.3. untuk tiap kesamaan kita masukkan sebuah variabel buatan (artificial), seperti bila pada suatu ketidaksamaan akan merupakan variabel beda (slack). Ini mengubah problema aslinya dari kesarnaan menjadi ketidaksamaan.

27

Setelah memperoleh hasil basis yang petama yang diizinkan (feasible) dari problema yang telah diubah itu, maka metode M besar atau dua phase dapat digunakan untuk memperoleh hasil yang diizinkan (feasible) basis dari problema aslinya.

Jadi persamaan ke-3, 3xl + 2x2 = 18, diganti dengan 3xl + 2x2 + x5 = 18. dimana x5 merupakan variabel buatan (artificial) untuk memperoleh hasil basis yang pertama yang diizinkan (feasible) untuk pesamaan itu.

Jadi hasil yang petama adalah : Xl = 0, x2 = 0, x3 = 4, x4 = 6, dan x5 = 18.

Dengan metode M besar, fungsi tujuannya juga berubah menjadi Z = 3xl + 5x2 + MX5 ; dimana M adalah suatu bilangan yang besar sekali sehingga memaksa x5 akan sarna dengan 0. Untuk selanjutnya adalah sarna seperti apa yang diterangkan pada sub pasal sebelurnnya mengenai metode M besar.

7.5. VARIABEL-VARIABEL YANG TAK BERSYARAT DALAM TANDA

Walaupun variabel-variabel penentu dalam banyak problema yang praktis hams dalam pembatasan non negatif dalam nilai, tetapi ini tidak selamanya demikian.

Meskipun demikian metode simplex hanya berhubungan dengan variabelvariabel yang non negatif. Adalah suatu keuntungan terdapatnya teori yang memungkinkan untuk mengubah (convert) problema dimana terdapat variabelvariabel yang non negatif.

Suatu variabe1 yang tak bersyarat dalam tanda, selamanya dapat dinyatakan sebagai selisih dari dua buah variabel-variabel yang non negatif.

Jadi bila diketahui bahwa y ~ ° dan z ~ 0, maka X suatu variabel yang tak bersyarat, dapat dinyatakan sebagai X = Y - z dengan menyatakan y = x, z = ° bila Z ~ 0, dan menyatakan z = -x, y = ° bila X :::; 0.

Karena itu setiap variabel yang tak bersyarat dalam tanda dapat diganti oleh selisih dari dua buah variabel-variabel yang non negatif.

Untuk memberikan gambaran, maka umpamakan contoh soal dalam sub pasal 7.4. diubah dengan menghilangkan pembatasan bahwa Xl ~ 0, dengan menyatakan Xl = Yl - zl' dimana YI ~ 0, zl ~ 0, maka model itu menjadi :

max. Z = 3x1 - 3z1 + 5x2

di bawah kendala-kendala :
y, - z, < 4
3y, - 3z, + 2x2 ~ 6
y, 2:: 0, z, 2:: 0, x2 2:: ° Bila dalarn problema itu terdapat lebih dari satu variabel yang tak bersyarat dalarn tanda, perurnusan ini dapat agak disernpumakan dengan rnenggantikan tiaptiap variabel Xj oleh Xj = YJ - z dirnana Yj 2:: ° dan z 2:: 0, tetapi z adalah variabel yang sarna untuk sernua j.

7.6. IKATAN ANTARA VARIABEL-VARIABEL YANG MEMASUKI BASIS

Dapat terjadi bahwa dua atau lebih variabel-variabel non basis yang sarnasarna rnernpunyai positif koefisien yang sarna-sarna rnaksirnurn dalarn fungsi tujuan. Variabel non basis ini akan terikat untuk sarna-sarna rnenjadi variabel yang rnernasuki basis.

Misalnya ini akan terjadi bila fungsi tujuan adalah Z = 2x, + 2x2 + x3, karena xl dan x2 terikat satu sarna lain.

Bagaimana memutuskan ikatan ini ?

Jawabnya: ialah bahwa pernilihan antara variabel-variabel itu dapat dilakukan sekehendaknya. Hasil optimal akan tercapai juga, tidak perduli variabel mana yang dipilih dan tidak ada cara yang tepat untuk rnerarnalkan sebelurnnya, pilihan mana dapat rnernbawa ke hasil optimal yang lebih cepat.

7.7.IKATAN ANTARA VARIABEL-VARIABEL BASIS YANG MENINGGALKAN KEBURUKAN (DEGENERACy)

Apakah dalarn hal ini sarna juga, bahwa tidak peduli variabel mana yang rneninggalkan basis bila variabel-variabel itu akan sarna dengan nol, dengan rneninggalkan harga variabel yang rnernasuki basis dalarn waktu yang sarna. Secara teori sesungguhnya harus diperhatikan, rnalahan dengan cara yang sangat kritis.

29

Untuk: menggarnbarkannya, kita ubah contoh soal pada sub pasal 7.4 dengan menggantikan pembatasan yang ketiga, 3xI + 2x2 = 18 oleh 3xI + 2x2 ~ 12.

Seperangkat persarnaan-persarnaan itu akan menjadi sebagai berikut :

(0) Z - 3xI - x2 = 0
(1) xl + 3x3 = 4
(2) x2 + x4 = 6
(3) 3xI + 2x2 + Xs = 0 Seperti sebelurnnya, x2 dipilih menjadi variabel berikutnya yang memasuki basis, tetapi variabe1 manakah yang akan meninggalkan basis ?

Keduanya, x4 dan Xs bersarnaan mencapai nol bila x2 ditingkatkan harganya sampai menjadi enam. Misalkan x4 kita pilih.

Hasil seperangkat persamaan-persamaan itu diberikan di bawah ini :

(0) Z - 3xl + 5x4 = 30
(1) xl + x3 = 4
(2) x2 + x4 = 6
(3) 3xl + 2x4 + Xs = 0 Hasil basis yang diizinkan dari persamaan-persamaan ini adalah xl = 0, X2 = 6, x3 = 4, x4 = 0, Xs = Q, yang merupakan hasil yang menurun karena salah satu dari variabel basis, Xs adalah nol.

Karena persamaan '(0) menyatakan bahwa hasil ini belum optimal, maka xl dipilih sebagai variabel berikutnya yang memasuki basis. Karena xl tak dapat ditingkatkan harganya dengan tidak mengakibatkan Xs menjadi negatif, maka Xs hendaknya menjadi variabel yang meninggalkan basis.

30

Ini akan memberikan hasil seperti berikut :
(0) Z +3 x4 + Xs = 30
(1) x3 + 2/3 x4 + 1/ Xs = 4
3
(2) x2 + x4 = 6
(3) xI 2/3 x4 + 1/ Xs = 0
3 Jadi hasil optimal dari problema ini adalah xI = 0, x2 = 6, x3 = 4, x4 = 0, Xs = 0, seperti sudah dicapai pada iterasi sebelurnnya. Hal semacarn ini dapat dimengerti karena variabel basis, xs, yang harganya sarna dengan nol bila dipilih menjadi variabel yang meninggalkan basis sebelum harganya berubah, maka variabel yang memasuki basis akan juga tetap mempunyai harga "nol dan nilai dari Z akan tidak berubah.

Untunglah, bahwa contoh seperti itu (perpetual loop ) yang secara teori mungkin dapat terjadi, tetapi tak pemah terjadi dalarn praktek. Bila terjadi loop, maka menghindarinya dengan menggantikan variabel yang meninggalkan basis. Caracara khusus untuk mengatasi problema ini sudah ada, akan tetapi cara-cara itu dalarn praktek biasanya diabaikan.

7.8. HASIL BERLIPAT (MULTIPLE SOLUTION)

Misalkan contoh soal pada sub pasal 7.4 fungsi tujuannya diubah sehingga menjadi Z = 3xI + 2x2, maka dari graftknya, walaupun (2,6) tetap merupakan optimal, (4,3) dan seluruh garis segment antara titik-titik itu juga menghasilkan hasil yang optimal, ialah Z = 18. Metode simplex akan berhenti setelah ia mencapai hasil yang optimal. Apakah terdapat suatu cara untuk mengetahui adanya hasil optimal lainnya ? Jawabnya adalah "ya".

Bila metode simplex diterapkan pada contoh sekarang ini, maka ia akan berhenti setelah iterasi yang ke tiga :

(0) Z + OX3 + Xs = 18
(1) xI + x3 = 4
(2) 3/2 x3 + x4 1/2 Xs = 3
(3) x2 - 3/ x + 1/2 Xs = 3
2 3 31

Karena z tidak dapat lagi ditingkatkan, maka Xl = 4, x2 = 3. x3 = 0, x4 = 3, Xs = 0 merupakan hasil yang optimal.

Bagaimana dapat diketahui adanya hasil optimallainnya ? Perhatikanlah bahwa sebuah dari non basis variabel, x3, mempunyai koefisien nol dalam fungsi tujuan ini, z = 18 - OX3 - xs'

Ulangi, bahwa tiap-tiap koefisien dari non basis variabel pada fungsi tujuan menyatakan peningkatan dari nilai Z bila variabel itu meningkat harganya. Karenanya dengan memasukkan x3 ke dalam basis akan tidak meningkatkan atau menurunkan harga dari Z sehingga hasil basis yang diizinkan itu merupakan hasil yang optimal.

Hasil ini Z = 18 akan tetap bila kita lanjutkan metode simplex ini, dan perangkat persamaan-persamaan itu akan menjadi demikian :

(0) Z + OX4 + Xs = 18
(1) Xl 2/3 X4 + 1/3 Xs = 2
(2) x3 + 2/3 X4 1/3 Xs = 2
(3) x2 + x4 = 6 Jadi, Xl = 2, x2 = 6, x3 = 2, x4 = -xs = 0 merupakan hasil basis yang diizinkan yang kedua.

Karena fungsi tujuan yang sekarang ini juga mempunyai koefisien nol bagi sebuah variabel non basis, maka masih dapat dillkukan sebuah iterasi lagi yang akan menghasilkan suatu perangkat persamaan-persamaan yang identik.

Karena itulah hanya terdapat dua buah hasil basis yang diizinkan dan optimal. Tetapi karena tiap-tiap berat rata-rata dari hasil optimal harus pula merupakan hasil yang optimal, maka akan terdapatlah hasil yang diizinkan optimal yang non basis. Ini merupakan titik-titik pada garis segment antara kedua buah titik-titik ekstrim optimal itu.

7.9. TIDAK TERDAPAT HASIL YANG DIIZINKAN (FEASIBLE)

Sub pasal 7.3 dan 7.4 pada dasarnya menelaah problema dalam memperoleh hasil basis, pertama-tama yang diizinkan bila yang sederhana (obvious) tidak terdapat. Caranya adalah mengajukan suatu problema buatan (artificial) dan menemukan sebuah hasil basis yang diizinkan (feasible) dari problema yang telah diubah itu.

32

Dengan cara ini memungkinkan dimulainya prosedur metode simplex sarnpai tercapai hasil basis yang diizinkan (feasible) dan akhimya tercapai hasil basis yang diizinkan (feasible) dan akhimya tercapai hasil basis yang optimal dari problema aslinya. Akan tetapi kita hams hati-hati, karena bila suatu hasil basis yang diizinkan (feasible) tidak nyata dan sederhana (obvious), maka ini mungkin untuk alasan yang sungguh baik, bahwa tidak ada hasil yang diizinkan (feasible) sarna sekali.

Paling tidak terdapat dua jalan untuk dapat terhindar dari penemuan suatu hasil yang tidak diizinkan (infeasible).

Pertama-tama hams diyakinkan bahwa akan terdapat hasil yang diizinkan (feasible) sebelum mempergunakan metode simplex. Model itu hams dibuat setepat mungkin atau kendala-kendalanya tidak bertentangan satu sarna lain.

Kedua, jawaban yang dihasilkan oleh metode simplex hams selarnanya diperiksa yang diizinkannya (feasibilitasnya). Ini dapat dilaksanakan dengan memeriksa tiaptiap persyaratan-persyaratan untuk mengetahui apakah telah cocok. Akan tetapi prosedur yang memakai variabel-variabel buatan (artificial) mempunyai cara sendiri untuk memeriksa yang diizinkannya (feasibilitasnya). Bila tidak terdapat hasil yang diizinkan (feasible), maka setidak-tidaknya salah satu dari variabe1 buatan (artificial) itu yang akan dijadikan no1 akan menjadi variabe1 basis yang positif dalarn hasi1 yang optimal. Bila tidak semua akan menjadi not

7.70. HASIL OPTIMAL YANG TIDAK TERBATAS (UNBOUNDED)

Se1ain ada kemungkinan yang tak terdapat hasi1, ada pula kemungkinan bahwa satu atau 1ebih variabel-variabel dapat ditingkatkan nilainya dengan tak terbatas dan juga yang diizinkan (feasible) yang disebabkan oleh kendala-kendala yang terdapat, atau tidak adanya kendala-kendala itu.

Bagaimanakah metode simplex menangani keadaan serupa ini :

Bila salah satu dari variabel-variabel itu telah dipilih untuk memasuki basis, maka variabel ini dapat ditingkatkan nilainya terus menerus (demikian juga Z) dengan tidak mengakibatkan salah satu variabel-variabel basis yang sekarang ini menjadi negatif. Dengan demikian tidak terdapat variabel basis yang meninggalkan basis, jadi metode simplex akan berakhir dengan keterangan bahwa hasil optimal tak terbatas. Secara teori hasilnya adalah untuk variabel itu ada1ah + demikian pula Z. Akan tetapi bila problema itu mempunyai signifikansi secara phisik, maka mungkin pembatasan yang penting telah dihi1angkan atau suatu perhitungan yang salah mungkin te1ah diperbuat.

33

7.77. CONTOH SOAL. (Mempergunokon metode "M BesoT")

Max. Z = 3xI + 5x2
di bawah kendala :
xl s 4
x2 s 5
- 3xI - 2 x2 ~ -18
xl ~ 0 , X2 ~ 0 gambar ilmu ukumya.

X1 =4

34

(0) . z - 3xI - :ix2 + MX6 = 0
(1) Xl + X3 = 4
(2) x2 + x4 = 6
(3) 3xI + 2x2 - x5 + x6 = 18 (1) (2) (3)

+ MX5 =-18M
+ x3 = 4
+ x4 = 6
- x5 + x6 = 18 (0) Z + (-3-3M)xI + (-5-2M)x2

Penyelesaian dengan metode simplex secara tabel.

(lihat halaman berikutnya).

CONTOH SOAL (7.11.2)

Max. Z = 3xI + 5x2

di bawah kendala :
xl ~ 4
x2 ~ 6
3xI + 2x2 = 18
xl ;::: 0, X2 = ;::: 0 Gambar ilmu ukumya,

(0) z - 3XI - 5x2 + Mx, = 0
(1) xl + X3 = 4
(2) x2 + x4 = 6
(3) 3xI + 2x2 + Xs = 18
(0) Z + (-3-3M)xI + (-5-2M)x2 = -18M
(1) xl + x3 = 4
(2) x2 + x4 = 6
(3) 3xI + 2x2 + Xs = 18 36

Bsc Pers Z Xl X2 X3 X4 Xs mas
kanan
Z 0 1 (-3-3M) (-5-2M) 0 0 0 -18M
x3 1 0 1 0 1 0 0 4
x4 2 0 0 1 0 1 0 6
x6 3 0 3 2 0 0 -1 18
Z 0 1 0 (-5-2M) (3+3M) 0 M 12--6M
/
Xl 1 0 1 0 1 0 0 4
x4 2 0 0 1 0 1 0 6
x6 3 0 0 2 -3 0 -1 6
Z 0 1 0 0 --41/ 0 5/ +M 27
2 2
Xl 1 0 1 0 1 0 0 4
x4 2 0 0 0 3/ 1 1/ 3
2 - 2
x2 3 0 0 1 3/ 0 1/ 3
- 2 2
Z 0 1 0 0 0 3 1+M 36
Xl 1 0 1 0 0 _2/3 1/ 2
3
x3 2 0 0 0 1 2/ 1/ 2
3 - 3
x2 3 0 0 1 0 1 0 6
Hasilnya adalah :
Z = 36, XI = 2
x2 = 6
x3 = 2
x4 = 0
x5 = 0 37

8. TEORI DAN TAMBAHAN-TAMBAHAN DARI PEMROGRAMAN LlNIER

8.1. TEORI RANGKAP (DUALITY THEORy)

Salah satu dari penemuan pertama-tama yang terpenting dalam perkembangan pemrograman linier adalah konsep mengenai kerangkapan dan bagian-bagiannya.

Dari penemuan, temyata bahwa setiap problema pemrograman linier mempunyai hubungan dengan problema pemrograman linier lainnya yang disebut kerangkapannya. Walaupun dalam pandangan selintas tampaknya hanya merupakan hubungan yang semu atau tidak begitu penting antara problema rangkap itu dengan problema aslinya (prima), sebenamya hubungan itu sangat dekat dan sesuatu yang berguna. Perhatikan tiap-tiap problema pemrograman linier seperti diperlihatkan dalam pasal 2.

Problema aslinya :

Temukan Xj ~ 0 G = 1, 2, ... , n) yang akan memaksimalkan :

dalam kaitannya dengan kendala-kendala (constrain),

Zll xI + a12 x2 + + a1n xn ~ bl

az, xI + a22 x2 + + azn ~ ~ b2

Problema rangkap yang bersangkutan diperoleh dari menggantikan baris-baris dan kolom-kolom dari koefisien-koefisien kendala, menggantikan koefisien-koefisien dari fungsi tujuan dengan konstanta di ruas kanan dari kendala-kendala, mengubah tanda ketidak-samaan menjadi sebaliknya dan maksimal diganti minimal.

38

Problema rangkap :

Temukan Yi ~ ° (i = 1, 2, . . . , m) yang akan memaksimalkan :

dalam kaitannya dengan kendala-kendala (constrain),

all YI + ~l Y2 + + <\nl Ym ~ ci

al2 Y1 + ~2 Y2 + + ~ Ym ~ c2

Jadi, koefisien-koefisien pada kendala ke j dari problema rangkap adalah koefisien-koefisien dari Xj dari kendala-kendala problema asli, dan sebaliknya : selanjutnya ruas kanan dari kendala pro~lema rangkap adalah koefisien dari Xj dari. fungsi tujuan problema asli, dan sebaliknya.

Jadi, terdapat satu variabel rangkap untuk tiap-tiap kendala asli dan satu kendala dual untuk tiap-tiap variabel asli.

Sebagai contoh, lihatlah soal pada pasal 5.

Maksimalkan :

dalam kaitannya dengan :

xl + 3x2 ~ 10 2x1 + x2 ~ 10

dan

X· ~ 0, (j = 1,2) J

Problema rangkapnya adalah sebagai berikut :

Minimalkan :

dalam kaitannya dengan :

YI + 2Y2 2: 3 3YI + Y2 2: 5

dan

Yl 2: 0 (i = 1,2 )

Suatu problema rangkap juga terdapat untuk tiap-tiap problema pernrograrnan linier yang tidak dalam bentuk seperti di atas.

Khususnya, misalkan kendala ke i adalah dalam bentuk persamaan, bukan ketidak -samaan.

Problema rangkapnya dibentuk seperti semula, terkecuali variabel rangkapnya yang ke i tidak dibatasi dalam tanda, jadi bukan seperti biasa non negatif. Demikian pula sebaliknya.

Peraturan-peraturan di atas ini, ditambah dengan cara-cara yang diterangkan di seksi-seksi 7.1 dan 7.2, memungkinkan membentuk problema rangkap dari tiaptiap problema pernrograman linier.

Pemyataan di atas akan menimbulkan lagi suatu pertanyaan yang penting. lalah : karena problema rangkap juga merupakan suatu problema pernrograman linier dan problema rangkapnya, maka problema rangkap dari problema rangkap ini adalah tepat sarna dengan problema aslinya.

TEORI 8.1 : rangkap dari rangkap adalah asli.

Sangat membantu bila diberikan beberapa catatan-catatan barn sebelum sarnpai pada dalil dasar dari teori rangkap (dikenal sebagai Teori rangkap) dan hasil-hasil yang berkenaan dengannya.

Pada umumnya, sebuah variabel dengan tanda bintang (asterisk) pada eksponennya berarti nilai optimal dari variabel itu.

40

Batasan: Misalkan Z/, Zy*, xt dan Yi* berarti harga optimal dari masingmasing Zx' Zy, Xj dan Yi'

Jadi :

n
Z* = I c. x." dan
x J J
j=l
n
Z* = I bi Yi* ,
y
i=1 TEORI 8.2 : (Teori rangkap)

Misalkan hasil dari problema asal dan problema rangkap terdapat, maka akan terdapat hasil optimal dari kedua problema itu, dan selanjutnya,

Z*=Z*

x y

Secara lisan dapat dinyatakan, bahwa nilai maksimum yang terdapat dari fungsi tujuan asal adalah sarna dengan nilai minimum yang terdapat pada tujuan fungsi rangkap. Bukti dan keterangan-keterangan lebih lanjut dari hubungan antara kedua problema ini akan diterangkan pada kesempatan lain dalam masalah pernrograman linier yang lebih lanjut sifatnya.

Walaupun demikian sangatlah berguna untuk memberikan ringkasan secara cepat tujuan-tujuan dari masalah ini, seperti berikut :

Pertama-tama : hendaknya diingat bahwa metode simplex secara otomatis memecahkan problema asal dan problema rangkapnya secara serempak. Khususnya, nilai optimal dari variabel rangkap ke i (i = I, 2, ... , m) adalah sarna dengan koefisien variabel beda ke i pada persamaan terakhir (0) yang diperoleh dari metode simplex. Untuk jelasnya, lihatlah contoh di atas.

Persamaan terakhir (0) untuk problema asal diketemukan pada pasal 5 seperti Zxl + 10 Xz + 3x3 = 30 (dimana x3 dan x4 adalah variabel-variabel beda). Karena itu hasil optimal dari variabel rangkap adalah Yi = 3, yz = O. (Catat, bahwa nilai yang berkenaan dengan fungsi tujuan rangkap adalah Zy = 10 Yl + 10 yz = 30 = Zx ; sesuai dengan apa yang dinyatakan dalam teori rangkap).

41

8.2. ANAL/SA KEPEKAAN

Masalah-masalah praktis yang dirumuskan sebagai masalah pernrograman linier jarang sekali secara tuntas, atau lengkap "terpecahkan" sekaligus setelah metode simplek menemukan hasil yang optimal untuk model itu. Parameter-parameter dari model (cj, aij' bi) jarang sekali diketahui secara sungguh-sungguh. Karenanya dapat dianjurkan untuk mengadakan suatu analisa kepekaan, mengenai akibat dari perubahan-perubahan parameter-parameter itu terhadap hasil optimalnya. Bila harga optimal dari parameter-parameter tertentu, maka perhatian secara khusus diperlukan dalam memberi harga pada parameter-parameter ini.

Keadaan yang kedua ialah, dimana diperlukan perhitungan tambahan, karena perubahan-perubahan yang harus diadakan pada model matematis yang disebabkan karena kurang lengkap atau adanya kesalahan ataupun adanya keterangan-keterangan baru yang menyatakan bahwa harga parameter itu harus diubah.

Untunglah tidak perlu, mengulang pemecahannya dari semula tiap kali bila terjadi perubahan-perubahan kecil dalam model. Bila hasil optimal dari seperangkat persamaan-persamaan diketahui, biasanya mungkin masih dapat diketahui apakah basis yang diperoleh adalah masih optimal atau tidak, dan bila tidak optimal maka basis ini dapat dipakai sebagai titik tolak dimulainya perhitungan-perhitungan lain untuk memecahkan secara cepat hasil optimal yang baru. Sebagai contoh, rnisalkan koefisien cj dari Xj pada fungsi tujuan berubah harganya menjadi cj, setelah optimal tercapai. Terang bahwa hasil optimal ini tetap diizinkan karena kendala-kendalanya tidak berubah. Pertanyaan yang perlu mendapatkan jawaban adalah apakah hasil ini tetap masih optimal atau tidak. Untuk menentukan ini, harus diperhatikan apakah pengaruhnya dari perubahan koefisien. Suatu penelaahan dari metode simplex menyatakan bahwa, bila semua perhitungan-perhitungan harus diulang kembali dengan menggantikan cj dengan cj, satu-satunya perubahan yang terdapat pada seperangkat persamaan terakhir ialah bahwa koefisien dari cj pada persamaan (0) yang terakhir berkurang dengan (c/ - cj). Karena itu, bila Xj merupakan variabel non basis pada hasil optimal yang asli, maka persamaan baru (0) dapat diperiksa dengan cara biasa (ialah dengan memeriksa apakah semua koefisien-koefisien dari variabel-variabel non basis adalah non negatif) untuk menentukan apakah hasil ini sekarang sudah optimal.

Sebenarnya, karena hanya koefisien Xj yang berubah, maka hanyalah memeriksa apakah koefisien-koefisien ini masih non negatif.

Jadi, bila masih non-negatif, maka hasilnya masih optimal; bila tidak, maka perlu menentukan Xj variabel yang masuk dalam baris dan melanjutkan ".i nya dengan metode simplex sampai hasil optimal tercapai.

42

Tetapi, bila Xj merupakan basis variabel pada hasil optimal yang asli, maka perlu untuk mengerjakan satu langkah tambahan pada prosedur di atas sebelum menggunakan persamaan (0) yang bam untuk memeriksa optimalitasnya.

Ulangi bahwa test ini (dikembangkan pada pasal5) mensyaratkan bahwa semua variabel-variabel basis (di luar Z) telah dihilangkan dari persamaan (0). Akan tetapi dengan merubah cj menjadi cj, koefisien dari Xj pada persamaan (0) terakhir telah berubah dari nol ke (cj - c/). Karena itu salah satu langkah tambahan yang diperlukan ialah bahwa koefisien yang bukan nol ini harus dihilangkan dengan cara yang biasa, ialah dengan mengurangi (cj - cj') kali persamaan terakhir dimana terdapat Xj sebagai variabel basisnya dari persamaan (0).

Setelah ini dikerjakan, maka test untuk optimalitas dapat dilaksanakan, dan bila hasilnya belum optimal, maka metode simplex dapat diulangi, dimulai dari hasil yang diizinkan ini,

Untuk contoh cara pelaksanaannya perhatikanlah contoh yang terdapat pada pasal 5. Misalkan, setelah hasil optimal tercapai, maka fungsi tujuannya berubah dari Z = 3x'J + 5x2 menjadi Z = 3x1 + x2.

Ulangi bahwa persamaan (0) terakhir diberikan pada pasal 5 adalah

(0) Z + 3x4 + 3xs = 36.

Karena itu, sehubungan dengan berubahnya persamaan (0) yang asli dari Z = 3x1 - 5x2 = 0 menjadi Z - 3x1 + (-5 + 4)x2 = 0, maka persamaan (0) terakhir ini karenanya berubah menjadi

(0) Z + 4x2 + 3x4 + 3xs = 35.

Karena x2 merupakan variabel basis, maka hams dihilangkan dari persamaan (0) ini dengan mengurangkannya dengan 4 kali persamaan (2) (yang mana adalah x2 + x4 = 6 pada perangkat persamaan terakhir), yang menghasilkan.

(0) Z - x4 + Xs = 12.

Karena x4 mempunyai koefisien negatif, maka hasil optimal yang asli itu (x, = 2, x2 = 6, x3 = 2, x4 = 0, Xs = 0) bukan lagi merupakan hasil yang optimal, dan x4 dipilih sebagai variabel bam yang memasuki basis. Satu iterasi lagi dari metode

43

simplex menghasilkan hasil, xl = 4, x2 = 3, x3 = 0, x4 = 3, Xs = 0, yang merupakan hasil optimal yang baru.

Perubahan-perubahan macam lainpun pada model aslinya dapat diteliti dengan cara yang sarna. Terutama perubahan-perubahan pada b, atau aij, atau penambahan persamaan-persamaan kendala atau variabel-variabelnya dapat pula dikerjakan, hanya agak sulit dan memerlukan analisa yang lebih tinggi (diterangkan dalam judul-judul pemrograman linier yang lebih lanjut).

8.3. PEMROGRAMAN LINIER SECARA UMUM

lui dapat dicapai dengan menghilangkan beberapa kendala-kendala (limitation) seperti diuraikan dalam pasal 4, misalnya "menu rut pertimbangan" dan "menurut penjumlahan", maka fungsi tujuan dan persamaan-persamaan kendalanya dapat merupakan persamaan yang tak linier. Ini akan membawa kita ke daerah dari "pernrograman non-linier". Di sana tidak terdapat prosedur pemecahan problema yang memuaskan, akan tetapi bila sedikit-dikitnya dianggap bahwa fungsi-fungsi kendala merupakan fungsi-fungsi convex dn fungsi tujuan merupakan concave, maka untuk pemecahan terdapat beberapa prosedur yang praktis. Hal lain yang dapat terjadi, bila pembatasan "menurut pembagian" dihilangkan yang mengakibatkan bahwa variabel-variabel penentu hanya dapat mempunyai nilai integer. Ini akan membawa kita ke daerah "pernrograman linier integer". Walaupun prosedur-prosedur pemecahan telah dikembangkan, namun pada umumnya hanya untuk problemaproblema yang relatif kecil. Akhimya, bila kendala "menurut kepastian" dihilangkan, sehingga beberapa atau semua parameter dari model pemrograman linier ini akan merupakan variabel-variabel yang random dan bukan merupakan konstanta lagi. lni akan membawa kita ke daerah "prmrograman linier di bawah ketidak pastiari".

9. PERANCANGAN METODE SIMPLEX DENGAN TEORI MATRIX

Untuk memahami Metode Simplex yang diperbaiki (revised simplex method) yang secara explisit menggunakan manipulasi-manipulasi matrix, maka sebaiknya seluruh prosedur metode simplex itu diulangi dengan menggunakan manipulasimanipulasi matrix.

44

Untuk sementara kita umpamakan bahwa pemrograman linier itu adalah sebagai berikut :

Maksimalisir :

n

9.1. Y = L cj Xj

j=1

di bawah kendala-kendala

n

9.2. L ~j Xj = ~o *) (i = 1, ... , m ) j=1

dan

9.3.

(j = 1, ... , n )

dimana cj, ~j dan ~o merupakan konstanta yang diketahui.

Dengan menggunakan vektor-vektor, maka problema di atas dapat ditulis seperti berikut:

Maksimalisir :

9.4. y = C X **)

di bawah kendala-kendala :

n

9.5. L ~ Xj = An j=1

dan

9.6. x ~ 0

45

1;;;1 IX;-J IaIJl
dimana C = 1 1 1 1 , Aj 1 .1 untuk
1 Cz 1 ' x = 1 Xz 1 = 1 az,J 1
1 1 1 . 1 1 1 j = 0,1, ... , n
1 1 1 1 1 .1
L_'=~ LX~ ~m~ *) Berbeda dengan cara penulisan pada pasal 2 dimana di ruas kanan ditulis bl. **) C merupakan vektor baris, c dan x adalah vektor-vektor dimensi n, dimana n adalah banyaknya variabel-variabel, sedangkan vektor-vektor ~ G = 0, ... , n) adalah berdimensi m, dan m ditentukan oleh banyaknya pembatasanpembatasan seperti dinyatakan dalam 9.2.

Rumus 9.5 masih dapat ditulis secara lain, bila vektor-vektor (AI' ... , An) disatukan menjadi matriks A.

A adalah m x n matrix

r-

all· .

1

1 azl·······

1

1

amI· .

L

dan 8.5 berganti

menjadi

Secara perkataan problema di atas ini dapat dinyatakan seperti berikut :

Diminta menghitung sebuah vektor x, yang memenuhi 9.5 dan 9.6 dan membuat y maksimal.

Untuk sementara kita umpamakan bahwa sebanyak m vektor-vektor ~ adalah bebas linier dan Ao tak dapat ditulis sebagai sebuah kombinasi linier dari vektorvektor ~ yang jumlahnya kurang dari m.

(baca appendix 1).

Misalkan x = (xlO, ... , xmO' 0, ... ,0), merupakan hasil basis yang memenuhi kendala-kendala, maka berlakulah :

46

9.8.

Xi = xiO xi = 0

(i=l , ... ,m) ( i = m+ 1 , . . . , n )

Nilai yang bersangkutan dari fungsi 9.4 adalah :

m

9.9 Zo = I. ci xiO *)

Hasil 9.8 itu meletakkan sebuah basis dalam ruangan, yang terdiri dari vektorvektor AI' ... , Am. Jadi semua vektor-vektor Aj (j = 1, ... ,n) dapat ditulis dalam bentuk:

9.10

A x.,

I IJ

*) Seharusnya variabel dari Y dinyatakan dengan Yo' tetapi berhubung kebiasaan pemakaian intemasional, maka kita sesuaikan dengan menu lis nilai dari fungsi tujuan itu dengan Zo.

~j adalah konstanta, index j menyatakan vektor yang diuraikan dan index i vektor basis yang bersangkutan dengan konstanta itu.

Menurut 9.5. dan 9.8. berlaku pula:

m

9.11 Ao = I. Ai xlO

i=l

Rumus 9.10 dengan demikian dapat juga dibenarkan untuk j = O. Bila kita gabungkan vektor-vektor AI' ... , ~ menjadi matrix bujur sangkar ~ dan koefisienkoefisien xij ... xmj menjadi vektor xj' maka 9.10 dan 9.11 dapat ditulis dalam bentuk:

9.12

A = ~ x. (j = 0 , ... , n )

J J

47

Karena Ai ... Am adalah basis dari ruangan, maka mempunyai kebalikan

matrixnya (inverse), sehingga dari 9.12 dapat menjadi .

9.13 Xj = ~ -1 Aj ( j = 0 , ... , n )

Jadi vektor-vektor Xj dapat dihitung dengan mengalihkan vektor-vektor ~ dari kiri dengan kebalikan matrix dari vektor-vektor basis.

Catatan:

Variabel-variabel Xj ,dengan index-index yang sarna dengan vektor-vektor dalam . basis, dinamakan variabel-variabel basis; yang lainnya disebut variabel-variabel non basis.

Xo terdiri dari nilai-nilai variabel-variabel basis dan dalam hasil yang memenuhi merupakan sebuah vektor dengan elemen-elemen yang tidak negatif.

Bertolak dari hasi1 basis yang diuraikan 9.8. kita berusaha untuk menemukan hasil basis lain yang juga memenuhi dengan nilai yang lebih tinggi dari fungsi tujuan (objective).

Untuk ini kita pergunakan cara-cara seperti berikut : Sebagai akibat dari 9.10., maka Aj adalah sarna harganya dengan suatu kombinasi linier dari vektor-vektor Ai' ... , Am. Kendala-kendala 9.5. tetap dapat dipenuhi bila pada mas kanan dari 9.11. ditambah dengan :

m

8 ( Aj - L A Xij ) i=l

dimana 8 adalah positif dan untuk j suatu elemen dari kumpulan (m+ 1, . . . , n)

Rurnus 9.11. menjadi :

m

m

Ao= L AXiO+8(Aj- L Axij)

i=l i=l

48

atau

m

9.14. Ao = L Ai ( xlO - xij ) + Aj8

i=l

Karena X rnerupakan sebuah vektor yang rnemenuhi dan xiO ' ... , ... ~o > 0, maka untuk harga yang cukup kecil dari 8, vektor :

9.15 (xiO - 8 xij , ... , xmO - 8 xmj' 0, 8 , ° , ... , ° )

juga memenuhi, akan tetapi bukan merupakan hasil basis. Nilai yang bersangkutan untuk fungsi :zo* untuk vektor ini, di satu pihak 9.9 diperbesar dengan cj8 dan di lain pihak diperkecil dengan

karenanya dapat diturunkan dari yang lama dengan rumus

9.16.

m :zo * = Zo + 8 (cj - L i=!

c, x.. )

1 IJ

m

untuk menyederhanakan penulisan maka untuk L ci xij i=l

kita ketengahkan suatu besaran barn Zj dan c1' ••• , cm' Kita tulis dengan vektor cb; jadi cb terdiri dari m elemen-elemen dari vektor c dengan index-index yang sarna dengan vektor-vektor basis dalam hasil yang lama, maka

9.17.

m
z· = L c. x .. ) = cb Xj
J 1 IJ
i=l 49

maka 9.16. dapat ditulis seperti :

CAT AT AN: Karena untuk nilai fungsi kita pergunakan lambang Zo maka 9.17 adalah juga benar untukj = 0 (bandingkan dengan 9.9). Jadi vektor baru yang memenuhi kendala-kendala akan memberikan fungsi itu suatu nilai yang lebih besar bila e (cj - Zj) > O. Karena telah dipilih bahwa e > 0, maka 9.17 dapat dinyatakan bahwa fungsi itu akan naik nilainya bila (cj - Zj) > O.

Bila misalnya nilainya benar-benar menjadi lebih besar dengan memberikan variabel Xj suatu harga positif, maka dapat ditentukan bahwa ini dilakukan dalam batas-batas yang mungkin dilakukan.

Jadi e dipilih sebesar mungkin, tetapi masih dalam batas 9.6., sehingga harns memenuhi:

9.19. e > 0, xiO - e xij ~ O. ( i = 1 , ... , m )

Karena e > 0 dan ~o > 0 maka akan pasti memenuhi bila xij ~ O. Untuk xij . ). 0 mungkin hasilnya menjadi tidak tepat, jadi paling besar harus dicari harga yang sarna dengan minimum dari hasil bagi :

Xrlj

dengan xij > 0

Berdasarkan ini maka selamanya kita pilih :

9.20.

e = min---

Misalkan minimum dalam 9.20 dicapai untuk i = r, maka :

e=---

50

vektor bam yang memenuhi ialah :

9.21

X~ x~.

(xlO _ -- x1j , ... , xr_I,O -- xr_I,J,O,

xQ xD

x~ x~

xr +1,0 -- xr+l,j , ... , Xo -- xmj ,

xD ' ~j

X~

0, , -- , ° , , ° )

xrj

Hasil yang bam ini mengandung pula m elemen-elemen yang positif, harga dari variabel-variabel xI' ... , xr_I' 0, xr+1, ... , xm dan Xj diketahui pula. Dengan mudah dapat diperlihatkan bahwa vektor-vektor yang mempunyai index-index yang sarna dengan variabel-variabel positif itu (jadi AI' ... , ~_I' 0, ~+ I ,0, .. , ~ dan Aj); juga merupakan sebuah basis dari ruangan ; Karenanya 9.21 merupakan hasil basis.

Nilai bam xiO dari variabel-variabel yang terdapat di hasil yang lama dan bam diperoleh menurut 9.21 dari transformasi.

922 *_ x~ (._ )

.. xjO _ xjO _ -- Xij 1 _ . . . , r_I' . . r_I' . . ., m

Xrj

Nilai x*jO dari variabel Xj yang pada hasil yang baru adalah positif sedangkan pada hasil yang lama adalah nol, diperoleh dari

9.23.

Nilai *

1 at X jO =

Bila kita masukkan ini ke dalam 9.5., maka menjadi

9.24

X~ ~

1 A ( x·o _ - x .. ) + A - = An

i= 1 J 1 X ,IJ J x.,

rJ fJ

51

Dalam menemukan suatu hasil basis, mulanya kita tambahkan pada 9.11

m

e ( Aj - L Ai xJ ) i=l

dimana j merupakan elemen sembarang dari kumpulan {m, l' .. , n}. Sebenarnya tidaklah demikian; kita tidak memilih j sembarang, tetapi kita teliti terlebih dahulu apakah dengan memilih j itu nilai fungsi akan bertambah, dengan perkataan lain, apakah cj - Zj adalah positif. Bila temyata demikian untuk lebih dari sebuahj, maka kita ambil j dimana cj - Zj maksimal.

Misalkan ini demikian untuk j=k, maka Ar diganti Ak dan basis yang baru adalah :

9.25

Bertitik tolak dari basis bam ini dapat kita ulangi proses itu. Vektor-vektor yang bam X/ dan nilai-nilai baru z/ dapat juga dihitung melalui rumus-rumus :

9.26. X/ = ( ~* ) -1 AJ '

dan

9.27. z/ = ( C b* )' ~*

dimana ~* merupakan matrix dari vektor-vektor basis 9.25 dan Cb * bagian dari C yang menghubungkan dengan vektor-vektor basis. Bila telah diketahui X/ dan z/ maka berturut-turut kita tentukan maksimum dari cj - Zj' dengan mana variabel-variabel basis yang baru dapat diketemukan dan minimum dari sesuai dengan 9.20, sehingga nilai dari variabel basis yang bam dan variabel-variabel yang meninggalkan basis dapat ditentukan.

Dalam prinsipnya cara ini juga dikerjakan ; hanya temyata lebih mudah untuk memperoleh Xj * dan Zj * dari Xj dan Zj yang lama dari pada menghitungnya sesuai rumus-rumus 9.26 dan 9.27.

52

Ini dapat dikerjakan seperti berikut :

Persamaan-persamaan 9.10 menyatakan vektor-vektor ~ sebagai kombinasi linier dari vektor-vektor AI' .. , ~1" Vektor X/ mengandung komponen-komponen, bilamana Aj dinyatakan sebagai kombinasi linier dari vektor-vektor basis yang baru.

Ini berarti bahwa untuk menentukan X] * kita hams menghilangkan Ar dari mas-mas kanan persamaan-persamaan 9.10.

Untuk ini kita pecahkan Ar, dari persamaan 9.10 untuk j=k

9.28

1 m

Ar = _- . Ao - L A, xik i=l

i:;t:r

Selanjutnya kita substitusikan 9.28 ke dalam persamaan-persamaan 9.10 lainnya yang menghasilkan :

m XIJ m
Aj = L Ai xi] + (Ak - L A xlk)
i=l Xrk i=l
i:;t:r i:;t:r Atau

9.29.

Xrj .

Aj = _- Ak + Xrk

Persamaan terakhir ini menyatakan Aj ke dalam vektor-vektor basis yang bam.

Koefisien-koefisien dalam 9.29 adalah merupakan elemen-elemen dari Xt. Koefisien-koefisien efisien dari vektor-vektor ini yang diperoleh dari koefisienkoefisien yang lama, diperoleh melalui rumus :

9.30. xi/ = xij = _r_J xik' dengan i = 1, ... r_1' r+11' ... , m, dan j = 1, ... , n. xrk

53

dan koefisien dari vektor yang baru Ak dari

9.31

(j= l , ... , n )

Rumus-rumus ini merupakan kesamaan dengan rumus 9.22 dan 9.23. Nilainilai bam (cj - Zj)* = cj - z{ diperoleh dari yang lama dengan mempergunakan 9.17, 9.30 dan 9.31 :

m m

(c. - z.)* = C - L x.." c, - xk· ck = cJ' - L

.I J .I i= 1 1.1 1 J i= 1

m xrj x1j x1j

L c,x'k - -- C x k - -- ck - (c. - z.) - --

. 1 1 r r .I J

1=1 ~k xrk Xrk

9.32

X1j

(c. - z.)* = (c. - z.) - -- (Ck - zk)

.I J .I J X .

rk

Rumus ini mempunyai struktur seperti 9.22 dan 9.30 perbedaan-perbedaan yang bam ini diperolehnya dari yang lama dengan mengurangkannya oleh

Xrj

--=--- kali elemen yang lama yang terdapat pada Ak.

xrk

Akhirnya teruyata dari suatu persamaan 9.16 dan 9.32 bahwa z.o* dapat diperoleh dari Zo dari suatu transformasi dengan bentuk 9.32, bila dipilih j = 0 dan untuk Co kita berikan harga O. Harga dari konstant 0 dalam 9.16 dapat diketemukan dari suatu persamaan dengan bentuk 9.20.

Jadi terdapat suatu persesuaian dalam semua rumus-rumus transformasi ; dari semua vektor-vektor X{ diketemukan sebuah elemen dengan membagi yang lama

54

dengan Xrk, sedangkan elemen-elemen yang lainnya dari vektor-vektor xt dari (cj - Zj)* (j = 0, ... , n) ditentukan oleh rurnus-rumus 9.22, 9.30 dan 9.32.

Dengan ini kita telah dapat membuat suatu hasil basis yang bam, bila suatu hasil basis diketahui, dan selain dari pada itu dapat kita ketahui perubahan-perubahan mana yang dialami oleh fungsi yang akan dioptimalisir. Yang belum terjawab : dengan cara bagaimana kita menemukan hasil basis yang pertama dan yang diizinkan.

Untuk menjawab ini, kita misalkan bahwa problema pemrograman linier berbentuk demikian;

Maksimalisir :

P

9.33. Y = f (xI' ... , xp) = L ch xh

h=l

di bawah kendala-kendala

9.34

p

L ~h xh ::; alo h=l

(i = 1, ... , m)

9.35

(h = 1, ... , p)

Selain dari pada itu dianggap bahwa ~o ~ o.

Untuk mempermudah bentuk dari hasil basis yang memenuhi, maka pada tiap-tiap persamaan dari 9.34 ditambah dengan sebuah variabel sehingga tanda " ::; " dapat diganti dengan tanda " = ".

Variabel yang bam xp+i pada persamaan ke i mempunyai harga sarna dengan selisih dari mas kanan dan harga yang dipunyai dari mas kiri yang diperoleh dari suatu kombinasi tertentu dari harga xh.

Untuk dapat tetap memenuhi kendala 9.34 maka variabel-variabel xp+i ~ o.

Kendala-kendala 9.34 dapat digantikan oleh :

P

9.36. L ~h xh + xp+i = aiO (i = 1, ... , m ) h=1

55

dan

9.37

( i = 1, ... , m)

Variabel-variabel Xp+i kita namakan variabel-variabel residu atau variabelvariabel slack atau variabel-variabel selisih.

Problema 9.33, 9.35 sampai dengan 9.37 hampir mempunyai bentuk yang sama dengan problema 9.1 dan 9.3.

Supaya menjadi sama, pada 9.33 kita tambahkan xp+i dengan koefisien 0 sehingga fungsi yang harus dimaksimalisir berubah menjadi :

n

9.38 y = L cj Xj

j=1

dengan n = p + m dan cP+1 = cp+2 = ... cp+m = O.

Bila kita tulis kendala 9.36 ke dalam penulisan vektor seperti 9.5, maka sekarangpun terdapat n vektor-vektor Aj; vektor-vektor Ap+1' ... '~m merupakan vektor-vektor dimensi m yang istimewa yang disebut m vektor-vektor satuan E1, . . . , Em dari ruangan yang berdimensi m. Dengan mudah dapat diperoleh dari problema di atas ini hasil yang memenuhi.

{Xh = 0 untuk h = 1, . . . , p ialah

Xp+ 1 = aiO untuk i = 1, . . . , m

atau

9.39. X = (0, ... , 0, aiO' ... , amO)'

Ini merupakan hasil basis; basis yang bersangkutan terdiri dari vektor-vektor ~ l' . . . , Ap+m (= An) yang bersama-sama membentuk matrix satuan J.

Bila dihitungnya dari hasil basis ini, maka vektor-vektor Xj dan selisih cj - Zj dapat mudah ditentukan.

56

Karena 9.13 berubah menjadi :

karena Cp+ 1 = ... , = Cp+111 = 0 maka Cb merupakan vektor nol, jadi menurut 8.17.

9.41

(j = 0, ... , n )

Untuk dapat dengan cara penyelesaian yang terdahulu, dari hasil basis yang satu ke yang lain secara sistematis dikerjakan, maka semua data yang perlu seperti vektor-vektor Xj, selisih cj - Zj dan variabel-variabel basis dimasukkan ke dalam tabel, seperti terlihat pada tabel 9.1.

Variabel-variabel basis terletak di kolom Xb. Selanjutnya kita menambah kolom cb' dimana harga-harga C dari 9.38 diisi yang mempunyai index yang sama dengan variabel-x dari kolom Xb; pada hasil 9.39 maka semuanya ini adalah nol. Pada baris terakhir tidaklah kita ambil harga dari cj - Zj' akan tetapi Zj - cj.

Dari 9.32 temyata bahwa Zj - cj dapat ditransformir dengan cara yang sarna seperti dengan cJ - Zj. Mempergunakan 9.40 dan 9.41 tabel 9.1 itu dapat diisi, segiempat-segi-empat kosong menyatakan nol

Hasil 9.39 dapat dengan mudah dibaca dari tabel; Variabel-variabel di kolom Xb mempunyai harga yang dinyatakan pada kolom xo; Variabel-variabellainnya adalah nol.

57

TABEL 9.1

HASIL PERTAMA YANG MEMENUHI

1

1

-Cj

Bertitik tolak dari hasil yang diberikan pada tabel 9.1., dapatlah rumus-rumus 9.22, 9.23 dan 9.30 sid 9.23 membentuk suatu hasil yang barn. Untuk dapat memperlihatkan bagaimana cara-cara penyelesaian itu secara skematis dapat dikerjakan, maka untuk sementara baris yang terakhir itu mengandung satu atau lebih harga-harga negatif Zj - cj (j = 0).

Hasil yang barn, yang dapat diperoleh dari tabel dapat dikerjakan seperti berikut : Tentukan terlebih dahulu harga k dimana zJ - cj adalah minimal; carilah selanjutnya hasil bagi ~o I ~k yang terkecil dengan ik > O. Pada tabel 9.2 kedua cara pelaksanaan ini secara skematis diperlihatkan.

58

TABEL 9.2.

MENGERJAKAN PERlllTUNGAN-PERHITUNGAN DENGAN KONSTANTA BAGI TABEL 9.1

-

yang terkecil

iL- __ Zj - cj minimal

11111111111111111

u 0)

Tabel 9.3 memperlihatkan bagaimana dari tabel 9.1, tabel yang barn itu terjadi; untuk ini kita bekerja seperti berikut :

1. Gantikan cp+r di kolom cb dan xb masing-masing oleh ck dan xk;

2. Bagilah semua elemen-elemen dari ~ oleh ~k

3. Kurangkan semua elemen-elemen lainnya dari kolom-kolom Xo, . . . , ~ dengan hasil perkalian yang diberikan (di kolom Xk selain angka 1 seperti pada tabel diperlihatkan terdapat angka-angka nol) .

. 1'-11,1,1,

4. Persegi tinggi tetap.

u_I_j_J_j_J_j_j

59

Harga yang bam dari fungsi dapat diketemukan pada persegi empat yang terakhir dari kolom xo'

Bila pada tabel yang bam masih terdapat harga Zj - cj yang negatif, untuk j ~ 0, maka proses ini dapat diulangi

TABEL 9.3

HASIL KEDUA YANG MEMENUHI

I.

peraturan dengan

1 ---I CK

a,a I~ __ ~ ~~-L~~-L~LL-LL-LL-LL-~-L~~~~~~~~~

yang terkecil

1 1 1 I 1

- ,. - - -1- - - rProd 1

1

KOLOM DENGAN

Zj - cj YANG TERKECIL

60

Sebagai contoh ambillah contoh yang terdapat pada Pasal 5.

Contoh 9.1.

Maksimumkan :

di bawah kendala :

Xl + 3x2 :s; 10 2xl + x2:s; 10

Dengan memasukkan variabel-variabel beda x3 dan x4 persamaan-persamaan itu menjadi :

Maksimumkan: Y = 2xl + 3x2 + OX3 + OX4

Di bawah kendala-kendala :

Xl + 3x2 + x3 = 10

2xl + x2 + x4 = 10

Xl' ..... ,x4 ~ °

Hasil basis permulaan adalah xl = 0, X2 = 0, X3 = 10, X4 = 10. Tabel untuk ini adalah tabel 9.4. Temyata terdapat beberapa harga negatif dari Zj - cj; jadi kita akan melakukan suatu transformasi. Kolom X2 mengandung harga Zj - cj yang terkecil; elemen-elemen dari x2 keduanya adalah positif dan minimum dari hasil bagi dari elemen-elemen dari baris-baris yang sarna dari kolom Xo dan x2 dicapai pada baris X3. Jadi pada transformasi berikutnya di kolom Xb, X3 diganti oleh X2•

61

a,O 1

-(-H= 1)

1 -I

1

yang terkecil

TABEL 9.4
HASIL PERTAMA YANG MEMENUHI
cb 1 x, : x, : X1 : x2 X3 1 x, 1
0 1 X3 1 10 1 1 3 1 0
0 x4 1 10 2 1 0
Zj - cj 0 -2 1 -3 0 1 0
i
zJ - cJ yang terkecil ( ~ k = 2). TABEL 9.5.
HASIL KEDUA YANG MEMENUHI
cb 1 x, : x, : X1 : X2 X3 : X4 :
3 x2 1 1 0
1 0 0
-I x4
1
Zj - cj 1 10 -1 0 0
1 62

TABEL 9.6.
HASIL KETIGA YANG MEMENUHI
I x, : x, : X1 : X2 X3 : X4 :
I cb I
I 3 I x2 I 2 I 0 I 1
2 4 1 0 I
I x1 I I
Zj - cJ 14 0 0 Pada tabel 9.6, temyata Zj - cj semuanya positif berarti bahwa fungsi tujuan sudah mencapai harga yang tertinggi. Pada gambar 9.1 dapat dilihat bahwa bidang atau daerah yang diarsir merupakan bidang hasil yang memenuhi kendala-kendala dari problema itu. TabeI9.4, 9.5 dan 9.6 memberikan hasil-hasil yang sesuai dengan masing-masing titik 0, D dan C.

E(O,10)

....

.... ....

.... ....

B(10,O)

o

Daerah yang memenuhi dan harga maximal dari fungsi dari contoh 9.1.

63

Catatan : 9.1.

Dari gambar 9.1 dan langkah-langkah secaraberurutan telah dilakukan, temyata bahwa selamanya dibandingkan titik-titik sudut pada sisi tertentu. Ini disebabkan karena pada tiap-tiap transforrnasi satu variabel basis dijadikan nol dan satu variabel yang bukan basis dijadikan positif.

Jadi, dari dua variabel yang bukan basis pada setiap langkah, satu diantaranya adalah nol; pada langkah pertama adalah Xl dan pada langkah kedua adalah x3 sehingga masing-masing langkah melalui garis-garis Xl = 0 dan x3 = o.

Catatan : 9.2

Selisih zJ - cj' yang termasuk pada variabel yang diterima menjadi basis selamanya nol. (menurut 9.l7),

m

Zj = L cj Xjj = ChI Xj. i=I

Bila Aj termasuk pada basis, maka ~ adalah suatu vektor satuan dengan 1 pada tempat yang berhubungan dengan Aj, jadi

ChI X· = c, dan z: dan z, - c· = 0

J J J J J .

Bila kita secara explisit merumuskan sekali lagi bagian-bagian dari tiap-tiap langkah, maka akan kita peroleh seperti berikut :

1. Tentukan, bertitik tolak dari suatu hasil basis Xo dengan matrik dari vektorvektor basis yang bersangkutan ~, vektor-vektor Xj melalui transforrnasi Xj = ~-l Aj (j = 1, ... , n); bila dapat bertolak dari suatu basis dari vektor-vektor satuan seperti sampai kini adalah selamanya demikian, mana ~-l = .r ' = J dan karenanya XJ = Aj;

2. Tentukan selisih-selisih Zj - cj untuk semua vektor-vektor Aj yang tidak ditampung pada basis.

64

3. Bila salah satu atau lebih dari selisih-selisih Zj - cj adalah negatif, tentukanlah selisih yang terkecil;

Misalkan dicapai untuk j = k;

4.

Tentukanlah minimum dari hasil bagi

sejauh Xik > 0;

x, ambillah minimum ini dicapai untuk i=r.

5. Sebagai basis yang baru tentukanlah terdiri dari vektor-vektor yang lama dikurangkan dengan ~ dan ditambah dengan Ak; .

6. Nyatakan vektor-vektor Aj (j = 0, ... , n) melalui rumus-rumus transformasi 9.22, 9.30 dan 9.31 ke dalam basis yang barn; dengan ini vektor-vektor Xt (j=O, ... , n) yang baru diketemukan;

7. Tentukan selisih-selisih (Zj - c}* (j=O, ... , n) yang barn melalui transformasi 9.32;

8. Lihat angka 3; dan selanjutnya.

10. METODE SIMPLEX YANG TELAH DIPERBAIKI

Prosedur metode simplex yang asli temyata bukanlah merupakan prosedur menghitung yang effisien, terutama untuk problema-problema dimana diperlukan bantuan electronic digital computer.

Terlampau banyak bilangan-bilangan yang turut disimpan dan dihitung yang sebenamya tidak perlu pada suatu iterasi (ulangan) tertentu. Karenanya terjadi banyak pembetulan-pembetulan dalam hasil (procede) hitung dimana yang terpenting diterangkan pada pasal ini.

Seperti telah diketahui, pada tiap-tiap ulangan yang diperlukan hanyalah :

a. Harga-harga dari zJ - cj untuk menentukan vektor mana yang akan memasuki basis.

b. Vektor Xk bila Zk diterima dalam basis.

c. Vektor Xo.

65

Besaran-besaran ini dapat dihitung seperti berikut :

Pada suatu langkah tertentu ~ merupakan basis.

Vektor cb terdiri dari elemen-elemen C yang mempunyai index-index yang sarna dengan vektor-vektor basis; menurut 9.2 dan 9.10, Zo dan Zj adalah sarna dengan :

10.1

Z· - Cb X.

J J

(j=O, ...... ,n)

selanjutnya menurut : 8.6

10.2

(j=O, ...... ,n)

substitusi 9.6 ke dalam 9.1, menghasilkan :

10.3

(j=O, ...... ,n)

Jadi apa yang hendak diketahui pada tiap-tiap langkah dapat diketemukan, asal saja di samping Ao ' AI' ... ,1\ dan c yang dapat diketahui pula inverse WI dari matrik ~ dari vektor-vektor basis.

Jadi tidaklah perlu menghitung semua vektor-vektor Xj. (j = 0, ... , n ) pada tiap-tiap langkah; menghitung WI sudahlah cukup.

Jalan pikiran inilah yang dikerjakan dalam metode simplex yang diperbaiki ini; dari pada menghitung semua vektor-vektor Xj, kita transformir pada tiap-tiap ulangan matrik WI.

Walaupun ini tidak dinyatakan, namun ~-I dalam pasal 5 dan pasal 9 pada tiaptiap langkah ditentukan. Menurut angka 1 pada halaman 60 selamanya vektor Xj = WI ~ dihitung.

Sekarang dalam vektor-vektor Aj terdapat vektor-vektor satuan Ej, sehingga hasil perkalian ~-I Ej inipun pada tiap-tiap langkah diketahui.

Bila vektor-vektor satuan itu kita kumpulkan menjadi matriks satuan, maka simplex tabel seperti diperlihatkan pada tabel-tabel 9.1 dan 9.3, pada tiap-tiap ulangan mengandung matrix.

66

10.4 WI J = ~-l

dan ini dapat dibaca dari kolom-kolom dari tabel itu sesuai dengan kolom-kolom dari vektor-vektor satuan pada tabel permulaan. Suatu pertimbangan lain yang dikerjakan pada metode simplex yang diperbaiki ini, bersangkut paut dengan fungsi yang hendak dimaksimumkan.

n

10.5 y = L cj Xj

j=l

Persamaan ini dapat dianggap sebagai suatu persyaratan. Jadi kita tambahkan persamaan

n

10.6 y = L cj Xj + xn+l = 0

j=1

dalam kendala-kendala dan memaksimumkan ~+l. Jumlah kendala-kendala menjadi bertambah satu tetapi fungsi yang hendak dimaksimumkan menjadi sangat sederhana. Vektor C yang baru itu adalah sebuah vektor yang berdimensi (n+ 1) dengan angka 1 pada tempat elemen yang terakhir dan tempat elemen yang lainnya adalah nol. Perbedaan dari variabel xn+l terhadap variabellainnya adalah bahwa variabel ini merupakan variabel bebas.

Cara penyelesaiannya pun selama perhitungan adalah kurang lebih berbeda.

Untuk sementara kita umpankan bahwa kendala-kendala itu berbentuk seperti pada 9.36, jadi tidak terdapat variabel-variabel artificial; koefisien-koefisien - C dari variabel-variabel slack ~+l' ... , ~ pada 10.5 adalah nol.

Persamaan 10.6 menjadi kendala-kendala yang ke (rn+l ) pada perangkat 9.36 sehingga perangkat kendala-kendala itu menjadi :

67

10.7

p

I, ~h Xh + Xp+1 = Z~o h=l

(i = 1, ... , m)

n

j=l

Dalam hasil pertama seperti biasa, maka xn+ I sebagai suatu variabel basis mempunyai harga nol.

Karena hendak diikhtiarkan memaksimumkan xn+l. Jadi membuatnya positif, maka pada langkah-Iangkah berikutnya xn+1 itu diletakkan di basis; jadi variabel ini tidak turut dalam penentuan variabel mana yang akan meninggalkan basis.

Vektor Cb, yang kini berdimensi (m+I) dengan prosedur ini selamanya berbentuk (0, ... ,0, 1). Hasil perkalian yang dirninta, seperti pada 10.3 cl B-1 pada tiap-tiap ulangan adalah (0, ... , 0, 1) W I dan karenanya adalah sarna dengan baris terakhir dari WI.

Misalkan Xo adalah suatu hasil basis yang memenuhi pembatasan-pembatasan dan B-1 suatu inverse dari matrix vektor-vektor basis.

Pada metode simplex yang diperbaiki ini terdapat suatu ulangan yang terdiri dari bagian-bagian berikut ini :

1. Carilah elemen-elemen dari baris terakhir dari Wi;

2. Tentukan selisih Zj - cj = cb I Wi ~;

3. Bila satu atau lebih dari selisih yang itu adalah negatif, tentukanlah selisih yang terkecil; rnisalkan ini dicapainya untuk j=k;

4. Tentukan x dengan pertolongan rumus Xk = Wi Ak;

5. Tentukan minimum dari hasil pembagian ~ xik

sejauh xik > ° dan i "# Il+ 1; rnisalkan ini dicapai untuk i = r;

6. Anggap sebagai basis yang baru, vektor-vektor basis yang lama dikurangkan dengan ~ dan ditambah dengan Ak;

7. Transforrnir x dan B-1 menurut 9.22*), 9.23*), 9.30 dan 9.31; *) di 9.22 dan 9.23 kita membaca k, sedangkan sekarang j.

68

8. Lihat huruf i : dan selanjutnya.

Perhitungan ini dapat dengan mudah dilaksanakan dengan petolongan dua buah tabel-tabel. Dalam tabel yang pertama terdapat vektor-vektor ~. dan selisih Zj - cj. Dalam tabel yang kedua pada kolom pertama terdapat variabel-variabel basis, kolom kedua terdapat vektor XV, kolom ketiga sampai dengan ke (m+3) matrix W I dan kolom terakhir terdapat vektor Xk, bila Ak pada langkah berikutnya dimasukkan dalam basis.

CONTOH SOAL 10.1

Maksimumkan :

10.8 Y = 2x, + 3x2

di bawah kendala-kendala :

10.9

XI + 3x2 ~ 10 2xI + x2 ~ 10 xI ~ 0, x2 ~ 0

Fungsi 10.8 menjadi kendala yang ditambahkan pada 10.9 dan ketidak-samaan itu berubah menjadi persamaan.

Problema itu menjadi :

Maksimumkan : x3

di bawah kendala-kendala :

XI + 3x2 + x3 = 10
10.10 2xI + x2 + x4 = 10
- 3x2 + Xs = 0
x, ' ..... , x4 ~ 0 69

Pada tabel 10.1 terdapat vektor Aj dan harga Zj - cj dalam berbagai-bagai ulangan; vektor As dihilangkan karena dalam perhitungan-perhitungan tidak memainkan peranan.

TABEL 10.1

Vektor-vektor dan harga-harga (Zj - c) dalarn contoh soal 10.1

A1 A2 A3 A4
1 3 1
2 1
-2 -3
Zj-Cj 4/5 3/5

70

TABEL 10.2

Ulangan-ulangan pada contoh soal 10.1.

Xb I x, I WI I x,
I I I
X3 I 10 I 1 I 3
I I I
X4 I 10 I 1 I 1
I I I
Xs I 0 I 1 I -3
J I I Xb I x, I ~-I I X2
I I I
x, I 10/ I 1/ I 1/
I 3 I 3 I 3
X4 I 20/ I _I/3 1 I s/
I 3 I I 3
Xs I 10 I 1 1 I -1
I I I Xb I x, I WI I
I I I
x, I 2 I 2/ 1/ I
I I s - s I
Xl I 4 I 1/ 3/ I
I I - s s I
Xs I 14 I 4/ 3/ ~
J I s s 1 Pada tabel 10.2 terdapat vektor-vektor Xb, Xo' Xk dan matrix WI, baris yang terakhir terpisah dari yang lainnya, supaya vektor Cbl ~-I mudah dibacanya. Pada kedua tabel itu ruangan-ruangan kosong adalah nol.

Ruangan-ruangan untuk (Zj - cj) dimana vektor-vektor yang akan memasuki basis terdapat dalam tabel 10.1 yang diarsir. Pada kolom Xo pada tabel yang terakhir dari tabel 10.2 terdapat hasil yang optimal; x2 = 2, xl = 4, Xs = 15; jadi maksimum yang dicari adalah 14.

71

Bila kita bandingkan tabel-tabel 10.1 dan 10.2 dengan tabel-tabel 9.4 sarnpai dengan 9.6., rnaka temyata bahwa pada tiap-tiap ulangan vektor yang rnernasuki basis adalah sarna, dernikian pula vektor yang rneninggalkan basis. lni tidak rnengherankan karena kriterianya adalah sarna seperti rnetode yang

diterangkan pada pasal 9. '

Dengan tidak rnelihat pada kolorn terakhir, rnaka matrix WI dari tabel 10.2 selamanya dapat dicari kernbali ke dalam kolorn-kolorn x3 dan X4 dari tabel-tabel 9.4 sarnpai dengan 9.6.

72

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->