Anda di halaman 1dari 43

Network Model

1
DR Rahma Fitriani, S.Si., M.Sc.,
Riset Operasi 2011
Semester Genap 2011/2012
Definisi Dasar
Graph atau Network ditentukan oleh 2 set simbol
yaitu node dan arc
Node : simpul dari graph atau network
Arc : terdiri dari sepasang simpul yang berurutan
dan merepresentasikan arah pergerakan yang
mungkin yang dapat terjadi di antara simpul
simpul.
Untuk arc (j,k), arah yang mungkin adalah node j ke
node k. Node j disebut initial node dan node k
disebut terminal node
Contoh :



V = { 1,2,3,4}
A = {(1,2), (2,3), (3,4), (4,1), (4,3)}
1 4
2 3
Chain : Barisan dari arc sedemikian hingga
setiao arc memiliki tepat satu simpul yang sama
dengan arc sebelumnya
Path : Chain dimana terminal node setiap arc
sama dengan initial node dari arc berikutnya
Shortest Path Problem
Pengiriman dari titik ke titik
Supply, transhipment (substation), dan
demand nodes

Shortest path problem
Biaya proportional dengan jarak
Masalah pemilihan jarak terpendek (biaya
minimum)
Contoh:
1
3
2
5
4
6
Sumber
Tujuan
4
3
3
3
2
2
2
Algoritma Djikstra
1. Beri label node 1 dengan label permanen o.
Kemudian beri label node node yang
berhubungan dengan node 1 dengan
temporary label yang sama dengan panjang
arc yang menghubungkan node 1 dengan
node i. Node yang lain diberi label .Pilih
node dengan temporary label terkecil dan
jadikan permanen label
2. Misalkan node I adalah node ke (k+1) yang diberi
permanen label. Untuk setiap node j yang
sekarang mempunyai temporary label dan
dihubungkan dengan node I, ganti temporary
label j dengan
min {temporary label node j yang sekarang
, permanen label node I +panjang arc(I,j)}
Ubah temporary label terkecil dengan permanen
label. Lanjutkan sampai semua node mempunyai
permanen label
3. Untuk menemukan path terpendek dari node
node 1 ke node j, bekerjalah terbalik dari
node j dengan menemukan selisih label yang
sama dengan panjang arc yang
menghubungkan node
1
3
2
5
4
6
4
3
3
3
2
2
2
1
3
2
5
4
6
4
3
3
3
2
2
2
0



Distance label
Temporary ={1, 2, 3, 4, 5, 6}
Permanent={ }
1
3
2
5
4
6
4
3
3
3
2
2
2
0



Distance label
Permanen
Temporary ={2, 3, 4, 5, 6}
Permanent={1 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0



Distance label
Permanen
Temporary ={2, 3, 4, 5, 6}
Permanent={1 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4

3
Temporary
Distance label
Permanen
Permanen
Temporary ={2, 3, 4, 5, 6}
Permanent={1 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4

3
Temporary
Distance label
Permanen
Permanen
Temporary ={2, 4, 5, 6}
Permanent={1, 3 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4

3
Temporary
Distance label
Permanen
Permanen
Temporary ={2, 4, 5, 6}
Permanent={1, 3 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4

3 6
Temporary
Distance label
Permanen
Permanen
Permanen
Temporary ={2, 4, 5, 6}
Permanent={1, 3 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4

3 6
Temporary
Distance label
Permanen
Permanen
Permanen
Temporary ={4, 5, 6}
Permanent={1, 2,3 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4

3 6
Temporary
Distance label
Permanen
Permanen
Permanen
Temporary ={4, 5, 6}
Permanent={1, 2,3 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4 7

3 6
Temporary
Distance label
Permanen
Permanen
Permanen
Temporary ={4, 5, 6}
Permanent={1, 2,3 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4 7

3 6
Temporary
Distance label
Permanen
Permanen
Permanen
Permanen
Temporary ={4, 5, 6}
Permanent={1, 2,3 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4 7

3 6
Temporary
Distance label
Permanen
Permanen
Permanen
Permanen
Temporary ={4, 6}
Permanent={1, 2,3, 5 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4 7
8
3 6
Temporary
Distance label
Permanen
Permanen
Permanen
Permanen
Temporary ={4, 6}
Permanent={1, 2,3, 5 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4 7
8
3 6
Temporary
Distance label
Permanen
Permanen
Permanen
Permanen
Permanen
Temporary ={4, 6}
Permanent={1, 2,3, 5 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4 7
8
3 6
Temporary
Distance label
Permanen
Permanen
Permanen
Permanen
Permanen
Temporary ={6}
Permanent={1, 2,3, 4, 5 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4 7
Min (9,8)=8
3 6
Temporary
Distance label
Permanen
Permanen
Permanen
Permanen
Permanen
Permanen
Temporary ={6}
Permanent={1, 2,3, 4, 5 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4 7
8
3 6
Temporary
Distance label
Permanen
Permanen
Permanen
Permanen
Permanen
Permanen
Temporary ={ }
Permanent={1, 2,3, 4, 5, 6 }
1
3
2
5
4
6
4
3
3
3
2
2
2
0
4 7
8
3 6
Temporary
Distance label
Permanen
Permanen
Permanen
Permanen
Permanen
Permanen
Shortest path:
1 2 5 6
Shortest Path sebagai Transhipment
Problem


Transhipment problem dengan setiap demand
dan supply sama dengan 1
Jalur yang tidak terdefinisi dikenai biaya besar
Biaya nol untuk jalur dari node i ke node i
Cost 2 3 4 5 6 Supply
1 4 3 10000 10000 10000 1
2 0 10000 3 2 10000 1
3 10000 0 10000 3 10000 1
4 10000 10000 0 10000 2 1
5 10000 10000 10000 0 2 1
Demand 1 1 1 1 1
1
3
2
5
4
6
4
3
3
3
2
2
2
Model LP shortest path sbg
transhipment problem
negativity non
1 ...
...
1 ...
1 ...
...
1 ...
. .
2 0 ... 3 4 min
56 16
52 12
56 52
16 12
56 55 13 12





x x
x x
x x
x x
t s
x x x x z
Solusi optimal Contoh:
1
3
2
5
4
6
Sumber
Tujuan
4
2
2
Total distance (cost) = 8
Max Flow Problem
Model network di mana kapasitas jalur
diperhitungkan

Memaksimumkan jumlah pengiriman dari
source ke destination dengan kendala
kapasitas setiap jalur
Contoh: dengan kapasitas setiap jalur
S
3
1
2
D
2
3
3
4
1
2
a0
a0 jalur buatan untuk conservation flow, outflow = inflow
LP untuk max flow problem
0
d node ,
3 node ,
2 node ,
1 node ,
s node ,
, 2 , 1 , 4 , 3 , 3 , 2
. .
max
,
0 , 3 , 2
, 3 13
, 2 2 , 12
13 12 1 ,
2 , 1 , 0
, 2 , 3 13 12 2 , 1 ,
0

j i
d d
d
d s
s
s s
d d s s
x
x x x
x x
x x x
x x x
x x x
x x x x x x
t s
x z
Solusi optimal max flow
S
3
1
2
D
2(1)
3(2)
3(0)
4(1)
1(1)
2(2)
a0
The Ford Fulkerson Method
Metode ini digunakan untuk menyelesaikan
masalah maximum flow
Asumsi: feasible flow telah ditemukan (misal :
flow pada setiap arc adalah nol)
Yang menjadi pertanyaan
?? Apakah sudah merupakan optimal flow
?? Jika belum, bagaimana memodifikasi flow
supaya didapatkan feasible flow baru yang
mempunyai flow yang lebih besar

Jawaban untuk Pertanyaan Kedua
I. Tentukan property mana yang dimiliki setiap
arc dalam network
P1. Flow melalui arc (I,j) dibawah kapasitas
arc (I,j), sehingga flow yang melalui (I,j)
bisa ditingkatkan. Memiliki property I atau
increase
P2. Flow di arc(I,j) positif, sehingga flow di
arc (I,j) bisa dikurangi. Memiliki property R
atau reduce
II. Labeling procedure
1. Labeli So
2. Labeli node dan arc dengan aturan
- Jika node x sudah dilabeli, node y belum dilabeli,
arc(I,j) anggota I, maka labeli node y dan arc (x,y). Arc
(x,y) disebut forward arc
- Jika node y belum dilabeli, node x sudah dilabeli, arc
(y,x) anggota R, maka labeli node y dan arc(y,x). Arc
(y,x) disebut bacward arc
3. Lanjutkan proses pelabelan sampai Si dilabeli atau
sampai tidak ada node yang bisa dilabeli
Jika proses pelabelan sampai ke sink, maka akan
terbentuk chain (C) dari arc yang telah dilabeli
dari So ke Si.
Chain harus terdiri dari salah satu kasus berikut :
Case 1. C terdiri dari hanya forward arc
Case 2. C terdiri dari forward arc dan backward
arc
III. Penyesuaian feasible flow dan
peningkatan flow dari So ke Si

Dalam Case 1.
Misalkan i(x,y) adalah jumlah dimana flow di arc
(x,y) dapat ditingkatkan tanpa melanggar
capacity constraint untuk arc (x,y) :
= min
(,)
(, )
Tingkatkan flow melalui setiap arc di C sebesar k
Dalam Case 2.
Misalkan r(x,y) adalah jumlah dimana flow
melalui arc (x,y) dapat dikurangi

1
= min
(,)
(, )dan
2
= min
(,)
(, )
Turunkan flow di backward arc dalam C sebesar
min
1
,
2
unit dan tingkatkan flow di forward
arc dalam C sebesar min
1
,
2

Rangkuman The Ford Fulkerson
Method
1. Temukan feasible flow
2. Gunakan labeling procedure, coba untuk
melabeli sink. Jika sink tak bisa dilabeli,
feasible flow adalah maximum flow
3. Sesuaikan feasible flow dan tingkatkan flow
dari source ke sink. Kembali ke langkah 2

Anda mungkin juga menyukai