Lecture I: Introduction of NonLinear Programming A. Masalah Optimisasi Dalam kehidupan sehari-hari, manusia cenderung untuk berprinsip ekonomi, yaitu dengan sumber daya sedikit mungkin dapat memperoleh hasil sebanyak-banyaknya. Banyak hal disekitar kita yang ingin dicari nilai optimumnya, seperti keuntungan maksimum, biaya minimum, dsb. Hal-hal tersebut menjadi dasar timbulnya masalah optimisasi. Jika masalah yang dioptimumkan bersifat kuantitatif, maka masalah tersebut merupakan masalah ekstrem (maksimum dan minimum). Berikut merupakan alur penyelesaian masalah nyata secara matematik. Masalah nyata pemodelan Model matematis (PL, PTL, dsb) tafsiran Penyelesaian matematis penyelesaian Metode penyelesaian matematis Secara umum untuk memodelkan permasalahan real ke dalam program matematik, ditempuh langkah-langkah berikut: 1. Mendefinisikan variabel-variabel input. 2. Menentukan fungsi objektif (besaran yang akan diotptimasi). 3. Menentukan fungsi-fungsi kendala. 4. Menentukan hidden condition. Program matematik dalam Riset Operasi mempunyai bentuk umum: Optimasikan (maksumum/minimum) z = f(x, x,, x ) dengan kendala g (x, x,, x ) (, =, ) b (1.1) g (x, x,, x ) (, =, ) b... g (x, x,, x ) (, =, ) b Catatan: Perhatikan bahwa dalam Riset Operasi mengakaji permasalahan dengan efisiensi alokasi sumber daya yang terbatas. Komputasi dalam Riset Operasi biasanya mempunyai tipe iteratif. B. Pemrograman Linear (Linear Programming)
Dalam masalah Program Linear, fungsi objektif dan setiap fungsi kendalanya linear, yaitu jika f(x, x,, x ) = c x + c x + + c x (1.2) dan g (x, x,, x ) = a x + a x + + a x (1.3) dengan c dan a (i = 1,2,, m ; j = 1,2,, n) adalah konstanta-konstanta yang diketahui. Secara umum, masalah program linear dirumuskan sebagai berikut. Optimumkan (maksimum/mininimum) z = c x + c x + + c x... Contoh: Produksi tekstil. Waktu penggunaan 2 mesin (A &B) dialokasikan untuk memproduksi 2 jenis tekstil (t.biasa dan t.halus). Dalam satu periode produksi, mesin A punya waktu 80 jam, mesin B punya waktu 60 jam. Per kodi, tekstil biasa perlu waktu pengolahan 2 jam di mesin A dan 3 jam di B, tekstil halus perlu waktu 4 jam di A dan 2 jam di B. Harga jual t.biasa $40/kodi, t.halus $60/kodi. Berapa tiap jenis tekstil dibuat agar harga jual maksimum? Melihat ketentuan-ketentuan yang diketahui lebih baik bila yang diandaikan sebagai peubah bebas-nya adalah jumlah tekstil biasa dan halus yang diproduksi. Untuk mempermudah penyusunan model disusun tabel berikut. Tekstil biasa Tekstil halus Alokasi waktu mesin (jam) Mesin A 2 4 80 Mesin B 3 2 60 Harga jual ($) 40 60 Misalkan x : jumlah tekstil biasa yang diproduksi. y : jumlah tekstil halus yang diproduksi. Pendapatan total yang harus dimaksimumkan adalah z = 40x + 60y
Keterbatasan alokasi waktu setiap mesin menimbulkan kendala: Mesin A: 2x + 4y 80 Mesin B: 3x + 2y 60 Peubah x dan y mewakili besaran yang tidak boleh bernilai negatif: x, y 0 Maksimumkan z = 40x + 60y 2x + 4y 80 3x + 2y 60 x, y 0 C. Pemrograman Tak Linear (Nonlinear Programming) Jika kondisi (1.2) atau (1.3) tidak dipenuhi, yaitu fungsi objektif atau minimal satu fungsi kendala bukan fungsi linear, maka disebut program tak linear. Contoh: 1. Program Kuadratik Program kuadratik adalah sebuah program matematik dengan setiap kendalanya linear, tetapi fungsi objektifnya tak linear dan berbentuk f 2 2 2 x1, x2,..., xn c11x 1 c22x2... cnnxn c12 x1x 2 c 13x1x 3 c23x2x3......, (1.4) dengan c R (1 i, j n) adalah konstanta-konstanta yang diketahui. Persamaan (1.4) disebut bentuk kuadratik dengan n variabel x, x,, x. 2. Program Integer Program integer adalah sebuah program linear dengan syarat: variabel-variabel inputnya adalah bilangan-bilangan bulat, tetapi koefisien dan konstanta dalam (1.1), (1.2) dan (1.3) tidak harus bilangan bulat. Misal jika variabel input x = jumlah mahasiswa y = jumlah mobil yang parkir Sedangkan contoh variabel input yang tidak harus bilangan bulat adalah x = jumlah gula yang dijual (kg) y = panjang kain yang dibeli (m) D. Contoh Permasalah Real dalam Model PTL
Contoh 1. Kawat sepanjang 24 m akan digunakan untuk memagari sebuah kandang kambing berbentuk persegi panjang. Tentukan ukuran pagar tersebut agar luasnya maksimum. Misalkan p : panjang kandang q : lebar kandang Memaksimumkan luas kandang: L = pq Keterbatasan panjang kawat (keliling kandang) K = 2(p + q) = 24 p + q = 12 Peubah p dan q mewakili besaran yang tidak boleh bernilai negatif: p, q 0 Maksimumkan L = pq p + q = 12 p, q 0 Contoh 2. Sebuah perusahaan pembuat komputer mendapat kontrak untuk menyediakan 50 unit komputer pada akhir bulan pertama, 50 unit komputer pada akhir bulan kedua, dan 50 unit komputer pada akhir bulan ketiga. Biaya produksi n buah komputer tiap bulannya adalah n 2. Perusahaan ini dapat memproduksi komputer lebih dari yang dipesan dan menyimpannya di gudang untuk diserahkan pada bulan berikutnya. Biaya gudang adalah sebesar 20 satuan harga untuk tiap komputer yang disimpan dari bulan yang lalu ke bulan berikutnya. Diandaikan bahwa pada permulaan pesanan digudang tidak ter-dapat persediaan komputer. Tentukan jumlah produksi komputer tiap bulannya agar biaya pembuatannya minimum. Dimisalkan x, y, dan z adalah adalah produksi komputer selama tiga bulan berturutturut.
Biaya total selama tiga bulan yang harus diminimumkan adalah: Biaya Total = Biaya Produksi + Biaya Gudang Biaya Produksi merupakan biaya keseluruhan perusahaan untuk memproduksi komputer. Biaya Produksi n buah komputer tiap bulannya adalah n 2. Sehingga Biaya produksi selama tiga bulan adalah: Biaya Produksi = x 2 + y 2 + z 2 Keterangan : x 2 = Biaya produksi komputer pada bulan pertama. y 2 = Biaya produksi komputer pada bulan kedua z 2 = Biaya produksi komputer pada bulan ketiga Biaya Gudang adalah sebesar 20 satuan harga untuk tiap komputer yang disimpan dari bulan yang lalu ke bulan berikutnya. Biaya Gudang pada bulan kedua = 20(x 50). Merupakan biaya penyimpanan/gudang dalam memproduksi kompu-ter pada bulan pertama. Biaya Gudang pada bulan ketiga = 20(x 50 + y 50) = 20 (x + y 100) Merupakan biaya penyimpanan/gudang setelah memproduksi kompu-ter pada bulan pertama dan pada bulan kedua. Biaya Gudang = 20(x 50) + 20(x + y 100) Jadi misalkan f(x, y, z) adalah Biaya Total, didapat : f(x, y, z) = x 2 + (y 2 + 20 (x 50)) + (z 2 + 20(x + y 100)) = (x 2 + y 2 + z 2 )+ (20(x 50) + 20(x + y 100)) = x 2 + y 2 + z 2 +40x + 20y 3000 Kendala bulan pertama g 1(x, y, z) = x 50 0 Kendala bulan kedua g2(x, y, z) = x + y 100 0 Kendala bulan ketiga g 3(x, y, z) = x + y + z 150 0 Peubah x, y, dan z mewakili besaran yang tidak boleh bernilai negatif: x, y, z 0 Minimumkan z = x + y + z + 40x + 20y 3000 x 50 x + y 100 x + y + z 150 x, y, z 0