PROGRAM LINIER Fungsi tujuan Fungsi linier thd variabel keputusan Semua kendala Bentuk Umum Program Linier : Max c1 x1 c2 x2 ....... cn xn S.t a11 x1 a12 x2 ....... a1n xn b1 a21 x1 a22 x2 ....... a2 n xn b2 am1 x1 am 2 x2 ....... amn xn bm x1 , x2 ,..........., xn 0 x1 x 2 x . . x n b1 b 2 b= . . bm ; C = c1 ; a11 a 21 A = ... ... a m1 . . cn c2 a12 a 22 ... ... am2 ... ... a1n ... ... a 2 n ... ... ... ... ... ... ... ... a mn didapat, max C x s.t Ax b x PROGRAM LINIER 0 1 Contoh : Pabrik kayu menghasilkan 2 produk pintu dan jendela dengan proses sebagai berikut : Pintu kasar I III kayu Pintu dan jendela siap jual II Jendela kasar Spesifikasi : - Terdapat 4 mesin di unit I - Terdapat 3 mesin di unit II - Terdapat 3 mesin di unit III - Tiap mesin di unit I dpt menghasilkan 1 pintu tiap 3 jam - Tiap mesin di unit II dpt menghasilkan 1 jendela tiap 2 jam - Tiap mesin di unit III dpt menghasilkan 1 pintu tiap 2 jam dan 1 jendela tiap 1 jam - Tiap hari jam kerja yang tersedia adalah 9 jam - Keuntungan tiap pintu = Rp 20.000 - Keuntungan tiap jendela = Rp 15.000 Buat Formulasi Program Linier supaya didapat keuntungan yang maksimum ! Penyelesaian : x1 : banyaknya pintu yang diproduksi x2 : banyaknya jendela yang diproduksi z : Keuntungan Formulasi Program Linier : max Z 20x1 15x2 s.t 3x1 4x9 2x 2 2 x1 x2 3x9 3x9 x1 , x2 0 PROGRAM LINIER 2 Dalam Notasi Matrik : 3 0 A = 0 2 2 1 C = 20 15 36 b = 27 27 Penyelesaian Grafis dari Program Linier : x1 0 3x1 36 2 x1 x 2 27 2 x 2 27 x2 0 Titik – titik ekstrim dari program linier tersebut adalah : 0 0 , 12 0 , 0 13 1 , 2 12 3 63 4 13 1 2 , kandidat penyelesaian dari program linier 6 3. 4 Dari arah f terlihat bahwa titik maksimumnya adalah : 1 13 2 63 x 4 dengan 13 1 2 * PROGRAM LINIER Z 6 3 x20000 13 1 x150000 337500 4 2 3 Penyelesaian dengan Kuhn-Tucker : max 20x1 15x2 min 20x1 15x2 : f (x) s.t 3x1 36 0 : g1 ( x ) 2x2 27 0 : g 2 ( x) 2x1 x2 27 0 : g 3 ( x) x1 0 : g 4 ( x) x2 0 : g 5 ( x) PROGRAM LINIER 4 PENYELESAIAN MATRIK UNTUK PROGRAM LINIER Pertidaksamaan diubah menjadi Persamaan dengan menambahkan SLACK : x1 x2 3 x1 x2 x3 3 x1 , x2 0 x1 , x2 , x3 0 max C1 x1 C2 x2 ............. Cn xn s.t a11 x1 a12 x2 ............. a1n xn b1 a21 x1 a22 x2 ............. a2 n xn b2 am1 x1 am 2 x2 ............ amn xn bm x1 , x2 , x3 ,................, xn 0 Dengan menambahkan slack sebanyak kendala didapatkan : max C1 x1 C2 x2 ............. Cn xn s.t a11 x1 a12 x2 ............. a1n xn xn1 b1 a21 x1 a22 x2 ............. a2 n xn xn 2 b2 am1 x1 am 2 x2 ............ amn xn xn m bm x1 , x2 , x3 ,............, xn , xn1 , xn 2 ,.........., xn m 0 Dalam bentuk Matrik didapatkan : Max C 'x' s.t A' x ' b ' Bentuk Kanonik x' 0 dimana, PROGRAM LINIER 5 x1 . . x xn ' x x S x n 1 . . x n m A ' A I b' b C ' C 0 C1 C2 . . Cn 0 0 . . 0 Contoh : Nyatakan dalam bentuk kanonik : max Z 20x1 15x2 s.t max Z 20 x1 15x2 0 x3 0 x4 0 x5 4x9 3x1 2x 2 3x9 2 x1 x2 3x9 s.t 3x1 2x 2 x3 4x9 x4 3x9 x5 3x9 2 x1 x2 x1 , x2 , x3 , x4 , x5 0 x1 , x2 0 Bentuk Kanonik : Max 20 15 0 0 0 PROGRAM LINIER x1 x 2 x3 x4 x 5 6 s.t 3 0 1 0 0 0 2 0 1 0 2 1 0 0 1 x1 x 36 2 x 3 27 27 x 4 x 5 x1 x 2 x3 0 x4 x 5 PROGRAM LINIER 7 PENYELESAIAN DASAR SISTEM PERSAMAAN LINIER Sistem Persamaan Linier ditulis sebagai : Ax=b Agar memiliki penyelesaian tunggal, harus dipenuhi syarat : - banyaknya persamaan = banyaknya variabel - A harus memiliki rank penuh yang berarti memiliki invers Penyelesaiannya adalah : x A 1b Dalam program linier akan didapat sistem persamaan linier dengan banyaknya variabel selalu lebih banyak dari banyaknya persamaan. Akibatnya sistem terseut akan punya banyak penyelesaian, yang salah satunya adalah penyelesaian dasar yang dapat dicari sbb : A B N dimana B adalah matrik bujur sangkar yang mempunyai invers xB x x N Ax b , berubah menjadi B x N B = b xN Bx B + Nx N = b X B 1 B 1 Bx B + B 1 Nx N = B 1b Ix B + B 1 Nx N = B 1b x B = B 1b - B 1 Nx N PROGRAM LINIER 8 Penyelesaian dasar didapat dengan memilih : xN 0 Didapat : x B B 1 .b yang berarti : x B B 1b x xN 0 penyelesaian dasar dari sistem persamaan linier Ax b xB disebut variabel dasar xN disebut variabel bukan dasar B disebut matrik dasar N disebut matrik bukan dasar Contoh : Max x1 2x2 s.t x1 x2 4 x2 2 x1 , x2 0 bentuk kanoniknya adalah sbb : max x1 2 x2 0 x3 0 x4 s.t x1 x 2 x3 x2 x1 , x2 , x3 , x4 4 x4 2 0 Daerah kelayakannya adalah sbb : x2 Titik - titik ekstrim : 0 0 2 4 0 , 2 , 2 , 0 x1 PROGRAM LINIER 9 Penyelesaian dasarnya dapat dicari sbb : 1 1 1 0 A 0 1 0 1 x1 x x 2 x3 x4 4 b 2 alternatif 1 : 1 1 B 0 1 1 0 N 0 1 x xB 1 x2 1 1 4 2 x B B 1b 0 1 2 2 x xN 3 x4 x1 x 2 ( titik ekstrim ) alternatif 2 : 1 1 B 0 0 ( tdk memenuhi ) alternatif 3 : 1 0 B 0 1 1 1 N 1 0 x1 1 0 4 4 x 0 1 2 2 4 x2 0 x 0 3 x xB 1 x4 x xN 2 x3 x1 4 x 0 4 ( titik ekstrim ) dst……… PROGRAM LINIER 10 PENYELESAIAN PROGRAM LINIER DENGAN TABEL ELIMINASI Menyelesaikan program linier sama saja dengan mencari penyelesaian dasar dari suatu sistem persamaan linier, karenanya dapat dilakukan dengan menggunakan Eliminasi GAUSS. Untuk itu program linier tersebut dinyatakan dalam bentuk tabel sehingga memudahkan proses eliminasi Gauss. Pada proses in dimulai dari suatu penyelesaian dasar yang paling mudah dicari kemudian pada tiap iterasi berusaha mendapatkan penyelesaian dasar yang memiliki nilai tujuan ( Z ) yang lebih baik dan seterusnya sampai tidak dapat menghasilkan yang lebih tinggi. Pada saat itu iterasi dihentikan dan penyelesaian dasar yang terakhir adalah penyelesaian optimal yang dicari. Telah didapat bahwa : Bx B NxN b atau Ix B B 1 Nx N B 1b ….. ( 1 ) Untuk nilai tujuan digunakan persamaan sbb : Z Cx C B x CN B xN Z CB xB C N xN C B B 1b B 1 Nx N C N x N C B B 1b C B B 1 Nx N C N x N C B B 1b C B B 1 N C N x N Z 0.x B C B B 1 N C N x N C B B 1b ……… ( 2 ) Bila C B B 1 N C N 0 , penyelesaian dasar yang sekarang sudah Optimal PROGRAM LINIER 11 Bila ada yang negatif, ambil xN 1 yang nilai C B B N C N nya adalah yang paling negatif, buat supaya variabel ini menjadi variabel dasar Karena banyaknya variabel dasar adalah tetap, berarti harus ada salah satu variabel dasar yang juga harus diubah menjadi variabel bukan dasar yaitu variabel dasar yang menjadi nol karena ada variabel bukan dasar yang nilainya menjadi positip sesuai dengan persamaan : x B B 1b B 1 Nx N Terjadi pertukaran tempat antara salah satu xB dengan salah satu xN Tabel Eliminasi Gauss dapat disusun dari persamaan (1) dan (2) sebagai berikut : Z xB xN RK C B B 1 N C N C B B 1b B 1 N B 1 b Z 1 0 xB 0 I Supaya prosesnya sederhana, sebagai xB awal dipilih variabel - variabel yang memiliki koefisien 0 pada tujuan dan koefisien I pada kendala Contoh 1: Max x1 2x2 s.t x1 x2 4 x2 2 x1 , x2 0 Bentuk kanonik : Max x1 2 x2 0.x3 0.x4 s.t x1 x2 x3 x2 4 x4 2 x1 , x2 , x3 , x4 0 x3 XB x4 PROGRAM LINIER 12 Z x1 x2 x3 x4 RK Z 1 -1 -2 0 0 0 x3 0 1 1 1 0 4 x4 0 0 1 0 1 2 Z x1 x2 x3 x4 RK Z 1 -1 0 0 2 4 x3 0 1 0 1 -1 2 x2 0 0 1 0 1 2 Z x1 x2 x3 x4 RK Z 1 0 0 1 1 6 x1 0 1 0 1 -1 2 x2 0 0 1 0 1 2 Jadi x1 2 x2 2 Z 6 Contoh 2 : Max Z x1 x2 s.t x1 5x2 5 2 x1 x2 4 x1 , x2 0 Bentuk Kanonik : Max Z x1 x2 0.x3 0.x4 s.t x1 5 x2 x3 5 2x1 x2 x4 4 x1 , x2 , x3 , x4 0 x3 XB x4 PROGRAM LINIER 13 Z x1 x2 x3 x4 RK Z 1 -1 -1 0 0 0 x3 0 1 5 1 0 5 x4 0 2 1 0 1 4 Z x1 x2 x3 x4 RK Z 1 0 -1 2 0 0 2 x3 0 0 9 2 1 0 3 x1 0 1 1 2 0 1 2 Z x1 x2 x3 x4 RK Z 1 0 0 1 9 0 7 x2 0 0 1 2 9 0 2 x1 0 1 0 1 1 5 9 2 2 3 3 3 Jadi 5 x1 , 3 PROGRAM LINIER x2 2 , 3 Z 7 3 14 METODE SIMPLEK UNTUK PROGRAM LINIER TIDAK STANDAR Standar : - Tujuan Memaksimumkan - Kendala - Ruas kanan nonnegatif - Variabel nonnegatif Tidak Standar : - Salah satu di atas tidak dipenuhi 1. Tujuan : Meminimumkan min Z = - ( maks -Z ) 2. Variabel tidak nonnegatif x1 0 x1 x1 ' x1 x1 ' x1 0 ' x1 0 ' x1 3 x1 x1 3 ' x1 x1 3 ' x1 3 3 ' x1 0 ' x1 tidak dibatasi x1 x1 x1 ' x1 0 ' PROGRAM LINIER '' x1 0 '' , 15 3. Ruas kanan tidak non negatif x1 x2 3 X -1 x1 x2 3 Untuk menghadapi kasus dimana kendalanya tidak dalam bentuk ( dapat , atau = ) perlu ditambahkan variabel semu. x1 2x2 3 x1 2 x2 x3 3 x3 x3 : slack tidak dapat dipakai sebagai variabel dasar untuk itu ditambahkan variabel semu yang dapat dipakai sebagai variabel dasar. x1 2 x2 x3 xa 3 xa : variabel semu yang diasumsikan bernilai 0 Tetapi melalui sejumlah iterasi xa harus dibuat menjadi variabel nondasar supaya bernilai 0 Kondisi ini dapat dicapai dengan cara : meminimumkan xa . Contoh : Max 2 x1 x2 s.t x1 x2 3 x1 x2 1 x1 , x2 0 Bentuk Kanonik : Max Z 2 x1 x2 0 x3 0 x4 0 x5 s.t x1 x2 x3 3 x1 x2 x4 x5 1 min Z a x5 PROGRAM LINIER max Z a x5 Z a x5 0 16 Z x1 x2 x3 x4 x5 RK Za 0 0 0 0 0 1 0 Z 1 -2 -1 0 0 0 0 x3 0 1 1 1 0 0 3 x5 0 -1 1 0 -1 1 1 Z x1 x2 x3 x4 x5 RK Za 0 1 -1 0 1 0 -1 Z 1 -2 -1 0 0 0 0 x3 0 1 1 1 0 0 3 x5 0 -1 1 0 -1 1 1 Z x1 x2 x3 x4 x5 RK Za 0 0 0 0 0 1 0 Z 1 -3 0 0 -1 1 1 x3 0 2 0 1 1 -1 2 x2 0 -1 1 0 -1 1 1 Z x1 x2 x3 x4 x5 RK Z 1 0 0 3 1 x1 0 1 0 1 x2 0 0 1 1 2 2 2 1 1 2 2 2 -1 2 4 2 1 2 2 -1 1 Diabaikan, boleh dibuang Jadi, x1 1 PROGRAM LINIER x2 2 Z 4 17 Contoh : Min x1 x2 2x3 s.t x1 x2 x3 8 2 x1 x2 4 x1 2 x3 6 x1 1, x2 0, x3 0 Penyelesaian : Misal : x1 x1 '1 x2 x2 ' x1 '1 1 x2 ' 0 x1 ' 0 x2 ' 0 sehingga, min Z x1 '1 x2 '2 x3 s.t x1 '1 x2 ' x3 8 2x1 '1 x2 ' 4 x1 '1 2 x3 6 menjadi, max Z x1 ' x2 '2 x3 1 s.t x1 ' x2 ' x3 x4 7 2 x1 ' x2 ' x5 x6 2 x1 '2 x3 x7 5 x1 ' , x2 ' ,x3 , x4 , x5 , x6 , x7 0 min Za Z x4 x6 x7 Z a x6 x7 Z 0 -1 0 0 0 PROGRAM LINIER max x1 0 1 1 2 1 ' Z a x6 x7 Z a x 6 x7 0 ' x3 x4 x5 x6 x7 0 1 -1 1 0 0 2 1 0 2 0 0 1 0 0 0 0 0 -1 0 1 0 0 1 0 1 0 0 0 1 x2 RK 0 -1 7 2 5 18 ' x2 ' x3 x4 x5 x6 x7 x6 Z 0 -1 0 0 -3 1 1 2 -1 1 -1 1 -2 2 1 0 0 0 1 0 1 0 0 -1 0 0 0 1 0 0 0 0 RK 0 -1 7 2 x7 0 1 0 2 0 0 0 1 5 Z 0 -1 0 0 x1 x3 x4 x5 x6 x7 0 0 0 1 ½ 1/2 -3/2 ½ -2 2 1 0 0 0 1 0 -1/2 ½ ½ -1/2 3/2 -1/2 -1/2 ½ 0 0 0 0 RK -4 -2 6 1 0 0 -1/2 2 0 1/2 -1/2 1 4 Z 0 -1 0 0 0 x1 x3 x4 x5 x6 x7 0 0 0 0 1 0 0 1 0 0 0 0 ¼ -1/2 1/4 1 0 -1/4 ½ -1/4 1 -1 -1/2 0 1/2 RK 0 -6 4 1 2 Za Z x4 Za Z x4 x1 ' x7 Za Z x4 ' x1 x3 x1 ' ' 0 0 0 1 0 x2 x2 ' ' 0 1 -5/4 ½ -1/4 Diabaikan, boleh dibuang Jadi x1 1 ' x2 0 PROGRAM LINIER ' x3 2 Z 6 x1 2 x2 0 19