Tahap Permulaan Initiation Phase Tahap Primal: Merubah Aliran

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