Post on 12-Jan-2016
description
PENGEMBANGAN METODE PENDEKATANPENCARIAN LAYAK UNTUK MENYELESAIKAN
PROBLEMA PROGRAM INTEGER
TAK LINIER
TESIS
Oleh
MARLINA SETIA SINAGA
067021005/MT
SEKOLAH PASCASARJANA
UNIVERSITAS SUMATERA UTARA
MEDAN
2008
2
PENGEMBANGAN METODE PENDEKATANPENCARIAN LAYAK UNTUK MENYELESAIKAN
PROBLEMA PROGRAM INTEGER
TAK LINIER
TESIS
Untuk Memperoleh Gelar Magister Sains dalam
Program Studi Magister Matematika pada Sekolah Pascasarjana
Universitas Sumatera Utara
Oleh
MARLINA SETIA SINAGA
067021005/MT
SEKOLAH PASCASARJANA
UNIVERSITAS SUMATERA UTARA
MEDAN
2008
Judul Tesis : PENGEMBANGAN METODE PENDEKATANPENCARIAN LAYAK UNTUKMENYELESAIKAN PROBLEMA PROGRAMINTEGER TAK LINIER
Nama Mahasiswa : Marlina Setia SinagaNomor Pokok : 067021005Program Studi : Matematika
Menyetujui,
Komisi Pembimbing
(Prof. Dr. Herman Mawengkang) (Dr. Saib Suwilo, M.Sc)Ketua Anggota
Ketua Program Studi, Direktur,
(Prof. Dr. Herman Mawengkang) (Prof. Dr. Ir. T.Chairun Nisa. B,M.Sc)
Tanggal lulus: 15 Juli 2008
Telah diuji pada
Tanggal 15 Juli 2008
PANITIA PENGUJI TESIS
Ketua : Prof. Dr. Herman Mawengkang
Anggota : 1. Dr. Saib Suwilo, M.Sc
2. Drs. Opim Salim S., MIkom, PhD
3. Dra. Esther Nababan, M.Sc
ABSTRAK
Problema program tak linier pada tesis ini memisahkan antara peubah-peubahlinier yang diskrit dengan peubah-peubah tak linier yang kontinu. Strategi yangdikembangkan adalah pelepasan peubah nonbasis dari batasannya dikombinasidengan metode kendala aktif dan superbasis. Strategi ini digunakan untuk me-maksa peubah-peubah basis non-integer bergerak ke daerah integer. Proses peng-integeran ini dilakukan juga dengan studi kriteria pemilihan peubah nonbasis.Berbagai uji problema telah berhasil dengan menggunakan algoritma ini, hinggadapat dikatakan bahwa strategi peng-integer-an mampu untuk mentekel problemaprogram integer campuran.
Kata Kunci : Program Taklinier, Superbasis.
i
ABSTRACT
The special nonlinear mathematical programming problem which is addressed inthis thesis has a structure characterized by a subset of variables restricted to as-sume discrete values, which are linear and seperable from the continuous variables.The strategy of releasing nonbasic variables from their bounds, combined with the”active constraint” method and the notion of superbasics, has been developed forefficienty requirements, this strategy is used to force the appropriate non-integerbasic variables to move to their neighbourgood integer points. A study of crite-ria for choosing a nonbasic variable to work with in the integerizing strategy hasalso been made. Successful implementation of these algorithms was achieved onvarious test problems. The result show that the proposed integerizing strategy ispromosing in tackling certain classes of mixed integer programming problems.
Keywords : Nonlinear Program, Superbasics
ii
KATA PENGANTAR
Dengan rendah hati, penulis mengucapkan puji dan syukur kepada Tuhan
Yang Maha Pengasih atas limpah kasih karunia dan berkatNya sehingga penulis
dapat menyelesaikan tesis ini dengan judul ”Pengembangan Metode Pendekatan
Pencarian Layak Untuk Menyelesaikan Problema Program Integer Tak Linier”.
Tesis ini merupakan persyaratan tugas akhir pada Program Studi Matematika
SPs Universitas Sumatera Utara.
Pada kesempatan ini dengan tulus penulis mengucapkan terimakasih dan
penghargaan yang tinggi kepada:
Prof. dr. Chairuddin P. Lubis, DTM&H, Sp.A(K) selaku Rektor Univer-
sitas Sumatera Utara.
Prof. Dr. Ir. T. Chairun Nisa B., M.Sc selaku Direktur Sekolah Pas-
casarjana yang telah memberikan kesempatan kepada penulis untuk mengikuti
Program Studi Magister Matematika di Sekolah Pascasarjana Universitas Suma-
tera Utara Medan.
Prof. Dr. Herman Mawengkang selaku ketua Program Studi Magister
Matematika SPs Universitas Sumatera Utara, dan juga sebagai ketua komisi pem-
bimbing yang telah banyak membantu dalam penulisan tesis ini.
Dr. Saib Suwilo, M.Sc selaku sekretaris Program Magister Matematika SPs
Universitas Sumatera Utara, dan juga sebagai anggota komisi pembimbing yang
telah banyak membantu dalam penulisan tesis ini.
iii
Seluruh staf pengajar pada Program Studi Magister Matematika SPs Univer-
sitas Sumatera Utara, yang telah banyak memberikan ilmu selama masa perku-
liahan.
Seluruh rekan-rekan mahasiswa angkatan kelima tahun 2006/2007 Program
Studi Magister Matematika SPs Universitas Sumatera Utara atas kerjasama dan
kebersamaan selama masa perkuliahan.
Misiani, S.Si selaku staf Administrasi Program Studi Magister Matematika SPs
Universitas Sumatera Utara yang telah memberikan pelayanan yang baik; secara
khusus penulis menyampaikan rasa terimakasih kepada Bapa tersayang Asmin
B. Sinaga dan suami tercinta Parlindungan Manurung, SE atas dukungan
doa dan perhatian, serta seluruh keluarga atas semangat yang diberikan; akhirnya
dengan penuh rasa haru penulis menyelesaikan tesis ini dengan mengenang semua
jasa baik almarhum mama tersayang Tornauli br Situmorang.
Semoga tesis ini bermanfaat bagi pembaca dan pihak-pihak yang memer-
lukannya.
Medan, Juli 2008
Penulis,
Marlina Setia Sinaga
iv
RIWAYAT HIDUP
Marlina Setia Sinaga dilahirkan di Tarutung pada tanggal 27 Mei 1974 dan
merupakan anak ke 5 dari 6 bersaudara dari Ayah Asmin B. Sinaga dan Ibu
Tornauli br. Situmorang. Menamatkan Sekolah Dasar (SD) St. Antonius V
Medan pada tahun 1986, Sekolah Menengah Pertama (SMP) Tri Sakti Medan
pada tahun 1989 dan Sekolah Menengah Atas (SMA) Negeri 5 Medan jurusan
Fisika pada tahun 1992. Tahun 1992 memasuki Perguruan Tinggi Negeri Uni-
versitas Sumatera Utara Fakultas Matematika Ilmu Pengetahuan Alam (FMIPA)
jurusan Matematika dan memperoleh gelar sarjana pada tahun 1998. Pada tahun
2005 diangkat menjadi dosen Universitas Nusa Cendana (Undana) Kupang NTT.
Pada tahun 2006 menikah dengan Parlindungan Manurung, SE. Pada tahun 2006
mengikuti pendidikan Program Studi Magister Matematika di Sekolah Pascasar-
jana Universitas Sumatera Utara.
v
DAFTAR ISI
Halaman
ABSTRAK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i
ABSTRACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii
KATA PENGANTAR . . . . . . . . . . . . . . . . . . . . . . . . . iii
RIWAYAT HIDUP . . . . . . . . . . . . . . . . . . . . . . . . . . v
DAFTAR ISI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi
DAFTAR TABEL . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
DAFTAR GAMBAR . . . . . . . . . . . . . . . . . . . . . . . . . x
BAB 1 PENDAHULUAN . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Latar Belakang . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Perumusan Masalah . . . . . . . . . . . . . . . . . . . . 3
1.3 Tujuan Penelitian . . . . . . . . . . . . . . . . . . . . . 3
1.4 Kontribusi Penelitian . . . . . . . . . . . . . . . . . . . . 3
1.5 Metodologi Penelitian . . . . . . . . . . . . . . . . . . . 3
BAB 2 BEBERAPA MODEL KELAS PROBLEMA OPTIMISASI . . . 5
2.1 Optimum Lokal dan Global . . . . . . . . . . . . . . . . . 5
2.2 Kemulusan . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3 Kendala . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.4 Konveks . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.5 Optimisasi Diskrit . . . . . . . . . . . . . . . . . . . . . 8
2.6 Contoh-contoh Optimisasi . . . . . . . . . . . . . . . . . 8
2.6.1 Fungsi Kuadratik; Kendala dengan Batas Sederhana . 8
vi
2.6.2 Problema Integer Tak linier . . . . . . . . . . . . . 10
2.7 Optimisasi Global . . . . . . . . . . . . . . . . . . . . . 13
2.8 Branch and Bound untuk Problema Tak linier . . . . . . . . 14
2.9 Pendekatan pada Optimisasi Tanpa Kendala . . . . . . . . 16
2.10 Pendekatan pada Optimisasi dengan Kendala-Syarat Kuhn-Tucker . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.10.1 Kendala Persamaan Tak linier . . . . . . . . . . . . 20
2.10.2 Kendala Pertidaksamaan Tak Linier . . . . . . . . . 23
2.11 Algoritma yang Tersedia untuk Optimisasi Tak linier Kontinu 25
2.11.1 Metode 1-Dimensi . . . . . . . . . . . . . . . . . . 25
2.11.2 Model Skema Algoritma Descent (Tanpa Kendala) . . 25
2.12 Algoritma yang Tersedia untuk Optimisasi Tak linier Diskrit 30
2.12.1 Algoritma Pendekatan Luar Duran and Grossmann . . 30
2.12.2 Metode Mawengkang and Murtagh . . . . . . . . . . 32
2.12.3 Pendekatan-Pendekatan Lain . . . . . . . . . . . . 32
BAB 3 HEURISTIK PENCARIAN LANGSUNG . . . . . . . . . . . 34
3.1 Model Problema . . . . . . . . . . . . . . . . . . . . . . 34
3.2 CYCLE1-Mengeluarkan Peubah Integer dari Basis . . . . . 38
3.3 CYCLE2 Pass1-Sesuaikan Superbasis Tak Layak Integer . . . 44
3.4 CYCLE 2 Pass 2-Sesuaikan Superbasis Layak Integer . . . . 47
3.5 Analisa dan Contoh Penyangkal untuk Algoritma Murtagh . 48
3.5.1 Contoh 1 . . . . . . . . . . . . . . . . . . . . . . 51
3.5.2 Contoh 2 . . . . . . . . . . . . . . . . . . . . . . 52
3.5.3 Contoh 3 . . . . . . . . . . . . . . . . . . . . . . 56
vii
3.5.4 Ringkasan Hasil Contoh CYCLE1 . . . . . . . . . . 57
BAB 4 KESIMPULAN . . . . . . . . . . . . . . . . . . . . . . . . 59
DAFTAR PUSTAKA . . . . . . . . . . . . . . . . . . . . . . . . . 60
viii
DAFTAR TABEL
Nomor Judul Halaman
3.1 Himpunan indeks untuk pembagian simplek yang diperluas . . 37
3.2 Memindahkan peubah integer dari basis-memilih nonbasis non-integer xj�, j
∗ ∈ (JL ∪ JU) − JI) dilepaskan dari batasnya. . . . 43
3.3 Penyelesaian Problema dengan Pencarian Langsung . . . . . . 58
ix
DAFTAR GAMBAR
Nomor Judul Halaman
2.1 Fungsi Kuadratik dengan Kendala-Kasus 1 . . . . . . . . . . 9
2.2 Fungsi Kuadratik dengan Kendala-Kasus 2 . . . . . . . . . . 9
2.3 Langkah Bebas dan Langkah Gabungan . . . . . . . . . . . 11
2.4 Contoh Integer Kuadratik . . . . . . . . . . . . . . . . . . 12
2.5 Skema Descent . . . . . . . . . . . . . . . . . . . . . . . 26
x
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Problema Program Integer Tak Linier (PITL) banyak menarik perhatian
para peneliti karena berbagai aplikasinya pada dunia nyata. Aplikasi model PITL
pada industri nuklir dengan memaksimumkan efisiensi atau kinerja reaktor nuk-
lir setelah operasi pemuatan (Quist et al., 1997). Dalam industri kertas aplikasi
model PITL muncul sebagai problema cutting stock tak linier (Harjunkoski et al.,
1998). Sementara aplikasi dalam finansial seperti perencanaan strategis rancangan
telekomunikasi, dengan aspek cacah menyajikan jumlah serat optik yang akan
ditempatkan dalam pipa dan nonlinearitas muncul dari elastisitas yang berkenaan
dengan strategis harga masa datang (Horner, 2000), juga dikemukakan dalam
problema alokasi asset pada manajemen dana, dengan fungsi tujuan memini-
mumkan resiko. Aplikasi dalam bidang optimasi topologi (Sigmund, 2000) peubah
biner memodelkan ada atau tidaknya material dalam setiap elemen hingga.
PITL merupakan problema optimasi tak linier dengan bentuk umum:
min z = f(x, y)
kendala g(x, y) ≤ 0
x ∈ X, y ∈ Y
dimana X dan Y adalah himpunan bilangan cacah atau biner (0-1).
Metode Branch and Bound merupakan metode baku untuk menyelesaikan
problema program integer tak linier, akan tetapi secara komputasi metode ini
1
2
tidak efisien karena subproblema harus diselesaikan pada setiap pencabangan.
Model di atas tidak mengandaikan bahwa relaksasi kontinu dari problema meru-
pakan problema program konveks.
Pada aplikasi tertentu peubah-peubahnya dapat bernilai diskrit dan kon-
tinu, dan jika demikian maka problema tersebut merupakan Program Integer Tak
Linier Campuran (PITLC). Model problema yang dibahas pada tesis ini dibatasi
hanya untuk peubah-peubah diskrit yang terpisah dengan peubah-peubah kon-
tinu. Dapat dituliskan sebagai berikut:
minimumx∈Rn
f0(xN) + cTxL
dengan kendala f(xN ) + A1xL = b1 (m1 baris )
A2xN + A3x
L = b2 (m2 baris )
l ≤ x ≤ u (m = m1 + m2)
xj integer , j ∈ JI
(P)
Problema (P) sulit diselesaikan secara efisien dengan metode Branch and
Bound, apalagi untuk yang berskala besar. Pada bab 2 dijelaskan bahwa Ma-
wengkang and Murtagh (1986) telah menyelesaikan model problema (P) dengan
menggunakan kode MINOS (Modular In-core Nonlinear Optimization System).
MINOS dapat digunakan untuk menyelesaikan problema PITL khususnya untuk
fungsi tujuan tak linier dan kendala linier. Murtagh (1989) menyelesaikan prob-
lema (P) dengan memindahkan semua variabel integer dari basic, akan tetapi
karena tidak ada pengakhiran JB ∩ JI = ∅ maka iterasinya menjadi tidak ter-
batas.
3
Program campuran dengan model problema (P) merupakan model yang pa-
ling banyak muncul dalam problema kehidupan nyata. Oleh karena itu maka
model problema (P) perlu mendapat perhatian khusus dan layak untuk diteliti.
1.2 Perumusan Masalah
Problema Program Integer Tak Linier (PITL) termasuk problema non poly-
nomial yang sulit. PITL dengan model problema (P) banyak muncul dalam berba-
gai bidang aplikasi. Oleh karena itu maka PITL dengan model problema (P) layak
untuk mendapat perhatian.
1.3 Tujuan Penelitian
Tujuan dari penelitian ini adalah mengembangkan suatu metode untuk menye-
lesaikan problema (P).
1.4 Kontribusi Penelitian
Diperolehnya suatu metode untuk menyelesaikan problema (P) skala besar.
1.5 Metodologi Penelitian
Penelitian ini berdasarkan pada ide yang telah dilakukan oleh Murtagh
(1998). Pada awal bab 3 dijelaskan penyelesaian problema (P) dengan linierisasi
kendala tak linier menggunakan deret Taylor. Order pertama deret Taylor meng-
4
ganti fungsi kendala tak linier menjadi linier, dan order yang lebih tinggi diad-
joined pada fungsi tujuan dengan pengali Lagrange. Selanjutnya kendala linier
dibagi menjadi basic, superbasic dan nonbasic:
Ax =
[B S N
]
xB
xS
xN
= b
dengan pengasumsian ukuran xS tetap kecil jika peubah tak liniernya kecil, namun
pada prakteknya hal itu terjadi hanya jika semua peubahnya tak linier.
Problema PITL pada penelitian ini diselesaikan dengan asumsi bahwa ada
batas penyelesaian layak pada problema. Diharapkan dengan metode pencarian
layak akan lebih efisien karena dapat menetapkan apakah proses branch and bound
akan dimulai ataupun tidak. Prosedur pencarian layak dengan menggunakan kon-
sep pada peubah superbasis dapat menghasilkan suboptimal penyelesaian layak
integer.
BAB 2
BEBERAPA MODEL KELAS PROBLEMA OPTIMISASI
Problema optimisasi dapat dibagi dalam beberapa kelas. Berbagai algo-
ritma untuk menyelesaikannya telah dikembangkan. Pada penelitian ini kelas
yang diteliti adalah kelas yang paling sering muncul dalam aplikasi dunia nyata.
Selanjutnya, andaikan fungsi tujuan f memetakan n-dimensi ruang Euclidean Rn
ke R.
2.1 Optimum Lokal dan Global
Titik x ∈ Rn adalah minimum lokal tanpa kendala dimana setiap titik memi-
liki fungsi tujuan yang sama. Fungsi mulus dapat digambarkan secara geometri
dengan vektor gradient nol dan matrik Hessian positif semi-definit. Metode ke-
las Newton menggunakan turunan pertama dan kedua sehingga titik-titik dapat
ditentukan dengan mudah. Pada problema dengan kendala, titik gradient yang
tidak nol adalah minimum lokal. Mungkin saja terdapat beberapa minimum lokal
sehingga harus ditentukan minimum lokal yang terbaik ? dengan metode mini-
misasi global-Ratschek and Rokne (1988). Menentukan minimum global lebih
sukar daripada minimum lokal, terutama karena lebih sukar membuktikan mini-
mum global yang telah ditetapkan adalah memang benar minimum global yang
sesungguhnya.
5
6
2.2 Kemulusan
Fungsi Smooth (mulus) adalah fungsi kontinu dengan order turunan yang
cukup tinggi. Untuk optimisasi kontinu ditentukan turunan kontinu sampai pada
order kedua. Problema minimisasi dengan fungsi tujuan dan kendala demikian da-
pat menggunakan kalkulus differensial multivariabel. Banyak metode yang meng-
gunakan gradien dan kurva untuk membantu menentukan minimum lokal terma-
suk metode Newton atau quasi-Newton (Gill et al. (1981)). Pada fungsi tak
mulus, hanya nilai fungsi yang dipakai untuk proses pencarian dengan menggu-
nakan teknik pencarian langsung. Metode simpleks dari Nelder and Mead (1965)
merupakan pendekatan yang pertama dikenal, namun belakangan banyak dige-
mari para peneliti yang dikembangkan dengan metode pencarian langsung. Pen-
jelasan detailnya ditulis oleh Dennis and Torczon (1990), dan Torczon (1990).
Brent (1973) menulis semua topik minimisasi dengan metode pencarian langsung
tanpa penggunaan turunan.
2.3 Kendala
Optimisasi tanpa kendala pada fungsi f : Rn → R dengan n peubah, se-
cara komputasi merupakan suatu pencarian pada Rn untuk mengoptimalkan vek-
tor x∗-kendala sederhana yang membatasi ruang pencarian pada himpunan F ,
dimana F ⊆ Rn. Selanjutnya untuk optimisasi dengan baatsan dapat ditulis:
minimum f(x), x ∈ F
Untuk problema tanpa kendala, sebarang titik pada domain f di Rn dapat
merupakan titik solusi yakni sebagai minimum lokal. F adalah himpunan dari se-
7
mua titik-titik yang mungkin yang disebut sebagai himpunan layak. Titik x ∈ F
adalah titik layak atau vektor layak. Problema dengan kendala yang mengandung
batasan, dalam bentuk persamaan atau pertidaksamaan harus puas dengan so-
lusi yang diberikan. Kendala dapat menyusutkan atau mengurangi kemampuan
ruang pencarian. Pembatasan lainnya yaitu semua atau beberapa peubah harus
diasumsikan integer. Sayangnya hal ini juga menyusutkan kemampuan ruang pen-
carian, namun dapat diatasi dengan menambahkan kendala linier. Jika m kendala
linier yang bebas linier mempengaruhi problema n-dimensi tanpa kendala, maka
sebaiknya dipindahkan m dimensi bebas, dari ruang pencarian, selanjutnya diker-
jakan pada ruang n−m dimensi. Dengan kata lain, jika syarat integer menyulitkan
maka ruang pencarian dikurangi hingga membentuk titik diskrit (pada kasus prob-
lema integer murni). Pencarian kemudian menjadi kombinatorial sebab kecil ke-
mungkinan untuk dapat diuji satu persatu.
2.4 Konveks
Jika fungsi tujuan konveks dengan persamaan kendala linier maka pertidak-
samaan kendala concave dengan bentuk ci(x) ≥ 0, dan optimum lokal adalah
juga optimum global-Gill et al. (1981) dan Fletcher (1987). Algoritma yang baik
seharusnya memanfaatkan sifat konveks problema jika memang sifat tersebut ada
pada problema. (Gill et.al. (1981)).
8
2.5 Optimisasi Diskrit
Program integer tak linier, yakni problema optimisasi tak linier dengan
batasan diskrit belakangan ini banyak mendapat perhatian. Khususnya prob-
lema dengan fungsi tujuan minimum, pertidaksamaan kendala tak linier dan se-
bagian atau semua peubah dari himpunan terbatas tertentu; elemen himpunan
ini tidak perlu integer. Fiacco and McCormick (1968) Sequential Unconstrained
Minimization Technique (SUMT) dengan pendekatan klasik fungsi penalty diap-
likasikan supaya memenuhi syarat kendala tak linier dan sifat diskrit, Shin et al.
(1990), Gerdal and Griffin (1990).
2.6 Contoh-contoh Optimisasi
Problema optimisasi yang paling sederhana dengan fungsi tujuan linier tanpa
kendala dapat menjadi problema optimisasi yang semakin sulit, hingga akhirnya
menjadi problema kuadratik PITL.
2.6.1 Fungsi Kuadratik; Kendala dengan Batas Sederhana
Walaupun dengan contoh sederhana, banyak hasil yang mungkin terjadi.
Fungsi minimum
f(x) = A(x − a)(x− b)
Kendala dengan batas sederhana
L ≤ x ≤ U
9
Kasus 1 A > 0;L < a < b < U x∗ = (a + b)/2 adalah minimum (lokal) pada
Gambar 2.1 : Fungsi Kuadratik dengan Kendala-Kasus 1
interval L ≤ x ≤ U . Karena f konveks, maka x∗ adalah juga minimum global
pada interval.
Kasus 2 A < 0
Gambar 2.2 : Fungsi Kuadratik dengan Kendala-Kasus 2
10
Minimum lokal tidak bisa diperoleh karena f?(x) ≡ −2A. Namun minimum
global tetap bisa diperoleh, yang muncul pada titik akhir L atau U .
Walaupun untuk fungsi kuadratik yang paling sederhana, banyak kasus yang
mungkin dan semua algoritma komputer untuk menyelesaikan problema opti-
misasi dengan banyak peubah harus mencakup kasus dasar ini.
2.6.2 Problema Integer Tak linier
Contoh selanjutnya adalah problema yang univariate dengan grafik fungsi
y = f(x). Pada program integer kuadratik sederhana (gambar 2.3-2.4), andaikan
problema dengan dua peubah bebas, dan bidang kartesius yang memperlihatkan
semua titik-titik layak problema.
Meskipun penggunaan diagram tidak bisa diterima untuk membuktikan se-
buah titik, namun dapat dimanfaatkan untuk memperjelas titik tersebut. Walau-
pun contoh ini sangat sederhana dan sangat mendasar namun merupakan batu
loncatan yang penting untuk metode pencarian langsung pada program integer
yang diberikan pada tesis ini. Ada empat titik pada diagram yakni: 1,2,3,4. Titik
1 dan 4 tidak layak karena terletak di luar kendala linier. Dari diagram dapat dili-
hat bahwa langkah bebas pada tiap dua arah orthogonal tidak layak berdasarkan
kendala linier, akan tetapi langkah gabungan terikat dapat menjadikannya layak,
bahkan bisa menjadi optimal lokal.
Proses pencarian dimulai dengan membuang paksa basis simpleks peubah
integer. Setelah itu, semua integer yang tidak layak harus dimasukkan pada
peubah superbasis. Diagram ini harus bisa mewakili, dimana ada penambahan
11
pada peubah superbasis saat pengurangan ruang pencarian. Jika langkah bebas
gagal seperti pada contoh ini, maka problema bisa menjadi lebih besar. Sifat
kombinatorial program integer tidak dapat diabaikan pada contoh ini
bisa meningkatkan kesulitan problema. Gambar 2.3 menunjukkan bahwa dengan
langkah bebas terkadang tidak cukup untuk memperoleh integer layak. Pada
contoh selanjutnya diperlihatkan bahwa langkah gabungan juga masih bisa gagal.
Ada empat titik, dengan titik kelima sebagai penyelesaian dari relaksasi kontinu.
Langkah bebas x atau y akan melanggar batas kendala, tetapi langkah ?diagonal?
akan berhasil.
Gambar 2.3 : Langkah Bebas dan Langkah Gabungan
Contoh Integer Kuadratik
Minimum
f(x1, x2) = (x1 − 3.4)2 + (x2 − 1.6)2
12
dengan kendala
x1 − x2 ≥ 1
4x1 − x2 ≤ 16
0 ≤ x1 ≤ 5
0 ≤ x2 ≤ 5
x1, x2 integer
Pada contoh ini, dapat dilihat bahwa optimum kontinu adalah 0.0 pada
x∗0 = (3.4, 1.6) dan integer layak optimum adalah x∗
1 = (4, 2)T , dengan tujuan 0.52.
Integer optimum dapat diperoleh dengan proses heuristik pada penyelesaian kon-
tinu. Daerah layak diperlihatkan pada gambar 2.4 dengan tanda asterisk sebagai
penyelesaian kontinu, dan noktah bulat sebagai titik layak. Selalu ada optimum
lokal kedua pada x2 = (3, 1)T dengan nilai tujuan yang sama yaitu 0.52.
Gambar 2.4 : Contoh Integer Kuadratik
13
2.7 Optimisasi Global
Untuk kelas skala besar problema praktis, mustahil untuk melakukan mi-
nimisasi global, walaupun pada sejumlah kasus dapat dilakukan-Ratschek and
Rokne (1988). Problema optimisasi pada dunia nyata merupakan optimisasi
global yakni gabungan diskrit dan kontinu, tak linier, multivariate dan tidak
konveks, dan tentunya ini merupakan problema yang paling sukar untuk disele-
saikan secara matematika!. Untungnya telah dilakukan beberapa kemajuan de-
ngan memanfaatkan model yang sederhana dan bentuk problema yang khusus.
Terutama pengembangan aritmatik interval dan analisis interval oleh Moore,
Mohd, Ratschek, dan Rokne (1986, 1966, 1988).
Beberapa pengembangan metode optimisasi mencoba meniru proses alam.
Misalnya pendekatan simulasi annealing; atau juga pendekatan evolusi yang dike-
nal dengan algoritma genetik.
Teknik simulasi annealing lebih menjanjikan untuk problema optimisasi glo-
bal. Pada tahap paling awal, metode mengijinkan kemerosotan lokal fungsi tu-
juan (dikurangi secara berkala) dengan harapan bahwa lokal akan menghasilkan
ruang yang lebih luas lagi. Ulasan simulasi annealing oleh Press et al. (1988),
dengan metode kode FORTRAN dan Pascal pada traveling salesman. Simulasi
annealing lebih populer dan menjadi bagian dari heuristik untuk problema penu-
gasan kuadratik (Quadratic Assignment Problem-QAP). Definisi QAP merujuk
pada Connoly (1990) atau Mawengkang and Murtagh (1986). Khususnya Connoly
(1990), Burkhard and Rendl (1984), dan Wilhelm and Ward (1987) melaporkan
pengembangan optimal untuk beberapa problema skala besar.
14
Metode-metode lain yang dapat memberi solusi yang lebih efisien pada prob-
lema optimisasi, semuanya dikelompokkan pada metode algoritma genetik. Ide
dasarnya adalah sifat biologi; dimana kelompok gen diarahkan pada metode ter-
tentu, dengan mutasi pada persilangan penyelesaian yang mungkin (permutasi
sebagian). Penyelesaian yang dihasilkan pada tiap generasi diranking berdasarkan
ukuran yang sesuai; pada kasus minimisasi, dihitung nilai fungsi tujuan dengan
berbagai metode, dan kemudian diambil metode yang menghasilkan nilai tujuan
yang lebih baik. Diharapkan melalui proses evolusi simulasi ini secara bertahap
akan muncul penyelesaian terbaik. Artikel algoritma genetik antara lain, Morrow
(1991) dan Wayner (1991). Metode genetik diaplikasikan oleh Michalewicz et al.
(1990) agar dapat optimal mengontrol problema; pada beberapa kasus akan lebih
baik dengan menambahkan kode MINOS Murtagh and Saunders (1988).
2.8 Branch and Bound untuk Problema Tak linier
Untuk penjelasan dasar pendekatan branch-and-bound, sejumlah teksbook
dapat dirujuk; seperti Nemhauser and Wolsey (1988) (penelitian ini paling umum
untuk program integer), Murtagh (1981), dan Ravindran et al. (1987). Ham-
pir semua program linier menggunakan metode branch-and-bound untuk menye-
lesaikan problema program integer linier. Pendekatannya mudah diadaptasikan
pada problema tak linier, dan dijelaskan secara rinci pada tesis ini.
Problema dasar diselesaikan sebagai program tak linier kontinu, dengan
mengabaikan syarat-syarat. Misalkan penyelesaiannya adalah xj, j ∈ J bukan
15
integer layak. Dibentuk:
xj = [xj] + fj , 0 ≤ fj < 1
dimana [xj] integer terkecil yang tidak melebihi xj.
Pendekatan dilakukan dengan membentuk dua subproblema baru dengan
menambahkan batas
lj ≤ xj ≤ [xj]
dan
[xj] + 1 ≤ xj ≤ uj
untuk peubah j ∈ J . Proses ini disebut pencabangan. Salah satu dari sub-
problema baru ini disimpan dalam daftar utama yang nanti akan diselesaikan,
sementara subproblema yang lainnya adalah sebagai problema kontinu. Hal ini
memperlihatkan pendekatan depth-first pada branch-and-bound. Strategi lain de-
ngan menggunakan heuristik untuk memilih subproblema mana yang akan dise-
lesaikan terlebih dulu. Proses pencabangan dan penyelesaian deretan problema
kontinu, diulang untuk peubah integer j ∈ J yang berbeda, dan untuk integer
[xj] yang berbeda. Logika metode ini sering disajikan dalam bentuk tree. Tiap
node dari tree mewakili satu penyelesaian subproblema. Pencabangan pada node
berakhir jika satu dari ketiga kriteria berikut dipenuhi:
Pengakhiran Kriteria untuk Branch-and-Bound
1. Subproblema tidak mempunyai penyelesaian layak
16
2. Penyelesaian dari subproblema tidak lebih baik dari penyelesaian layak in-
teger terbaik yang sebelumnya.
3. Penyelesaiannya adalah integer layak.
Manfaat pendekatan branch-and-bound adalah pasti tersedia batas atas mau-
pun batas bawah pada penyelesaian integer terbaik yang mungkin,. Asumsikan
fungsi tujuan minimum, batas atas diperoleh dari penyelesaian integer layak ter-
baik saat ini, dan batas bawah diberikan dari penyelesaian terbaik integer parsial
dari subproblema lainnya. Biasanya proses branch-and-bound berakhir jika beda
di antara dua batas ini berada pada toleransi relative yang ditetapkan.
Secara umum, prosedur akan dipengaruhi oleh pemilihan peubah j ∈ J yang
akan dicabangkan. Dan juga pada pilihan node yang dilakukan secara mundur,
satu pencabangan node tertentu adalah diskontinu.
Untuk program integer tak linier, asumsikan problema adalah konveks lokal,
setidaknya pada neighbourhood penyelesaian kontinu yang mengandung penyele-
saian layak integer. Sebaliknya, batas yang dibahas di atas tidaklah cukup. Tidak
bisa mengakhiri pencabangan dengan dua kriteria pengakhiran di atas, dan juga
tidak bisa mengakhiri prosedur jika beda antara dua batas masih cukup kecil.
2.9 Pendekatan pada Optimisasi Tanpa Kendala
Problema umum minimisai tak linier tanpa kendala dapat ditulis sbb:
minimumx∈Rn
F (x)
17
Model yang digunakan yakni fungsi tujuan kuadratik dengan n peubah dan
uji sederhana algoritma untuk menyelesaikan problema pada kelas skala besar.
Beberapa algoritma untuk optimisasi tanpa kendala harus berbentuk kuadratik,
hingga semua fungsi mulus adalah fungsi kuadratik dari optimum lokal mulus
pada neighbourhood yang cukup kecil. Dua teorema dasar pengembangan metode
minimisasi tanpa kendala adalah teorema Taylor:
F (x + p) = F (x) + g(x)T p +1
2pT H(x + θp)
dan teorema nilai rata-rata:
g(x + p) = g(x) + H(x + θp)
pada kedua persamaan di atas berlaku:
0 < θ < 1
Diasumsikan bahwa F diturunkan dua kali yakni pada vektor gradient g(x)
dan pada matriks Hessian H(x), berikut diberikan elemennya:
Gj(x) =∂F (x)
∂xj
Hij(x) =∂2F (x)
∂xi∂xj
Digunakan matriks Hessian dengan positif definite untuk memperoleh mini-
mum lokal. Khususnya untuk fungsi kuadratik, matriks Hessian H adalah kon-
stan.
Agar fungsi tujuan cukup mulus, syarat perlu pada problema minimum
tanpa kendala adalah g(x∗) = 0 dan H(x∗) ≥ 0. Syarat cukup adalah g(x∗) = 0
dan H(x∗) > 0.
18
Notasi H(x∗) > 0 menyatakan syarat positif definite matriks Hessian pada
turunan parsial. Syarat positif definite berikut semuanya adalah equivalent:
19
Positif Definite Hessian
1. xT Hx > 0; ∀x 6= 0.
2. H memiliki spektrum positif (nilai eigen).
3. Langrange LLT (Cholesky) faktor H dengan elemen diagonal L, lii > 0.
4. Semua pengalian eliminasi Gauss tanpa pivoting adalah positif (baris dan
kolom dipertukarkan).
5. Semua principal minor H adalah positif.
2.10 Pendekatan pada Optimisasi dengan Kendala-Syarat Kuhn-Tucker
Selanjutnya diringkas beberapa materi dari Gill et al.(1981). Kuhn and
Tucker (1951), menemukan syarat kendala untuk titik optimal fungsi f tak linier.
Syarat Kuhn-Tucker yang begitu terkenal tersebut disajikan untuk bermacam
kelas problema optimisasi dengan kendala kontinu.
Teknik tradisional dengan menggunakan pengali Langrange secara teori tetap
yang terbaik, dan paling banyak digunakan untuk latihan pada metode analitik
maupun numerik.
20
2.10.1 Kendala Persamaan Tak linier
Diambil problema dengan kendala persamaan tak linier NEP (Nonlinear
Equality-constrained Problem):
NEP
minimumx∈Rn
F (x)
dengan kendala ci(x) = 0, i = 1, . . . , t.
Jika pada kasus linier semua kendala pasti linier, tentu tidak demikian jika
pada kasus tak linier. Secara umum tidak ada arah layak p seperti ci(x∗+α+αp) =
0 untuk semua α yang cukup kecil. Untuk mempertahankan kelayakan maka
harus bergerak ke suatu arah. Suatu arah dapat lebih terarah dengan persamaan
x = α(θ) diman α(0) = x∗. Selanjutnya p adalah tangent pada arah ini di x∗.
Syarat perlu untuk x∗ optimal: Ai(x∗)T p = 0,∀i yang equivalent dengan
ATp = 0
A adalah matriks Jacobian dari kendala-kendala, yang diperoleh dari:
aij =∂ci
∂xj
Vektor p yang menjadi orthogonal pada baris Jacobian di x∗ bukanlah syarat
cukup untuk p menjadi tangent pada arah layak. Diperlihatkan pada dua kendala
berikut:
c1(x) = (x1 − 1)2 + x22 − 1
c2(x) = (x1 − 1)2 + x22 − 1
Awalnya hanya titik layak, tanpa arah layak. Tetapi beberapa vektor yang
berbentuk p = (0, δ)T menjadi syarat cukup untuk sifat orthogonal Jacobian.
21
Kendala yang dipakai harus tegas untuk menjamin sebagai p tangent pada
arah layak. Asumsi selanjutnya dapat mengatasi kesulitan karena adanya kendala,
dan dapat dibuat dalam beberapa bentuk. Salah satu adalah kendala gradient di
x∗ yang bebas linier. Hal ini equivalent dengan pernyataan bahwa matriks A(x∗)
memiliki tingkat baris yang penuh.
Agar x∗ optimal, F harus stasionary sepanjang arah layak:
∇F (α(θ))|θ=0 = 0
dengan
ATp = 0
Jika Z(x∗) adalah matriks yang kolomnya membentuk basis untuk nullspace
dari A, yaitu himpunan dari vektor orthogonal ke baris A, maka diperoleh:
Z(x∗)T g(x∗) = 0
Syarat ini analog pada syarat kasus kendala linier, kecuali matriks Z sudah
tidak konstant lagi. Vektor Z(x∗)T g(x∗) mengakhiri projection gradient dari F
di x∗. Seperti sebelumnya syarat bahwa projected gradient nol di x∗, adalah
equivalent dengan syarat g(x∗) harus kombinasi linier dari baris A(x∗).
g(x∗) = A(x∗)T λ∗
untuk beberapa vektor t dari pengali Lagrange.
Fungsi Lagrange dapat ditulis sebagai berikut:
L(x, λ) = F (x)− λT c(x)
22
Syarat perlu untuk x∗ optimal yang selanjutnya dituliskan sebagai x∗ adalah titik
stationary dari Lagrange dimana λ = λ∗.
Untuk order kedua syarat perlu diperoleh Hessian dari Lagrangian
W (x, λ) ≡ G(x) −t∑
i=1
λiGix
Diperlukan
pT W (x∗, λ∗)p ≥ 0
yang equivalent pada
Z(x∗)T W (x∗, λ∗)Z(x∗) = 0
Inilah proyek Hessian dari fungsi Lagrange.
NEP-syarat perlu untuk minimum
c(x∗) = 0
Z(x∗)Tg(x∗) = 0
g(x∗) = A(x∗)Tλ∗
Z(x∗)TW (x∗, λ∗)Z(x∗) ≥ 0
Syarat kedua dan ketiga adalah equivalent, dan memperjelas pertidaksamaan
pada proyek Hessian dari Lagrange pada persamaan sebelumnya mengarahkan
pada syarat cukup untuk kendala minimum:
Z(x∗)T W (x∗, λ∗)Z(x∗) > 0
23
2.10.2 Kendala Pertidaksamaan Tak Linier
Dengan problema:
NIP (Nonlinear Inequality-constrained Problem)
minimumx∈Rn
F (x)
dengan kendala ci(x) ≥ 0, i = 1, . . . ,m
Kendala aktif harus diidentifikasi. Kendala ini dapat membatasi gangguan
di x∗. Asumsikan kembali qualifikasi kendala yang ada. Syarat-syarat diberikan
berikut ini.
NIP-syarat perlu untuk minimum
c(x) > 0 dengan c(x∗) = 0
Z(x∗)Tg(x∗) = 0
g(x∗) = A(x∗)Tλ∗
λ∗i ≥ 0, i = 1, . . . , t
Z(x∗)TW (x∗, λ∗)Z(x∗) ≥ 0
Pengali nol Lagrange menjadi syarat cukup untuk NIP. Pertama tentukan
himpunan syarat cukup untuk NIP yang mengabaikan problema dengan asumsi
semua pengali Lagrange adalah positif:
24
NIP-syarat cukup untuk minimum
c(x) > 0 dengan c(x∗) = 0
Z(x∗)Tg(x∗) = 0
g(x∗) = A(x∗)Tλ∗
λ∗i ≥ 0, i = 1, . . . , t
Z(x∗)TW (x∗, λ∗)Z(x∗) ≥ 0
Jika ada pengali nol Lagrange, maka hambatan pada matriks Hessian fungsi
Lagrange merupakan syarat cukup untuk menjamin F menunjukkan kurva positif
terikat pada arah layak untuk semua kendala dengan pengali positif Lagrange.
Untuk kendala dengan pengali nol Lagrange bisa terikat ataupun tidak terikat.
Andaikan A+(x∗) mengandung koefisien kendala aktif dengan pengali positif Lag-
range dan andaikan Z+(x∗) sebagai matriks kolom yang merentang nullspace dari
A+(x∗). Pada kasus ini, syarat cukup untuk x∗ menjadi minimum lokal kuat un-
tuk NIP sebagai berikut.
NIP-alternatif syarat cukup untuk minimum
c(x) > 0 dengan c(x∗) = 0
Z(x∗)Tg(x∗) = 0
g(x∗) = A(x∗)Tλ∗
λ∗i ≥ 0, i = 1, . . . , t
Z+(x∗)TW (x∗, λ∗)Z+(x∗) ≥ 0
25
2.11 Algoritma yang Tersedia untuk Optimisasi Tak linier Kontinu
Secara umum, metode perbandingan lebih buruk dari metode yang meng-
gunakan turunan. Metode perbandingan digunakan hanya jika turunannya sa-
ngat sulit untuk dihitung, tidak nyata atau tidak mungkin sama sekali. Untuk
problema dengan fungsi tujuan tak mulus, satu-satunya yang bisa dipakai adalah
metode fungsi perbandingan Gill et.al. (1981).
2.11.1 Metode 1-Dimensi
Beberapa metode standart untuk fungsi minimisasi dengan peubah tunggal
dibagi menjadi dua yakni: metode Brent dengan pencarian Fibonacci, pencarian
golden section, interpolasi kuadratik, dan metode Newton (1981). Penelitian awal
Brent (1973) untuk implementasi modern pada FORTRAN dan Pascal dapat dite-
mukan di Press et al. (1988). Pada metode Newton dapat digunakan turunan
pertama dan kedua, sementara teknik lainnya hanya menggunakan nilai fungsi.
2.11.2 Model Skema Algoritma Descent (Tanpa Kendala)
Spesifikasi umum metode descent pada minimisasi kendala linier yang mem-
bangun nullspace matriks Z dan garis pencarian subalgoritma. Gambar 2.5 mem-
berikan detailnya.
26
Gambar 2.5 : Skema Descent
Catatan
1. Algoritma ini menjaga sifat layak.
2. pk akan menjadi arah descent, yakni gTk Zpz < 0.
3. Fungsi tujuan harus menjaga sufficient decrease pada tiap iterasi agar jum-
lah iterasinya wajar. Tidak cukup hanya syarat F (xk+1) < F (xk). Banyak
contoh yang dapat dibuat untuk deret penurunan yang digenerete tetapi
sayangnya penggunaan komputasi praktis masih relatif lambat, Gill et al.
(1981).
27
Metode dasar Newton menggunakan model kuadratik yang akurat untuk
fungsi mulus yang mendekati minimum lokal. Metode ini dapat membuktikan
sudah ”cukup dekat” pada minimum lokal. Metode terbaik adalah variasi metode
Newton, dan agar efektif matriks Hessian harus positif definite.
Ada beberapa alternatif untuk memilih arah descent p. Yang paling terke-
nal antara lain steepest descent, metode Newton, kelas metode quasi-Newton, dan
metode gradient conjugate. Selajutnya dibahas berikut ini.
Steepest Descent
Steepest descent adalah metode lama untuk minimisasi. Pada tiap iterasi
xk, mengikuti vektor gradient negatif yang menjamin arah descent kecuali jika
telah berada pada titik stasionary. Metode ini banyak dibahas pada text book
minimisasi multivariate.
Metode Gradient Conjugate (Metode Turunan Pertama)
Ide umum basis orthogonal pada ruang vektor digunakan untuk membangun
deretan pencarian non-interfering arah pk. Metode ini awalnya untuk menyele-
saikan persamaan linier oleh Hestenes and Stiefel (1952), dan memiliki sifat bahwa
fungsi kuadratik dari n peubah yang minimum bisa dimaksimumkan dengan n
langkah, salah satu pada setiap arah konjugate,dan yang lainnya tanpa memper-
hitungkan arah. Pengembangan problema tak linier dikerjakan oleh Fletcher and
Reeves (1964). Metode gradient conjugate biasanya digunakan untuk problema
skala besar, tidak mungkin berdasarkan faktorisasi matriks sebab matriksnya ter-
28
lalu besar. Pendekatan ini digunakan pada MINOS oleh Murtagh and Saunders
(1987).
Metode Newton (Metode Turunan Kedua)
Metode Newton didasarkan pada model kuadratik sederhana dengan fungsi
mulus yang mirip seperti kuadratik dengan positif definite Hessian pada neigh-
bourhood minimum. Fungsi kuadratik sederhana:
F (x + p) = F (x) + g(x)T p +1
2pT G(x)p
digunakan pada model fungsi mulus yang berubah-ubah. Mudah untuk memper-
lihatkan bahwa kuadratik adalah minimum jika p memenuhi
Gkpk = −gk
dimana gk adalah vektor gradient pada iterasi xk tertentu dan Gk adalah matriks
Hessian.
Positif definite Hessian menjamin penyelesaian unik pk, yang mengakhiri
arah Newton. Jika bentuk kuadratik definit positif (konstan) Hessian G > 0,
maka tepat hanya satu iterasi yang diperlukan arah Newton untuk mendapat
minimum.
Jika G bukan positif definite maka ada berbagai strategi untuk memodifikasi
penghitungan Hessian untuk mencari arah decrease F . Suatu modifikasi teknik
Newton didasarkan pada faktorisasi matriks untuk memeriksa positif definite Hes-
sian.
29
Dasar dari metode Newton adalah konvergence lokal yang sangat kuat. Hal
ini menunjukkan adanya positif definite, sehingga jelas terlihat dari sifat fungsi
kuadratiknya dan dari pernyataan Taylor untuk f yang mendekati minimum.
Itulah yang dinamakan metode turunan kedua, dimana syarat cukup untuk op-
timal dapat diperiksa. Model kuadratik pada fungsi minimum bisa tidak akurat
sehingga harus lebih hati-hati dalam penggunaannya agar tidak gagal.
Variasi dasar Newton selanjutnya menggunakan perbedaan terbatas vektor
gradient untuk mencapai pendekatan Hessian. Suatu metode yang mengakhiri
perbedaan terbatas metode Newton. Syarat penggunaan metode-metode tersebut
jelas merupakan tipe metode Newton yang menggunakan turunan kedua Hessian.
Metode Quasi-Newton (Metode Turunan Kedua)
Metode ini didasarkan pada ide membentuk kurva sebagai proses iterasi
metode descent, menggunakan nilai fungsi dan vektor gradient. Metode Newton
menggunakan Hessian dan menghasilkan kurva pada titik tunggal. Metode quasi-
Newton didasarkan pada kenyataan bahwa pendekatan pada kurva fungsi tak
linier dapat dihitung tanpa membentuk matriks Hessian.
Davidon Fletcher Powell (DFP) dan Broyden Fletcher Goldfarb Shanno
(BFGS) meningkatkan deret pendekatan matriks Hessian, Gill et al. (1981).
Murtagh menggunakan BFGS.
30
Metode Aktif Set Untuk Problema Kendala Linier
Pendekatan yang digunakan oleh Murtagh and Sanders pada MINOS (1978)
menggunakan peubah superbasis. Pada setiap langkah pada minimisasi, jum-
lah peubah superbasis ns merupakan ukuran dimensionalitas dari subspace yang
dibentuk oleh interseksi kendala aktif. Peubah superbasis tergantung pada derajat
bebas pencarian, yakni peubah bebas basis tertentu dan batas yang ditetapkan.
Peubah superbasis dapat bebas berubah-ubah diantara batasnya namun tetap
menjaga sifat kelayakan himpunan peubah basis saat itu.
Pencarian mempunyai dua komponen yang saling berhubungan: problema
untuk menemukan himpunan kendala aktif yang tepat, dan problema minimisasi
himpunan aktif.
2.12 Algoritma yang Tersedia untuk Optimisasi Tak linier Diskrit
Program Integer Tak Linier (PITL) pada hakekatnya adalah problema yang
sukar. Scarf (1990) mengatakan bahwa integer programming merupakan problema
komplit-Non Polynomial. PITL jauh lebih sulit dari Program Integer Linier. Pada
bagian berikut, dipaparkan beberapa algoritma untuk problema PITL.
2.12.1 Algoritma Pendekatan Luar Duran and Grossmann
Duran and Grossmann (1986) mengajukan algoritma pendekatan outer un-
tuk menyelesaikan PITL campuran. Problema dibagi menjadi dua yakni master
problema yang dibentuk dengan linierisasi, dan subproblema program tak linier.
31
Master problema merupakan outer dan subproblema adalah inner. Subproblema
diselesaikan dengan peubah integer tetap kemudian dimasukkan ke master prob-
lema, demikian dilakukan berulang-ulang. Pendekatan yang dilakukan adalah
dengan cara linierisasi.
Metode Duran and Grossmann menggunakan aturan dekomposisi pada model
problema, dengan asumsi linier pada peubah integer dan konveks pada bagian tak
linier fungsi tujuan dan fungsi kendala. Dengan bentuk umum:
minimum cT y + f(x)
dengan kendala g(x) + By ≤ 0
x ∈ X ⊆ Rn
y ∈ U ⊆ Rm+
Fungsi tak linier f : Rn → R dan fungsi vektor g : Rn → Rp harus
konveks dan dapat diturunkan. Secara konvensional, domain U peubah integer
diasumsikan sebagai himpunan diskrit yang terbatas; biasanya unit hypercube
Y = {0, 1}m.
Ide utama metode Duran and Grossmann (1986) adalah linieritas peubah
diskrit memungkinkan ruang pencarian layak problema yang terpisah antara yang
kontinu dengan yang diskrit. Ruang kontinu adalah kumpulan hingga daerah
konveks yang semuanya terparameter oleh nilai peubah diskrit. Pendekatan outer
himpunan konveks dengan pembagian ruang yang digunakan untuk master LP
integer-campuran. Dibandingkan dengan metode dekomposisi relaksasi, metode
pendekatan outer menghasilkan batas bawah yang lebih baik pada nilai fungsi
tujuan optimal.
32
Hasil uji awal Duran and Grossmann menunjukkan keunggulan metode de-
ngan menyelesaikan subproblema NLP. Leyffer (1991) bekerja dengan ide yang
sama.
2.12.2 Metode Mawengkang and Murtagh
Penelitian Mawengkang and Murtagh (1986) dan Murtagh (1989) menim-
bulkan kelas pada PITL. Pada artikel tahun 1986, dijelaskan penggunaan kode MI-
NOS untuk problema program integer tak linier skala besar (tujuan dan kendala
tak linier). Prosesnya didasarkan pada peningkatan pencarian kendala dengan
menggunakan pendekatan MINOS, dengan aplikasi pada problema penugasan
kuadratik (QAP) dan problema desain jaringan pipa gas. QAP dengan order yang
lebih tinggi dari 10 atau 15 sukar diselesaikan dengan pendekatan branch-and-
bound, sehingga digunakan pendekatan pencarian langsung yaitu subset peubah
integer diperlakukan sama dengan peubah superbasis pada algoritma MINOS.
Untuk mempertahankan kelayakan maka peubah integer yang boleh berubah se-
lama pencarian hanya yang diskrit, sama seperti peubah superbasis pada MINOS
yang boleh menambah derajat yang bebas untuk problema tak linier.
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
33
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 optimisasi 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.
BAB 3
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).
minimumx∈Rn
f0(xN) + cTxL
dengan kendala f(xN ) + A1xL = b1 (m1 baris )
A2xN + A3x
L = 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
35
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 S N
]
xB
xS
xN
= b
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 ∆xS yang
menentukan seluruh langkah δx. Kunci sukses algoritma MINOS (Murtagh and
36
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.
37
2. CYCLE1: keluarkan peubah integer dari basis dengan memindahkan nonba-
sis yang tepat dari batasnya. Tujuannya agar peubah basis 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 KardinalitasJB Himpunan peubah basis |JB| = mJS 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
38
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
xi′ = xi′ + fi′ , 0 < fi′ < 1
Selanjutnya, anggap pilihan non-basis peubah non-integer xi′ dilepaskan 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
39
baik untuk i′ sebagai berikut:
min(fi′, 1 − fi′) ≤ min(fi′ , 1 − fi) i ∈ JI
40
Pilihan i′ 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 ) − JI |αi′j 6= 0
∣∣∣∣λj
αi′j
∣∣∣∣
dimana λj merupakan komponen ke-j dari pemisahan nonbasis dari vektor
reduce gradient atau vektor reduce cost λN , αi′j = (B−1aj)i′ 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 xi′.
Syarat αi′j dihitung dengan lebih dulu membentuk vektor zT = ei′B−1 (baris
i′ dari B−1), kemudian menghitung hasil kali dalam αi′j = zTaj. Jika j∗ telah
41
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, i1 6= i′ mengenai batas bawah pertamanya
Kejadian 2. Peubah basis xi2, i2 6= i′ 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 = i′ bukan merupakan kejadian 1 dan i2 = i′ bukan meru-
pakan kejadian 2., Jika xi′ mengenai suatu batas maka hal itu merupakan
kejadian 3, dimana kemungkinan i3 = i′ 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:
θ1 = mini
∈ JB − {i′}|αij∗ > 0
(xi − liαij∗
)(3.2)
θ2 = mini
∈ JB − {i′}|αij∗ < 0
(ui − xi
−αij∗
)(3.3)
θ3 = min
(min
i∈JI∩JB |αij∗<0
1 − fi
−αij∗, mini∈JI∩JB |αij∗>0
fi
αij∗
)(3.4)
θ4 = uj∗ − lj∗
42
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. xi′ tetap sebagai basis dengan nilai yang baru (non-integer). Jika
θ∗ = θ2 maka xi2 menjadi nonbasis pada ui2 dan xj∗ menggantikannya 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:
43
Tabel 3.2 : Memindahkan peubah integer dari basis-memilih nonbasis non-integerxj�, j
∗ ∈ (JL ∪ JU ) − JI) dilepaskan dari batasnya.
44
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 i′ dan j∗, maka dapat dieksplore
penggunaan multiple pricing untuk memilih alternatif j∗s 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 j′ ∈ JS sebagai nilai j,
dimana akan muncul:
ζ0 = minj∈JS
min(fj, 1 − fj)
45
JS adalah himpunan indeks untuk superbasis. Jika 1 − fj′ ≤ 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 = minj∈JS
fj
Sama halnya dengan j2 sebagai indeks dari peubah superbasis dengan komponen
pembagian terbesar, yakni:
fj2 = maxj∈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 xj′ bisa jadi mustahil karena batas seder-
hana pada basis bisa dilanggar. Hal ini diringkas pada persamaan (3.5) dan (3.6).
Langkah mundur terbatas, ∆xj′ < 0 diberikan oleh:
∆xj′ = −min
(fj′ , min
i∈JB |αij′<0
((xB) − 1i
−αij′
), mini∈JB |αij′>0
(ui − (xB)i
αij′
))(3.5)
46
Langkah maju terbatas ∆xj′ > 0 diberikan oleh:
∆xj′ = min
(1 − fj′ , min
i∈JB |αij′>0
((xB) − 1i
αij′
), mini∈JB |αij′<0
(ui − (xB)i
−αij′
))(3.6)
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 =
−1; fj1 < 1 − fj2
+1; fj1 > 1 − fj2
σ2 hanya merupakan symbol dari langkah yang diharapkan yaitu ∆xj′, se-
mentara batasan dari langkah ditentukan oleh batas sederhana yang diberikan
oleh:
ζ1 = mini∈JB |σ2αij′ >0
(xi − 1i
σ2αij′
)(3.7)
ζu = mini∈JB |σ2αij′ <0
(ui − 1i
−σ2αij′
)(3.8)
Langkah 2.
Perlu diperhatikan apakah dapat dibuat langkah pembagian (maju atau mundur)
untuk membuat integral xj′. 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 j′ yaitu |∆x| = ζ pada integer terdekat. Namun jika tidak, ambil langkah
sejauh mungkin tanpa melanggar batas sederhana basis.
47
Selanjutnya ditentukan il sebagai nilai i yang minimumpada (3.7); iu sebagai
nilai i yang minimum pada (3.8); dengan syarat masing-masing himpunan indeks
tidak kosong (pada beberapa kasus, iu, il mungkin tidak ada). Langkah 2 CYCLE2
dapat ditulis sebagai berikut:
∆xj′ = σ2 min(ζ0, ζ1, ζu)
Apakah mungkin langkah ∆xj′ 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 j′ ∈ JI . Kriteria pemilihan j′ akan memaksimumkan reduced cost λj.
Langkah 2
Hitung αj′ . Tentukan arah perpindahan-periksa tanda λj′ .
48
Langkah 3
Periksa apakah memungkinkan untuk bergerak ke satu unit.
ui − xi
+αij′≥ 1∀i|i ∈ JB|αij′ > 0
xi − li−αij′
≥ 1∀i|i ∈ JB|αij′ < 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
49
hsj berikut:
hsj =
0; jikanonbasispadabatasbawah
1; jikanonbasispadabatasatas
2; jikasuperbasis
3; jikabasis
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
Minimum f =
3∑
i=1
γi(xi − τi)2 (3.9)
dengan kendala 1x1 + 0x2 + ω1x3 ≤ b1 (3.10)
0x1 + 1x2 + ω2x3 ≤ b2 (3.11)
1 ≤ x ≤ u (3.12)
x2 integer (3.13)
50
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, x5 pada 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 =3∑
i=1
γi(xi − τi)2
dengan kendala 1x1 + 0x2 + ω1x3 ≤ b1
0x1 + 1x2 + ω2x3 + 0x4 + 1x5 ≤ b2
1 ≤ x ≤ u
x2 integer
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 sederhana, tentu juga sebagai
optimum lokal.
Persamaan Umum
Jika xB adalah vektor peubah basis dan αj = (B−1N)j, maka dapat ditulis:
xB = β −∑
j∈JL
αj1j −∑
j∈JU
αjuj −∑
j∈JS
αjxj
51
Jika i ∈ JB maka dapat ditulis:
xi = βi −∑
j∈JL
αij1j −∑
j∈JU
αijuj −∑
j∈JS
αijxj
Bentuk Umum Contoh Penyangkal
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.
Definisi Contoh 1
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
52
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
53
sehingga x2 bisa menjadi integer layak ataupun melampaui batas.
54
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 = ∅
55
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.
56
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
57
maka i′ = 2, dimana i = 2 merupakan calon tunggal untuk i′. 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 x2 dari 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.
58
Tabel 3.3 : Penyelesaian Problema dengan Pencarian Langsung
BAB 4
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
DAFTAR PUSTAKA
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 Classof 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 unconstrainedminimization 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 UserManual, 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 Mathematics5:53-70, 1979.
Harjunkoski, I., Westerlund, T., Prn, R. and Skrifvars, H. Different transformationsfor solving non-convex trim-loss problems by MINLP. European Journal ofOperational Research, 105:594-603,1998.
60
61
Hestenes, M.R. and Stiefel, E. Methods of conjugate gradients for solving liniersystems. 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 withLarge-Scale Optimization Software, Annals of Operations Research, 5.425-437, 1986.
Michalewicz, Z., Krawczyk, J.B., Kazemi M. and Janikow, C.Z. Genetic algorithmsand optimal control problems. Proc. 29th IEEE Conference on Decision andControl, 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 Engineering. Proceeding of the Computational Techniquesand 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 ProgrammingStudy 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.Virginia Polytechnic Institute and State University, 1984.
Nelder, J.A. and Mead, R. A simplex method for function minimization. ComputerJournal 7:308-313, 1965.
Nemhauser, G.L. and Wolsey, L.A. Integer and Combinatorial Optimization. Wi-ley.ISBN 0-471-82819-X, 1988.
62
Press, W.H., Flannery, B.P., Teukolsky, S.A. and Vetterling, W.T. NumericalRecipes. Cambridge University Press, 1988.
Quist, A.J., van Geemert, R., Hoogenboom, J.E., Ills, T., de Kler, E., Roos, C.and Terlaky, T. Optimization of a nuclear reactor core reload pattern usingnonlinear optimization and search heuristics. Draft paper, Delft Universityof Technology, Faculty of Applied Mathematics, Department of OperationResearch, Mekelweg 4, 2628 CD Delft, The Netherlands, September 1997.
Ratschek, H. and Rokne, J. New computer methods for global optimization. Hal-stead Press, 1988.
Ravindran, A., Phillips, D.T. and Solberg, J.J. Operations Research, Principlesand Practice. 2nd edition. Wiley, 1987.
Scarf, H.E. Mathematical programming and economic theory. Operations Research,38:377-385, 1990.
Scarf, H.E. Neighbourhood Systems for Production Sets with Indivisibilities.Econometrica 54:507-532, 1986.
Scarf, H.E. Testing for optimality in the absence of convexity. Social Choiceand Publish Decision Making. Chapter 6. Cambridge University Press 1986.Edited by Heller, W.P., Starr, R.P. and Starrett, D.A., 1986.
Shin, D., Gerdal Z. and Griffin, O. A penalty approach for nonlinear optimizationwith discrete design variables. Engineering optimization 16:29-42, 1990.
Sigmund, O. A 99 line topology optimization code written in matlab. StructuralOptimization, 2000.
Torczon, V. Multi-directional search: a direct search algorithm for parallel ma-chines. PhD dissertation. Rice University, Dept of Mathematical Sciences.Techical Report TR90-7, 1990.
Wayner, P. Genetic algorithms. BYTE 16:1, 361-368, 1991.
Wilhelm, M.R. and Ward, T.L. Solving quadratic assignment problems by simu-lated annealing. IIE Transactions 19:1, 107-119, 1987.