• Tidak ada hasil yang ditemukan

BAB 2 BEBERAPA MODEL KELAS PROBLEMA OPTIMISASI

2.12 Algoritma yang Tersedia untuk Optimisasi Tak linier Diskrit 30

2.12.3 Pendekatan-Pendekatan Lain

Teknik linierisasi telah umum dikenal. Beberapa program integer dapat dibentuk menjadi problema 0-1 (Nemhauser and Wolsey (1988)). Jika fungsi tu-juan dan kendala polynomial, maka problema dapat dibentuk menjadi problema integer linier (Garfinkel and Nemhauser (1972)). Beberapa teknik menambah

peubah 0-1 yang baru dan kendala yang baru yang tentu akan menambah waktu komputasi. Balas and Mazzola (1984) dengan pendekatan linierisasi mengganti fungsi tak linier peubah 0-1 dengan pertidaksamaan linier. Teknik ini menggu-nakan linierisasi tanpa menambah peubah. Hansen (1979) dengan metode PITL 0-1 mengatakan bahwa hanya sebagian kecil algoritma yang benar-benar telah di-uji dan diimplementasikan; dengan algoritma network flow yang dapat digunakan pada kelas tertentu program kuadratik 0-1; dan formula Boolean PITL 0-1 dapat digunakan sebagai teknik pembuktian pada algoritma ini.

Tesis Myers (1984) membandingkan strategi branch-and-bound pada relak-sasi Lagrange dengan strategi optimirelak-sasi subgradient untuk kendala linier integer campuran PITL. Myers menyarankan strategi pencabangan.

Dua metode terkenal untuk problema PITL adalah metode dekomposisi Ben-ders dan program dinamik Bellman. Gupta and Ravindran (1983) dan Cooper (1981) menyebutkan bahwa beberapa pendekatan telah dipaparkan pada litera-ture dan review sebelum tahun 1981.

HEURISTIK PENCARIAN LANGSUNG

Bab ini mengupas secara detail algoritma pencarian langsung PITL dengan analisa dan pengembangan metode. Diharapkan modifikasi pendekatan ini akan lebih fleksibel dan lebih cepat mendapatkan penyelesaian layak integer yang dapat digunakan untuk memulai ataupun tidak, proses branch-and-bound.

3.1 Model Problema

Bentuk umum problema PITL yang diselesaikan dengan metode yang dita-warkan dalam tesis ini dapat dilihat pada model di bawah. Asumsikan bahwa ada batas penyelesaian layak pada problema ini. Formulasi Murtagh (1981), hanya berbeda sedikit dengan Murtagh (1998).

minimum

x∈Rn f0(xN) + cTxL

dengan kendala f (xN) + A1xL= b1 (m1 baris ) A2xN + A3xL= b2 (m2 baris ) l ≤ x ≤ u (m = m1+ m2) xj integer , j ∈ JI

(P)

Beberapa bagian dari peubah x asumsikan tak linier pada fungsi tujuan dan atau kendala, dan beberapa bagian dari peubah harus bernilai integer. Anggap peubah tak linier jika terdapat sifat tak linier pada rumusan problema baik pada fungsi tujuan maupun kendala.

34

Model yang sama, tanpa syarat integer merupakan awal dari kode MINOS skala besar program tak linier (Murtagh and Saunders (1982, 1987)). Pada iterasi yang besar, dilakukan linierisasi dengan memakai suku linier dari deret Taylor, dimana order pertama deret Taylor mengganti fungsi kendala tak linier menjadi linier, dan order yang lebih tinggi diadjoined pada fungsi tujuan dengan estimasi pengali Lagrange.

Himpunan kendala linier (tidak termasuk batasnya) dapat ditulis:

Ax =

B adalah m × m dan non-singular, xN adalah peubah non-basis pada batas-nya. xB dan xS adalah peubah basis dan superbasis. Agar tetap layak, maka setiap langkah berikutnya harus memenuhi:

B∆xB+ S∆xS = 0 atau untuk basis yang non-singular dapat ditulis:

∆xB = −B−1S∆xS (3.1)

Untuk meningkatkan fungsi tujuan harus ditentukan non basis mana yang naik atau turun menuju batas lainnya, dimana superbasis dapat bebas dirubah.

Himpunan layak bisa dirubah karena superbasis harus ada diantara batas-batas tetapi tidak menjadi batas.

Karena persamaan (3.1), maka superbasis menggerakkan langkah ∆xSyang menentukan seluruh langkah δx. Kunci sukses algoritma MINOS (Murtagh and

Saunders (1978)) adalah pengasumsian ukuran xS tetap kecil. Hal ini dapat dijamin berdasarkan penghitungan Murtagh (1989), jika peubah tak liniernya kecil, namun pada prakteknya hal itu terjadi jika semua peubah tak linier.

Asumsi yang sama akan dibuat pada model program integer tak linier. Di-asumsikan bahwa bagian dari peubah integer adalah kecil. Pendekatan Murtagh menghasilkan penyelesaian (suboptimal) layak integer melalui prosedur penca-rian langsung dengan menggunakan konsep peubah superbasis. Aplikasinya pada artikel CTAC89 (Murtagh (1989) termasuk proses dan teknik pembuatan opti-mal power flow (1200 kendala, 1500 peubah-semua tak linier), yang merupakan pengembangan ide Mawengkang and Murtagh (1986), pada aplikasi problema penugasan kuadratik.

Keempat himpunan yang pertama pada tabel 3.1 membagi seluruh him-punan indeks {1, 2, . . . , n}, yakni JB ∪ JS ∪ JL∪ JU = {1, 2, . . . , n} dan JαJβ = ∅, α 6= β. Himpunan JI sebagai peubah integer diasumsikan kecil, dan m + nS + nL+ nU = n.

Pendekatan mengasumsikan bahwa problema kontinu diselesaikan, dan di-cari penyelesaian layak integer pada neighbourhood terdekat dari penyelesaian kontinu. Membiarkan peubah integer non basis pada batasnya masing-masing (dan juga nilai integer) dan mengarahkan pencarian pada ruang terbatas basis, superbasis, dan peubah kontinu nonbasis, j ∈ JI.

Metode Murtagh dapat diringkas sebagai berikut:

1. Mencari penyelesaian relaksasi kontinu dengan menggunakan kode MINOS.

2. CYCLE1: keluarkan peubah integer dari basis dengan memindahkan nonba-sis yang tepat dari batasnya. Tujuannya agar peubah banonba-sis tak layak integer menjadi layak integer, kemudian dipivotkan ke dalam superbasis; nonbasis selanjutnya menjadi basis. Diperlukan beberapa notasi dengan syarat in-deks pada tabel 3.1.

Tabel 3.1 : Himpunan indeks untuk pembagian simplek yang diperluas

Nama Arti Kardinalitas

JB Himpunan peubah basis |JB| = m

JS Himpunan peubah supebasis |JS| = nS

JL Himpunan peubah nonbasis pada batas bawah |JL| = nL

JU Himpunan peubah nonbasis pada batas atas |JU| = nU

JI Himpunan peubah integer |JI| = nI

3. CYCLE2, pass1: sesuaikan superbasis tak layak integer menjadi layak inte-ger.

4. CYCLE2, pass2: sesuaikan superbasis layak integer. Tujuan dari tahap ini untuk memeriksa optimal lokal dengan mengarahkan pencarian pada lokasi neighbourhood yang luas-Scarf (1986).

CYCLE1, CYCLE2 Pass1, CYCLE2 Pass2, dan algoritma Murtagh dapat dilihat pada contoh berikut.

Metode ini menggunakan prosedur branch-and-bound pada pencabangan subproblema yang berakhir jika salah satu dari ketiga kriteria ini dipenuhi:

1. Subproblema tidak memiliki penyelesaian layak

2. Penyelesaian dari subproblema tidak lebih baik dari penyelesaian layak in-teger sebelumnya.

3. Penyelesaian sudah layak integer (berdasarkan tingkat toleransi)

Karena prosedur Murtagh memperoleh penyelesaian optimal lokal pada neig-bourhood penyelesaian kontinu, maka ada baiknya untuk mencoba dulu prosedur branch-and-bound untuk melihat semua penyelesaian integer yang mungkin. Pe-nyelesaian yang diperoleh dengan prosedur diatas memberikan batas yang jelas dan membatasi proses pencabangan dengan cepat pada kriteria 2.

3.2 CYCLE1-Mengeluarkan Peubah Integer dari Basis

Pada problema CYCLE1 diberikan beberapa asumsi agar dapat berjalan sesuai dengan yang diharapkan. Anggap penyelesaian kontinu peubah integer adalah basis pada nilai non-integer

xi0 = xi0+ fi0, 0 < fi0 < 1

Selanjutnya, anggap pilihan non-basis peubah non-integer xi0dilepaskan dari batas bawahnya.

Peubah integer yang diasumsikan kecil, menjadi kunci penjamin operasi penggantian dapat dilakukan; untungnya beberapa problema praktis mengandung karakter ini. Dan tentu juga asumsi terdapat peubah slack.

Penelitian Mawengkang and Murtagh (1986) memberikan pilihan yang lebih

baik untuk i0 sebagai berikut:

min(fi0, 1 − fi0) ≤ min(fi0, 1 − fi) i ∈ J I

Pilihan i0 ini agar perubahan yang terjadi pada fungsi tujuan seminimal mungkin, dan karena basis integer layak yang terkecil. Pendekatan ini dapat dilakukan hanya apabila komponen dari penurunan vektor gradient, sebanding secara keseluruhan. Pada langkah CYCLE1, pemilihan nonbasis (kontinu) j, Murtagh juga menawarkan kriteria yang lebih baik untuk nilai j:

minj ∈ (JL∪ JU) − JIi0j 6= 0

dimana λj merupakan komponen ke-j dari pemisahan nonbasis dari vektor reduce gradient atau vektor reduce cost λN, αi0j = (B−1aj)i0 dan aj adalah kolom A pada nonbasis xj.

Kenyataannya, tidak mudah memperoleh penyelesaian basis integer dengan sifat layak integer terkecil. Pada saat nonbasis j berpindah sebaiknya tidak memilih nonbasis yang bisa memaksa basis terpilih bergerak ke arah yang salah.

Artinya heuristik sebaiknya diperbaiki untuk memilih j. Kenyataannya

λ = gN − NTπ dan

π = (BT)−1gB

-Murtagh and Saunders (1978).

Kriteria ini dapat mengukur keburukan nilai fungsi tujuan per unit peruba-han pada peubah basis xi0.

Syarat αi0j dihitung dengan lebih dulu membentuk vektor zT = ei0B−1(baris i0 dari B−1), kemudian menghitung hasil kali dalam αi0j = zTaj. Jika j telah

dipilih maka vektor αJ = B−1aj dihitung untuk uji ratio pada persamaan (3.2)-(3.4).

Sebagai nonbasis terpilih xj bergerak menuju batas lain, empat kejadian yang mungkin muncul adalah:

Kejadian 1. Peubah basis xi1, i16= i0 mengenai batas bawah pertamanya Kejadian 2. Peubah basis xi2, i26= i0 mengenai batas atas pertamanya Kejadian 3. Peubah basis integer xi3, i3∈ JB∩ JI menjadi layak integer.

Kejadian 4. Non basis xj mengenai batas pertama yang lainnya.

Catatan

1. Kemungkinan i1 = i0 bukan merupakan kejadian 1 dan i2= i0 bukan meru-pakan kejadian 2., Jika xi0 mengenai suatu batas maka hal itu merupakan kejadian 3, dimana kemungkinan i3 = i0 yang akan muncul. Hasil yang diharapkan tentunya kejadian 3.

2. Untuk layak integer perlu peubah integer pada batas.

Keempat kejadian yang mungkin tersebut saling berhubungan, nilainya di-hitung:

dimana

αij = (B−1aj)i dan aj adalah kolom A pada nonbasis xj. Sehingga diperoleh

θ = min(θ − 1, θ2, θ3, θ4)

Jika θ = θ1 maka peubah basis xi1 menjadi nonbasis pada li1 dan xj menggan-tikannya di B. xi0 tetap sebagai basis dengan nilai yang baru (non-integer). Jika θ = θ2maka xi2 menjadi nonbasis pada ui2 dan xjmenggantikannya di B seperti diatas. Jika θ = θ3 maka xi3 dibuat sebagai superbasis pada nilai integer dan xj

menggantikannya di B. Jika θ = θ4 maka xj tetap sebagai nonbasis, tetapi pada batas atasnya, dan tetap sebagai basis dengan nilai yang baru (non-integer).

Ratio yang sama dapat dihitung untuk kasus xj yang dilepaskan dari batas atasnya. Biasanya dapat diperoleh semua kemungkinannya (lepas dari batas bawah dan atas), dan dengan menemukan indikator arah untuk CYCLE1, 1, dup-likasi kode dapat dihindari sebagai berikut. Jika xj terlepas dari batas bawahnya (j ∈ JL) maka σ1 = 1. Jika xj terlepas dari batas atasnya (j ∈ JU) maka σ1 = −1. Maka σ1 = signum (∆xj), dimana ∆xj merupakan langkah pada nonbasis xj, j ∈ (JL ∪ JU) − J1. Kedua kasus tersebut dirangkum pada tabel berikut ini:

Tabel 3.2 : Memindahkan peubah integer dari basis-memilih nonbasis non-integer xj, j ∈ (JL∪ JU) − JI) dilepaskan dari batasnya.

Catatan untuk CYCLE1

1. αij = (B−1aj)i dan aj adalah kolom A pada nonbasis (xN)j. 2. Langkah nonbasis maksimum θ = min(θ1, θ2, θ3, θ4).

Pada CYCLE1, θs bisa tidak ada, karena indeks seperti αij > 0 mungkin saja kosong. Basis setidaknya mempunyai satu peubah integer karena θ4

dan θ3 selalu ada. Artinya basis akan selalu terdiri dari setidaknya satu peubah integer pada CYCLE1 karena syarat utama untuk mengakhiri CY-CLE1 adalah tidak ada peubah integer yang tersisa pada basis. Jaminan kedua adalah limit iterasi.

3. Pada saat pengkodean algoritma CYCLE1, jika dua atau lebih kejadian muncul secara simultan, usahakan untuk memilih kejadian 3. Tujuan utama CYCLE1 adalah untuk memaksa sebanyak mungkin peubah integer tak layak menjadi non-basis atau superbasis.Tentunya kejadian 3 adalah ke-jadian yang paling diharapkan pada tiap iterasi CYCLE1.

4. Jika kejadian 3 tidak muncul untuk pilihan i0dan j, maka dapat dieksplore penggunaan multiple pricing untuk memilih alternatif js agar kejadian 3 muncul. Inilah yang menjadi elaborasi metode.

3.3 CYCLE2 Pass1-Sesuaikan Superbasis Tak Layak Integer Langkah 1

Pilih superbasis tak layak integer yang terkecil, yaitu j0 ∈ JS sebagai nilai j, dimana akan muncul:

ζ0 = min

j∈JSmin(fj, 1 − fj)

JS adalah himpunan indeks untuk superbasis. Jika 1 − fj0 ≤ fj maka dilakukan langkah maju, dan langkah mundur jika selain itu. Dikerjakan dengan cara berikut.

Tentukan j1 sebagai indeks dari peubah superbasis dengan komponen pembagian terkecil yakni:

fj1 = min

j∈JS fj

Sama halnya dengan j2 sebagai indeks dari peubah superbasis dengan komponen pembagian terbesar, yakni:

fj2 = max

j∈JS fj

Tentunya nilai j1 dan j2 mungkin saja tidak unik namun tetap dicoba untuk menyelesaikan ulang perubahan-perubahan yang tidak terkendali. Mungkin ke-mudian hari metode ini akan diperbaiki-seperti misalnya untuk mengatasi sifat ambiguity dengan memilih satu dari peubah superbasis yang berhubungan yaitu reduce cost terkecil. Minimum integer-infeasibility dinyatakan dengan

ζ0 = min(fj1, 1 − fj1)

Dan muncul pada j = j1 jika fj1 < 1 − fj1 selebihnya akan muncul pada j = j2

jika fj1 > 1 − fj1.

Usaha mencapai integer layak pada xj0 bisa jadi mustahil karena batas seder-hana pada basis bisa dilanggar. Hal ini diringkas pada persamaan (3.5) dan (3.6).

Langkah mundur terbatas, ∆xj0 < 0 diberikan oleh:

∆xj0 = − min

Langkah maju terbatas ∆xj0 > 0 diberikan oleh:

Demi untuk menghindari duplikasi kode, penggunaan persamaan (3.5) dan (3.6) akan dipaparkan lebih jelas berikut ini.

Tentukan arah indikator untuk CYCLE2, σ2:

σ2 =

σ2 hanya merupakan symbol dari langkah yang diharapkan yaitu ∆xj0, se-mentara batasan dari langkah ditentukan oleh batas sederhana yang diberikan oleh:

Perlu diperhatikan apakah dapat dibuat langkah pembagian (maju atau mundur) untuk membuat integral xj0. Semua basis harus dipastikan tetap layak. Pada bagian ini, basis jangan ditukar, artinya tidak ada pivot, karena superbasis integer dipisah bagian yang menjadi integer tak layak. Nilai baru basis tentunya harus diikuti, karena tak bebas linier pada superbasis dan nonbasis.

Jika memungkinkan ambil langkah penuh maju atau mundur untuk super-basis j0 yaitu |∆x| = ζ pada integer terdekat. Namun jika tidak, ambil langkah sejauh mungkin tanpa melanggar batas sederhana basis.

Selanjutnya ditentukan ilsebagai nilai i yang minimum pada (3.7); iusebagai nilai i yang minimum pada (3.8); dengan syarat masing-masing himpunan indeks tidak kosong (pada beberapa kasus, iu, ilmungkin tidak ada). Langkah 2 CYCLE2 dapat ditulis sebagai berikut:

∆xj0 = σ2min(ζ0, ζ1, ζu)

Apakah mungkin langkah ∆xj0 menjadi nol? Jawabannya tidak, karena hal ini berarti basis telah berada pada batas, yakni himpunan batasan-batasan telah memburuk. Keadaan ini dapat diabaikan dengan asumsi non-degeneracy.

Untuk memperoleh σ2 harus sangat hati-hati. Sebagai contoh, jika integer tak layak = 0.5 langkah mana yang akan diambil? Pada contoh 3 bagian 3.5.3 jika dipilih arah yang salah (σ2 = +1) maka integer tak layak akan = 0.

3.4 CYCLE 2 Pass 2-Sesuaikan Superbasis Layak Integer

Superbasis dapat dirubah untuk menjaga agar peubah basis layak. Penca-rian pada neighbouhood membuktikan optimal (lokal) dari penyelesaian integer layak yang diperoleh, Scarf (1986).

Langkah 1

Berdasarkan satu-dimensi steepest descent.

Pilih j0∈ JI. Kriteria pemilihan j0 akan memaksimumkan reduced cost λj. Langkah 2

Hitung αj0. Tentukan arah perpindahan-periksa tanda λj0.

Langkah 3

Periksa apakah memungkinkan untuk bergerak ke satu unit.

ui− xi

ij0

≥ 1∀i|i ∈ JBij0 > 0 xi− li

−αij0

≥ 1∀i|i ∈ JBij0 < 0

Langkah 4

Bergerak dengan 1 unit; pastikan ada kemajuan pada fungsi tujuan, yakni pen-carian pada neighbourhood yang ditemukan oleh Scarf (1986).

3.5 Analisa dan Contoh Penyangkal untuk Algoritma Murtagh Data Problema

Syarat untuk memulai CYCLE1:

1. Problema terdiri dari fungsi tujuan, koefisien untuk batasan linier, batas bawah dan batas atas, dan peubah-peubah integer.

2. Perbedaan antara nonbasis pada batas bawah dengan nonbasis pada batas atas, dijelaskan oleh indeks vector hb, dan status vektor hs Murtagh sebagai berikut:

Tentukan hbj sebagai indeks natural peubah ke-j, dimana 1 < j < m + nS. Perhatikan peubah natural ke-j. Selanjutnya diperoleh status indicator

hsj berikut:

Range indeks untuk peubah basis adalah 1 j m, dan untuk peubah su-perbasis adalah m + 1 j m + nS.

Pembagiannya dapat diilustrasikan sebagai berikut:

B S NL NU

1 ≤ j ≤ m m + 1 ≤ j ≤ m + ns

Catatan: karena nonbasis tidak langsung terindeks, berada pada suatu batas, maka nilainya dapat diketahui secara mutlak.

3. Nilai sekarang dari peubah superbasis

4. Beberapa toleransi Sekarang CYCLE1 mempunyai cukup syarat untuk diproses.

Program kuadratik batasan linier integer campuran pada (3.9)-(3.13).

Bentuk Umum Contoh Penyangkal

Parameter γi, τi, ω)1, ω2, b1, b2 dan batas sederhana l, u cukup untuk mengilus-trasikan problema dengan CYCLE1 algoritma Murtagh (1989). Diberikan slacks x4, x5pada bentuk umum , dan γi = 1.0 dan τ1 = 1.2, τ2= 2.5, τ3 = 0.0, diperoleh:

Bentuk Umum Contoh Penyangkal dengan Slacks

minimum f =

Relaksasi dan Optima Layak Integer

Untuk fungsi tujuan di atas, kontinu tanpa batasan optimum adalah x = τ = (1.2, 2.5, 0, 0, 0)T.

Titik x = (1.2, 2, 0, 0, 0.5)T memenuhi syarat batasan umum (linier), batas seder-hana, dan juga integer layak. Pada fungsi kuadratik sederseder-hana, tentu juga sebagai optimum lokal.

Jika i ∈ JB maka dapat ditulis:

Untuk menguji metode Murtagh (1989), diperlihatkan sejumlah contoh sederhana berdasarkan kelas problema sebelumnya. Untuk dua contoh pertama, andaikan bahwa optimum kontinu untuk problema ini memiliki basis x1, x2, nonbasis x3, dan superbasis x4, x5. Persamaan pada titik ini:

x1 = b1− ω1x3− x4

x2 = b2− ω2x3− x5

3.5.1 Contoh 1

Mungkin saja interval [l3, u3] sangat kecil hingga x3 melanggar batas atas sebelum kejadian 1, 2 atau 3 dari CYCLE1 muncul. Hal ini dimungkinkan dengan membuat u3 − l3 sekecil mungkin. Karena x3 merupakan satu-satunya nonbasis maka CYCLE1 tidak akan berakhir (x3 akan berkisar diantara batasnya). Diilus-trasikan pada contoh 1.

0.0x1 + 1.0x2− 0.1x3+ 0.0x4+ 1.0x5 = 2.5 (0, 0, 0, 0, 0)T ≤ x ≤ ((5, 5, 1, 100, 100))T

x2 integer yakni JI = {2}

Penyelesaian kontinu vektor dan partisi:

x = (1.2, 2.5, 0.0, 0.0, 0.0)T JB = {1, 2}

JS = {4, 5}

JL= {3}

JU = ∅

Hasil untuk contoh 1

Dengan persamaan: x1 = 1.2 + 1.0x3− 1.0x4

x2 = 2.50.1x3− 1.0x5 Nilai x3 meningkat dari 0.0 ke batas atas 1.0, dan semua basis layak integer kecuali peubah x2 yang tidak layak integer.

Kejadian 4 muncul yakni x3 → u3. Sebagai satu-satunya nonbasis, iterasi selanjutnya CYCLE1 akan mengusahakan x3 kembali pada batas bawah. Jelas bahwa deretan ini akan berulang terus menerus sampai tak hingga.

3.5.2 Contoh 2

Kesulitan lain yang mungkin terjadi adalah peubah basis bisa berputar di dalam dan di luar basis. Untuk melihat hal ini, anggap x1 melanggar batas atas x3 yang meningkat dari l3. Maka harus dipilih ω1 < 0. Pilih ω2 yang cukup kecil

sehingga x2 bisa menjadi integer layak ataupun melampaui batas.

Dengan memberi nilai pada parameter dapat mengilustrasikan hal tersebut, seperti pada contoh 2, yang mirip dengan contoh 1, kecuali batas atas pada x3

yang diperluas:

Definisi contoh 2 minimum

f = (x1− 1.2)2+ (x2− 2.5)2+ x23

dengan kendala

1.0x1 + 0.0x2− 1.0x3+ 1.0x4+ 0.0x5 = 1.2 0.0x1 + 1.0x2− 0.1x3+ 0.0x4+ 1.0x5 = 2.5

(0, 0, 0, 0, 0)T ≤ x ≤ ((5, 5, 5, 100, 100))T x2 integer yakni JI = {2}

Penyelesaian kontinu vektor dan pembagian:

x = (1.2, 2.5, 0.0, 0.0, 0.0)T JB = {1, 2}

JS = {4, 5}

JL= {3}

JU = ∅

Hasil untuk contoh 2

Dengan persamaan sebagai berikut:

x1 = 1.2 + 1.0x3− 1.0x4

x2 = 2.5 − 0.1x3− 1.0x5

x3 nonbasis pada l3 = 0. Nilai x3 meningkat. Sementara x2 menjadi integer layak pada x2 = 2 jika x3 mencapai 5, tentunya x1 melanggar batas atas sebelumnya yaitu u1 = 5 pada x3 = 3.8.

Maka

x1 → nonbasis pada u1 = 5 x3 → basis (pada 3.8)

Operasi pivot memberikan persamaan berikut:

x3 = −1.2 + 1.0x1− c4

x2 = 2.6 − 0.1x1− 0.1x4− x5

Karena x1= 5, maka x2 = 2.12 dan x3 = 3.8

Selanjutnya lepaskan x1 dari batas atas 5, karena hanya itu satu-satunya nonbasis (non integer). Tentunya pada proses ini terjadi cycling karena x1 menu-run dari 5, x3 melanggar l3 = 0 saat x1 = 1.2 tetapi x2 tidak menjadi integer layak. Tidak ada pilihan lain karena x1 adalah satunya-satunya nonbasis.

3.5.3 Contoh 3

Contoh 3 mempunyai model yang sama dengan contoh 1 dan 2 kecuali par-tisi awal yang berbeda.

Definisi contoh 3 minimum

f = (x1− 1.2)2+ (x2− 2.5)2+ x23 dengan kendala 1.0x1+ 0.0x2− 1.0x3+ 1.0x4+ 0.0x5 = 1.2

0.0x1+ 1.0x2+ 0.1x3+ 0.0x4+ 1.0x5 = 2.5 (0, 0, 0, 0, 0)T ≤ x ≤ (5, 5, 1, 100, 100)T x2 integer yakni JI = {2}

Penyelesaian kontinu vektor dan pembagian:

x = (1.2, 2.5, 0.0, 0.0, 0.0)T JB = {1, 2}

JS = {3}

JL= {4, 5}

JU = ∅

Hasil untuk contoh 3

Dengan persamaan sebagai berikut: x1= 1.2 + 1.0x3− 1.0x4

x2 = 2.5 − 0.1x3− 1.0x5

x4 dan x5 nonbasis pada 0. Karena x2 adalah atu-satunya peubah integer basis

maka i0= 2, dimana i = 2 merupakan calon tunggal untuk i0. Sama halnya dengan heuristik untuk menentukan j, j = 5 adalah calon tunggal untuk j (j = 4 tidak memenuhi syarat karena α24 = 0).

Agar x5 berada di NL, mudah bagi CYCLE1 Murtagh untuk memindahkan peubah integer x2dari basis. Berlawanan dengan contoh 1, pengakhiran CYCLE1 Murtagh tergantung pada pembagian awal.

3.5.4 Ringkasan Hasil Contoh CYCLE1 Dapat dilihat pada tabel 3.3.

Tabel 3.3 : Penyelesaian Problema dengan Pencarian Langsung

KESIMPULAN

Untuk pencarian layak yang dikembangkan dalam tesis ini berdasarkan pe-ningkatan peubah basis dari batasannya sehingga diperolehnya penyelesaian in-teger terhadap peubah basis. Dalam kelanjutannya ditinjau nilai reduced cost untuk melakukan pencarian agar dapat memperbaiki nilai fungsi objektif. Kedua proses utama ini dinyatakan dalam CYCLE1 dan CYCLE2 berturut-turut.

CYCLE1 merupakan usaha untuk memindahkan semua peubah integer dari basis. Iterasi dapat berakhir jika tidak ada lagi peubah yang tersisa pada basis.

Kejadian 3 adalah kejadian yang diharapkan muncul, yakni variabel basis integer menjadi layak integer. Namun apabila semua nonbasis telah penjadi peubah in-teger tetapi CYCLE1 tetap tidak berakhir, maka dengan teknik merubah peubah nonbasis menjadi superbasis, yang tetap berada pada batasnya, iterasi CYCLE1 dapat berakhir. Dengan kata lain, untuk j peubah yang dipilih bukan nonbasis melainkan superbasis tak layak integer.

Pada CYCLE2 yang dilakukan adalah menyesuaikan superbasis tak layak integer. Superbasis yang dipilih adalah yang terkecil. Namun dari pada hanya memperhatikan superbasis minimum ada baiknya untuk mencoba langkah penuh pada integer layak. Dengan catatan, batas sederhana pada basis tidak boleh dilanggar sebab jika dilanggar maka mustahil untuk mencapai integer layak pada xj.

59

Balas, E. and Mazzola, J.B. Nonlinier 0-1 Programming: I. Linearization Tech-niques II, Dominance Relations and Algorithm, Math. Progr. 30:1, 1984.

Brent, R.P. Algorithms for minimization without derivatives, Prentice-Hall, 1973.

Burkhard, R.E. and Rendl, F. A thermodynamically motivated simulation proce-dure for combinatorial optimization problems. European journal of Opera-tions Research 17:169-174, 1984.

Cooper, M.W. A Survey of Methods for Pure Nonlinier Integer Programming.

Management Science 27:353-361, 1981.

Dennis, J. and Torczon, V. Direct search methods on parallel machines. Rice Uni-versity, Dept of Mathematical Sciences. Technical Report TR90-19, 1990.

Duran, M.A. and Grosmann, I.E. An Outer-Approximation Algorithm for a Class of Mixed-Integer Nonlinier Programs. Mathematical Programming 36:307-339, 1986.

Fletcher, R. Practical methods of optimization. Wiley, 1987.

Fletcher, R. and Reeves, C.M. Function minimization by conjugate gradients. Com-puter Journal, 7:149-154, 1964.

Fiacco, A. and McCormick, G. Nonlinier programming: sequential unconstrained minimization techniques. Wiley, 1968.

Garfinkel, R.S. and Nemhauser, G.L. Integer programming. Wiley, 1972.

Gill, P.E., Murray, W. and Wright, M.H. Practical Optimization. Academic Press.

ISBN 0-12-283952-8., 1981.

Gill, P.E., Murray, W., Saunders, M.A. and Wright, M.H. GAMS/MINOS User Manual, Scientific Press, 1988.

Goux, Jean-Piere, and Leyffer. S. Solving Large MINLPs on Computational Grids.

Num. Analysis report NA/200, Department of Math. University of Dundee, 2001.

Gupta, O.K. and Ravindran, A. Nonlinier integer programming algorithms:A Sur-vey. OPSEARCH 20:189-206, 1983.

Hansen, P. Methods of 01 nonlinear programming. Annals of Discrete Mathematics 5:53-70, 1979.

Harjunkoski, I., Westerlund, T., Prn, R. and Skrifvars, H. Different transformations for solving non-convex trim-loss problems by MINLP. European Journal of Operational Research, 105:594-603,1998.

60

Hestenes, M.R. and Stiefel, E. Methods of conjugate gradients for solving linier systems. J. Res. N.B.S 49:409-436, 1952.

Horner, P. Something to crowe about. OR/MS today, 38-44, 2000.

Kuhn, H.W. and Tucker, A.W. Nonlinier programming.Proceedings of the sec-ond Berkeley symposium on mathematical statistics and probability, 481-492, Berkeley, University of California Press, 1951. Leyffer, S. Private communi-cation. 1991.

Mawengkang, H. and Murtagh, B.A. Solving Nonlinear Integer Programs with Large-Scale Optimization Software, Annals of Operations Research, 5.425-437, 1986.

Michalewicz, Z., Krawczyk, J.B., Kazemi M. and Janikow, C.Z. Genetic algorithms and optimal control problems. Proc. 29th IEEE Conference on Decision and Control, 1664-1666, 1990.

Mohd, I.B. Global optimization using interval arithmetic. PhD dissertation, Uni-versity of St Andrews, 1986.

Moore, R.E. Interval analysis, Prentice-Hall, 1966.

Morrow, M. Genetic algorithms. Australian Personal Computer 12:4, 85-93, 1991.

Murtagh, B.A. Advanced Linear Programming: Computation and Practice.

McGraw-Hill. ISBN 0-07-044095-6, 1981.

Murtagh, B.A. Nonlinear Integer Programming with Applications in Manufactur-ing and Process EngineerManufactur-ing. ProceedManufactur-ing of the Computational Techniques and Applications Conference.103-113, 1989.

Murtagh, B.A. and Saunders, M.A. A Projected Lagrangian Algorithm and its Im-plementation for Sparse Nonlinear Constraints. Mathematical Programming Study 16:84-117, 1982.

Murtagh, B.A. and Saunders, M.A. Large-Scale Linearly Constrained Optimiza-tion. Mathematical Programming 14:41-72, 1978

Murtagh, B.A. and Saunders, M.A. MINOS 5.1 Users Guide. Report SOL 83-2OR, Stanford University, December 1983 (revised January 1987), 1987.

Myers, D.C. The design of branch and bound, Lagrangian relaxation and subgra-dient strategies for mixed integer programming problems. PhD dissertation.

Myers, D.C. The design of branch and bound, Lagrangian relaxation and subgra-dient strategies for mixed integer programming problems. PhD dissertation.

Dokumen terkait