BAB 1
PENDAHULUAN
1.1 Latar Belakang
Masalah dalam menentukan rantaian terpendek diantara pasangan node titik tertentu dalam suatu graph telah banyak menarik perhatian. Persoalan dirumuskan sebagai
kasus khusus dari persoalan aliran biaya minimal, dan algoritma efisien yang tersedia untuk menghitung lintasan terpendek dan biaya minimum. Shortest path yang
diperoleh akan meminimumkan fungsi linear yang khusus fungsi dari path seperti biaya, jarak atau waktu. Perumusan persoalan ini akan menjadi salah satu kegunaan
dari lintasan dengan jarak waktu diminimumkan terhadap biaya yang dianggarkan.
Beberapa masalah dalam menentukan rantaian terpendek diantara pasangan node tertentu dalam suatu graph atau jaringan kerja, antara lain : masalah transportasi, jaringan
komunikasi, serta masalah pengiriman barang tidak bisa lepas dari permasalahan jarak waktu dan tentunya juga masalah biaya. Permasalahan dituntut untuk meminimisasi jarak waktu ke
tujuan yaitu dengan memilih lintasan tersingkat dengan biaya yang telah dianggarkan sehingga dapat dicapai hasil yang optimal. Sebagai contoh dapat kita lihat pada masalah transportasi, kita
dihadapkan pada pilihan lintasan perjalanan dari Kota S sumber ke Kota T tujuan, untuk sampai ke Kota T ada beberapa lintasan berbeda yang dapat dilalui dan juga biaya perjalanan
yang berbeda, permasalahan yang terjadi adalah lintasan terpendek mana yang harus dipilih yang sesuai dengan biaya yang dianggarkan untuk perjalanan tersebut agar hasil yang optimal
diperoleh.
Universitas Sumatera Utara
Algoritma Dijkstra merupakan dasar pemikiran untuk menentukan suatu lintasan terpendek dalam suatu graph berarah dari suatu titik awal sumber ke suatu
titik akhir tujuan, bilamana pada setiap node dan arc menotasikan suatu ukuran atau bobot yang tidak negatif. Algoritma ini juga untuk menentukan lintasan terpendek
untuk setiap pasangan lintasan yang diinginkan. Pada umumnya algoritma Dijkstra digunakan hanya untuk menentukan lintasan terpendek pada suatu graph. Tetapi
bilamana shortest path tersebut harus memenuhi kendala-kendala linear yang ditentukan, algoritma tersebut tidak dapat digunakan.
Masalah khusus dari persoalan graph ini adalah mendapatkan suatu lintasan dengan jarak minimum yang memenuhi terhadap subject to kendala anggaran
budgetary. Kemungkinan masalah lainnya adalah path juga merupakan minimasi biaya yang harus memenuhi kendala waktu. Andaikan diberikan sebuah graph G
dengan node titik N = 1,2,…,i dan arc garis F = 1,2,…,j serta ax,y dan bx,y adalah jarak waktu dan biaya. yang dihubungkan dengan tiap garis i,j dalam graph
G. Masalahnya adalah menentukan lintasan terpendek dari titik 1 sumber ke titik n tujuan dalam graph G yang memenuhi terhadap kendala biaya yang dianggarkan.
Jarak waktu dan biaya dari lintasan adalah jumlah nilai-nilai yang terdapat pada tiap garis dalam lintasan.
Universitas Sumatera Utara
Gambar 1.1 Contoh ilustrasi masalah shortest path yang berkendala.
Gambar diatas menerangkan sebuah graph G dimana a,b = 10, 12 dinyatakan sebagai jarak waktu dan biaya yang dihubungkan tiap garis Fi,j, dan node 1, 2, 3, 4
adalah node-node N yang ditentukan pada graph. Dan pada gambar juga diperlihatkan yang bergaris tebal adalah merupakan lintasan terpendek yang harus dilewati dari
sumber node 1 ke tujuan node 4. Pada persoalan ini diandaikan biaya sebagai kendala, dan ditentukan pula biaya berbanding terbalik dengan jarak atau keduanya
bernilai sama.
Menentukan jarak terpendek yang memenuhi kendala biaya yang dianggarkan pada suatu graph adalah merupakan salah satu tipe masalah Integer Knapsack, yaitu
dimana kita diminta untuk memilih bobot minimum yang akan dimasukkan kedalam knapsack karung yang mempunyai bobot maksimum tertentu. Persoalan ini disebut
Integer Knapsack karena tiap objek hanya memiliki dua status yaitu terpilih atau tidak. Untuk permasalahan knapsack pada suatu graph, bobot minimum yang dipilih
adalah merupakan lintasan terpendek yang harus dilewati dari titik sumber ke titik tujuan. Sedangkan biaya adalah sebagai kendala yang harus dipenuhi dalam
menentukan lintasan terpendek. 2
4
3 1
10,12
9,4 8,5
3,2
8,1 4,1
f
1
f
2
f
3
f
4
f
5
f
6
Universitas Sumatera Utara
Masalah knapsack ini dapat dirumuskan dengan memberi nilai 1 sampai n dan memperkenalkan suatu vektor variabel biner x
j
j = 1,…,n dengan arti sebagai berikut :
=
1
j
x
Jika p
j
merupakan ukuran kelayakan yang diberikan oleh objek j, w
j
adalah besarannya dan K adalah bobot maksimum dari knapsack, masalahnya akan terpilih,
diantara semua semua vektor biner x 0–1 yang akan memenuhi kendala
∑
=
≤
n j
j j
K x
w
1
Dimana salah satu fungsi objektif di maksimumkan
∑
= n
j j
j
x p
1
0–1 Programming adalah salah satu metode yang dipergunakan untuk menyelesaikan masalah Knapsack, dimana keadaan tertentu terjadi dan masing-
masing keadaan mempunyai sebuah nilai yang dihubungkan dengan besarannya. Secara nyata bahwa solusi optimal dari masalah Knapsack akan menunjukkan
kemungkinan yang terbaik. Oleh sebab itu penulis berkeinginan untuk membahas bagaimana metode 0-1 Programming dalam menyelesaikan masalah lintasan
terpendek yang memenuhi kendala-kendala yang telah ditentukan, serta menerapkannya dengan menggunakan program LINDO .
Jika objek j dipilih Lainnya
Universitas Sumatera Utara
1.2 Perumusan Masalah