Algoritma Frank − Wolfe
7.6.2 Algoritma Frank − Wolfe
Kita telah membahas permasalahan program matematik dan memperlihatkan relevansinya dalam pemecahan permasalahan pembebanan lalulintas pada kondisi keseimbangan. Program matematik bersifat tidak-linear dan dapat dipecahkan dengan berbagai macam metode. Walaupun untuk mengerti teori konsep pembebanan keseimbangan ini dibutuhkan dasar matematik yang cukup kuat, penerapan aktual prinsip ini dan algoritma solusinya tidak terlalu diinginkan.
Algoritma yang sangat umum digunakan adalah algoritma Frank − Wolfe. Algoritma dapat dilihat sebagai usaha perbaikan dari metode
7.6.2.1 Algoritma
pengulangan baku yang telah didiskusikan pada subbab 7.5.4.
1 Pilih satu set inisial biaya ruas; yang biasa digunakan adalah waktu tempuh pada kondisi arus bebas C 0
V = 0; kemudian set n = 0;
l (0). Inisialisasikan semua arus l
2 Bentuk suatu pohon biaya minimum; kemudian set n = n + 1;
3 Bebankan semua matriks T dengan pembebanan all-or-nothing, untuk mendapatkan suatu set arus F l ;
4 Hitung arus pada saat sekarang dengan persamaan:
5 n Hitung satu set baru biaya ruas berdasarkan besar arus l V ; jika arus (atau biaya ruas) tidak terlalu banyak perubahannya dalam dua pengulangan yang
berurutan, stop; jika tidak, teruskan ke tahap (2). Perbaikan yang utama jika dibandingkan dengan metode pengulangan terletak pada
tahap (4); di sini φ dihitung dengan menggunakan rumusan program matematik. Ini sudah cukup untuk menjamin proses konvergensi ke solusi kondisi keseimbangan Wardrop.
Algoritma Frank − Wolfe dapat dicerminkan sebagai proses pendekatan menurun terhadap masalah minimasi fungsi tujuan tertentu. Permasalahan ini mirip dengan usaha mencari titik dasar terendah dalam lembah yang mempunyai banyak dasar. Suatu set tahapan dalam kasus perumpamaan lembah tersebut adalah:
1 Pilih daerah yang mempunyai mempunyai kemiringan yang paling curam dari titik tertentu;
2 Lakukan perjalanan ke arah tersebut dan berhenti di tempat kita harus mendaki lagi;
3 Di titik tersebut lakukan kembali usaha untuk mencari kemiringan yang paling curam dan teruskan dengan tahap (2), sampai kita menemukan titik yang
320 Ofyar Z Tamin, Perencanaan dan pemodelan transportasi 320 Ofyar Z Tamin, Perencanaan dan pemodelan transportasi
Hal ini persis dengan yang dilakukan oleh algoritma Frank − Wolfe, terlepas dari ruang yang mungkin mempunyai banyak matra. Pada setiap tahap dalam pengulangan, didapatkan solusi yang mungkin (suatu titik di dalam lembah) dan algoritma seterusnya menggunakan metode pembebanan all-or-nothing untuk mencari arah yang mempunyai kemiringan ke bawah.
Penggunaan metode pembebanan all-or-nothing dapat dilihat sebagai pendekatan lokal dalam usaha meminimumkan fungsi tujuan Z. Dengan mengetahui solusi yang paling memungkinkan yang dihasilkan oleh arus {T idr }, Frank − Wolfe mencari arah berikutnya yang memungkinkan {W idr } dengan menggunakan pendekatan linear terhadap Z (dalam hal ini digunakan deret Taylor):
Z ′ ( {} W idr ) = Z ( {} T idr ) + ∑∑∑
( W idr − T idr )
i d r ∂ T idr
= Z ( {} T idr ) + ∑∑∑ ( C idr W idr ) −
∑∑∑ ( C idr T idr i ) d r
Di sini, hal yang belum ditentukan oleh solusi yang mungkin {T idr } adalah C idr W idr . Jadi, jika kita meminimumkan pendekatan lokal Z, kita harus memilih rute W idr sehingga faktor perkalian C idr dapat diminimumkan. Cara untuk melakukan hal ini adalah dengan memilih rute yang pada saat sekarang mempunyai biaya lokal minimum (misalnya biaya yang dihasilkan oleh pembebanan all-or-nothing).
Dalam bentuk yang umum, algoritma Frank − Wolfe akan konvergen dengan cepat setelah beberapa pengulangan dan kemudian melambat begitu mendekati titik optimum. Ini permasalahan yang paling terkenal sehingga beberapa perbaikan telah disarankan untuk mempercepat proses konvergensi; contohnya tulisan Arezki (1986).
Model pemilihan rute ini merupakan model yang terbaik sampai saat ini, yang sangat cocok untuk daerah perkotaan yang diperkirakan efek kemacetannya cukup berarti. Kekurangan model ini adalah waktu proses komputer yang cukup lama dibandingkan dengan model all-or-nothing.
Beberapa teknik telah diusulkan sebagai pendekatan kondisi keseimbangan Wardrop, antara lain pendekatan heuristik sederhana. Salah satu yang terbaik adalah penggunaan kerangka kerja pemrograman matematika. Untuk membandingkan berbagai algoritma tersebut, beberapa hal penting berikut perlu diperhatikan.
• Apakah solusinya tetap? •
Apakah hasilnya konvergen ke solusi yang sesuai dengan kondisi keseimbangan Wardrop?
• Apakah efisien waktu komputasinya?
Model pemilihan rute 321
Terdapat tiga tipe dasar kriteria konvergensi pada prosedur pembebanan batasan kapasitas, yaitu:
7.6.2.2 Kriteria konvergensi
a dengan melihat perbedaan antara arus atau biaya ruas pada setiap pengulangan yang berturutan. Dengan perbedaan ini dapat dilihat apakah proses pengulangan selanjutnya akan menghasilkan perubahan yang berarti bagi arus atau biaya tersebut. Jika tidak, konvergensi dianggap sudah tercapai;
b dengan mengukur perbedaan antara asumsi hubungan biaya − arus pada saat awal pembebanan dengan hubungan biaya − arus pada saat akhir pembebanan;
c melihat potensi perbaikan yang dihasilkan apabila dilakukan proses pengulangan berikutnya.
Berdasarkan tiga tipe dasar tersebut, beberapa penulis mengusulkan kriteria konvergensi pada pembebanan keseimbangan seperti yang diuraikan berikut ini.
a Van Vliet (1976) mengusulkan suatu indikator δ yang sering digunakan untuk melihat seberapa dekat solusi terhadap kondisi keseimbangan:
idr ( C idr − C id )
∑∑∑ * T
T id . C id
idr − C idr adalah selisih biaya pada rute tertentu dan biaya minimum untuk pasangan (i,d). Biaya ini dihitung setelah pengulangan selesai dan total pergerakan didapatkan untuk setiap ruas jalan. Karena itu, δ adalah nilai yang dihasilkan oleh selisih antara biaya rute optimal dan biaya rute tidak-optimal.
dengan * C
b Evans (1976) menunjukkan bahwa pada pengulangan ke-n, batas bawah fungsi tujuan * Z dapat dihitung dengan rumus sebagai berikut:
( c l ( )( V l V l − F l ) )
*( n )
*( n Z ) tidak perlu bertambah pada setiap pengulangan. Karena itu, taksiran
*( n terbaik dari nilai ini adalah ) Z maks yaitu nilai maksimum Z
sampai pengulangan terakhir. Ukuran ketidakpastian fungsi tujuan ini adalah:
maks