BAB 2 OPTIMISASI KOMBINATORIAL
Optimisasi kombinatorial merupakan suatu cara yang digunakan untuk mencari semua kemungkinan nilai real dari suatu fungsi objektif. Proses pencarian dapat dilakukan dengan mendaftarkan satu per satu nilai yang mungkin atau juga dengan mengembangkan suatu algoritma pencarian. Nantinya setelah ditemukannya semua kemungkinan tersebut, dipilihlah mana yang terbaik. Dengan kata lain, optimisasi kombinatorial mencari nilai maksimum atau minimum tergantung dari masalah yang dibicarakan. Algoritma dari optimalisasi kombinatorial digunakan untuk menyelesaikan masalah yang cukup rumit dan memiliki ruang lingkup yang cukup besar. Masalah kombinatorial adalah masalah yang mempunyai himpunan solusi layak (f easible) yang terhingga. Meskipun secara prinsip solusi dari masalah ini bisa didapatkan dengan enumerasi lengkap, pada masalah kompleks dibutuhkan waktu yang tidak bisa diterima secara praktis (Lee, 2004). Salah satu bentuk dari masalah optimisasi adalah TSP (Travelling Salesman Problem). TSP sebagai masalah yang mudah dipahami tapi sulit untuk dipecahkan (mendapat solusi optimal). Dengan semakin banyaknya jumlah kota yang dilibatkan, pencarian solusi untuk pemilihan rute terbaik untuk mengunjungi n kota akan semakin sukar. Oleh karena itu dibutuhkan suatu program yang dapat menyelesaikan tugas tersebut. Metode enumerasi lengkap harus menguji n! kemungkinan solusi. Untuk masalah sederhana dengan n = 20 ada lebih dari 2, 4 × 1018 kemungkinan solusi. Jika dengan menggunakan perhitungan komputer mungkin memerlukan waktu lebih dari 5 jam untuk melakukan enumerasi lengkap, sebuah hal yang tidak bisa diterima secara praktis. Algoritma pendekatan dalam berbagai literatur telah sukses diterapkan pada berbagai masalah kombinatorial seperti perencanaan dan penjadwalan produksi pada industri manufaktur. Meskipun solusi optimum tidak diperoleh, tetapi solusi yang mendekati optimum bisa didapatkan dalam waktu yang relatif singkat dan dapat diterima secara praktis. Menurut Lawler (1976), analisis kombinatorial adalah studi matematika tentang pengaturan, pengelompokan, pemesanan, atau pemilihan objek diskrit, biasanya terbatas jumlahnya (finite in number). Pada awalnya, penelitian kombina5
Universitas Sumatera Utara
6 torial meneliti dengan pertanyaan-pertanyaan dari keberadaan atau pencacahan. Artinya, “apakah suatu jenis pengaturan ada?” Atau, “berapa banyak pengaturan yang ada?”. Penelitian kombinatorial pada saat ini telah mengalami kemajuan yang lebih signifikan. Pertanyaan yang diajukan tidak “Apakah pengaturan ada” atau “Berapa banyak pengaturan yang ada”, melainkan, “Bagaimana susunan yang baik”. Keberadaan jenis pengaturan tertentu biasanya tidak menjadi pertanyaan, dan jumlah pengaturan tersebut mungkin tidak relevan. Tujuannya adalah menemukan pola optimum, bagaimana menyelesaikan masalah yang besar dalam jumlah yang tidak terbatas menjadi kemungkinan yang efektif. Banyak masalah optimasi kombinatorial telah dihasilkan oleh penelitian dalam desain komputer, teori komputasi, dan oleh aplikasi komputer pada masalah numerik yang membutuhkan metode baru, pendekatan baru, dan wawasan matematika baru. Lee (2004) mengemukakan masalah optimisasi diskrit adalah sebuah masalah memaksimumkan sebuah nilai real fungsi tujuan c di himpunan terbatas (finite set) pada solusi layak S. Biasanya himpunan S muncul sebagai himpunan bagian dari 2E (himpunan dari semua himpunan bagian E), untuk beberapa himpunan terbatas E, masalah yang demikian merupakan masalah optimisasi kombinatorial. Solusi bisa saja didapat dengan menghitung semua kemungkinan, tentu saja dengan waktu yang cukup lama. Dengan menggunakan algoritma lebih praktis dibandingkan dengan menghitung semua solusi layak. Optimisasi diskrit memiliki aspek yang menghubungkannya dengan bidang lain dari matematika, seperti aljabar, geometri, logika, topologi, dan tentu saja bagian disiplin ilmu dari matematika diskrit seperti teori graf, dan teori matroid. Karena itu banyak penelitian dalam optimisasi diskrit dijadikan sebagai aplikasi. Sebuah algoritma secara teori lebih efisien untuk masalah dengan ukuran yang besar, jika jumlah langkah perhitungan diperlukan untuk menyelesaikan misalnya pada masalah yang dibatasi oleh polinomial dalam jumlah bit yang diperlukan untuk masalah pengodean (encoding). Pada masalah optimisasi kombinatorial, komputasi efektif untuk menyelesaikan masalah dalam RE (bilangan real |E|-ruang dimensi dengan koordinat diindeks oleh E). Dengan mempertimbangkan bagian konveks PS pada karakteristik vektor dalam S, bahwa himpunan bilangan konveks terkecil memuat karakteristik vektor tersebut. Selanjutnya, dibutuhkan fungsi ˜c : [0, 1]E 7→ R sehingga jika x(S) adalah karakteristik vektor pada himpunan
Universitas Sumatera Utara
7 layak S, lalu ˜c(x(S)) = c(S). Keberhasilan pendekatan semacam itu tergantung pada fungsi tujuan. Fungsi cekung (concave) relatif lebih mudah untuk memaksimumkan (deskripsi PS sebagai himpunan solusi dari pertidaksamaan linear), seperti dalam kasus sebuah maksimum lokal adalah maksimum global.
2.1 Kriteria Polinomial Terbatas (The Criterion of Polynomial Boundedness) Ketika algoritma diimplementasikan pada komersial, seharusnya hanya memerlukan pengeluaran waktu komputer dan penyimpanan data untuk setiap contoh dari masalah kombinatorial untuk diselesaikan. Hal ini membuktikan bahwa metode pemrograman linier telah terbukti efektif untuk menyelesaikan berbagai masalah optimisasi. Aturan kelayakan merupakan prinsip yang telah disepakati. Namun hal yang lebih objektif adalah harus diterapkannya standar yang tepat, salah satu standar yang berlaku umum di bidang optimisasi kombinatorial adalah polinomial terbatas (boundedness polynomial). Sebuah algoritma dianggap “baik” jika jumlah dasar langkah komputasi dibatasi oleh sebuah polinomial dalam ukuran masalah. Alasan pertama pentingnya batas polinomial adalah: fungsi polinomial berkembang lebih cepat dari pada fungsi eksponensial, dan fungsi eksponen berkembang lebih cepat dari pada fungsi faktorial. Batas polinomial digunakan untuk menyelesaikan masalah optimisasi dalam lingkup yang besar. Selain itu, terdapat algoritma yang eksponensial secara teoritis, namun berprilaku seperti algoritma polinomial untuk tujuan yang praktis. Sebagai contoh adalah algoritma simpleks yang telah diteliti secara empiris untuk menyelesaikan perhitungan aljabar dengan jumlah variabel dan kendala dari masalah pemrograman linier. Meskipun algoritma polinomial memiliki batas, kriteria polinomial terbatas telah terbukti secara signifikan lebih praktis. Dalam kasus masalah yang melibatkan spesifikasi berbagai parameter numerik, misalnya panjang busur, besaran parameter ini harus jelas dan harus diperhitungkan. 2.2 Metode Penyelesaian Ada beberapa metode untuk menyelesaikan sebuah masalah optimisasi. Beberapa teknik matematika yang dapat digunakan dalam algoritma ini: (1) pemrograman linear, (2) rekursi dan pencacahan, (3) heuristik, (4) statistik. Universitas Sumatera Utara
8 Program linier yang berhubungan dengan perbedaan (extremization) dari subjek fungsi tujuan linier untuk kendala ketimpangan. Dari aspek geometrik, kendala ketimpangan linier menggambarkan politipe cembung. Pemrograman perhitungan linear merupakan hasil dari satu simpul (vertex) politipe ini ke yang lain, dengan nilai fungsi tujuan yang menyertainya. Untuk memecahkan masalah optimasi kombinatorial dapat dilakukan dengan pemrograman linier untuk merumuskan sistem kendala ketimpangan linear yang akan menyebabkan simpul dari politipe cembung untuk sesuai dengan solusi layak masalah kombinatorial. Biasanya hal ini menghasilkan sejumlah kendala yang dapat terdaftar secara eksplisit. Masalah optimasi kombinatorial juga dapat diselesaikan dengan metode pemrograman linier, bahkan dalam kasus dimana tidak ada karakteristik yang baik kendala ketimpangan diperlukan. Pendekatan pencarian lokal juga merupakan suatu teknik yang digunakan dalam optimisasi kombinatorial. Pencarian lokal adalah suatu algoritma iteratif 0
yang bergerak dari satu solusi S ke S lain berdasarkan struktur ketetanggaan (neighborhood). Studi mengenai pencarian lokal telah menjadi pusat perhatian. Banyak penelitian yang membahas tentang permasalahan pencarian lokal untuk menemukan solusi optimum lokal. Didalam fungsi ketetanggaan klasik, ketetanggaan k-opt pada TSP (Lin,1965), ketetanggaan MAX CUT dan MAX 2SAT (Schaffer dan Yannakakis, 1991). Meskipun dalam masalah tersebut termasuk masalah ketetatanggan, berbentuk piramid perjalanan ketetanggaan, seperti pada TSP. Ausiello dan Protasi (1995) memperkenalkan klasifikasi GLO (untuk mengawetkan optimum lokal) pada masalah optimisasi yang menjadi nilai fungsi tujuan pada setiap optimum lokal di tanggung menjadi faktor konstan dari optimum lokal. Khana et al., (1998) melanjutkan ide ini menjadi masalah yang awet GLO, yang diikuti untuk dengan sebuah modifikasi dari fungsi tujuan yang digunakan untuk menghitung optimum lokal. Pada salah satu pembahasan, inti dari ketetanggaan terdiri atas semua solusi pasti (exact), selain itu diasumsikan bahwa jumlah berbeda fungsi tujuan dari solusi layak adalah batas polinomial. Karena itu, algoritma dasar pencarian lokal menghasilkan sebuah solusi optimum lokal pada waktu polinomial. Perbedaannya, tidak dapat dibuat sejumlah asumsi pada nilai fungsi tujuan atau mempertimbangkan ketetanggaan. Dalam tesis ini, akan diperlihatkan bahwa sebuah optimum ε-lokal dapat selalu dihitung dengan nilai polinomial dari sebutan Universitas Sumatera Utara
9 meningkat menjadi subroutine. Di sisi lain, saat sebuah optimum ε-lokal memiliki sifat yang dekat dengan optimum lokal, nilai fungsi tujuannya tidak menjamin bernilai dekat dengan optimum global. Namun, secara umum hal ini berlaku untuk juga pada optimum lokal. Misalnya, penelitian yang dilakukan oleh Papadamitriou dan Steiglitz (1977) menunjukkan bahwa optimum lokal tidak efisien pada pencarian ketetanggaan untuk TSP dapat berada dalam faktor konstan dari nilai optimal kecuali P = NP. Namun, setiap kali masalah optimasi kombinatorial memiliki lingkungan yang efisien dicari sehingga nilai setiap optimum lokal berada dalam faktor konstan α ≥ 1 yang berasal dari minimum global, kemudian dapat dihitung pada waktu polinomial sebuah ε-lokal dengan biaya lebih baik dari α + ε pada global optimum. Klauck (1996) mempelajari kompleksitas dalam menemukan solusi terbaik nilai fungsi tujuan adalah dengan pendekatan optimum lokal terburuk dengan menggunakan batas dari bentuk reduksi PLS. Kelengkapan dibawah reduksi ini memiliki implikasi bahwa pendekatan optimum lokal tidak dapat mencapai kondisi efisien kecuali P = PLS (polynomial-time local search). Sebagai contoh, program 0/1 dengan ketetanggaan k − flip dan TSP dengan ketetanggan k-opt bernilai konstan adalah lengkap dibawah reduksi ini. Sebuah fungsi ketetanggaan N Q dari masalah optimisasi kombinatorial tepat jika setiap solusi optimal lokal dengan N juga optimal lokal. Pada kasus ini, waktu polinomial penuh (fully polynomial-time) pola optimisasi ε− lokal kenyataannya adalah pola pendekatan waktu polinomial penuh. Sculz dan Weismantel (1995) menunjukkan bahwa jika masalah optimisasi kombinatorial mempunyai ketetanggaan yang pasti dapat dicari keefisienanya dan ketepatanya, yang benar-benar dapat menemukan solusi tepat optimal yang efisien. Kemudian melanjutkan pembahasan tentang masalah program linier bilangan bulat 0/1 (contohnya masalah optimisasi kombinatorial) pada bilangan bulat untuk sebuah optimum lokal dengan polynomial time kecuali lingkungan yang tepat, dan diperoleh P = PLS (Sculz dan Weismantel 1999, 2002). Hasil utama dalam penelitian Fischer (1995) adalah kemungkinan terbaik diperoleh jika dilakukan pemeriksaan pada kelas algoritma yang bergerak secara berulang-ulang (iterative) yang bergerak dari satu solusi layak (feasible) ke solusi layak di daerah tetangganya. Misalnya, diberikan sebuah solusi layak Q S(F , c) pada masalah optimisasi kombinatorial dan sejumlah k, pertanyaan Universitas Sumatera Utara
10 yang dimunculkan adalah apakah terdapat optimum lokal dengan ketetanggan k dengan S. Fischer menunjukkan bahwa pertanyaan ini adalah NP complete dengan MAX CUT dan MAX 2SAT dibawah flip ketetanggaan dan untuk TSP dibawah ketetanggaan 2-opt, dan lainnya. Orlin, et al., (2004) menunjukkan sambungan dari keluarga (Aε )ε>0 dengan algoritma untuk menemukan ε− optimal lokal dengan waktu polinomial dengan masukan ukuran dan log 1/ε implikasi adanya algoritma waktu polinomial untuk menghitung optimum lokal.
Universitas Sumatera Utara