3.2.1 Tahap Permulaan Initiation Phase
Dimulai dengan sebuah aliran, katakan untuk setiap x
ij
= 0, dan inisial dual variabel, katakan w
i
= 0. Hitung z
ij
– c
ij
= w
i
– w
j
- c
ij.
3.2.2 Tahap Primal: Merubah Aliran
Tentukan status kilter dan bilangan kilter untuk setiap arc. Kemudian cari dalam network yang membentuk sirkuit cycle. Jika semua arc in-kilter, maka stop. Dengan
demikian diperoleh solusi optimal. Jika tidak, maka pilih atau lanjutkan dengan arc out-of-kilter p,q yang sebelumnya terpilih. Dari network G membentuk network G’
menurut Tabel 3.3. Untuk setiap arc i,j pada G adalah salah satu dari status kilter yang membolehkan aliran meningkat, tempatkan arci, j di dalam G’ dengan arus
yang dibolehkan meningkatkan. Untuk setiap arc i,j pada G adalah salah satu dari status kilter yang membolehkan aliran berkurang, selanjutnya tempatkan arcj, i di
dalam G’ dengan arus yang dibolehkan. Untuk arc-arc di dalam G yang bagian dari status yang dibolehkan itu tidak ada aliran berubah, kemudian tempatkan tidak ada arc
di dalam G’. Penentuan sirkuit seperti itu disebut breakthrough. Jika sirkuit seperti itu didapatkan, maka tentukan perubahan aliran
Δ sama dengan minimum dari aliran yang
berubah pada arc dalam sirkuit. Ubah aliran pada setiap arc dari siklus berhubungan dalam G dengan jumlah
Δ menggunakan orientasi yang ditetapkan oleh sirkuit sebagai
arah peningkatan. Khususnya, misalkan x’
ij
= x
ij
+
Δ jika i, j adalah anggota dari
sirkuit G’; misalkan x’
ij
= x
ij
-
Δ jika j, i adalah anggota dari sirkuit G’; misalkan x’
ij
= x
ij
sebaliknya. Ulangi tahap primal. Jika tidak ada sirkuit berisi arc p, q ada tersedia di dalam G’, maka lakukan tahap dual. Penentuan tidak ada sirkuit seperti
itu disebut nonbreakthrough.
Universitas Sumatera Utara
Tabel 3.3 Jumlah dan arah perubahan aliran yang diijinkan
. Sebagai contoh lihat Gambar 3.1. Ambil salah satu arc, misalnya arc1,3. x
13
l
13
dan z
13
– c
13
0. Jika dilihat dari tabel pada Tabel 3.3, maka arc1,3 adalah arc out-of-kilter. Untuk itu aliran pada arc1,3 harus ditingkatkan increase sebesar
| x
13
- l
13
| agar arc1,3 menjadi in-kilter. Nilai yang diijinkan adalah sebesar nilai l
13
= 1. Hasilnya dapat dilihat pada Gambar 3.4 z
ij
– c
ij
z
ij
– c
ij
= 0 z
ij
– c
ij
x
ij
u
ij
x
ij
= u
ij
l
ij
x
ij
u
ij
x
ij
= l
ij
x
ij
l
ij
2 1
|x – l
|
|x – l
| |x
– l |
|x – u
| |x
– u |
|x – u
|
Universitas Sumatera Utara
Gambar 3.4. Network G’ buatan dari Gambar 3.1.
Network G’ telah terbentuk dan out-of-kilter arc p, q telah ditentukan, selanjutnya akan mencari sirkuit directed cycle yang ada pada arc G’. Jika tidak ada
sirkuit pada arc G’, maka harus melakukan proses tahap dual pada algoritma.
Pada arc1,3 terdapat sirkuit, sebut saja Ccircuit = {1 ,3, 3, 4, 4,1}.
Tentukan jumlah dari permitted change pada aliran adalah
Δ = Minimum {1, 5, 3}= 1.
Hasilnya dapat dilihat pada Gambar 3.3. Arc 2, 3 dan 3, 4 masih out-of-kilter pada G. Karena tidak ada lagi sirkuit pada network G, maka lakukan tahap dual dari
algoritma out-of-kilter.
Gambar 3.5. Perubahan pada network G pada tahap primal
3.2.3 Tahap Dual