Pendekatan Solusi Penyelesaian Masalah Pelangsiran Unit Kereta Penumpang pada Stasiun Kereta Api dengan Menggunakan Teknik Pembangkitan Kolom

Kereta-api- datang Gambar 4. Situasi di rel pelangsiran pada Selasa pukul 06:00. Pada Gambar 4, Kereta 3628 berangkat dari peron 5A ke rel pelangsiran melalui salah satu sisi rel. Kemudian dari peron 3B Kereta 561 memasuki rel pelangsiran melalui sisi kiri rel, sedangkan Kereta 3678 berangkat dari peron 5A ke rel pelangsiran melalui sisi kanan rel. Kereta 561 dan 3678 tidak dapat memasuki rel pelangsiran dari sisi yang sama baik kiri maupun kanan. Gamb ar 5 menggambarkan situasi di rel pelangsiran Selasa pukul 06:00 jika unit-unit dari Kereta 561 dan 3678 memasuki rel pelangsiran melalui sisi yang sama dalam contoh ini melalui sisi kanan rel. Gambar 5. Situasi di rel pelangsiran pada Selasa pukul 06:00 jika Kereta 561 dan Kereta 3678 memasuki rel pelangsiran melalui sisi yang sama. Pada Gambar 5, Kereta 520 yang harus berangkat lebih dulu daripada Kereta 3629 akan tertutup dari kedua sisi rel oleh Kereta 3628 dan Kereta 3678. Hal ini disebut crossing dan tidak diperbolehkan karena akan menyulitkan proses pemberangkatan kereta. Selanjutnya, dalam kasus ini Kereta 3628 dan Kereta 3678 yang akan membentuk Kereta-api-berangkat 3629 tidak dapat diparkir berdekatan pada rel pelangsiran yang sama. Hal ini juga akan menyulitkan proses pelangsiran pada pagi hari. Jika rel berupa jalur-bebas , crossing hanya dapat dihindari dengan memarkir beberapa unit pada rel yang berbeda.

3.2 Pendekatan Solusi

Untuk mencari solusi dari masalah pelangsiran secara utuh adalah hal yang rumit. Oleh karena itu, untuk memudahkan pencarian solusi dari masalah pelangsiran, pendekatan solusi dipecah ke dalam dua submasalah. Langkah pertama adalah proses pemadanan dari sejumlah unit kereta-api- datang menjadi unit kereta-api-berangkat. Setiap unit kereta-api-datang ditetapkan menjadi unit kereta-api-berangkat. Misalkan berdasarkan tabel waktu pada Tabel 1, unit kereta-api-datang dengan subtipe MAT64_4 dari Kereta 3628 ditetapkan menjadi unit kereta-api-berangkat Kereta 3629 Kereta 520 MAT 64_2 MAT 64_2 MAT 64_4 ICM_3 ICM_4 Kereta 561 Kereta 3628 Kereta 3678 MAT 64_2 MAT 64_2 ICM_3 ICM_4 Kereta 3629 Kereta 3628 Kereta 561 Kereta 3678 MAT 64_4 Kereta 520 Kereta-api- berangkat Kereta-api- datang Kereta-api- berangkat Kereta 3629 dengan subtipe yang sama dari Kereta 3629. Hal yang perlu diperhatikan bahwa unit kereta-api-datang dan unit kereta-api- berangkat dari suatu kereta tertentu adalah dua unit kereta dari subtipe yang sama, hanya saja penamaan keretanya yang berbeda. Pada contoh ini kereta yang datang dinamakan Kereta 3628, sedangkan kereta yang berangkat dinamakan Kereta 3629. Hasil dari langkah ini adalah himpunan gabungan dari satu atau lebih unit kereta yang digunakan secara bersama-sama selama periode tertentu yang didefinisikan sebagai blok. Sebagai contoh, unit kereta ICM_4 dan ICM_3 dalam Gambar 4 membentuk sebuah blok karena kedua unit ini digunakan secara bersama-sama pada Kereta 561. Unit kereta ICM_3 dan MAT64_4 tidak membentuk blok karena kedua unit ini tidak digunakan secara bersama-sama dalam pembentukan suatu kereta. Langkah kedua berkaitan dengan pemarkiran unit-unit pelangsiran pada rel-rel pelangsiran. Dalam hal ini, setiap blok diparkir di suatu rel pelangsiran sedemikian sehingga kapasitas rel tidak terlebihi dan crossing tidak terjadi.

3.2.1 Formulasi Masalah Pemadanan kereta-api-datang menjadi kereta-

api -berangkat Untuk setiap kereta-api-datang dan kereta-api-berangkat didefinisikan sebuah network . Simp ul-simpul dari network menyatakan unit-unit kereta dan sebuah simpul rekaan dummysimpul 0. Simpul- simpul tersebut dapat mewakili tempat- tempat di mana unit kereta dapat dibagi ke dalam beberapa part. Part adalah himpunan bagian dari unit-unit kereta yang berdampingan pada suatu kereta api. Sisi berarah pada network mewakili part yang mungkin terbentuk dari suatu kereta. Secara matematis, banyaknya part yang dapat dibentuk dari suatu kereta dapat dinyatakan sebagai kombinasi n m C , dengan m adalah banyaknya simpul dari suatu kereta dan n adalah banyaknya simpul yang berada di antara simpul sumber dan simpul tujuan pada suatu network dari kereta. Gambar 6 menggambarkan suatu network untuk Kereta-api-berangkat 3629 pada Tabel 1. Gambar 6. Network dari Kereta 3629 pada Tabel 1. Simpul 0 adalah simpul rekaan, sedangkan simpul 1, 2, 3 adalah unit kereta dari Kereta 3629, yang secara berurutan memiliki subtipe MAT64_4, MAT64_2, MAT64_2. Setiap sisi berarah bersesuaian dengan satu part dan terdapat 6 part yang berbeda yang mungkin pada contoh ini. Himpunan part yang terbentuk pada network di Gambar 6 diperoleh dari kombinasi yang mungkin semua subtipe unit kereta dari Kereta 3629 pada Tabel 1 dan sebuah simpul rekaan. Sebagai contoh sisi berarah 0,1 pada network menyatakan bahwa subtipe MAT64_4 dari Kereta 3629 membentuk suatu part, sedangkan sisi berarah 0,2 menyatakan bahwa subtipe MAT64_4 dan MAT64_2 dari Kereta 3629 membentuk suatu part. Sebuah path dari simpul pertama sampai yang terakhir pada network ini bersesuaian dengan pembagian kereta ke dalam beberapa part. Sebagai contoh, path 0-2-3 pada Gambar 6 menyatakan bahwa unit kereta 1 dan 2 membentuk satu part dan unit kereta 3 membentuk part yang lain. Sebuah blok merupakan suatu kombinasi dari part-part pada kereta api. Simpul rekaan pada network dari Kereta 3629 dibutuhkan karena terdapat kemungkinan bahwa dua unit kereta membentuk satu part dan unit kereta lainnya membentuk part yang berbeda. Gambar 7 adalah network dari Kereta 3629 pada Tabel 1 tanpa simpul rekaan. 1 2 3 Gambar 7. Network dari Kereta 3629 pada Tabel 1 tanpa simpul rekaan. Jika tidak ada simpul rekaan pada network ini, maka hanya ada 3 part yang mungkin terbentuk. Dalam hal ini path yang dapat dibentuk hanya ada dua. Pertama, path 1-2-3 pada Gambar 7 yang menyatakan bahwa ketiga unit kereta membentuk part yang berbeda, sedangkan yang kedua, path 1-3 pada Gambar 7 yang menyatakan bahwa ketiga unit kereta hanya membentuk 1 part. Misalkan diberikan I sebagai himpunan dari semua part yang mungkin untuk kereta- api-datang dan J sebagai himpunan dari semua part yang mungkin untuk kereta-api- berangkat. Secara formal diperkenalkan sebuah formulasi matematika dengan variabel biner sebagai berikut: 1, jika part i ∈ I digunakan pada suatu kereta-api-datang u i = 0, selainnya 1, jika part j ∈ J digunakan pada suatu kereta-api-berangkat v j = 0, selainnya 1, jika part i ∈ I ditetapkan menjadi part j ∈ J z ij = 0, selainnya Misalkan: a T : himpunan dari kereta-api-datang dengan unit pelangsirannya, d T : himpunan dari kereta-api-berangkat dengan unit pelangsirannya, t A : himpunan sisi berarah pada network dari kereta t, + t h A : himpunan sisi berarah yang menjauhi simpul h untuk kereta t, − t h A : himpunan sisi berarah yang mendekati simpul h pada network kereta t, − t C : himpunan dari semua simpul-antara di network pada kereta t; simpul- antara adalah simpul-simpul yang berada di antara simpul sumber dan simpul tujuan pada suatu network , i J : himpunan part dari kereta-api- berangkat dengan konfigurasi pemadanan yang sama sebagai part dari kereta-api-datang i, j I : himpunan part dari kereta-api- datang dengan konfigurasi pemadanan yang sama sebagai part dari kereta-api-berangkat j. Misalkan Q menyatakan penalti untuk setiap part dari kereta-api-datang yang ada di rel pelangsiran tetapi tidak ditetapkan menjadi part dari kereta-api-berangkat. Misalkan pula w ij menyatakan ongkos dari penetapan part dari kereta-api-datang i menjadi part dari kereta-api-berangkat j. Dalam tulisan ini ongkos didefinisikan sebagai perbedaan antara waktu datang dan berangkat dari part i dan j. Model matematikanya: Minimumkan ∑ ∈ + I i i u Q ∑∑ ∈ ∈ I i J j ij ij i z w 10 terhadap ∑ + ∈ = t A i i u 1 a T t ∈ ∀ 11 ∑ + ∈ − t h A i i u ∑ − ∈ = t h A i i u , − ∈ ∀ ∈ ∀ t a C h T t , 12 1 = ∑ + ∈ t A j j v d T t ∈ ∀ 13 ∑ + ∈ − t h A j j v = ∑ − ∈ t h A j j v , − ∈ ∀ ∈ ∀ t d C h T t , 14 i J j ij u z i = ∑ ∈ I i ∈ ∀ 15 j I i ij v z j = ∑ ∈ J j ∈ ∀ 16 { } 1 , , , ∈ j i ij v u z J j I i ∈ ∀ ∈ ∀ , 17 Tujuan dari fungsi objektif 10 adalah meminimumkan jumlah terboboti dari banyaknya part dan ongkos penetapan part dari kereta-api-datang menjadi part dari kereta-api-berangkat sehingga unit -unit kereta dapat dikelompokkan sebanyak mungkin ke dalam suatu part. Kendala 11 dan 12 menjamin tercovernya setiap unit kereta-api-datang oleh sebuah part, sedangkan kendala 13 dan 14 menjamin 1 2 3 tercovernya setiap unit kereta-api-berangkat oleh sebuah part. Kendala 15 menjamin bahwa untuk setiap part dari kereta-api- datang ditetapkan menjadi suatu part pada kereta-api-berangkat jika dan hanya jika part dari kereta-api-datang adalah hasil dari pemecahan kereta. Kendala 16 memodelkan hal yang sama untuk setiap part dari kereta-api-berangkat. Kendala 17 menyatakan bahwa variabel yang digunakan adalah variabel 0-1 yang telah didefinisikan. Hasil dari langkah ini adalah himpunan part dari kereta-api-datang yang ditetapkan menjadi part dari kereta-api-berangkat, yang sebelumnya kita sebut dengan blok. Blok- blok ini akan digunakan dalam langkah 2. 3.2.2 Formulasi Masalah Penetapan Unit Kereta pada Rel Pelangsiran Seperti telah dijelaskan sebelumnya, pemadanan dari sejumlah unit kereta-api- datang menjadi unit kereta-api-berangkat dari unit pelangsiran menghasilkan sebuah himpunan blok B. Blo k yang tidak perlu diparkir di rel pelangsiran tidak dimasukkan dalam himpunan B ini. Untuk setiap blok diberikan waktu kedatangan dan keberangkatan serta peron kedatangan dan keberangkatan. Selain itu diberikan pula ongkos rute antara rel-rel di depan peron dan semua rel pelangsiran yang fisibel untuk setiap blok. Rel pelangsiran yang fisibel untuk suatu blok adalah rel pelangsiran yang memiliki tipe serta panjang yang sesuai untuk suatu blok. Ongkos rute untuk jalur-bebas dapat berbeda antara sisi kanan dan kirinya. Hal ini disebabkan antara lain karena jarak yang berbeda antara rel-rel di depan peron dengan rel-rel pelangsiran jika dimasuki dari sisi kiri atau kanan. Berdasarkan informasi-informasi di atas, langkah kedua dari pendekatan solusi masalah pelangsiran terdiri dari penetapan blok pada rel pelangsiran dengan ongkos yang minimum sehingga kapasitas dari rel pelangsiran tidak terlebihi dan tidak terjadi crossing antarblok. Crossing terjadi jika suatu blok menghalangi blok yang datang ke rel pelangsiran atau blok yang berangkat dari rel pelangsiran. Submasalah dari penetapan blok pada rel pelangsiran ini disebut sebagai Track Assignment Problem TAP. TAP diformulasikan sebagai sebuah masalah pemartisian hinpunan dengan kendala tambahan. Untuk formulasi ini, didefinisikan suatu track assignment, yang disingkat dengan assignment, sebagai sebuah penyusunan dari blok-blok pada rel pelangsiran yang fisibel dalam suatu periode perencanaan. Sebuah assignment dikatakan fisibel jika memenuhi kondisi-kondisi berikut: § assignment tidak mengandung crossing. § panjang total dari unit kereta pelangsiran pada rel tidak melebihi panjang rel. § semua blok mempunyai kesempatan yang sama untuk parkir pada rel. Tabel 1 dan Gambar 1 memuat sebuah contoh assignment yang tidak mengandung crossing dari blok terhadap sebuah rel pelangsiran. Misalkan S adalah himpunan dari rel pelangsiran dan misalkan pula K s adalah himpunan assignment fisibel pada rel s ∈ S dan s b K adalah himpunan assignment fisibel pada rel s ∈ S yang mengandung blok b ∈ B. Kemudian didefinisikan variabel- variabel biner berikut: 1, jika assignment fisibel k ∈ K s digunakan pada rel pelangsiran s ∈ S = s k x 0, selainnya 1, jika blok b ∈ B tidak diparkir pada rel pelangsiran s ∈ S = b y 0, selainnya Misalkan s k c menyatakan ongkos dari suatu assignment k pada rel s. Ongkos ini merupakan jumlah ongkos rute pelangsiran dari blok-b lok yang berbeda pada suatu assignment. Misalkan d menyatakan penalti jika sebuah blok tidak diparkir pada sebuah rel. TAP kemudian diformulasikan sebagai berikut: Minimumkan ∑ ∑ ∑ ∈ ∈ ∈ + B b b S s K k s k s k y d x c s 18 terhadap 1 = + ∑ ∑ ∈ ∈ b S s K k s k y x s b , B b ∈ ∀ 19 1 ≤ ∑ ∈ s K k s k x , S s ∈ ∀ 20 { } 1 , ∈ s k x , s K k S s ∈ ∀ ∈ ∀ , 21 { } 1 , ∈ b y , B b ∈ ∀ 22 Tujuan dari fungsi objektif 18 adalah meminimumkan ongkos dari assignment- assignment yang fisibel serta meminimumkan banyaknya blok yang tidak diparkir pada rel pelangsiran. Kendala 19 menyatakan bahwa setiap blok dicover oleh tepat satu assignment pada satu rel pelangsiran atau tidak diparkir sama sekali. Selanjutnya, kendala 20 menyatakan bahwa setiap rel pelangsiran dapat mempunyai paling banyak satu assignment. Kendala 21 dan 22 menyatakan bahwa variabel yang digunakan adalah variabel 0-1 yang telah didefinisikan. Kolom pada matriks kendala dari masalah TAP tersebut menunjukkan assignment pada rel pelangsiran tertentu dan baris pada matriks menunjukkan blok dan rel pelangsiran. Jika blok b tercover dalam assignment k pada suatu rel s, maka elemen matriks pada baris b dan kolom ks memiliki nilai 1, dan 0 jika blok b tidak tercover dalam assignment tersebut. IV PENYELESAIAN MASALAH PENETAPAN BLOK PADA REL PELANGSIRAN DENGAN MENGGUNAKAN TEKNIK PEMBANGKITAN KOLOM Penyelesaian masalah pelangsiran secara utuh dengan menggunakan algoritme simpleks adalah hal yang rumit. Hal ini disebabkan banyaknya assignment yang terbentuk pada masalah penetapan blok di rel pelangsiran. Karena banyaknya variabel yang besar, menyelesaikan masalah minimisasi penetapan blok pada rel pelangsiran dengan menggunakan metode simpleks akan menghabiskan banyak waktu dalam pengerjaannya. Di sini akan dibahas salah satu teknik yang dapat digunakan untuk menyelesaikan masalah penetapan blok pada rel pelangsiran, yaitu teknik pembangkitan kolom atau column generation . Teknik pembangkitan kolom adalah salah satu teknik untuk menyelesaikan suatu pemrograman linear dengan hanya menggunakan sebagian variabel dari masalah keseluruhan. Jika solusi PL tersebut belum mencapai kondisi optimal pada masalah secara keseluruhan, maka dengan kriteria tertentu ditambahkan variabel pada PL tersebut. Setelah itu diselesaikan kembali PL yang telah ditambah tersebut sampai diperoleh suatu kriteria pemberhentian. Masalah induk master problemMP dari masalah ini merupakan masalah pemilihan himpunan assignment yang sesuai dengan model 18 – 22, yaitu: Minimumkan ∑ ∑ ∑ ∈ ∈ ∈ + B b b S s K k s k s k y d x c s terhadap 1 = + ∑ ∑ ∈ ∈ b S s K k s k y x s b , B b ∈ ∀ 1 ≤ ∑ ∈ s K k s k x , S s ∈ ∀ ≥ s k x , s K k S s ∈ ∀ ∈ ∀ , ≥ b y , B b ∈ ∀ Masalah induk merupakan masalah PL- relaksasi. Dalam teknik pembangkitan kolom digunakan pemrograman linear masalah induk terbatas Restricted Master ProblemRMP, yaitu pemrograman linear yang hanya menggunakan sebagian variabel dari MP. Variabel kolom yang belum digunakan dalam RMP dibangkitkan berdasarkan nilai variabel dual yang diperoleh dari masalah induk. Oleh karena itu, diperkenalkan variabel dual B b b ∈ λ dan S s s ∈ µ berturut-turut untuk kendala 19 dan 20. Biaya tereduksi dari suatu PL dapat diperoleh dari masalah dual PL tersebut. Misalkan s k B adalah himpunan blok dari assignment k yang diparkir pada rel s. Dengan informasi ini, masalah dual dari masalah induk 23 adalah: 23 Maksimumkan ∑ ∑ ∈ ∈ + s k B b S s s b µ λ terhadap s k s B b b c s k ≤ + ∑ ∈ µ λ , s K k S s ∈ ∈ ∀ , 24 b λ λ λ ,..., , 2 1 takterbatas ,..., , 2 1 ≤ s µ µ µ Berdasarkan pemaparan bukti dari Teorema Dualitas Kuat Nash Sofer, 1996, kondisi optimal primal yang merupakan biaya tereduksi adalah ekivalen dengan kondisi fisibel pada masalah dual. Sehingga kendala 24 merupakan biaya tereduksi dari masalah induk 23. Misalkan biaya tereduksi tersebut dinotasikan dengan s k c , maka sesuai dengan kendala 24 : s s B b b s k s k K k S s c c s k ∈ ∈ ∀ − − = ∑ ∈ , , µ λ 25 Persamaan 25 mewakili biaya tereduksi dari assignment k pada rel pelangsiran s. Selanjutnya akan didiskusikan representasi network untuk masalah penetapan blok pada rel pelangsiran dan akan diberikan teknik pembangkitan kolom untuk optimisasi penetapan blok pada rel pelangsiran. Hasil dari algoritme ini adalah sebuah himpunan kolom atau himpunan assignment untuk suatu rel pelangsiran. 4.1 Representasi Network dari Masalah Penetapan Blok pada Rel Pelangsiran Representasi network digunakan untuk membangkitkan assignment-assignment pada satu rel pelangsiran. Misalkan F adalah himpunan tipe pendekatan yang berbeda dari dan ke suatu rel pelangsiran. Untuk suatu jalur-satu-arah, F hanya mengandung satu elemen, yaitu datang dari dan berangkat ke arah yang sama, baik kiri LL atau kanan RR. Sedangkan untuk suatu jalur-bebas , F mengandung 4 elemen: § Datang dari kiri dan berangkat ke kiri LL § Datang dari kiri dan berangkat ke kanan LR § Datang dari kanan dan berangkat ke kiri RL § Datang dari kanan dan berangkat ke kanan RR Untuk memudahkan pembentukan assignment pada tulisan ini diasumsikan bahwa himpunan blok B yang perlu diparkir disusun secara berurutan berdasarkan waktu kedatangan. Setiap blok B b ∈ diwakili oleh suatu lapisan ke -b dalam suatu rel pelangsiran atau disebut juga sebagai lapisan b L yang terdiri dari simpul-simpul b f n dengan F f ∈ dan simpul b not n yang berpadanan dengan tidak diparkirnya suatu blok b pada rel. Simpul-simpul pada network memuat sebuah simpul sumber o, sebuah simpul tujuan t dan untuk setiap blok b terdapat lapisan b L . Karena blok-blok disusun secara berurutan berdasarkan waktu kedatangan, maka blok yang pertama kali harus diparkir di rel pelangsiran diwakili oleh lapisan L 1 , blok yang kedua datang diwakili oleh lapisan L 2 , dan seterusnya. Sisi-sisi berarah pada network ini diarahkan dari simpul sumber ke setiap simpul pada lapisan pertama, dari setiap simpul di lapisan terakhir ke simpul tujuan, dan antara dua simpul pada lapisan-lapisan yang berturutan antara simpul sumber dan simpul tujuan jika blok-blok yang berhubungan dapat diparkir pada suatu rel tanpa terjadi crossing. Sisi yang menghasilkan crossing dikatakan sisi yang takfisibel. Misalkan didefinisikan − B sebagai himpunan dari blok tanpa adanya crossing, kemudian didefinisikan sebuah network , A N G = yang telah dijelaskan di atas sebagai : { } U B b b t o L N ∈ ∪ = , 26 { 1 1 , , : , + − + ∈ ∈ ∈ = b b b j b i L j L i B b n n A dan 1 , + b j b i n n adalah fisibel } ∪ 27 { } ∪ ∈ 1 1 : , L i n o i     ∈     B B j L j t n : , 28 dengan B adalah banyaknya anggota kardinalitas himpunan B. Pada Gambar 8 diilustrasikan network dengan 3 blok untuk sebuah jalur-bebas . Network ini mewakili rencana pemarkiran dari 3 blok yang datang ke peron kedatangan dengan rencana pelangsiran pada Tabel 1 untuk sebuah jalur-bebas . G : L 1 L 2 L 3 Gambar 8. Contoh dari sebuah network untuk jalur-bebas dengan 3 blok. Pada Gambar 8, berdasarkan waktu kedatangan seperti yang telah diberikan pada Tabel 1 lapisan L 1 mewakili blo k 1 yaitu Kereta 3628, lapisan L 2 mewakili blok 2 yaitu Kereta 561, dan lapisan L 3 mewakili blok 3 yaitu Kereta 3678. Sisi-sisi berarah yang dicetak tebal dalam gambar ini mewakili sebuah path dalam network ini. Path ini membentuk sebuah asssignment di mana semua blok diparkir di rel. Dalam hal ini assignment yang terbentuk adalah blok pertama datang dari kiri dan berangkat dari sisi kanan, sedangkan blok kedua datang dan berangkat dari sisi kiri, dan blok ketiga datang dan berangkat dari sisi kanan. Assignment ini adalah assignment yang tidak mengandung crossing karena tidak me muat sisi-sisi berarah yang takfisibel. Sebagai contoh, tidak ada sisi berarah dari simpul ’RR’ di lapisan L 2 ke simpul ’RR’ di lapisan L 3 . Karena jika Kereta 561 dan Kereta 3678 datang dan berangkat dari rel pelangsiran melalui sisi kanan, maka Kereta 561 yang harus berangkat lebih dulu daripada Kereta 3678 akan tertutup dari sisi kanan rel. Hal ini akan menyebabkan sisi berarah menghasilkan crossing atau dikatakan sisi berarah yang takfisibel seperti yang telah diilustrasikan pada Gambar 5 yang selanjutnya akan menghasilkan assignment yang takfisibel. Simpul ’not’ pada setiap blok mengandung arti setiap blok memiliki kemungkinan untuk tidak diparkir pada rel tersebut. Jika path yang terbentuk adalah o- not-not-not-t, maka dalam contoh di atas tidak ada satu pun blok yang diparkir pada rel ini. Ongkos-ongkos didefinisikan pada sisi- sisi berarah dari network. Ongkos dari sebuah sisi berarah mewakili ongkos dari simpul ke mana sisi berarah tersebut diarahkan, yang merupakan ongkos dari penetapan blok tertentu ke rel pelangsiran tertentu, yang datang dari dan berangkat ke rel ini baik lewat sisi kiri atau kanannya. Ongkos rute blok-blok yang menyusun suatu path dari rel di depan peron kedatangan ke rel pelangsiran tertentu dan kembali ke rel di depan peron keberangkatan. Sebagai contoh, ongkos pada sisi berarah dari simpul sumber o ke LL pada lapisan L 1 adalah ongkos pelangsira n blok pertama yang datang dari rel di depan peron ke rel pelangsiran melalui sisi kiri dan berangkat dari rel ini lewat sisi kiri pula. Ongkos-ongkos pada sisi-sisi berarah ke simpul tujuan t menyatakan penggunaan dari suatu rel pelangsiran s. Semua path yang terbentuk pada network mewakili assignment yang tidak mengandung crossing. Sebuah path dalam LL LL LL LR LR LR RL RL RL RR not not not RR RR o t network mewakili assignment fisibel terhadap rel jika beberapa kendala tambahan terpenuhi. Kendala-kendala ini berhubungan dengan panjang dari blok-blo k pada rel serta waktu kedatangan dan keberangkatannya. 4.2 Memeriksa Kefisibelan Suatu Assignment dengan Menggunakan Algoritme Pemrograman Dinamik Assignment-assignment yang diperoleh dari representasi network pada bagian 4.1 belum tentu fisibel, karena kefisibelan suatu assignment juga harus memenuhi syarat bahwa panjang total dari blok yang menyusun suatu assignment tidak boleh melebihi panjang rel yang digunakan. Artinya banyaknya gerbong kereta suatu assignment tidak boleh melebihi banyaknya gerbong kereta maksimum yang dapat dimuat pada suatu rel pelangsiran. Untuk memeriksa kefisibelan suatu assignment digunakan algoritme pemrograman dinamik. Misalkan didefinisikan P i sebagai himpunan path fisibel o-i di G. Selain itu didefinisikan pula ,..., j i l sebagai panjang dari path ,..., j i dengan i adalah simpul pertama dan j adalah simpul terakhir dalam suatu path di graf G, serta j b sebagai predesesor dari simpul j pada graf G. Untuk memeriksa kefisibelan suatu assignment digunakan algoritme pemrograman dinamik dengan prosedur sebagai berikut: Untuk setiap simpul N i ∈ Untuk setiap path i P p ∈ Untuk setiap sisi berarah A j i ∈ , , j i p CheckRules P new j = Jika new j P ada, maka , new j j P P List UpdatePath End End End Dalam fungsi , j i p CheckRules , beberapa aturan diperiksa untuk menentukan apakah path baru yang diperoleh dengan menambahkan sisi berarah i,j pada path p adalah fisibel. Jika path tersebut fisibel, maka path yang diperluas tadi menjadi sebuah path baru yang dinamakan new j P . Karena path-path yang terbentuk pada graf G sudah membentuk assignment-assignment yang tidak mengandung crossing, oleh karena itu dalam algoritme ini untuk memeriksa kefisibelan suatu assignment tinggal diperiksa panjang assignmentnya saja. Jika ,..., j i l ≤ r, maka path ,..., j i akan membentuk assignment fisibel, dengan r adalah panjang dari suatu rel s. Sebaliknya jika ,..., j i l r, maka path ,..., j i akan membentuk assignment takfisibel. Selain itu perlu pula memeriksa kedominanan suatu path. Sebuah path p i dikatakan didominasi oleh path p j atau dikatakan path p j lebih baik daripada path p i jika beberapa kendala pada path p i lebih baik daripada kendala pada path p j . Sebagai contoh, jika terdapat 2 path p 1 dan p 2 yang memiliki total panjang blok yang sama pada rel tertentu namun path p 1 memerlukan biaya lebih besar daripada path p 2 , maka path p 1 dikatakan didominasi oleh path p 2 . Pemeriksaan kedominanan suatu path dilakukan pada simpul-simpul di blo k terakhir dalam suatu graf. Hal ini dikarenakan, suatu path baru dapat dibandingkan dengan path lainnya jika proses pemeriksaan kefisibelan suatu path telah selesai dilakukan. Selanjutnya path yang didominasi tidak diperhitungkan dalam proses pembangkitan kolom, sehingga tidak perlu dicari biaya tereduksinya. 4.3 Teknik Pembangkitan Kolom untuk Optimisasi Penetapan Block pada Rel Pelangsiran Misalkan RMP pada langkah tertentu j, dinotasikan dengan RP j dapat dinyatakan sebagai: Minimumkan ∑ ∑ ∑ ∈ ∈ ∈ + B b b S s K k s k s k y d x c s j terhadap 1 = + ∑ ∑ ∈ ∈ b S s K k s k y x j s b , B b ∈ ∀ 1 ≤ ∑ ∈ s j K k s k x , S s ∈ ∀ ≥ s k x , s j K k S s ∈ ∀ ∈ ∀ , ≥ b y , B b ∈ ∀ { } s s s s s j k k K K ,..., 2 , 1 ,..., ,... 2 , 1 1 1 1 = ⊆ , dengan k s menyatakan assignment k pada rel pelangsiran s. Himpunan s j K menyatakan himpunan indeks elemen K s yang dipilih. Misalkan { } 3 3 2 2 2 1 1 1 5 , 2 , 7 , 4 , 2 , 5 , 3 , 1 = s K merupakan himpunan assignment fisibel k pada rel s. Kemudian misalkan dipilih assignment 1 pada rel 1, assignment 4 pada rel 2, dan assignment 2 pada rel 3 pada suatu RP j , maka assignment tersebut diurutkan kembali sebagai { } 3 2 1 1 , 1 , 1 = s j K . Teknik pembangkitan kolom untuk optimisasi penetapan blok pada rel pelangsiran yang dimodifikasi dari teknik serupa dalam Lavoie et al., 1988 adalah sebagai berikut:

a. Membangun data input