Bab 2 LANDASAN TEORI

dokumen-dokumen yang mirip
BAB 2 LANDASAN TEORI

BAB 2 PROGRAM INTEGER. Program linear merupakan metode matematika untuk mengalokasikan sumber

12/15/2014. Apa yang dimaksud dengan Pemrograman Bulat? Solusi yang didapat optimal, tetapi mungkin tidak integer.

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

BAB 3 METODE PENELITIAN

Modul 8. PENELITIAN OPERASIONAL INTEGER PROGRAMMING. Oleh : Eliyani PROGRAM KELAS KARYAWAN PROGRAM STUDI TEKNIK INDUSTRI FAKULTAS TEKNOLOGI INDUSTRI

BAB 2 LANDASAN TEORI

TENTUKAN MODEL MATEMATISNYA!

Integer Programming (Pemrograman Bulat)

BAB 2 LANDASAN TEORI 2.1 Perencanaan Produksi

BAB 3 LINEAR PROGRAMMING

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

Matematika Bisnis (Linear Programming-Metode Grafik Minimisasi) Dosen Febriyanto, SE, MM.

DAFTAR ISI... HALAMAN JUDUL... HALAMAN PERSETUJUAN... LEMBAR PERNYATAAN... HALAMAN PERSEMBAHAN... HALAMAN MOTTO... KATA PENGANTAR... DAFTAR TABEL...

II LANDASAN TEORI. suatu fungsi dalam variabel-variabel. adalah suatu fungsi linear jika dan hanya jika untuk himpunan konstanta,.

PROGRAMA INTEGER 10/31/2012 1

Bab 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

PENERAPAN METODE BRANCH AND BOUND DALAM PENYELESAIAN MASALAH PADA INTEGER PROGRAMMING

Bab 1 PENDAHULUAN. 1.1 Latar Belakang

RISET OPERASIONAL MINGGU KE-2. Disusun oleh: Nur Azifah., SE., M.Si. Linier Programming: Formulasi Masalah dan Model

LINEAR PROGRAMMING. Pembentukan model bukanlah suatu ilmu pengetahuan tetapi lebih bersifat seni dan akan menjadi dimengerti terutama karena praktek.

BAB 2 KAJIAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA

BAB 2 LANDASAN TEORI

BAB I PENDAHULUAN. besar dan mampu membantu pemerintah dalam mengurangi tingkat pengangguran.

PENERAPAN METODE BRANCH AND BOUND DALAM MENENTUKAN JUMLAH PRODUKSI OPTIMUM PADA CV. XYZ. Angeline, Iryanto, Gim Tarigan

BAB II KAJIAN TEORI. masalah fuzzy linear programming untuk optimasi hasil produksi pada bab

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

BAB 1 PENDAHULUAN Latar Belakang

MATEMATIKA SISTEM INFORMASI 2 [KODE/SKS : IT / 2 SKS]

BAB II KAJIAN PUSTAKA

Manajemen Operasional

APLIKASI METODE CUTTING PLANE DALAM OPTIMISASI JUMLAH PRODUKSI TAHUNAN PADA PT. XYZ. Nico, Iryanto, Gim Tarigan

Metode Simpleks M U H L I S T A H I R

SOFTWARE LINDO I KOMANG SUGIARTHA

BAB I PENDAHULUAN 1.1. Latar Belakang Masalah

INTEGER PROGRAMMING. Oleh: Dimas Rahadian AM, S.TP. M.Sc.

BAB 2 LANDASAN TEORI

BAB VI Program Linear Bilangan Bulat

BAB III. METODE SIMPLEKS

II TINJAUAN PUSTAKA 2.1 Graf Definisi 1 (Graf, Graf Berarah dan Graf Takberarah) 2.2 Linear Programming

APLIKASI PROGRAM INTEGER PADA PERUMAHAN BUMI SERGAI DI SEI RAMPAH

I PENDAHULUAN II LANDASAN TEORI

KOMBINASI PERSYARATAN KARUSH KUHN TUCKER DAN METODE BRANCH AND BOUND PADA PEMROGRAMAN KUADRATIK KONVEKS BILANGAN BULAT MURNI

III KERANGKA PEMIKIRAN

I PENDAHULUAN II LANDASAN TEORI

BAB 2 LANDASAN TEORI

BAB II KAJIAN PUSTAKA. pemrograman nonlinear, fungsi konveks dan konkaf, pengali lagrange, dan

BAB 2 LANDASAN TEORI

BAB 2 TINJAUAN PUSTAKA

PEMROGRAMAN LINEAR I KOMANG SUGIARTHA

III KERANGKA PEMIKIRAN

Program Integer. Riset Operasi TIP FTP UB

I PENDAHULUAN II LANDASAN TEORI

sejumlah variabel keputusan; fungsi yang akan dimaksimumkan atau diminimumkan disebut sebagai fungsi objektif, Ax = b, dengan = dapat

III. METODE PENELITIAN

PROPOSAL PROGRAM HIBAH PENULISAN BUKU AJAR TAHUN 2017

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

Aplikasi Integer Linear Programming (Ilp) untuk Meminimumkan Biaya Produksi pada Siaputo Aluminium

LINIEAR PROGRAMMING MATEMATIKA BISNIS ANDRI HELMI M, S.E., M.M.

Program Integer. Riset Operasi TIP FTP UB

BAB II KAJIAN TEORI. Pada bab ini akan dibahas mengenai beberapa definisi dan teori yang akan

BAB LINEAR PROGRAMMING : METODE GRAFIK PENDAHULUAN PENDAHULUAN

PENELITIAN OPERASIONAL

Fungsi kendala tidak hanya dibentuk oleh pertidaksamaan tetapi juga oleh pertidaksamaan dan/atau persamaan =. Fungsi kendala dengan pertidaksamaan

APLIKASI PROGRAM LINIER MENGGUNAKAN LINDO PADA OPTIMALISASI BIAYA BAHAN BAKU PEMBUATAN ROKOK PT. DJARUM KUDUS

Teori Dualitas dan Penerapannya (Duality Theory and Its Application)

BAB II METODE SIMPLEKS

I PENDAHULUAN II LANDASAN TEORI

OPTIMALISALI KASUS PEMROGRAMAN LINEAR DENGAN METODE GRAFIK DAN SIMPLEKS

III RELAKSASI LAGRANGE

Bagaimana cara menyelesaikan persoalan Linier Programming and Integer Programming dengan

INTEGER PROGRAMMING. Rudi Susanto, M.Si

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA

BAB 2 LANDASAN TEORI

BAB I PENDAHULUAN. yang dikemukakan oleh George Dantzig pada tahun Linear Programming (LP) adalah perencanaan aktivitas-aktivitas untuk

BAB 2. PROGRAM LINEAR

CCR-314 #2 Pengantar Linear Programming DEFINISI LP

KERANGKA PEMIKIRAN Kerangka Pemikiran Teoritis

BAB III PEMBAHASAN. linear yang dinyatakan dengan fungsi tujuan dan fungsi kendala yang memiliki

BAB I PENDAHULUAN. Knapsack adalah suatu permasalahan dalam menentukan pemilihan objek

BAB 2 LANDASAN TEORI

BAB 2 PROGRAM LINEAR

OPERATIONS RESEARCH. oleh Bambang Juanda

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

DEFINISI LP FUNGSI-FUNGSI DALAM PL MODEL LINEAR PROGRAMMING. Linear Programming Taufiqurrahman 1

Ada beberapa kasus khusus dalam simpleks. Kadangkala kita akan menemukan bahwa iterasi tidak berhenti, karena syarat optimalitas atau syarat

BAB I PENDAHULUAN Latar Belakang Masalah

BAB II TINJAUAN PUSTAKA

III. KERANGKA PEMIKIRAN

METODE SIMPLEKS MATAKULIAH RISET OPERASIONAL Pertemuan Ke-3. Riani Lubis Program Studi Teknik Informatika Universitas Komputer Indonesia

BAB II KAJIAN PUSTAKA

BAB II LANDASAN TEORI

III. KERANGKA PEMIKIRAN

CCR314 - Riset Operasional Materi #2 Ganjil 2015/2016 CCR314 RISET OPERASIONAL

Transkripsi:

Bab 2 LANDASAN TEORI 2.1 Linear Programming Linear Programming (LP) merupakan metode yang digunakan untuk mencapai hasil terbaik (optimal) seperti keuntungan maksimum atau biaya minimum dalam model matematika yang melibatkan variable-variabel linear. Linear programming juga dapat dikatakan sebagai teknik untuk mengoptimasi sebuah fungsi objective linear, dengan kendala berbentuk persamaan linear maupun pertidaksamaan linear. Secara umum, linear programming dapat dinyatakan sebagai: Optimalkan, dengan adalah himpunan semua vektor real komponen dan merupakan fungsi objektif yang didefinisikan dalam atau juga disebut sebagai himpunan kendala. Setiap disebut sebagai solusi layak (feasible solution), sedangkan yang memenuhi, disebut sebagai solusi optimal (optimal solution). Dalam kehidupan sehari-hari, linear programming merupakan bagian yang sangat penting dalam area matematika yang disebut teknik optimasi. Linear programming umumnya diaplikasikan dalam permasalahan yang dapat dimodelkan ke dalam suatu model matematika, misalnya dalam mencari keuntungan suatu usaha, pengoptimalan persediaan, juga dalam beberapa masalah industri maupun ekonomi. Adakalanya dalam situasi tertentu solusi yang diinginkan haruslah dalam bilangan bulat, misalnya pada perusahaan manufaktur, perusahaan tidak bisa memproduksi barang setengah, sepertiga, ataupun seperempat jadi. Masalah ini disebut dengan integer linear programming (ILP).

2.1.1 Karakteristik Linear Programming Karakteristik-karakteristik dalam linear programming yang biasa digunakan untuk memodelkan suatu masalah dan memformulasikannya secara matematik yaitu: a. Variabel Keputusan Variabel keputusan adalah variabel yang secara lengkap menguraikan keputusan-keputusan yang akan dibuat. b. Fungsi Tujuan Fungsi tujuan merupakan suatu hubungan linier dari variabel keputusan yang berupa fungsi maksimum atau minimum. c. Kendala Kendala merupakan batasan-batasan dalam penyelesaian linear programming yang harus diperhatikan. Kendala diekspresikan dalam persamaan dan pertidaksamaan yang juga merupakan hubungan linier dari variabel keputusan yang mencerminkan keterbatasan sumberdaya dalam suatu masalah. 2.1.2 Asumsi dalam Linear Programming Model linear programming mengandung asumsi-asumsi implisit tertentu yang harus dipenuhi. Asumsi-asumsi tersebut yaitu:

a. Linieritas (Linearity) Fungsi tujuan (objective function) dan kendala kendalanya (constraints) dibuat dalam fungsi linier. Sifat linearitas suatu kasus dapat ditentukan dengan menggunakan beberapa cara, misalnya dengan menggunakan grafik atau menggunakan uji hipotesa. b. Kesetaraan (Proportionality) i. Kontribusi setiap variabel keputusan terhadap fungsi tujuan adalah sebanding dengan nilai variabel keputusan. ii. Kontribusi suatu variabel keputusan terhadap ruas kiri dari setiap pembatas juga sebanding dengan nilai variabel keputusan itu. c. Penambahan (Addivity) Sifat penambahan mengasumsikan bahwa tidak terdapat bentuk perkalian silang pada model, baik bagi fungsi tujuan maupun kendala. d. Pembagian (Divisibility) Solusi dapat berupa bilangan bulat (integer) atau bilangan pecahan. e. Ketidaknegatifan (Nonnegativity) Nilai variabel keputusan harus lebih besar atau sama dengan nol. f. Kepastian (Certainty) Koefisien pada fungsi tujuan ataupun fungsi kendala merupakan suatu nilai pasti, bukan merupakan suatu nilai dengan peluang tertentu.

Asumsi-asumsi di atas harus dipenuhi apabila ingin menyelesaikan masalah model linear programming. Jika asumsi-asumsi tersebut tidak dapat terpenuhi, persoalan dapt diselesaikan dengan program matematik lain seperti; integer programming, nonlinear programming, goal programming, atau dynamic programming. 2.2 Integer Programming (IP) Program bilangan bulat (integer programming) merupakan bentuk perluasan dari linear programming. Persoalan IP menginginkan solusi yang didapat berupa bilangan bulat, bukan berupa bilangan pecahan. Contoh persoalan yang sering ditemui misalnya menentukan banyaknya barang elektronik yang harus diproduksi, banyaknya unit rumah yang akan dibangun pada suatu proyek perumahan, banyaknya orang yang diperlukan untuk mengerjakan suatu proyek, dan sebagainya. Integer programming memiliki model matematis yang sama dengan model linear programming pada umumnya, tetapi ditambah batasan bahwa variabelnya harus bilangan bulat. Berdasarkan jenis keputusan yang akan diperoleh, persoalan integer programming dapat dibedakan atas tiga jenis, yaitu: 1. Pemrograman Bilangan Bulat Murni (Pure Integer Programming) 2. Pemrograman Bilangan Bulat Campuran (Mixed Integer Programming) 3. Pemrograman Bilangan Bulat Biner (Binary Integer Programming) 2.2.1 Pemrograman Bilangan Bulat Murni (Pure Integer Programming) Pure Integer Programming (PIR) merupakan pemrograman bilangan bulat di mana semua nilai variabel keputusan haruslah bilangan bulat. Bentuk umum pure integer programming yaitu: Optimalkan : Kendala :,,

1, 2,, 1, 2,, 0, 2.2.2 Pemrograman Bilangan Bulat Campuran (Mixed Integer Programming) Mixed Integer Programming (PIR) merupakan pemrograman bilangan bulat di mana nilai variabel keputusannya berupa campuran antara bilangan bulat dan bilangan desimal atau pecahan. Bentuk umum mixed nteger programming yaitu: Optimalkan : Kendala :,, 1, 2,, 1, 2,, 1, 2,, 0, 0 2.2.3 Pemrograman Bilangan Bulat Biner (Binary Integer Programming) Bentuk lain dari masalah integer programming adalah binary integer programming (BIP). Dalam persoalan binary integer programming nilai variabel keputusannya berupa bilangan biner (0 atau 1). Dalam aplikasi sehari-hari, masalah binary integer programming menyangkut masalah pengambilan keputusan, di mana jika solusi yang didapat berupa angka 1 yang menyatakan ya atau angka 0 yang menyatakan tidak.

Bentuk umum dari binary integer programming yaitu: Optimalkan : Kendala :,, 1, 2,, 1, 2,, 0 atau 1 2.3 Metode Penyelesaian Masalah Integer Programming Tampaknya cukup untuk mendapatkan solusi bulat dari masalah linear programming, dengan menggunakan metode simpleks biasa dan kemudian membulatkan nilai-nilai pecah solusi optimum. Bukan tugas mudah untuk membulatkan nilai-nilai pecah variabel basis yang menjamin tetap memenuhi semua kendala dan tidak menyimpang cukup jauh dari solusi bulat yang tepat. Akibatnya diperlukan prosedur yang sistematis untuk mendapatkan solusi bulat optimum terhadap masalah itu. Beberapa metode yang dapat digunakan untuk menyelesaikan masalah integer programming antara lain: 1. Metode Pendekatan Pembulatan 2. Metode Pendekatan Grafik 3. Metode Branch and Bound 4. Metode Cutting Plane 2.3.1 Metode Pendekatan Pembulatan Suatu pendekatan yang sederhana dalam menyelesaikan masalah integer programming adalah dengan membulatkan nilai variabel keputusan yang telah diperoleh pada penyelesaian linear programming. Pendekatan ini mudah dan praktis dalam usaha, waktu, dan biaya yang diperlukan untuk memperoleh solusi. Pendekatan pembulatan merupakan cara yang sering digunakan untuk masalah integer programming apabila biaya perhitungan sangat tinggi atau untuk masalah yang memiliki nilai-nilai solusi variabel keputusan relatif besar.

Namun demikian sebab utama kegagalan pendekatan ini adalah bahwa solusi yang diperoleh mungkin bukan solusi integer optimum yang sesungguhnya. Dengan kata lain, solusi pembulatab dapat lebih jelek dibandingkan solusi integer optimum yang sesungguhnya atau mungkin merupakan solusi tak layak. Tiga masalah berikut disajikan untuk mengilustrasikan prosedur pembulatan: Contoh 2.1: Masalah 1: Maksimumkan Kendala 100 90 10 7 70 5 10 50 0 Masalah 2: Minimumkan 200 400 Kendala 10 25 100 3 2 12 0 Masalah 3: Maksimumkan 80 100 Kendala 4 2 12 5 15 0 Perbandingan antara solusi dengan metode simpleks tanpa pembatasan bilangan bulat, pembulatan ke bilangan bulat terdekat dan solusi integer optimum yang sesungguhnya untuk ketiga masalah tersebut adalah:

Tabel 2.1 Perbandingan solusi dengan metode pendekatan pembulatan dengan bulat optimum sesungguhnya. Solusi dengan Masalah Metode simpleks 1 5,38 2,31 746,15 2 1,82 3,27 1.672,73 3 2,14 1,71 343 Dengan pembulatan terdekat 5 2 680 2 3 2 2 Solusi integer optimum sesungguhnya 7 0 700 3, 5 5, 2 1.800 0 3 300 Masalah pertama adalah masalah maksimasi, di mana solusi pembulatan menghasilkan keuntungan 680, hanya lebih kecil 20 dibanding yang dihasilkan solusi bulat optimum 700. Masalah kedua adalah masalah minimasi di mana solusi pembulatan adalah tak layak. Ini menunjukkan bahwa meskipun pendekatan adalah sederhana, namun kadang-kadang menyebabkan solusi tak layak. Untuk mencegah ketidaklayakan, nilai solusi simpleks dalam masalah minimasi harus dibulatkan ke atas. Sebaliknya, pada masalah maksimasi nilai solusi simpleks semestinya dibulatkan ke bawah. Contohnya, pada masalah kedua jika solusi simpleksnya dibulatkan ke atas akan diperoleh 2 dan 4 dan merupakan solusi layak. Juga pada masalah ketiga, jika solusi simpleksnya dibulatkan ke bawah akan diperoleh 2 dan 1 dan merupakan solusi layak.

Nilai fungsi tujuan melalui simpleks tanpa pembatasan bilangan bulat akan selalu lebih baik dibanding solusi integer optimum karena terletak pada titik pojok luar dari batas ruang solusi layak. Suatu metode yang serupa dengan pendekatan pembulatan adalah prosedur coba-coba (trial and error). Dengan menggunakan cara ini, pengambil keputusan mengamati solusi integer dan memilih solusi yang mengoptimumkan nilai fungsi tujuan. Cara ini sangat tidak efektif jika masalahnya melibatkan sejumlah besar kendala dan variabel. Terlebih lagi, memeriksa kelayakan setiap solusi yang dibulatkan akan banyak memakan waktu. 2.3.2 Metode Pendekatan Grafik Masalah integer programming yang melibatkan dua variabel dapat diselesaikan dengan metode pendekatan grafik. Metode ini identik dengan metode grafik yang biasa digunakan dalam linear programming. Metode grafik relatif lebih mudah untuk menyelesaikan masalah integer programming dua variabel yaitu dengan menggambar grafik di atas kertas grafik kemudian menggambarkan sekumpulan titik-titik integer dalam ruang solusi layak. Masalah berikut akan diselesaikan dengan pendekatan grafik. Contoh 2.2: Maksimumkan Kendala 100 90 10 7 70 5 10 50, Model ini serupa dengan model linear programming biasa. Perbedaannya terletak pada kendala terakhir yang menginginkan solusi bernilai non negatif integer. Solusi grafik untuk masalah ini ditunjukkan pada gambar di bawah. Ruang solusi layak adalah OABC. Solusi optimum masalah linear programming ditunjukkan pada titik B, dengan 5,38 dan 2,31 serta 746,15.

Untuk mencari solusii intger optimum masalah ini, garis Z (slope = -9/10) digeser secara sejajar dari titik B menuju titik asal. Solusi integer optimum adalah titik integer pertama yang bersinggungan dengan garis Z. Titik itu adalah A, dengan 7 dan 0 serta 700. Gambar 2.1 Penyelesaian dengan pendekatan grafik 2.3.3 Metode Cutting Plane (Pendekatan Gomory) Suatu prosedur sistematik untuk memperoleh solusi integer optimum terhadap pure integer programming pertama kali dikemukaka an oleh R.EE Gomory pada tahun 1958. Ia kemudian memperluas prosedur ini untuk kasus yang lebih sulit yaitu mixed integer programming. Langkah-langkah prosedur Gomory yaitu: 1. Selesaikan masalah integerr programming dengan metode e simpleks. masalah sederhana, dapat diselesaikan dengan pendekatan grafik. Jika

2. Periksa solusi optimum. Jika semua variabel basis memiliki nilai integer, maka solusi optimum telah diperoleh dan proses berakhir. Jika masih ada satu atau lebih variabel basis memiliki nilai pecah, teruskan ke tahap 3. 3. Buatlah suatu skala Gomory (suatu bidang pemotong atau cutting plane) dan cari solusi optimum melalui proses dual simpleks. Kembali ke tahap 2. Kendala Gomory dalam Pure Integer Programming Tabel optimum masalah linear programming berikut merupakan solusi optimum kontinu. Tabel 2.2 Solusi optimum masalah linear programming Basis Solusi Z 0.. 0.. 1.. 0........ 0 1 Di mana variabel 1,, menunjukkan variabel basis dan variabel 1,, adalah non basis. Perhatikan persamaan ke di mana variabel diasumsikan bernilai non integer. di mana non integer. Kemudian pisahkan dan menjadi bagian yang bulat dan bagian pecah non negatif seperti berikut: jadi, di mana 0 1 jadi, di mana 0 1

Contoh: 3 2 1 1 2 7 3-3 2 3 7 8 0 7 8-1 -1 0 7 3 2 1 3 2 5-1 3 5 Kendala Gomory yang diinginkan yaitu:, adalah variabel slack Gomory ke. Pada umumnya, persamaan kendala yang berhubungan dengan solusi pecah dipilih untuk menghasilkan suatu kendala Gomory. Namun, sebagai aturan main biasanya dipilih persamaan yang memiliki maksimum. Tabel baru setelah penambahan kendala Gomory disajikan pada tabel berikut: Tabel 2.3 Penambahan kendala Gomory Basis Solusi Z 0.. 0.. 0 1.. 0........................ 0 1 0. 0 1 Karena diperoleh solusi primal optimum tetapi tidak layak maka digunakan metode dual simpleks. Proses pembentukan kendala Gomory berakhir jika solusi baru semua berupa bilangan bulat. Jika tidak, suatu kendala Gomory baru dibuat

lagi dari tabel yang dihasilkan dan metode dual simpleks digunakan lagi untuk mengatasi ketidaklayakan. Jika pada setiap iterasi metode dual simpleks menunjukkan bahwa tidak ada solusi layak, berarti masalah itu tidak memiliki solusi integer yang layak. Berikut ini terdapat persoalan integer programming: Contoh 2.3: Maksimumkan 7 9 Kendala 3 6 7 35, Solusi kontinu optimumnya diperoleh dalam tabel berikut: Tabel 2.4 Solusi optimal contoh 2.3 (iterasi 0) Basis Solusi Z 0 0 28/11 15/11 63 0 1 7/22 1/22 7/2 1 0-1/22 3/22 9/2 Karena solusi tidak bulat, suatu kendala Gomory ditambahkan pada tabel itu. Kedua persamaan ( dan ) pada masalah ini memiliki nilai yang sama, yaitu, sehingga salah satu dapat digunakan, misalkan digunakan persamaan, ini menghasilkan atau 0 7 22 0 1 22 3 1 2

Sehingga kendala Gomory menjadi: 7 22 1 22 1 2 Tabel baru setelah penambahan kendala Gomory menjadi: Tabel 2.5 Penambahan kendala Gomory contoh 2.3 (iterasi 0) Basis Solusi Z 0 0 28/11 15/11 0 63 0 1 7/22 1/22 0 7/2 1 0-1/22 3/22 0 9/2 0 0-7/22-1/22 1-1/2 Dengan memakai metode dual simpleks diperoleh tabel baru yaitu: Tabel 2.6 Solusi optimal contoh 2.3 (iterasi 1) Basis Solusi Z 0 0 0 1 8 59 0 1 0 0 1 3 1 0 0 1/7-1/7 32/7 0 0 1 1/7-22/7 11/7 Solusi baru yang didapat masih belum bilangan bulat, akibatnya suatu kendala Gomory baru ditambahkan. Dapat dilihat bahwa persamaan memiliki ( 47), maka ditulis dalam berikut: 0 1 7 0 6 7 4 4 7 Sehingga dihasilkan kendala Gomory kedua sebagai berikut: 1 7 6 7 4 7

Kemudian ditambahkan pada tabel 2.7 berikut: Tabel 2.7 Penambahan kendala Gomory contoh 2.3 (iterasi 1) Basis Solusi Z 0 0 0 1 8 0 59 0 1 0 0 1 0 3 1 0 0 1/7-1/7 0 32/7 0 0 1 1/7-22/7 0 11/7 0 0 0-1/7-6/7 1-4/7 Dengan menggunakan dual simpleks diperoleh hasil: Tabel 2.8 Solusi optimal contoh 2.3 (iterasi 2) Basis Solusi Z 0 0 0 0 2 7 55 0 1 0 0 1 0 3 1 0 0 0-1 1 4 0 0 1 0-4 1 1 0 0 0 1 6-7 4 Didapat solusi bulat optimum 4, 3, dan 55.

2.3.4 Metode Branch and Bound Metode branch and bound adalah salah satu metode untuk mendapatkan penyelesaian optimal program linier yang menghasilkan variable-variable keputusan bilangan bulat. Metode ini membatasi penyelesaian optimum yang akan menghasilkan bilangan pecahan dengan cara membuat cabang atas dan bawah bagi masing-masing variable keputusan yang bernilai pecahan agar bernilai bulat sehingga setiap pembatasan akan menghasilkan cabang baru. Metode branch and bound telah menjadi kode computer standar untuk integer programming, dan penerapan-penerapan dalam praktek tampaknya menyarankan bahwa metode ini lebih efisien dibanding dengan metode cutting plane. Metode branch and bound dapat digunakan untuk menyelesaikan masalah pure maupun mixed integer programming. Berikut ini adalah langkah-langkah penyelesaian masalah maksimasi dengan metode branch and bound: 1. Selesaikan masalah LP biasa tanpa pembatasan bilangan bulat dengan metode simpleks biasa. 2. Teliti solusi optimalnya. Jika semua variabel basis telah bernilai bulat, maka solusi optimum telah tercapai dan proses berakhir. Jika satu atau lebih variabel basis belum bernilai bulat, lanjut ke tahap 3. 3. Jadikan solusi pada penyelesaian tahap 1 (relaxed solution) menjadi batas atas dan sebagai batas bawahnya digunakan solusi yang variabel basisnya telah dibulatkan ke bawah (rounded-down). 4. Pilih variabel yang mempunyai nilai pecahan yang terbesar untuk dijadikan pencabangan ke dalam sub-sub masalah. Tujuannya adalah untuk menghilangkan solusi kontinu yang tidak memenuhi persyaratan bulat dalam masalah itu. Pencabangan dilakukan secara mutually exclusive untuk memenuhi persyaratan bulat dengan jaminan tidak ada solusi bulat layak yang tidak diikut sertakan. 5. Untuk setiap sub masalah, nilai solusi optimum kontinu fungsi tujuan ditetapkan sebagai batas atas. Solusi bulat terbaik menjadi batas bawah (pada

awalnya, ini adalah solusi kontinu yang dibulatkan ke bawah). Sub sub masalah yang memiliki batas atas kurang dari batas bawah yang ada, tidak diikut sertakan pada analisa selanjutnya. Suatu solusi bulat layak adalah sama baik atau lebih baik dari batas atas untuk setiap sub masalah yang dicari. Jika solusi yang demikian terjadi, suatu sub masalah dengan batas atas terbaik dipilih untuk dicabangkan. Kembali ke langkah 4. Untuk masalah minimasi, solusi yang menjadi batas atas dibulatkan keatas, atau dengan kata lain batas atas dan bawah pada kasus minimasi berlawanan pada kasus maksimasi. Untuk memperoleh gambaran yang lebih jelas tentang metode Branch dan Bound, perhatikan contoh 2.4 berikut: Contoh 2.4: Maksimumkan Kendala 3 5 2 4 25 8 2 10, Solusi optimum kontinu masalah tersebut adalah 8, 2,25 dan 35,25. Solusi tersebut merupakan batas awal. Batas bawah merupakan solusi yang dibulatkan ke bawah, yaitu 8, 2 dan 34. Pada metode branch and bound, masalah tersebut dibagi ke dalam dua bagian untuk mencari nilai solusi bulat yang yang mungkin bagi dan. Untuk itu, dipilih variabel dengan nilai solusi pecah yang memiliki bagian pecah terbesar. Dalam kasus ini hanya yang memiliki bagian pecah, maka ia dipilih. Untuk menghilangkan bagian pecah pada, dua kendala baru dibuat. Nilai bulat terdekat terhadap 2,25 yaitu 2 dan 3. Sehingga diperoleh dua kendala baru yang saling mutually exclusive, yaitu 2

dan 3 yang selanjutnya akan diuraikan sebagai bagian A dan bagian B. Kendala-kendala baru tersebut secara efektif menghilangkan semua nilai pecah yang mungkin. Bagian A: Maksimumkan 3 5 Kendala 2 45 25 8 2 10 2, 0 Bagian B: Maksimumkan 3 5 Kendala 2 4 25 8 2 10 3, 0 Bagian A dan bagian B diselesaikan dengan metode simpleks tanpa pembatasan bilangan bulat. Solusi simpleksnya yaitu: Bagian A: 8, 2, dan 34 Bagian B: 6,5, 3, dan 34,5 Bagian A diperoleh suatu solusi yang semuanya bulat. Pada bagian A nilai Z yang didapat merupakan nilai batas bawah. Pada solusi bagian B membenarkan pencarian lebih lanjut karena diperoleh nilai Z yang lebih besar. Sangat mungkin bahwa pencarian lebih lanjut dapat menghasilkan suatu solusi yang semuanya bulat dengan nilai Z lebih besar dari 34.

Selanjutnya bagian B dicabangkan ke dalam dua sub bagian, yaitu B 1 dan B 2. Pada sub bagian B 1 ditambah kendala baru yaitu 6, sedangkan pada sub bagian B 2 ditambah kendala 7. Kedua sub-masalah tersebut dinyatakan sebagai berikut: Sub bagian B 1 : Maksimumkan 3 5 Kendala 2 4 25 8 2 10 3 6, 0 Sub bagian B 2 : Maksimumkan 3 5 Kendala 2 4 25 8 2 10 3 7, 0 Solusi simpleks kedua sub masalah tersebut yaitu: Sub bagian B 1 : 6, 3,25, dan 34,25 Sub bagian B 2 : tidak layak. Sub-bagian B 1 menghasilkan nilai fungsi tujuan yang lebih besar dari 34 sehingga harus dicabangkan lagi ke dalam sub-masalah dengan tambahan kendala 3 dan 4. Kedua sub masalah tersebut selanjutnya diberi nama subbagian B 1a dan B 1b.

Sub bagian B 1a : Maksimumkan 3 5 Kendala 2 4 25 8 2 10 3 6 3, 0 Sub bagian B 1b : Maksimumkan 3 5 Kendala 2 4 25 8 2 10 3 6 4, 0 Solusi optimum dengan metode simpleks adalah: Sub bagian B 1a : 6, 3, dan 33. Sub bagian B 1b : 4,25, 4, dan 33,5. Kedua solusi tersebut memiliki nilai fugsi tujuan ( 33 dan 33,5) yang lebih buruk dibandingkan solusi yang dihasilkan oleh bagian A. Oleh karena itu, proses pencabangan dihentikan. Solusi bulat optimum adalah 8, 2, dan 34 yang dihasilkan oleh bagian A yang memiliki solusi bulat dengan nilai fungsi tujuan tertinggi (karena kasus maksimasi).

Seluruh prosedur branch and bound untuk masalah ini ditunjukkan pada gambar berikut: Model Awal 2 8 2 3 inferior 8 2,25 35,25 3 34 6,5 6 6 3,25 34,25 4 inferior 3 35,25 7 Tak layak Gambar 2.2 Grafik pencabangan pada metode Branch and Bound