Metode-Metode dalamProgram Integer Program Integer .1 Definisi Program Integer

Programming .Program Integer Campuran merupakan Program Integer tapi variabel keputusannya tidak semua merupakan bilangan bulat ada variabel keputusan yang bernilai pecahan Yamit, Zulian. 1991. Bentuk umum dari masalah Program Integer Biner adalah sebagai berikut: Maksimum atau Mininimum: Z = ∑ � � � � � �=1 Kendala: ∑ � � � �=1 x j ≤ = ≥ b j = 1, 2, … , n x j ≥ 0dan x j �{0, 1} 2.2

2.1.3 Sifat Umum Program Integer

Semua persoalan Program Integer mempunyai empat sifat umum yaitu, sebagai berikut Susanta, B. 1994: 1. Fungsi Tujuan objective function Persoalan Program Integer bertujuan untuk memaksimumkan atau meminimumkan pada umumnya berupa laba atau biaya sebagai hasil yang optimal. 2. Adanya kendala atau batasan constrains yang membatasi tingkat sampai di mana sasaran dapat dicapai. Oleh karena itu, untuk memaksimumkan atau meminimumkan suatu kuantitas fungsi tujuan bergantung kepada sumber daya yang jumlahnya terbatas. 3. Harus ada beberapa alternatif solusi layak yang dapat dipilih. 4. Tujuan dan batasan dalam permasalahan Program Integer harus dinyatakan dalam hubungan dengan pertidaksamaan atau persamaan linier.

2.1.4 Metode-Metode dalamProgram Integer

Universitas Sumatera Utara Algoritma atau Metode yang cukup baik untuk memberikan solusi dalam Program Integeryaitu: 1. Pencabangan dan Pembatasan Branch and Bound Cara ini mula-mula dipakai untuk menyelesaikan program bilangan bulat. Ternyata cara ini tidak saja hanya dapat digunakan untuk program bilangan cacah, tetapi juga dapat digunakan untuk program matematika yang lain. Menurut Taha, H.A.2007,untuk melaksanakan teknikpencabangan dan pembatasan Branch and Bound ada dua operasi dasar, yaitu: a. Pencabangan Branching Pencabangan merupakan langkah yang dilakukan pada persoalan yang tidak integer menjadi subpersoalan yang integer. b. Pembatasan Bounding Pembatasan merupakan pembatasan setiap subpersoalan yang dibuat dengan pencabangan.Batas ini penting untuk tingkatan jawaboptimal dari subpersoalan dan penemuan jawab optimal bilangan bulat. Teknik pencabangan dan pembatasan Branch and Bound mencari solusi optimal dari suatu persoalanProgram Integerdenganmenumerasi titik-titik dalam daerah fisibel dari suatu subpersoalan. Keuntungan dari cara pencabangan dan pembatasanadalah cara yang efisien untuk mendapatkan seluruh jawaban layak fisibel, sedangkan kerugian cara ini adalah akan mencari seluruh jawaban program linier pada setiap titik. Pada persoalan yang besar akan memerlukan waktu yang cukup lama, terutama bila yang dibutuhkan hanya keterangan mengenai nilai objektif yang optimum. Langkah-langkah Metode Branch and Bound: 1. PembatasanBound Pada algoritma branch and bound terdapat dua batas yaitu batas atas upper bound dan batas bawah lower bound. 2. PencabanganBranching Pencabangan dilakukan jika masih terdapat variabel keputusan yang harus bernilai bulat namun memiliki solusi yang tidak bulat. Pencabangan dilakukan dengan cara menambahkan pembatas pada masalah asli. Universitas Sumatera Utara Penambahan pembatas ini ditujukan untuk membuat variabel keputusan ang belum bernilai integersupaya bernilai integer. 3. Penghentian pencabanganFathoming Pencabangan atau pencarian solusi pada suatu submasalah dihentikan jika: a. Infeasible atau tidak mempunyai daerah layak. b. Semua variabel keputusan yang harus bernilai bulat sudah bernilai bulat. c. Pada masalah maksimisasi, penghentian pencabangan pada suatu submasalah dilakukan jika batas atas dari submasalah tersebut tidak lebih besar atau sama dengan batas bawah. d. Pada masalah minimisasi penghentian pencabangan pada suatu submasalah dilakukan jika batas bawah tidak lebih lebih kecil atau sama dengan batas atas. 2. Pemotongan Bidang Datar Cutting Plane Pendekatan yang dilakukan dalam teknik pemotonganbidang datar Cutting Plane adalah denganmembuat pembatas tambahan yang memotong ruang layak dari program linier sehingga dapat mengeliminasi solusi yang tidak integer . Proses pemotongan akan terus berlangsung sehingga diperoleh jawaban dengan seluruh variabel yang dikehendaki berharga bilangan bulat integer. Keberhasilan teknikini sangat terbatas, bergantung pada struktur persoalan yang dihadapi. Artinya hanya persoalan tertentu yang dapat diselesaikan dengan teknik ini. Karena itu, sekarang teknik ini hampir tidak pernah digunakan lagi. Kelemahan dari algoritma pemotongan bidang datar adalah kesalahan- kesalahan pada pembulatanyang dilakukan dalam perhitungan dapat menghasilkanjawaban bilangan bulat yang salah. Selanjutnya jawaban dari persoalan masih belum fisibel berarti tidak ada jawaban bilangan bulat yang diperoleh sampaijawaban bilangan bulat yang optimal dicapai tadi,dan ini berarti bahwa tidak ada jawaban integer yang baik jika perhitungan dihentikan lebih awal sebelum mencapai hasil jawaban yang optimal. Langkah-langkah Metode Cutting Plane: Universitas Sumatera Utara 1. Selesaikan masalah Program Integerdengan Metode Simpleks. 2. Periksa solusi optimum. Jika semua variabel basis memiliki nilai bulat, solusi optimum integer telah diperoleh dan proses solusi telah berakhir. Jika satu atau lebih variabel basis masih memiliki nilai pecahan, lanjut langkah 3. 3. Buatlah suatu skala gomory dan cari solusi optimum dengan dual Simpleks. 3. Metode Balas Egon Balas mengembangkan satu cara atau algoritma untuk menyelesaikan problema program bilangan cacah nol-satu 0-1. Pendekatan yang digunakan ialah pendekatan enumerasi, baik yang total maupun implisit, terhadap setiap kombinasi variabel yang diatur sama dengan 0 dan 1. Kombinasi 0 dan 1 yang memenuhi semua kendala dan meminimumkan fungsi tujuan dinyatakan sebagai jawaban optimal Benjamin, Lev dan Weiss, Howard J. 1982. Kalau terdapat sejumlah n variabel, maka ada 2 n kombinasi yang mungkin. Tetapi, sangatlah sulit untuk memeriksa semua 2 n kombinasi variabel yang memenuhi semua kendala. Oleh karena itu, diperlukan suatu prosedur yang secara sistematis mampu memeriksa hanya sebagian dari semua kombinasi yang ada, sebelum mencapai satu jawaban optimal. Inilah yang disebut sebagai enumerasi implisit Taha H.A.2007. Prosedur pokok dari cara enumerasi implisit ini dapat dinyatakan sebagai berikut: 1. Dimulai dengan mengatur semua variabel sama dengan 0. 2. Tetapkan secara sistematis variabel tertentu untuk dijadikan berharga 1 hingga ditemukan jawaban layak. 3. Periksa dengan cermat kombinasi mana yang bisa dikembangkan hingga dapat dijadikan sebagai jawaban optimal. Bentuk umum Metode Balas Martello Silvano, Psinger, David dan Toth, Paolo. 2000: Universitas Sumatera Utara MinimumkanZ = ∑ � � �=1 j x j Kendala: ∑ � j x j ≥ b 2.3 di mana: Z = fungsi tujuan atau fungsi objektif. c j x j =variabel dan koefisien keputusan. untuk j =1,2, … ,n x j ≥ 0 dan x j �{0, 1} Kondisi yang tidak mengikuti bentuk umum dari Metode Balas akan dilakukan beberapa perubahan, antara lain: 1. Fungsi objektif yang setiap variabel x j mempunyai nilai koefisien negatif, untuk variabel x j diganti menjadi 1 - x j . 2. Kendala dengan bentuk pertidaksamaan ≤, kendala ini akan diubah ke dalam bentuk pertidaksamaan ≥ dengan cara mengalikan ruas kiri dan kanan dengan -1. Adapun sistematika cara Balas adalah sebagai berikut: 1. Tetapkan: �= {1, 2, ... , n} S c = Ø Z min = 10 10 2. Hitung � = ∑ � � � � ���̅ Beberapa dari x i ditetapkan berharga 0. 3. Hitung tiap kendala Q i i = 1, 2, ... , n dengan menggunakan variabel dalam S c dengan harga-harga yang telah ditetapkan ditambah dengan variabel dalam S yang masing-masing himpunan sama dengan 0. Jika tiap kendala layak, maka harga variabel yang digunakan untuk menghitung kendala membentuk suatu jawab layak. Misalkan K merupakan himpunan kendala yang tidak layak. 4. Bila Khimpunan kosong, maka teruskan ke langkah 12, kalau tidak teruskan ke langkah 5. 5. Tetapkan: B = Z min – Z Universitas Sumatera Utara 6. Pilih variabel dalam S yang mempunyai kesempatan yang membuat semua kendala menjadi layak, yaitu misalkan T himpunan variabel dalam S yang mempunyai: a. Koefisien positif dalam beberapa kendala dalam K. b. Koefisien fungsi tujuan B. Kendala yang tidak terpenuhi hanya dapat dibuat lebih tidak layak dengan menetapkan harga 1 terhadap variabel dengan koefisien negatif dalam kendala, jadi hanya variabel dengan koefisien positif dalam kendala yang diketahui yang mempunyai kesempatan membuat kendala jadi layak ≥ 0. Begitu juga , suatu variabel x k dalam S sedemikian hingga: � = � � � � � ��� + � � ≥ � ��� tidak termasuk dalam S karena jawab layak yang bersesuaian dengan Z min sekurang-kurangnya sudah cukup bagus. 7. Bila T himpunan kosong, teruskan ke langkah 14 kalau tidak teruskan ke langkah 8. 8. Untuk setiap kendala dalam �, tetapkan harga 1 bagi variabel bebas dalam � yang mempunyai koefisien positif dalam kendala yang diketahui. Tetapkan variabel dalam S c sama dengan harga yang sudah ditentukan. 9. Bila masih ada dari kendala tetap tidak dipenuhi, maka terus ke langkah 11 kalau tidak terus ke langkah 10. 10. Pindahkan dari S c dan tambahkan ke S variabel dalam T yang meminimumkan jarak total dari kelayakan untuk seluruh kendala. Proses ini digarap dalam langkah a sampai c. a. Hitung tiap kendala Q i � = 1, ... , n untuk tiap variabel, misalkan x k dalam � dengan menggunakan variabel S c dengan harga yang telah ditetapkan, x k = 1 dan tiap variabel S yang tersisa samakan dengan 0. b. Harga absolut dari hasil negatif adalah solusi yang dikembangkan menjadi layak. c. Pindahkan dari S dan tambahkan ke S c variabel dalam T yang mempunyai jarak terkecil dari kelayakan. Kemudian kembali ke langkah 2. Universitas Sumatera Utara 11. Kalau S c kosong, teruskan kelangkah 21. Kalau tidak, tidak ada jawab parsial layak yang disajikan oleh S mempunyai harga yang lebih kecil dari Z min , teruskan ke langkah 16. 12. Variabel dalam S c dengan harga yang sudah ditetapan, bersama-sama dengan variabel dalam S yang ditetapkan sama dengan 0, membentuk jawab yang lengkap. Terus ke langkah 13. 13. Bila Z Z min . Maka terus ke langkah 14, kalau bukan maka terus kelangkah 15. 14. Buat Z min = Z. Simpan dulu jawab lengkap ini dan terus ke langkah 15. 15. Jajakan ulang Bila S c kosong maka jawaban layak x i = 0 i = 1, 2, ... , n adalah optimal, lalu terus ke langkah 20. Bila tidak, terus kelangkah 16. 16. Bila anggota terakhir dalam S c negatif, terus kelangkah 18, kalau tidak terus kelangkah 17. Anggota terkanan dalam �̅ adalah anggota terakhir dalam S c . 17. Jadikan anggota terakhir paling kanan dalam S c negatif dan kembali kelangkah 2. Variabel yang bersesuaian dengan anggota terakhir telah ditetapkan berharga 1 indeks yang sesuai dalam S c sudah positif. Sekarang kita menetapkan variabel jadi 0 ubah tanda anggota terakhir dalam S c menjadi negatif. 18. Bila semua anggota dalamS c bertanda negatif, maka jawab optimal telah ditemukan sehingga terus kelangkah 20,kalau belum terus kelangkah 19. 19. Jadikan anggota positif terkanan dalam S c menjadi negatif dan pindahkan anggota yang sisa kesebelah kanan dalam S c . Tambahkan anggota yang sudah keluar, masuk kedalam S. kembali kelangkah 2. 20. Jawab lengkap sesuai dengan Z min adalah optimal. Bila Z min = 10 10 maka jawaban optimal tidak ada. 21. Tidak ada jawab optimal untuk problemnya.

2.2 Knapsack