BAB II KAJIAN PUSTAKA Kajian pustaka pada bab ini akan membahas tentang pengertian dan penjelasan yang berkaitan dengan fungsi, turunan parsial, pemrograman linear, pemrograman nonlinear, fungsi konveks dan konkaf, pengali lagrange, dan pemrograman kuadratik. Kajian pustaka pada penelitian ini akan digunakan pada bab selanjutnya. A. Fungsi Definisi 2.1. Fungsi (Varberg dan Purcell, 2010 : 29) Sebuah fungsi setiap objek adalah suatu aturan korespondensi yang menghubungkan dalam himpunan yang pertama, disebut daerah asal, dengan sebuah nilai tunggal dari himpunan kedua. Himpunan nilai yang diperoleh secara demikian disebut daerah hasil fungsi pertama. Contoh 2.1 Jika adalah fungsi dengan aturan { dan daerah asal dirinci sebagai } maka daerah hasilnya adalah { }. Definisi 2.2. Fungsi Konstanta (Varberg dan Purcell, 2010 : 38) Suatu fungsi yang berbentuk dengan disebut fungsi konstanta. Contoh 2.2 merupakan fungsi konstanta. 9 konstanta (bilangan real) Definisi 2.3. Fungsi Identitas (Varberg dan Purcell, 2010 : 38) Fungsi , dengan variabel disebut fungsi identitas. Contoh 2.3 Fungsi merupakan fungsi identitas. Definisi 2.4. Fungsi Polinomial (Varberg dan Purcell, 2010 : 39) Sebarang fungsi yang dapat diperoleh dari fungsi konstanta dan fungsi identitas dengan menggunakan operasi penambahan, pengurangan, dan perkalian disebut fungsi polinomial. Suatu fungsi polinomial dapat ditulis dalam bentuk dengan , maka anggota bilangan real. Jika adalah derajat fungsi polinomial tersebut. Contoh 2.4 Fungsi merupakan fungsi polinomial. Definisi 2.5. Pertidaksamaan Linear (Winston, 2003: 52) Untuk sebarang fungsi linear dan sebarang bilangan pertidaksamaan dan , disebut pertidaksamaan linear. Contoh 2.5 dan sedangkan merupakan pertidaksamaan linear, bukan merupakan pertidaksamaan linear. B. Turunan Definisi 2.6 (Varberg dan Purcell , 2010: 100) Turunan fungsi adalah yang nilainya pada sebarang 10 adalah Asalkan limit ini ada. Contoh 2.6 (Varberg dan Purcell, 2010: 100) Diberikan fungsi , tentukan . Penyelesaian [ Jika suatu fungsi ] memiliki [ ] variabel, maka turunan fungsi merupakan turunan parsial. C. Turunan Parsial Definisi 2.7 (Purcell dan Varberg, 2011: 104) Jika terhadap suatu fungsi dengan di variabel, maka turunan parsial fungsi dinyatakan oleh didefinisikan oleh: Turunan parsial terhadap didefinisikan dengan cara yang sama. 11 atau Contoh 2.7 Diberikan fungsi . Tentukan turunan parsial terhadap Penyelesaian Berikut diberikan notasi turunan parsial untuk 1. variabel dan dua variabel. Turunan parsial fungsi n variabel Diberikan fungsi variabel dari dengan persamaan , maka turunan-turunan parsialnya yaitu: Khusus untuk fungsi tiga variabel dari dengan persamaan , maka turunan-turunan parsialnya yaitu , 12 2. Turunan Parsial Dua Variabel Pengertian dan notasi turunan parsial derajat dua fungsi dinyatakan dalam simbol-simbol berikut: D. Fungsi Konveks dan Konkaf Berikut diberikan definisi fungsi naik dan turun serta fungsi konkaf dan konveks. Definisi 2.8 (Varberg dan Purcell, 2010 : 155) Misalkan terdefinisi pada interval (terbuka, tertutup, atau tidak satupun) maka i. naik pada jika untuk setiap pasang bilangan dan dalam , , ii. turun pada jika untuk setiap pasang bilangan dan , iii. monoton murni pada jika naik atau turun pada . 13 dalam , Contoh 2.8 Diberikan fungsi , kapan fungsi tersebut naik dan fungsi tersebut turun? Penyelesaian Diperoleh turunan pertama sebagai berikut: Dengan menyelesaikan pertidaksamaan , disimpulkan bahwa [ naik pada dan ] dan [ , turun pada ]. Teorema 2.1 (Varberg dan Purcell, 2010 : 157) Misalkan i. terdiferensial dua kali untuk semua Jika , maka cekung keatas atau konveks untuk semua , maka cekung kebawah atau konkaf untuk semua , ii. Jika . Definisi 2.9 (Varberg dan Purcell, 2010 : 156) Misalkan terdiferensial untuk semua maka keatas atau konveks jika naik untuk semua dan kebawah atau konkaf jika turun untuk semua . 14 dikatakan cekung dikatakan cekung Contoh 2.9 (Varberg dan Purcell, 2010: 157) Diberikan fungsi , kapan fungsi tersebut cekung keatas, dan cekung ke bawah? Penyelesaian Diperoleh turunan pertama dan kedua sebagai berikut: Dengan menyelesaikan pertidaksamaan , disimpulkan bahwa [ dan ] dan [ naik pada , ]. Dengan menyelesaikan pertidaksamaan diperoleh bahwa konkaf ke atas pada turun pada dan dan konkaf ke bawah pada . Turunan kedua dari fungsi disimpulkan bahwa naik jika adalah turunan pertama dari positif dan turun jika , sehingga dapat negatif. Turunan parsial kedua dapat digunakan untuk menguji konveks atau konkafnya suatu fungsi satu variabel dengan banyak variabel. Uji konveksitas untuk fungsi yang memiliki turunan kedua untuk setiap Dengan demikian, fungsi yang mungkin. bersifat (Hillier dan Lieberman, 2008: 473): 1. Konveks jika dan hanya jika untuk setiap nilai 2. Konveks ketat jika dan hanya jika yang mungkin, untuk setiap nilai yang mungkin, 3. Konkaf jika dan hanya jika untuk setiap nilai 15 yang mungkin, 4. Konkaf ketat jika dan hanya jika untuk setiap nilai yang mungkin. Misal terdapat dua variabel maka uji konveksitas dapat dilihat pada Tabel 2.1. Tabel 2.1 Fungsi Konveks dan Konkaf dengan Dua Variabel Kuantitas [ E. Konveks Konveks Ketat Konkaf Konkaf Ketat ] MAKSIMUM DAN MINIMUM Berikut diberikan definisi nilai maksimum dan nilai minimum. Definisi 2.10 (Varberg dan Purcell, 2010: 151) Jika i. domain dari maka adalah nilai maksimum dari semua ii. yang memuat titik di jika untuk , adalah nilai minimum dari di jika untuk semua , iii. adalah nilai ekstrim dari atau nilai minimum, 16 di jika ia berupa nilai maksimum iv. Fungsi yang akan dimaksimumkan atau diminimumkan disebut fungsi tujuan. Contoh 2.10 (Varberg dan Purcell, 2010: 153) pada [ Tentukan nilai maksimum dan minimum dari ]. Penyelesaian Turunan pertama dari fungsi tersebut adalah dan nol jika ujungnya terdefinisi pada sehingga titik kritisnya dan . Sedangkan titik , sehingga , ,dan Dengan demikian diperoleh nilai minimum fungsi dan nilai maksimum fungsi adalah di adalah di . F. Titik Kritis Berikut diberikan teorema titik kritis. Teorema 2.2 (Varberg dan Purcell, 2010:152) (Teorema Titik Kritis) Andaikan fungsi memuat titik c. Jika didefinisikan pada selang adalah nilai ekstrim, maka haruslah berupa suatu titik kritis, yakni berupa salah satu dari: 1) Titik ujung dari , 2) Titik stasioner dari ; titik dimana 3) Titik singular dari ; titik dimana 17 yang atau . Bukti: berupa nilai maksimum pada dan misalkan bahwa ujung atau pun titik singular. Harus diperlihatkan bahwa adalah nilai maksimum, maka Jadi, jika sehingga bukan titik adalah titik stasioner. untuk semua dalam , yaitu maka 1) Sedangkan jika , maka 2) bukan titik singular maka ada. Akibatnya, untuk dalam Persamaan (1) untuk dalam Persamaan (2), maka diperoleh Jadi dapat disimpulkan bahwa atau merupakan titik stasioner. Teorema 2.3 (Varberg dan Purcell, 2010 : 155) Misalkan f kontinu pada interval dan terdiferensial pada setiap titik-dalam dari i. Jika ii. Jika untuk semua titik-dalam , maka f naik pada , untuk semua titik-dalam , maka f turun pada . 18 Bukti : Misalkan terdefinisi pada selang untuk semua Jika titik-dalam dari . , maka dapat ditulis i. berarti Menurut Definisi 2.8 i, fungsi ii. naik. berarti Menurut Definisi 2.8 ii, fungsi turun. Teorema 2.4 (Varberg dan Purcell, 2010 : 163) Misalkan kontinu pada interval terbuka yang memuat sebuah titik kritis . i. Jika untuk semua dalam , maka ii. Jika , maka iii. Jika dan untuk semua adalah nilai maksimum lokal , untuk semua dalam dalam dalam dan untuk semua adalah nilai minimum lokal , bertanda sama pada kedua pihak , maka bukan nilai ekstrim lokal . Bukti : i. Karena 2.3 naik pada untuk semua dalam . Demikian pula karena 19 , maka menurut Teorema untuk semua dalam , maka turun pada dalam , kecuali di . Jadi untuk semua . Dapat disimpulkan bahwa adalah maksimum lokal. Demikian pula untuk pembuktian ii dan iii. G. Matriks Hessian Matriks Hessian adalah matriks yang setiap elemennya dibentuk dari turunan parsial kedua dari suatu fungsi. Misalkan variabel, maka matriks Hessian dari suatu fungsi dengan yaitu : [ ] H. Matriks Definit Positif dan Definit Negatif Berikut diberikan definisi matriks definit positif dan definit negatif Definisi 2.11 (Anton, 1995: 320) Diberikan A matriks persegi , maka berlaku : a. Matriks A disebut Definit Positif , b. Matriks A disebut Definit Negatif , c. Matriks A disebut Semi Definit Positif d. Matriks A disebut Semi Definit Negatif . 20 , , Contoh 2.11 * Diketahiu matriks definit negatif atau tidak definit. Jika [ [ ]* definit positif, dinyatakan dalam bentuk kuadratik, maka +* + ]* + Berdasarkan Definisi 2.11, matriks I. +. Akan diselidiki apakah merupakan semi definit positif. PEMROGRAMAN LINEAR Pemrograman linear merupakan salah satu teknik dari riset operasi untuk memecahkan permasalahan optimasi (maksimum atau minimum) dengan menggunakan persamaan dan pertidaksamaan linear dalam rangka untuk mencari pemecahan yang optimal dengan memperhatikan pembatasa-pembatasan yang ada (Supranto, 1991 : 43). Fungsi linear yang hendak dicari nilai optimum berbentuk sebuah persamaan yang disebut fungsi tujuan. Fungsi linear yang harus terpenuhi dalam optimasi fungsi tujuan, dapat berbentuk persamaan maupun pertidaksamaan yang disebut fungsi kendala (Dumairy, 2012 : 344). Siswanto (2007 : 26) menyebutkan definisi pemrograman linear yaitu sebagai metode matematis yang berbentuk linear untuk menentukan suatu penyelesaian optimal dengan cara memaksimumkan atau meminimumkan fungsi tujuan terhadap suatu susunan kendala. Secara keseluruhan, berdasarkan definisi maka tujuan pemrograman linear adalah memecahkan persoalan memaksimumkan atau meminimumkan untuk mendapatkan penyelesaian optimal. 21 Masalah pemrograman linear pada dasarnya memiliki ketentuan-ketentuan berikut ini (Winston, 2003 : 53): 1. Masalah pemrograman linear berkaitan dengan memaksimumkan (pada umumnya keuntungan) atau meminimumkan (pada umumnya biaya) yang disebut sebagai fungsi tujuan dari pemrograman linear. Fungsi tujuan ini terdiri dari variabel-variabel keputusan. 2. Terdapat kendala-kendala atau batasan-batasan yang membatasi pencapaian tujuan yang dirumuskan dalam fungsi-fungsi kendala yang terdiri dari variabel-variabel keputusan yang menggunakan sumbersumber daya yang terbatas. 3. Ada pembatasan tanda untuk setiap variabel dalam masalah ini. Untuk sebarang , pembatasan tanda menentukan harus non negatif ). 4. Memiliki sifat linearitas. Sifat ini berlaku untuk semua fungsi tujuan dan fungsi-fungsi kendala. Terdapat tiga unsur utama yang membangun suatu pemrograman linear yaitu (Siswanto, 2007 : 26): 1. Variabel keputusan. Variabel keputusan adalah variabel yang akan mempengaruhi nilai tujuan yang hendak dicapai. Pada proses pembentukan suatu model, menentukan variabel keputusan merupakan langkah pertama sebelum menentukan fungsi tujuan dan fungsi kendala. 22 2. Fungsi tujuan. Fungsi tujuan pada model pemrograman linear haruslah berbentuk linear. Selanjutnya, fungsi tujuan tersebut dimaksimalkan atau diminimalkan terhadap fungsi-fungsi kendala yang ada. 3. Fungsi kendala. Kendala dapat dikatakan sebagai suatu pembatas terhadap variabelvariabel keputusan yang dibuat. Fungsi kendala untuk model pemrograman linear juga harus berupa fungsi linear. Secara umum, masalah pemrograman linear dapat dirumuskan sebagai berikut (B. Susanta, 1994:6) Memaksimumkan / Meminimumkan (2.1) dengan kendala (2.2) Dalam hal ini, [ ] (2.3) (2.4) [ [ ] ] (2.5) 23 [ Matriks ] (2.6) merupakan matriks satu kolom dari variabel yang akan dicari. merupakan matriks satu baris dari koefisien ongkos koefisien dari persamaan kendala dan , matriks adalah matriks adalah matriks kolom dari ruas kanan persamaan kendala. Jika Persamaan (2.1) dan (2.2) diuraikan menjadi penjumlahan aljabar menjadi Memaksimumkan / Meminimumkan (2.7) dengan kendala (2.8a) (2.8b) (2.8c) (2.8d) J. Metode Simpleks Metode simpleks merupakan prosedur aljabar yang bersifat iteratif, yang bergerak selangkah demi selangkah, dimulai dari suatu titik ekstrim pada daerah fisibel (ruang solusi) menuju ke titik ekstrim optimum (Dimyati,dkk: 1992). Setiap langkah menghasilkan suatu nilai dan fungsi tujuan yang selalu lebih besar (lebih kecil) atau sama dari langkah-langkah sebelumnya (Supranto, 1991 :73). 24 Metode simpleks lebih efisien serta dilengkapi dengan suatu tes kriteria yang dapat memberitahukan kapan hitungan harus dihentikan dan kapan harus dilanjutkan sampai diperoleh suatu penyelesaian yang optimal. Pada umumnya dipergunakan tabel-tabel, dari tabel pertama yang memberikan pemecahan dasar permulaan yang fisibel sampai pada pemecahan terakhir yang memberikan solusi optimal (Supranto, 1991 :75). Kendala dari permasalahan yang diselesaikan dengan metode simpleks harus diubah terlebih dahulu ke dalam bentuk kanonik. Bentuk kanonik yaitu kondisi dimana semua kendala berbentuk persamaan linear (B. Susanta, 1994 : 70). Menurut Herjanto (2007 : 45), cara mengubah satu kendala menjadi bentuk kanonik adalah sebagai berikut : 1. 2. Menambahkan variabel untuk kendala yang berbentuk pertidaksamaan kurang dari sama dengan . Mengurangi dengan variabel untuk kendala yang berbentuk pertidaksamaan lebih dari sama dengan 3. Mengalikan dengan . terhadap nilai suku tetap negatif. Untuk membentuk kendala menjadi bentuk kanonik diperlukan penambahan variabel basis baru. Variabel basis tersebut adalah a. Variabel slack Variabel slack merupakan variabel yang ditambahkan ke model matematika kendala untuk mengubah pertidaksamaan 25 menjadi persamaan . b. Variabel surplus Variabel surplus merupakan variabel yang dikurangkan dari model matematika persamaan c. kendala untuk mengubah pertidaksamaan menjadi . Variabel artificial yaitu variabel yang ditambahkan pada fungsi kendala yang belum memuat variabel basis. Contoh 2.12 Meminimumkan: dengan kendala Bentuk kanonik: Meminimumkan: dengan kendala Variabel slack maupun variabel surplus merupakan variabel yang membuat ruas yang semula tak seimbang menjadi seimbang, sehingga antara ruas kiri dan kanan bernilai sama (B. Susanta, 1994 : 69). Variabel surplus tidak bisa menjadi 26 basis karena koefisiennya -1 maka perlu ditambahkan suatu variabel yang bernilai +1 untuk menjadi basis, variabel tersebut dinyatakan sebagai variabel artificial atau buatan (B. Susanta, 1994 : 69). Akibatnya muncul syarat perlu agar soal asli mempunyai penyelesaian optimum, yaitu pada tabel optimum variabel buatan harus bernilai nol karena dalam hal ini masuknya variabel buatan hanya sebagai katalisator supaya algoritma simpleks dapat berjalan. Agar variabel buatan bernilai nol maka disusunlah fungsi sasaran baru untuk fungsi tujuan memaksimumkan dengan bentuk awal, ̅ , dengan adalah suatu variabel buatan, dan cukup besar. Hal ini diharapkan supaya adalah fungsi tujuan merupakan bilangan positif yang segera keluar dari basis karena koefisien ongkosnya negatif besar (B. Susanta, 1994 : 89). Sedangkan dalam kasus meminimumkan, bila terdapat variabel buatan yang masuk maka disusun fungsi tujuan baru yaitu, ̅ dengan merupakan bilangan positif yang cukup besar (B. Susanta, 1994 : 108). Setelah bentuk kanonik dari setiap kendala telah didapatkan, maka langkah selanjutnya adalah membuat tabel simpleks. Tabel 2.2 Bentuk tabel simpleks 27 Keterangan : : variabel-variabel yang akan dicari : variabel yang menjadi basis dalam tabel yang ditinjau : koefisien ongkos : koefisien ongkos milik variabel basis : koefisien dalam kendala utama : suku tetap (nilai di ruas kanan fungsi kendala) :∑ (jumlah hasil kali :∑ (jumlah hasil kali : selisih dengan dengan kolom dengan kolom ) ) Apabila tabel yang bersangkutan belum optimal dan dipilih baru maka disusun kolom hanya untuk sebagai basis yang diperoleh dengan : . Kasus dimana semua fungsi kendalanya berupa pertidaksamaan satu jenis disebut sebagai maksimum atau minimum baku (B. Susanta, 1994 : 70). Pada kasus memaksimumkan, tabel simpleks dinyatakan telah optimal jika untuk semua nilai . Jika tabel belum optimal maka dilakukan perbaikan tabel (iterasi). Pada kasus memaksimumkan, adalah yang memiliki mencapai yang paling kecil sehingga terpilih terpilih untuk masuk menjadi basis baru. Kolom yang terpilih dinamakan kolom kunci. Variabel yang terpilih keluar dari basis adalah variabel dengan nilai terpilih untuk keluar dari basis. Baris terkecil sehingga disebut baris kunci dan unsur pada baris 28 kunci yang juga pada kolom kunci disebut unsur kunci (B. Susanta, 1994 : 77-78). Sebaliknya pada kasus meminimumkan, yang terpilih adalah yang memiliki yang paling besar sehingga terpilih untuk masuk menjadi basis. Variabel yang terpilih keluar dari basis adalah variabel dengan nilai sehingga terkecil terpilih untuk keluar dari basis. Tabel dinyatakan optimal jika untuk semua nilai (B. Susanta, 1994 : 94-95). Adapun langkah-langkah yang diperlukan untuk menyelesaikan masalah pemrograman linear dengan metode simpleks adalah (Zulian Yamit, 1991: 44): 1. Mengubah model program linear menjadi model persamaan linear dengan menambahkan variabel pengetat. 2. Menyusun tabel simpleks awal dan memasukkan nilai dari koefisien teknis ( ) dan koefisien kapasitas sumber daya pada fungsi kendala dan koefisien fungsi tujuan ( ) pada fungsi tujuan ke dalam tabel simpleks. 3. Menghitung nilai a) Nilai pada setiap kolom variabel dan kolom : variabel=jumlah perkalian unsur-unsur kolom dengan unsur variabel pada kolom tersebut. b) Nilai kolom =jumlah perkalian unsur-unsur kolom unsur variabel pada kolom 4. Menghitung nilai 5. Memeriksa nilai . pada setiap kolom variabel. : untuk tujuan memaksimumkan maka: a) ( ) ; maka lanjut ke langkah selanjutnya, b) ( ) ; optimal maka lanjut ke Langkah 12, 29 dengan c) Jika tujuan meminimumkan, maka sebaliknya. 6. Menentukan kolom kunci/kolom masuk yaitu kolom dengan nilai negatif terbesar untuk tujuan memaksimumkan atau kolom dengan nilai positif terbesar untuk tujuan meminimumkan. 7. Menentukan baris kunci yaitu baris yang memiliki nilai ( ) positif terkecil. = angka pada kolom kunci dan baris yang sama. 8. Menentukan angka kunci yaitu angka pada perpotongan baris kunci dan kolom kunci. 9. Mengganti variabel pada baris kunci dengan variabel kolom yang terletak pada kolom kunci. Nama variabel basis menjadi nama variabel yang dipindahkan. 10. Transformasi dengan metode Eliminasi Gauss Jordan terhadap baris persamaan. 11. Kembali ke Langkah 3. 12. Solusi optimal diperoleh, dengan nilai variabel basis (nilai penyelesaian optimal) untuk masing-masing terletak di kolom . K. DUALITAS Dalam kebanyakan pembahasan program linear, masalah dual didefinisikan untuk berbagai bentuk masalah primal, bergantung pada jenis batasan tanda dari variabel dan arti dari optimasi (Hamdy A. Taha, 2007 : 149). Setiap persoalan pemrograman linear mempunyai suatu linear program yang berkaitan disebut dual. Sehingga solusi dari persoalan asli pemrograman linear juga memberikan solusi pada dualnya. 30 Bentuk umum masalah primal dual adalah sebagai berikut Primal Memaksimumkan/Meminimumkan : (2.9a) Dengan kendala : (2.9b) , dan Dual Meminimumkan/Memaksimumkan : (2.10a) Dengan kendala : (2.10b) Dalam hal ini, [ [ ], (2.11) ], (2.12) [ ], dan Matriks sedangkan (2.13) [ ], dan (2.14) merupakan transpose dari matriks dan matriks adalah matriks kolom untuk setiap koefisien ongkos , , dan merupakan matriks kolom dari variabel-variabel dual yang dicari. Jika Persamaan (2.10a) dan Persamaan (2.10b) langsung ditulis dalam bentuk matriks secara keseluruhan, maka Meminimumkan / memaksimumkan : 31 [ ][ ] dengan kendala : [ ][ ] [ ]. Bentuk perkalian matriks tersebut jika diuraikan menjadi penjumlahan aljabar akan menjadi : Meminimumkan / memaksimumkan ∑ (2.15) dengan kendala (2.16a) (2.16b) (2.16c) Lemma 2.1. Dualitas Lemah (Winston, 2003 : 306) ̅ Jika ̅ ̅ [ ̅ ] merupakan solusi layak masalah primal, dan ̅ [ ̅ ] ̅ merupakan solusi layak masalah dual, maka nilai . Bukti : Pada permasalahan primal yang dinyatakan dalam bentuk Memaksimumkan ∑ dengan kendala : dengan . Bentuk masalah dual menjadi Meminimumkan ∑ dengan kendala dengan 32 . Perhatikan bahwa jika dikalikan dengan kendala masalah primal maka menjadi untuk Jika terdapat sejumlah ∑ ∑ kendala, maka ∑ (2.17a) Diperhatikan bahwa , jika dikalikan dengan kendala masalah primal maka menjadi untuk Jika terdapat sejumlah ∑ . ∑ . kendala, maka ∑ (2.17b) Berdasarkan Persamaan (2.17a) dan (2.17b) maka diperoleh ∑ ∑ ∑ ∑ Terbukti bahwa nilai primal , atau ∑ ∑ . dual Teorema 2.5. Teorema Dualitas (Winston, 2003 : 306) Jika terdapat sebuah pemecahan optimal bagi suatu program primal atau dual simetris, maka program lainnya juga memiliki suatu pemecahan optimal dan kedua fungsi tujuannya memiliki nilai optimal yang sama. Bukti : Jika masalah primal ditulis dalam bentuk : Meminimumkan/Memaksimumkan Bentuk dualnya adalah : Memaksimumkan/Meminimumkan i. Berdasarkan Lemma 2.1, maka ̅ . Suatu titik layak pada masalah primal harus menghasilkan sebuah nilai melebihi primal yang tidak ̅ . Mengingat ̅ adalah solusi layak optimal dan punya 33 suatu nilai fungsi tujuan primal yang memenuhi ̅ ̅ , maka ̅ haruslah solusi optimal primal. ii. Berdasarkan Lemma 2.1 karena ̅ solusi layak primal, dual lemah mengisyaratkan bahwa untuk suatu titik layak dual , maka ̅ . Suatu titik layak dual harus menghasilkan sebuah nilai fungsi tujuan yang melebihi ̅. Mengingat ̅ merupakan solusi layak dual dan punya sebuah nilai fungsi tujuan dual yang memenuhi ̅ ̅, maka ̅ haruslah solusi optimal dual. Berdasarkan penjelasan tersebut maka Teorema 2.3 terbukti. Jika permasalahan permasalahan dualnya primalnya dalam menjadi bentuk bentuk memaksimalkan meminimumkan. maka Primal-dual menunjukkan hubungan simetris dengan ketentuan sebagai berikut (Hillier dan Lieberman, 2008: 179): 1. Koefisien fungsi tujuan pada permasalahan primal adalah ruas kanan kendala fungsional pada permasalahan dualnya. 2. Ruas kanan kendala fungsional pada permasalahan primal merupakan koefisien fungsi tujuan pada permasalahan dualnya. 3. Koefisien variabel kendala fungsional pada permasalahan primal menjadi koefisien kendala fungsional pada permasalahan dualnya. Contoh 2.13 Meminimumkan : dengan kendala 34 Bentuk primal Meminimumkan : dengan kendala Bawa model pemrograman linear diatas ke bentuk minimum baku. Meminimumkan: dengan kendala Bentuk Dual Memaksimumkan: dengan kendala 35 Contoh 2.14 Diketahui masalah primal program linear sebagai berikut Memaksimumkan Dengan kendala Jelas bentuk dual dari masalah primal diatas adalah Meminimumkan Dengan kendala Menurut Siswanto (2007) hubungan penyelesaian optimal antara primal dan dual sebuah kasus pemrograman linear adalah sebagai berikut : 1. Nilai maksimum fungsi tujuan primal sama dengan nilai minimum fungsi tujuan dual. 2. Nilai optimal variabel keputusan primal sama dengan nilai kendala) dual. 36 (ruas kanan 3. Nilai (ruas kanan kendala) primal sama dengan nilai optimal variabel keputusan dual. Keoptimalan masalah dual dan masalah primal mengakibatkan suatu kondisi yang disebut dengan kondisi complementary slackness (B. Susanta, 1994 : 186) : 1. Jika dalam penyelesaian optimal masalah primal, kendala ke- berupa pertidaksamaan maka dalam penyelesaian optimal masalah dual variabel kebernilai nol. 2. Jika dalam penyelesaian optimal masalah primal, variabel ke- bernilai positif (kendala tak negatif untuk ) maka berupa pertidaksamaan dalam penyelesaian optimal masalah dual kendala ke- akan berupa persamaan. Pada kondisi complementary slackness tersebut dapat ditulis secara matematis yaitu : 1. 2. Dimana = kendala ke= variabel ke= variabel ke= kendala ke- 37 L. PEMROGRAMAN NONLINEAR Untuk permasalahan-permasalahan optimasi tertentu, fungsi kendala dan fungsi tujuan tidak dapat dinyatakan dalam bentuk linear. Menurut Bazara (2006 : 1) pemrograman nonlinear merupakan salah satu teknik dari riset operasi untuk menyelesaikan permasalahan optimasi dengan fungsi tujuan berbentuk nonlinear dan fungsi kendala dapat berbentuk nonlinear ataupun linear. Bentuk umum dari permasalahan pemrograman nonliear adalah menentukan nilai dimana merupakan variabel keputusan, sehingga Memaksimumkan / meminimumkan (2.18) dengan kendala untuk setiap dengan (2.19a) merupakan konstanta tak negatif dan (2.19b) Menurut Hillier (2001 : 664) terdapat 3 bentuk permasalahan pemrograman nonlinear, yaitu : 1. Pemrograman Nonlinear tanpa Kendala Pemrograman nonlinear tanpa kendala merupakan optimasi yang tidak memiliki kendala dengan fungsi tujuan berbentuk nonlinear. Bentuk model pemrograman nonlinear tanpa kendala untuk menentukan nilai dengan Fungsi tujuan : memaksimumkan/meminimumkan 38 Untuk menyelesaikan permasalahan pemrograman nonlinear tanpa kendala terdapat dua syarat keoptimalan, yaitu (Hillier dan Lieberman, 2008: 478) a. Syarat Perlu Keoptimalan Syarat perlu untuk solusi khusus menjadi minimum atau maksimum adalah: pada (2.20) Teorema 2.6 (Varberg dan Purcell, 2010 : 164) Misalkan dan ada pada setiap titik interval terbuka , dan misalkan i. yang memuat . Jika , maka adalah nilai minimum lokal , ii. Jika , maka adalah nilai maksimum lokal . Bukti : i. Jika memuat Untuk semua pula jika positif pada dan , maka ada selang buka yang sedemikian sehingga dalam , maka . Jika , maka . Jadi, berubah dari negatif menjadi , dan berdasarkan Teorema 2.5, . Demikian merupakan minimum lokal . Pembuktian ii serupa dengan pembuktian i tersebut. Nilai ketat disekitar pasti merupakan minimum lokal jika adalah konveks . Untuk mencari nilai minimum global yaitu nilai terkecil 39 diantara nilai-nilai minimum lokal (solusi untuk semua nilai yang memenuhi ) perlu dilakukan perhitungan untuk membandingkan minimum lokal dan mengidentifikasi nilai terkecil. Jika nilai tersebut lebih kecil dari (atau pada interval tertentu) pada dan maka titik ini merupakan minimum global. Jika konveks maka solusi apapun untuk dengan merupakan fungsi pada secara otomatis dikenali sebagai minimum global. Syarat ini tidak hanya perlu tetapi juga telah memenuhi syarat cukup untuk minimum global untuk fungsi konveks. Jika merupakan konveks ketat maka satu-satunya solusi ini merupakan minimum global. b. Syarat Cukup Keoptimalan Syarat cukup keoptimalan digunakan untuk menentukan apakah titik optimal yang didapatkan dari syarat perlu keoptimalan merupakan titik minimum atau titik maksimum. Syarat cukup keoptimalan yaitu : i. Jika dan matriks Hessian definit positif maka titik dan matriks Hessian definit negatif maka titik minimum, ii. Jika maksimum. 40 2. Pemrograman Nonlinear dengan Kendala Linear Pemrograman nonlinear dengan kendala linear merupakan optimasi dengan kendala berbentuk fungsi linear dan fungsi tujuan berupa fungsi nonlinear. Untuk menentukan nilai dengan bentuk umum adalah : Memaksimumkan/meminimumkan : (2.21) dengan kendala : (2.22a) untuk setiap dan 3. (2.22b) Pemrograman Nonlinear dengan Kendala Nonlinear Menurut Taha (2007, 699) pemrograman nonlinear dengan kendala nonlinear merupakan masalah optimasi dengan fungsi tujuan nonlinear dan fungsi kendala nonlinear. Pemrograman nonlinear berkendala nonlinear dibedakan menjadi dua yaitu : a. Untuk bentuk umum pemrograman nonlinear dengan kendala persamaan (equality) adalah Fungsi tujuan : Memaksimumkan/meminimumkan : Fungsi kendala : Dimana dengan menunjukkan jumlah kendala dan menunjukkan jumlah variabel . b. Bentuk umum pemrograman nonlinear dengan kendala pertidaksamaan adalah Memaksimumkan/meminimumkan : Dengan kendala : untuk 41 M. PENGALI LAGRANGE Pengali lagrange digunakan untuk menyelesaikan permasalahan optimasi (penentuan harga ekstrim), dimana terdapat kendala-kendala tertentu. 1. Satu pengali lagrange Prinsip dari metode ini adalah mencari harga ekstrim (optimasi) suatu fungsi tujuan Memaksimumkan / meminimumkan (2.23) dengan kendala-kendala tertentu yang harus dipenuhi, yaitu (2.24) Fungsi lagrangenya adalah (2.25) Parameter 2. disebut pengali lagrange. Lebih dari satu pengali lagrange Jika Pengali lagrange melibatkan lebih dari satu kendala, maka penggunaan parameter yang dipilih dapat ditambahkan menjadi atau parameter lainnya. Misalnya untuk memperoleh nilai ekstrim dan dengan kendala . Fungsi lagrange (2.26) dengan syarat perlu : dengan (2.27a) 42 dengan (2.27b) Metode ini dapat diperluas untuk variabel dengan kendala Fungsi lagrange dengan syarat perlu : dengan adalah pengali lagrange. Penyelesaian pengali lagrange mempunyai kondisi yang harus dipenuhi untuk mendapatkan penyelesaian optimal. Jika masalah memaksimumkan maka fungsi tujuan harus dalam bentuk konkaf dan setiap fungsi kendala berupa fungsi linear yang konveks, sedangkan jika masalah meminimumkan maka fungsi tujuan harus konveks dan setiap fungsi kendala berupa fungsi linear yang konveks (Winston, 2003 : 685). Menurut Purcell (2010) langkah-langkah penyelesaian pengali lagrange adalah sebagai berikut : a. Membentuk fungsi lagrange yaitu fungsi yang memuat hasil penjumlahan atau selisih fungsi tujuan dan perkalian antara pengali lagrange dengan fungsi kendala. 43 Berdasarkan Persamaan (2.26) maka fungsi lagrange yang terbentuk adalah : ∑ b. Membuat turunan pertama pada semua variabel sebagai syarat perlu meminimumkan fungsi lagrange dalam kondisi stasioner i. ii. iii. iv. c. Memperoleh titik-titik kritis dengan menyelesaikan persamaan yang diperoleh. d. Mencari nilai ekstrim dengan mensubstitusikan titik-titik kritis ke dalam persamaan nonlinear. 44 Langkah-langkah penyelesaian menggunakan pengali lagrange disajikan pada Gambar 2.1 Fungsi Tujuan Nonlinear Membentuk fungsi lagrange Mencari turunan pertama pada semua variabel pada fungsi lagrange sebagai syarat perlu untuk meminimumkan dalam kondisi stasioner Memperoleh titik-titik kritis. Mencari nilai ekstrim dengan mensubstitusikan titik-titik kritis ke dalam fungsi tujuan nonlinear. Nilai Optimum Gambar 2.1 Bagan Alir Metode Pengali Lagrange Contoh 2.15 Meminimumkan (2.28) Dengan kendala: (2.29a) (2.29b) 45 Penyelesaian Diperoleh turunan parsial kedua dari Persamaan (2.28) adalah sebagai berikut: dan turunan pertama dari Persamaan (2.29) adalah sebagai berikut karena maka berdasarkan Teorema 2.1 fungsi fungsi konveks, sedangkan merupakan berdasarkan Definisi 2.9 merupakan fungsi yang konveks sehingga dapat diselesaikan menggunakan metode pengali lagrange. Fungsi lagrange untuk masalah diatas adalah sebagai berikut (2.30) Pada titik stasioner turunan pertama pada setiap persamaan bernilai nol, sehingga diperoleh: atau (2.31) atau (2.32) 46 atau (2.33) atau (2.34) Substitusi Persamaan (2.33) ke (2.31), dan Persamaan (2.34) ke (2.32) diperoleh , (2.35) Dari penyelesaian masalah tersebut diperoleh nilai , , , (2.36) Sehingga, nilai minimum fungsi dapat diperoleh dengan substitusi Persamaan (2.36) ke (2.28), diperoleh nilai minimum . N. Kondisi Karush-Kuhn Tucker (KKT) Pada tahun 1951 Kuhn Tucker menemukan suatu teknik optimasi yang dapat digunakan untuk mencari titik optimum dari permasalahan berkendala baik permasalahan dalam bentuk linear maupun nonlinear. Metode Karush Kuhn Tucker merupakan pengembangan dari penyelesaian model nonlinear berkendala persamaan yang dikerjakan dengan mencari titik-titik stasionernya, yaitu titik yang berpotensi menjadi titik optimal. Metode ini membahas suatu kondisi untuk menjadi solusi optimal untuk pemrograman nonlinear berikut Memaksimumkan/meminimumkan 47 Dengan kendala (2.37) Semua kendala yang akan diselesaikan dengan metode Karush Kuhn Tucker harus menggunakan tanda harus ditulis . Kendala yang berbentuk sebagai . harus diganti Kendala dengan bentuk dengan dan (Winston, 2003 : 673). Terdapat beberapa syarat Karush Kuhn Tucker untuk masalah optimasi (maksimasi dan minimasi) yang dirumuskan oleh Karush dan Kuhn Tucker seperti pada Teorema 2.7 dan 2.8. Teorema 2.7. Syarat KKT masalah maksimasi (Winston, 2003 : 676) Diberikan fungsi tujuan masalah pemrograman dan fungsi kendala nonlinear berpola merupakan suatu memaksimumkan. merupakan suatu solusi optimal untuk ̅ dan harus memenuhi (2.37) dan harus ada pengali serta variabel slack ∑ 1. [ 2. 3. yang memenuhi : ( , untuk ] ∑ , untuk ) , untuk 48 Jika ̅ , maka 4. , untuk 5. , untuk Teorema 2.8. Syarat KKT masalah minimasi (Winston, 2003 : 676) Diberikan fungsi tujuan dan fungsi kendala masalah berpola meminimumkan. Jika ̅ dan solusi optimal untuk merupakan suatu , maka (2.37) dan harus ada pengali merupakan suau harus memenuhi serta variabel surplus yang memenuhi : ∑ 1. [ 2. 3. ( , untuk ] ∑ 4. , untuk 5. , untuk , untuk ) , untuk Pada syarat kedua dari Teorema 2.7 dan Teorema 2.8 jika bentuk umum fungsi kendala yaitu maka berakibat dan menurut . O. PEMROGRAMAN KUADRATIK Menurut Hillier & Lieberman (2001: 447) pemrograman kuadratik merupakan pendekatan permasalahan optimasi nonlinear dimana kendalanya berupa fungsi linear dan fungsi tujuannya merupakan kuadrat dari variabel keputusan ataupun perkalian dari dua variabel keputusan. Pemrograman kuadratik adalah suatu masalah yang mempunyai kendala pertidaksamaan linear dan fungsi 49 tujuan . Perbedaan masalah pemrograman kuadratik dengan masalah pemrograman linear adalah pada pemrograman kuadratik bentuk fungsi tujuannya melibatkan variabel kuadrat (Hillier & Lieberman, 2001 : 683). Bentuk umum dari masalah pemrograman kuadratik menurut Pressini, dkk (1998) adalah Meminimumkan (2.38) dengan kendala (2.39a) (2.39b) Konsep matriks Adapun dan sama dengan Persamaan (2.3)-(2.6). merupakan suatu konstanta sedangkan merupakan matriks simetris yang tersusun dari nilai , dimana kedua terhadap dari fungsi tujuan. Matriks dan simetris sehingga nilai merupakan hasil dari turunan parsial merupakan matriks . Persamaan (2.38) jika ditransformasikan ke dalam bentuk aljabar maka akan menjadi ∑ Bentuk kuadratik yang ∑ diperoleh ∑ kemudian (2.40) diselesaikan dengan menggunakan persyaratan Kuhn-Tucker seperti pada Teorema 2.7 dan Teorema 2.8. Setelah kondisi Kuhn-Tucker terpenuhi maka langkah selanjutnya yaitu menambahkan variabel buatan untuk setiap kondisi Kuhn Tucker yang tidak memiliki variabel basis. 50 Pada pemrograman kuadratik terdapat kondisi complementary slackness khusus yang secara umum dinyatakan dalam Sifat 2.1 berikut Sifat 2.1. Complementary slackness pada pemrograman kuadratik (Winston, 2003 : 687) 1) dan pada kondisi Kuhn-Tucker dan tidak dapat kedua-duanya bernilai positif, 2) Variabel surplus (excess) ataupun slack untuk kendala ke-i dan tidak dapat kedua-duanya bernilai positif. Bukti : 1) Diketahui Syarat 1) dan 3) pada Teorema 2.7, yaitu : ∑ Syarat 1) yaitu ∑ ( , sehingga disubstitusikan ke Syarat 3) ∑ ) Jika maka Jika maka maka . , yaitu . , yaitu atau . Berdasarkan Syarat 4) Hal ini juga berlaku pada Teorema 2.7, sehingga terbukti bahwa pada kondisi Kuhn-Tucker dan positif. 51 dan tidak dapat kedua-duanya bernilai [ 2) Diperhatikan Syarat 2) yaitu ] Pada fungsi kendala yaitu maka bentuk kanonik kendala tersebut , sehingga Syarat 2) menjadi Jika maka , yaitu Jika maka , yaitu maka . . atau Pada fungsi kendala . Berdasarkan Syarat 5) dapat diubah menjadi Melalui cara yang sama maka didapat pula . , sehingga terbukti bahwa variabel surplus (excess) ataupun slack untuk kendala ke-i dan tidak dapat kedua-duanya bernilai positif. P. PEMROGRAMAN KUADRATIK METODE WOLFE Pemrograman kuadratik menyelesaikan masalah pemrograman nonlinear dengan mentransformasikannya menjadi masalah pemrograman linear menggunakan syarat Kuhn Tucker. Persamaan baru yang didapat dari syarat Kuhn Tucker kemudian diselesaikan dengan metode wolfe. adapun langkah-langkah penyelesaiannya adalah sebagai berikut untuk masalah meminimumkan adalah (Hillier & Lieberman, 2001): a. Membentuk kondisi Kuhn Tucker dari syarat Kuhn Tucker yang diperoleh Berdasarkan syarat Kuhn Tucker pada Teorema (2.7) dan Teorema (2.8) maka dapat ditentukan kondisi Kuhn Tucker sebagai berikut : 1) 2) ∑ (2.41) untuk fungsi kendala 52 , atau (2.42a) untuk fungsi kendala (2.42b) b. Mengidentifikasi clompementary slackness sesuai sifat. c. Menambahkan variabel buatan untuk setiap kondisi Kuhn Tucker yang tidak memiliki variabel basis. d. Membuat fungsi tujuan baru yang linear yaitu fungsi tujuan untuk meminimalkan jumlah nilai variabel buatan . Fungsi tujuan yang linear ini dapat dinyatakan sebagai w. Fungsi kendala yang digunakan merupakan fungsi kendala yang baru yang terbentuk dari Langkah a. Berdasarkan langkah d, maka fungsi tujuan linear adalah : ∑ Meminimumkan e. ∑ Melakukan proses iterasi simpleks metode wolfe. Untuk menjamin bahwa solusi akhir (variabel buatan bernilai nol) memenuhi kondisi complementary slackness, metode wolfe memiliki modifikasi untuk pilihan variabel simpleks yang masuk menjadi basis, yaitu 1) ataupun dari kondisi Kuhn Tucker dan tidak bisa menjadi variabel basis secara bersamaan. 2) Variabel slack ataupun variabel surplus dari kendala ke-i dan dari kondisi Kuhn Tucker tidak boleh kedua-duanya menjadi variabel basis. Syarat basis diatas bersesuaian dengan complementary slackness dari kuadratik. Jadi, apabila simpleks dikerjakan dengan cara biasa tanpa menggunakan syarat basis diatas maka pada hasil tabel optimal akan ada complementary slackness yang tidak terpenuhi. Mensubstitusikan hasil dari 53 tabel optimal ke dalam fungsi tujuan awal (nonlinear) untuk mendapatkan solusi optimum. Jika dalam tabel optimum terdapat variabel buatan maka dapat disubstitusikan ke fungsi tujuan linear. Begitu pula untuk variabel slack, surplus, buatan maupun maka dapat disusbtitusikan ke bentuk kanonik yang telah terbentuk di awal. Langkah pemrograman kuadratik metode wolfe disajikan pada Gambar 2.2 berikut : Fungsi tujuan nonlinear Membentuk kondisi Kuhn Tucker dari syarat Kuhn Tucker yang diperoleh Membuat fungsi tujuan baru yang linear Melakukan proses iterasi simpleks metode wolfe Tabel Optimum Mensubstitusikan hasil dari tabel optimal ke dalam fungsi tujuan awal (nonlinear) untuk mendapatkan solusi optimum Gambar 2.2 Bagan Alir Metode Pemrograman Kuadratik. Contoh 2.16 Meminimumkan (2.43) 54 dengan kendala : (2.44a) (2.44b) (2.44c) Diselidiki apakah dan merupakan fungsi konveks Berdasarkan Tabel 2.1 fungsi Sedangkan konveks. Fungsi merupakan fungsi konveks ketat. maka berdasarkan Definisi 2.9 merupakan fungsi konveks dan konveks maka menurut Bazaraa (2006) dapat diselesaikan menggunakan pemrograman kuadratik. Langkah-langkah penyelesaian Persamaan (2.43) dan (2.44) dengan pemrograman kuadratik metode wolfe sebagai berikut : a. Membentuk kondisi Kuhn Tucker dari fungsi tujuan dan fungsi kendala yang dimiliki. Berdasarkan Persamaan (2.41) dan (2.42) maka bentuk kanonik yang diperoleh adalah sebagai berikut (2.45a) (2.45b) (2.45c) (2.45d) 55 b. Mengidentifikasi clompementary slackness. Berdasarkan Sifat 2.1 maka Persamaan (2.45) merupakan kondisi clompementary slackness, sehingga mengakibatkan : c. Menambahkan variabel buatan untuk setiap kondisi Kuhn Tucker yang tidak memiliki variabel basis. (2.46a) (2.46b) (2.46c) (2.46d) d. Menentukan fungsi tujuan baru yang linear Bentuk fungsi tujuan baru yang linear untuk Contoh 2.16 adalah Meminimumkan (2.47) Dengan kendala (2.48a) (2.48b) (2.48c) (2.48d) Semua variabel non negatif. e. Melakukan proses iterasi simpleks. 56 Tabel 2.3 Tabel simpleks Contoh 2.16 0 0 0 0 0 0 1 1 0 0 1 1 1 -2 0 1 0 1 0 1 0 0 0 0 0 3 1 1 1 0 1 0 -1 -1 -2 0 1 -1 -1 0 0 0 1 1 1 0 0 1 1 0 0 0 1 1 1 0 0 1 1 0 0 0 1 0 1 0 0 1 0 0 -1 0 -1 -1 0 0 -1 -1 -1 0 1 0 1 0 0 0 1 1 0 2 10 8 23 Koefisien dari setiap kendala kondisi Kuhn Tucker dimasukkan ke dalam Tabel 2.2. Nilai merupakan jumlah hasil perkalian antara koefisien tiap kolom dengan nilai menentukan nilai yang terletak pada baris yang sama. Sedangkan untuk maka dipilih baris terbesar yang menjadi pembagi selanjutnya diisikan pada kolom . Pada Tabel 2.2 diketahui nilai , dan . Karena dan . Dalam hal ini dipilih terbesar yaitu untuk variabel tidak bisa menjadi basis maka dipilih , maka semua nilai pada kolom nilai pada kolom variabel sehingga diperoleh nilai , atau dibagi dengan seperti pada Tabel 2.4. Tabel 2.4 Iterasi 1 Contoh 2.16 0 0 0 0 0 0 1 1 0 0 1 1 1 -2 0 1 0 1 0 1 0 0 0 0 0 3 3 1 1 1 0 1 0 -1 -1 -2 0 1 -1 -1 0 0 0 1 1 1 0 0 1 1 0 0 0 1 1 1 0 0 1 1 0 0 0 1 0 1 0 0 1 0 0 -1 0 -1 -1 0 0 -1 -1 -1 0 1 0 1 0 0 0 1 1 0 2 10 8 23 - 57 Nilai terkecil adalah pada variabel baru menggantikan variabel , sehingga variabel menjadi basis dengan koefisien ongkos 0. Proses iterasi dilanjutkan hingga diperoleh tabel optimum seperti Tabel 2.5. Tabel 2.5 Tabel optimum Contoh 2.16 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 -1 0 1 0 0 0 -1 -2 0 -1 0 0 0 0 -2 0 -1 0 0 2 0 1 0 0 -1 0 2 0 1 0 -1 Pada Tabel 2.5 semua nilai sehingga tabel telah optimum. Dari Tabel 2.5 diperoleh nilai variabel serta nilai minimum 23 18 10 8 0 , , , dan . Selanjutnya nilai variabel-variabel tersebut disubstitusikan kedalam fungsi tujuan awal untuk memperoleh nilai minimum, yaitu . Sehingga penyelesaian optimal dari Contoh 2.16 adalah 215. Q. Software Geogebra Software Geogebra merupakan software aplikasi matematika dinamis yang menggabungkan geometri, aljabar, dan kalkulus. Software ini dilengkapi fasilitas tampilan untuk membuat grafik suatu fungsi. 58 Gambar 2.3 Tampilan pembuka pada software Geogebra Gambar 2.4 Tampilan utama software Geogebra R. Software WinQSB 2.0 Software WinQSB 2.0 merupakan software aplikasi matematika untuk menyelesaikan masalah optimasi agar didapat solusi optimal. Software ini menyediakan beberapa menu pilihan untuk menyelesaikan kasus-kasus dengan kriteria khusus sesuai kebutuhan. Pada skripsi ini, pilihan yang akan digunakan adalah sub menu Software WinQSB Nonlinear Programming, yaitu untuk mencari solusi optimal dari kasus optimasi 59 dengan fungsi tujuan nonlinear. Pada Nonlinear Programming untuk masalah model nonlinear berkendala yang dikerjakan WinQSB menggunakan metode Penalty Function, sehingga dapat dikatakan bahwa dalam penelitian ini akan membandingkan metode pengali lagrange dan pemrograman kuadratik, dan metode Penalty Function. Selain menggunakan sub menu Nonlinear Programming juga digunakan sub menu lainnya yaitu Linear and Integer Peogramming untuk membantu perhitungan simpleks pada fungsi linear. Gambar 2.5 Tampilan Pembuka WinQSB 2.0 Nonlinear Programming Gambar 2.6 Tampilan Pilihan Sub Menu WinQSB. 60