BAB II DASAR TEORI 2.1 Deskripsi Perjalanan Kereta Api Jalur Tunggal Pokok-Pokok Perjalanan Kereta Api Jalur Tunggal

Ukuran: px
Mulai penontonan dengan halaman:

Download "BAB II DASAR TEORI 2.1 Deskripsi Perjalanan Kereta Api Jalur Tunggal Pokok-Pokok Perjalanan Kereta Api Jalur Tunggal"

Transkripsi

1 BAB II DASAR TEORI Pada bab ini akan diuraikan mengenai deskripsi perjalanan kereta api yang terkait dengan masalah penjadwalan. Hal ini meliputi pokok-pokok perjalanan kereta api dan aturan-aturan atau batasan-batasan yang harus dipenuhi dalam penjadwalannya. Selain itu juga akan dijelaskan mengenai masalah penjadwalan Job-Shop dan penyelesaiannya dengan pendekatan Constraint Programming secara umum (tanpa harus terikat pada masalah penjadwalan kereta api). 2.1 Deskripsi Perjalanan Kereta Api Jalur Tunggal Pokok-Pokok Perjalanan Kereta Api Jalur Tunggal Jaringan kereta api jalur tunggal yang dibahas dalam Tugas Akhir ini terdiri atas sekumpulan stasiun dan petak-petak blok atau segmen-segmen jalur. Petak blok atau segmen jalur adalah bagian jalan kereta api yang dibatasi oleh dua buah sinyal berturutan. Dua buah sinyal tersebut digunakan sebagai tanda apakah sebuah kereta api boleh masuk atau keluar dari petak blok yang bersangkutan. Hal ini diperlukan untuk mencegah terjadinya tabrakan dua buah kereta api dengan membuat aturan bahwa pada setiap waktu, hanya terdapat satu kereta api yang menempati petak blok tersebut. Dalam hal ini, konflik perjalanan kereta api terjadi jika terdapat dua atau lebih kereta api yang menggunakan satu petak blok pada waktu yang sama. Ini adalah aturan dasar dalam penjadwalan perjalanan kereta api jalur tunggal [SUP01]. Selanjutnya, rute perjalanan kereta api dipandang sebagai himpunan terurut stasiun-stasiun dan petak-petak blok. Antara satu stasiun dengan stasiun berikutnya bisa terdiri atas satu atau lebih petak-petak blok. Dengan demikian, perjalanan kereta api dapat dipandang sebagai sekumpulan operasi melewati petak-petak blok tersebut atau menunda perjalanan dengan menunggu penggunaan petak-petak blok di stasiun (untuk menghindari penggunaan satu petak blok oleh dua kereta api) [OLI01]. Dalam hal ini, kapasitas maksimum stasiun (banyaknya kereta api yang dapat ditampung di stasiun dalam satu waktu) juga harus II-1

2 II-2 diperhatikan. Sebagaimana konflik perjalanan kereta api terjadi di petak blok, konflik di stasiun juga dapat terjadi jika kapasitas maksimum stasiun ini dilanggar. Sebuah contoh sebuah rute perjalanan kereta api jalur tunggal dapat dilihat pada Gambar II-1 berikut. Gambar II-1 Rute Perjalanan Kereta Api dengan Enam Stasiun Rute pada Gambar II-1 terdiri atas enam stasiun dan delapan petak blok. Antara stasiun s 1 dan s 2 terdapat dua petak blok, antara stasiun s 3 dan s 4 terdapat tiga petak blok dan yang lainnya hanya terdiri atas satu petak blok. Kumpulan petakpetak blok antara satu stasiun dengan stasiun berikutnya disebut sebagai petak jalan. Petak-petak blok dalam satu petak jalan dipisahkan oleh sinyal. Sebuah jadwal keberangkatan kereta api pada umumnya diberikan oleh perusahaan-perusahaan kereta api yang mengelola kereta api yang bersangkutan. Selain itu, untuk setiap perjalanan kereta api, stasiun asal, stasiun tujuan dan stasiun-stasiun lain yang harus dilalui juga dispesifikasikan sebagai input. Proses penjadwalan kereta api kemudian dapat didefinisikan sebagai proses pencarian waktu-waktu keberangkatan kereta api di tiap stasiun yang dilalui agar tidak terjadi konflik, baik konflik di petak blok maupun di stasiun. Dalam Tugas Akhir ini, satuan waktu terkecil yang digunakan dalam penjadwalan adalah menit. Penjadwalan dilakukan untuk perjalanan-perjalanan kereta api

3 II-3 dalam satu hari saja. Dengan demikian, waktu yang digunakan dalam penjadwalan adalah bilangan asli antara 1 sampai dengan 1440 (sama dengan 24 60). Bilangan-bilangan tersebut menyatakan menit-menit yang ada dalam satu hari. Dalam masalah penjadwalan kereta api, jadwal pada umumnya dinyatakan dalam diagram ruang-waktu (time-space diagram) [OLI01]. Sebagai contoh, misalkan sebuah kereta api melakukan perjalanan menggunakan rute pada Gambar II-1 dari stasiun s 1 menuju stasiun s 4. Perjalanan dilakukan pada waktu 180, berhenti di stasiun s 2 selama 20 menit dan di stasiun s 3 selama 20 menit juga. Kereta api sampai di stasiun s 2 pada waktu 310, di stasiun s 3 pada waktu 435 dan terakhir di stasiun s 4 pada waktu 657. Jadwal tersebut direpresentasikan dalam diagram ruang-waktu pada Gambar II-2 berikut s 4 Rute r 6 r 5 s 3 r 4 r 3 s 2 r 2 r 1 s Unit-unit Waktu Gambar II-2 Jadwal Kereta Api Menggunakan Diagram Ruang-Waktu Aturan-Aturan Umum Perjalanan Kereta Api Jalur Tunggal Sebagaimana telah dijelaskan sebelumnya, konflik pada perjalanan kereta api dapat terjadi di petak blok dan stasiun. Konflik di stasiun terjadi karena kereta api yang berhenti di stasiun tersebut melanggar batas maksimum kapasitas stasiun dan konflik di petak blok terjadi karena terdapat dua atau lebih kereta api yang menggunakan petak blok tersebut pada waktu yang sama. Konflik di petak blok dapat terjadi pada dua kereta api yang berjalan pada arah yang berlawanan

4 II-4 maupun arah yang sama. Konflik pada dua kereta api yang berjalan pada arah yang sama terjadi karena kereta yang di belakang lebih cepat daripada kereta api yang di depan. Untuk mencegah terjadinya konflik, salah satu kereta harus ditunda perjalanannya di stasiun sampai salah satu kereta selesai menggunakan petak blok yang digunakan bersama-sama. Jika arahnya berlawanan, aturan penundaan perjalanan kereta api ini biasa disebut sebagai aturan persilangan (crossing rule) dan jika arahnya sama disebut aturan penyusulan (passing rule) [SUP01]. Untuk dua kereta api yang berjalan pada jalur dan arah yang sama, selain aturan penyusulan (tidak boleh menggunakan petak blok yang sama) juga terdapat aturan headway, yaitu selisih waktu minimal antara kedua kereta api tersebut [OLI01][SUP01]. Aturan ini juga bertujuan untuk mencegah terjadinya tabrakan karena aturan petak blok saja tidak cukup untuk menjamin keselamtan dua buah kereta api yang berjalan pada jalur dan arah yang sama. Misalnya ketika kereta api yang di depan lebih lambat dan berada di ujung masuk suatu petak blok, sedangkan kereta api di belakang lebih cepat dan berada di ujung keluar petak blok sebelumnya. Selain tiga aturan di atas yang menjamin keselamatan perjalanan kereta api, terdapat aturan-aturan lain yang harus diperhatikan dalam penjadwalan kereta api, antara lain: 1. Batas kecepatan maksimal kereta api di petak blok (speed constraint) [SUP01]. Selain kecepatan maksimal yang dapat dicapai oleh kereta api sendiri, terdapat kecepatan maksimal yang diperbolehkan dalam suatu petak blok. Kecepatan maksimal ini tidak tergantung oleh jenis kereta api dan hanya tergantung oleh petak blok yang bersangkutan. Pada prakteknya, kecepatan yang digunakan adalah yang terkecil diantara kecepatan maksimal kereta api dan kecepatan maksimal petak blok. 2. Batas waktu minimal dan maksimal penundaan perjalanan kereta api di stasiun [MLA07].

5 II-5 Batas waktu minimal digunakan agar kereta api berhenti di suatu stasiun selama waktu tertentu. Aturan ini digunakan antara lain untuk menaikkan atau menurunkan penumpang dan barang di stasiun. Sedang batas waktu maksimal digunakan agar kereta api tidak berhenti di satu stasiun terlalu lama. 3. Urutan prioritas dua kereta api yang menggunakan petak blok yang sama [SUP01]. Beberapa negara menggunakan kelas-kelas kereta api untuk menentukan urutan prioritas ini. Misalnya di Indonesia, terdapat tiga kelas kereta api, yaitu kelas eksekutif, bisnis dan ekonomi. Ketika kereta api kelas eksekutif dan ekonomi akan bertemu di satu petak blok, pada umumnya kereta api kelas eksekutif lebih diprioritaskan menggunakan petak blok tersebut. Dengan demikian, kereta api kelas ekonomi harus menunggu di stasiun selama penggunaan petak blok tersebut oleh kereta api kelas eksekutif. Oleh karena itulah kereta api kelas ekonomi di Indonesia sering berhenti di stasiun-stasiun walaupun tidak menaikkan atau menurunkan penumpang sama sekali. 4. Batas waktu minimal antara dua kereta api yang berlawanan arah di stasiun [SUP01]. Aturan ini digunakan pada dua kereta api yang berlawanan arah jika salah satu kereta api akan masuk ke sebuah stasiun melewati suatu petak blok dan yang satu lagi keluar dari stasiun yang sama dan masuk ke petak blok yang sama juga. Batas waktu tersebut digunakan untuk persiapan masuk dan keluar kedua kereta api tersebut dari stasiun yang bersangkutan. 5. Dua buah kereta bertemu di sebuah stasiun selama suatu selang waktu tertentu [OLI01][MLA07]. Batasan ini digunakan jika dua buah kereta api harus bertemu di sebuah stasiun selama suatu selang waktu tertentu. Misalnya untuk pemindahan barang dari satu kereta api ke kereta api lainnya atau pemindahan gerbong kereta Jalur Ganda dan Jalur Kembar Masalah penjadwalan kereta api jalur tunggal juga dapat diaplikasikan pada rute perjalanan yang mengandung beberapa jalur ganda. Jalur-jalur ganda dapat

6 II-6 dipandang sebagai sebuah stasiun dengan kapasitas maksimum dua [OLI01]. Kemudian perjalanan pada jalur ganda tersebut dapat dianggap sebagai penundaan perjalanan kereta api di stasiun. Dalam kenyataannya, kedua hal tersebut memang sebenarnya sangat berbeda, misalnya di stasiun, kereta api dapat menambah jumlah penumpang atau menurunkan barang. Tapi dalam konsep penjadwalan kereta api, hal tersebut dapat dianggap sama, yaitu sebagai tempat untuk mengatasi konflik yang mungkin terjadi. Hal ini karena kereta api bisa berhenti di stasiun maupun jalur ganda untuk menunggu penggunaan petak blok di depannya. Satu tipe khusus dari jalur ganda adalah jalur kembar. Jalur kembar adalah jalur ganda yang digunakan untuk dua arah yang berlawanan [SUP01]. Ini lebih khusus karena jalur ganda yang lebih umum dapat digunakan untuk dua arah yang sama. Jadi, jalur ganda memungkinkan terjadinya penyusulan kereta api sedangkan jalur kembar tidak. Dalam masalah penjadwalan kereta api jalur tunggal, jalur kembar dapat dipandang sebagai jalur tunggal dimana dua kereta api yang berlawanan arah boleh menggunakan petak blok yang sama pada jalur kembar tersebut. Dengan kata lain, jalur kembar dapat dianggap sebagai jalur tunggal tanpa aturan persilangan. Namun demikian, aturan penyusulan dan aturan headway tetap berlaku pada jalur kembar. Aturan-aturan lainnya juga tetap berlaku pada jalur ganda dan jalur kembar Contoh Kasus Perjalanan Kereta Api Jalur Tunggal Sebagai ilustrasi dari deskripsi perjalanan kereta api jalur tunggal dan aturanaturannya, berikut akan diberikan contoh kasus tiga perjalanan kereta api yang menggunakan satu rute yang sama, yaitu rute pada Gambar II-1. Tiga kereta api yang melakukan perjalanan tersebut adalah kereta A, B, dan C. Kereta A berangkat dari stasiun s 1 menuju stasiun s 8, kereta B berangkat dari stasiun s 5 menuju s 1 dan kereta C berangkat dari stasiun s 2 menuju s 8. Kereta A berangkat pada pukul 275, kereta B pada pukul 217, dan kereta C pada pukul 543. Misalkan juga lama waktu penggunaan petak blok oleh tiap kereta sudah diperhitungkan dari kecepatan kereta api dan jarak petak blok. Semua data perjalanan tersebut disajikan pada Tabel II-1

7 II-7 Tabel II-1 Data Perjalanan Kereta Api Perjalanan kereta api Urutan petak blok Waktu berangkat Lama waktu penggunaan masing-masing petak blok A r 1, r 2, r 3, r 4, r 5, r 6, r 7, r ,40,75,52,90,60,88,87 B r 7, r 6, r 5, r 4, r 3, r 2, r ,56,40,30,50,75,87 C r 3, r 4, r 5, r 6, r 7, r ,47,43,30,25,30 Dari data yang diberikan, diagram ruang-waktu dari jadwal perjalanan kereta api di atas dapat dilihat pada Gambar II-3. Rute s 6 r 8 s 5 r 7 kereta B s 4 r 6 r 5 s 3 r 4 r 3 kereta C s 2 r 2 r 1 kereta A s Unit-unit Waktu Gambar II-3 Jadwal Perjalanan Kereta Api yang Mengandung Konflik Pada jadwal di atas, terlihat bahwa konflik terjadi antara kereta A dengan kereta B di petak blok r 3 dan antara kereta A dengan kereta C pada petak blok r 7. Dalam hal ini, Kereta A dan kereta B melanggar aturan persilangan sementara kereta A dan kereta C melanggar aturan penyusulan. Untuk mengatasi konflik ini, kereta A ditunda perjalanannya di stasiun s 2. Gambar II-4 menunjukkan penundaan ini sehingga tidak ada lagi konflik yang terjadi pada jadwal yang baru. Pada jadwal yang baru, terlihat juga bahwa kereta A dan kereta B bertemu di stasiun s 2 dan kereta A dan kereta C bertemu di stasiun s 4.

8 II-8 s 6 Rute r 8 s 5 r 7 kereta B s 4 r 6 r 5 s 3 r 4 r 3 kereta C s 2 r 2 r 1 kereta A s Unit-unit Waktu Gambar II-4 Jadwal Kereta Api yang Tidak Mengandung Konflik 2.2 Masalah Penjadwalan Job-Shop Definisi Formal Masalah penjadwalan Job-Shop terdiri atas sebuah himpunan pekerjaan J = {J 1, J 2,..., J n } yang harus dijadwalkan pada sebuah himpunan sumber daya atau mesin R. Setiap pekerjaan J i terdiri atas sekumpulan operasi terurut yang harus dilakukan, yaitu O i = {o i1, o i2,..., o ik } dengan k = O i adalah banyaknya operasi pada pekerjaan J i. Kemudian setiap operasi o ij menggunakan sebuah sumber daya yang tunggal r ij R selama suatu selang waktu tertentu. Lama waktu penggunaan sumber daya oleh operasi o ij juga diberikan sebagai input ketika pendefinisian masalah penjadwalan Job-Shop tersebut, misalkan p ij. Dalam satu waktu, sebuah sumber daya hanya boleh digunakan oleh satu operasi saja. Dengan demikian, konflik terjadi ketika dua operasi yang berbeda menggunakan sumber daya yang sama dalam waktu yang sama juga [OLI01].

9 II-9 Setiap pekerjaan J i memiliki waktu pelepasan (release date) d i, yaitu waktu dimulainya pekerjaan tersebut. Selain itu, J i juga memiliki waktu harapan selesai (expected completion date) c i. Pada Tugas Akhir ini, waktu harapan selesai didefinisikan sebagai jumlah waktu penggunaan sumber daya oleh setiap operasi pada pekerjaan tersebut. [MLA07] Secara matematis, hal ini ditulis sebagai i i ij j 1 k c d p, dengan k = O i. Selain waktu pelepasan dan waktu harapan selesai, pekerjaan J i yang sudah dijadwalkan akan memiliki waktu selesai yang sebenarnya (actual completion date), yaitu C i. Waktu tersebut adalah waktu selesainya operasi terakhir pada pekerjaan J i. Jika d ij menyatakan waktu pelepasan operasi o ij pada pekerjaan J i, kita memiliki beberapa hubungan matematis, misalnya d i = d i1, dan C i = d ik + p ik, dengan k = O i. Masalah penjadwalan Job-Shop kemudian didefinisikan sebagai pencarian waktu pelepasan setiap operasi o ij pada pekerjaan-pekerjaan yang ada sehingga tidak terjadi konflik, yaitu penggunaan satu sumber daya oleh dua operasi yang sama pada waktu yang sama juga Kriteria Optimasi pada Masalah Penjadwalan Job-Shop Beberapa kriteria optimasi dapat digunakan untuk mendapatkan jadwal dengan kualitas yang sebaik mungkin. Kriteria-kriteria tersebut antara lain [MLA07]: 1. Minimalisasi makespan, yaitu waktu selesai sebenarnya pekerjaan terakhir. Secara matematis, hal ini ditulis sebagai Cmax max{ Ci :1 i n}. Kriteria ini cocok digunakan jika pekerjaan-pekerjaan yang akan dijadwalkan memiliki waktu pelepasan yang relatif sama. 2. Minimalisasi banyaknya pekerjaan yang terlambat. Suatu pekerjaan J i terlambat jika C i > c i. Dengan demikian banyaknya pekerjaan yang terlambat adalah LJ, dimana LJ = {J i : C i > c i }.

10 II Minimalisasi keterlambatan maksimal (maximum tardiness). Keterlambatan (tardiness) dari pekerjaan J i didefinisikan sebagai T i = max {C i c i, 0}. Dengan demikian, keterlambatan maksimal dirumuskan sebagai Tmax max{ Ti :1 i n}. 4. Minimalisasi total keterlambatan (total tardiness), yaitu n TT T, dengan n = J. i 1 i 5. Minimalisasi total keterlambatan berbobot (weighted total tardiness), yaitu n WTT wt i i, dengan n = J i 1 dan w i menyatakan bobot keterlambatan pekerjaan J i. Dalam hal ini, pekerjaan yang tidak boleh terlambat lama memiliki bobot yang besar dan pekerjaan yang boleh terlambat lama memiliki bobot kecil Representasi dengan Graf Disjungtif Masalah penjadwalan Job-Shop dapat direpresentasikan secara elegan dengan menggunakan model graf disjungtif [OLI01]. Graf disjungtif didefinisikan sebagai graf berarah G ( N; A, B), dimana N adalah himpunan simpul yang merepresentasikan operasi-operasi yang akan dijadwalkan, A adalah himpunan sisi berarah konjungtif (conjunctive directed arc) yang merepresentasikan urutan operasi-operasi pada satu pekerjaan, dan B adalah himpunan sepasang sisi berarah disjungtif (disjunctive directed arc) yang merepresentasikan operasi-operasi yang menggunakan sumber daya atau mesin yang sama. Pada setiap pekerjaan J i, operasi o i(j+1) dijalankan setelah operasi o ij. Dengan demikian, terdapat sisi berarah (o ij o i(j+1) ) di A. Dua operasi pada pekerjaan berbeda yang menggunakan sumber daya yang sama dihubungkan oleh dua sisi berarah dengan arah yang berlawanan. Arti semantik dari dua sisi berarah ini adalah adanya dua kemungkinan urutan operasi yang dapat dikerjakan pada sumber daya yang sama. Arah yang satu menyatakan bahwa operasi yang satu dikerjakan lebih dulu dan arah yang satunya lagi menyatakan bahwa operasi

11 II-11 tersebut dikerjakan di akhir setelah operasi lainnya selesai. Misalkan operasi o ij pada pekerjaan J i menggunakan sumber daya yang sama dengan operasi o i j pada pekerjaan J i. Dengan demikian, terdapat sisi berarah (o ij o i j ) dan (o i j o ij ) di B. Sisi berarah (o ij o i j ) menyatakan bahwa operasi o ij dikerjakan lebih dulu daripada operasi o i j dan sisi berarah (o i j o ij ) menyatakan sebaliknya. Dengan demikian, upagraf dari G yang terdiri atas simpul-simpul berupa operasi yang dikerjakan pada satu sumber daya yang sama membentuk sebuah graf berarah lengkap. Selanjutnya setiap sisi berarah konjungtif (o ij o i(j+1) ) A diasosiasikan dengan lama waktu pemrosesan operasi o ij, yaitu p ij. Demikian juga dengan sisi-sisi berarah di B, sisi (o ij o i j ) diasosiasikan dengan lama waktu pemrosesan o ij dan sisi (o i j o ij ) diasosiasikan dengan lama waktu pemrosesan o i j, yaitu p i j. Sebagai contoh, tinjau masalah penjadwalan Job-Shop dengan tiga pekerjaan dan empat sumber daya berikut. Data penggunaan sumber daya, urutan penggunaan sumber daya dan lama waktu pemrosesan sumber daya tersebut dinyatakan dalam Tabel II-2 berikut. Tabel II-2 Data Masalah Penjadwalan Job-Shop Pekerjaan Urutan sumber d i Waktu pemrosesan c i daya 1 r 1, r 2, r 3 0 p 11 = 11, p 12 = 9, p 13 = r 2, r 1, r 4, r 3 0 p 21 = 9, p 22 = 4, p 23 = 6, p 24 = r 1, r 2, r 4 0 p 31 = 5, p 32 = 8, p 13 = 4 17 Pada contoh di atas, setiap pekerjaan dapat mulai dikerjakan pada waktu 0. Pekerjaan 1 menggunakan tiga buah sumber daya r 1, r 2, dan r 3. Waktu pemrosesan pekerjaan tersebut oleh pekerjaan 1 berturut-turut adalah 11, 9, dan 5. Dengan demikian, waktu harapan selesai pekerjaan 1 adalah = 25. Pekerjaan 2 dan 3 pada Tabel II-2 dibaca dengan cara yang sama. Selanjutnya, Graf disjungtif yang merepresentasikan masalah penjadwalan Job-Shop tersebut dapat dilihat pada Gambar II-5.

12 II-12 Gambar II-5 Graf Disjungtif dari Masalah Penjadwalan Job-Shop Ketika kriteria optimasi yang dipilih adalah minimalisasi makespan, dua buah simpul dummy ditambahkan pada graf disjungtif. Satu simpul digunakan sebagai simpul sumber yang dihubungkan dengan operasi pertama pada setiap pekerjaan dengan sisi berarah konjungtif dari simpul sumber ke operasi pertama pada setiap pekerjaan. Simpul yang satunya sebagai simpul akhir yang dihubungkan dengan operasi terakhir pada setiap pekerjaan dengan sisi berarah konjungtif dari operasi terakhir setiap pekerjaan ke simpul akhir. Simpul akhir ini digunakan untuk menentukan waktu selesai sebenarnya pada pekerjaan terakhir. Tetapi jika kriteria optimasi yang dipilih adalah minimalisasi keterlambatan (jumlah pekerjaan yang terlambat, keterlambatan maksimal, total keterlambatan maupun total keterlambatan berbobot), dibutuhkan n+1 buah simpul tambahan, dimana n menyatakan banyaknya pekerjaan yang harus dijadwalkan. Satu simpul digunakan sebagai simpul sumber, sama seperti sebelumnya dan n simpul yang lain dihubungkan dengan satu operasi terakhir tiap pekerjaan [OLI01]. Dengan cara ini, keterlambatan setiap pekerjaan dapat ditentukan. Contoh penggunaan simpul dummy pada graf disjungtif sebelumnya dapat dilihat pada Gambar II-6. Pada gambar tersebut, S menyatakan simpul dummy sebagai simpul sumber dan N 1, N 2, dan N 3 menyatakan simpul akhir.

13 II-13 Gambar II-6 Graf Disjungtif dengan Simpul Dummy Pada masalah penjadwalan Job-Shop, urutan dua buah operasi yang menggunakan sumber daya yang sama harus ditentukan. Hal ini sama dengan membuang salah satu sisi berarah dari setiap pasang sisi berarah disjungtif. Penentuan urutan atau sisi berarah yang akan dibuang dilakukan sedemikian hingga tidak ada sirkuit pada graf disjungtif yang merepresentasikan penjadwalan Job-Shop tersebut. Hal ini karena sirkuit akan menyebabkan terjadinya konflik pada penjadwalan. Sebagai contoh, tinjau sebuah upagraf disjungtif dari graf disjungtif sebelumnya yang debentuk dari simpul o 12, o 21, dan o 32 dengan sisi berarah (o 12 o 21 ), (o 21 o 32 ), dan (o 32 o 12 ). Upagraf tersebut disajikan pada Gambar II-7 berikut. Gambar II-7 Upagraf Disjungtif yang Mengandung Sirkuit Pada upagraf disjungtif di atas, terdapat sirkuit o 12 o 21 o 32 o 12. Hal ini berarti, operasi o 12 dilakukan sebelum operasi o 21, operasi o 21 dilakukan sebelum operasi o 32 dan operasi o 32 dilakukan sebelum operasi o 12, yang jelas tidak mungkin dapat dilakukan. Di sisi lain, sebuah jadwal yang layak selalu dapat dibentuk berdasarkan urutan operasi-operasi sebuah graf disjungtif yang tidak mengandung sirkuit. Salah satu

14 II-14 caranya adalah dengan memberi nilai waktu pelepasan sebuah operasi dengan waktu tercepat setelah semua operasi predecessor-nya selesai dijadwalkan [OLI01]. Sebagai contoh, tinjau graf pada Gambar II-8 yang dihasilkan dari graf disjungtif sebelumnya dengan menghilangkan satu sisi berarah dari setiap sisi berarah disjungtif. Graf tersebut tidak mengandung sirkuit sama sekali. Gambar II-8 Graf Tak-Bersirkuit yang Dibentuk dari Graf Disjungtif Salah satu jadwal layak yang dibentuk dari graf disjungtif tak-bersirkutit di atas disajikan dalam Gantt-Chart pada Gambar II-9 berikut. Gambar II-9 Jadwal Masalah Penjadwalan Job-Shop Jadi, masalah penjadwalan Job-Shop dengan menggunakan representasi graf disjungtif dapat didefinisikan sebagai pencarian urutan-urutan operasi pada graf disjungtif sedemikian hingga tidak ada sirkuit pada graf tersebut. Dalam hal ini, solusi dari masalah penjadwalan Job-Shop adalah graf disjungtif yang tidak mengandung sirkuit. Untuk seterusnya, pada Tugas Akhir ini, istilah jadwal layak (feasible schedule), solusi, dan graf disjungtif tak-bersirkuit (acyclic disjunctive graph) akan dianggap sama dan digunakan secara bergantian tergantung representasi yang sedang digunakan.

15 II Ketetanggaan dan Lintasan Kritis Definisi lintasan kritis (critical path) dan ketetanggaan (neighbourhood) yang baik pada graf disjungtif merupakan salah satu aspek penting dalam beberapa algoritma pencarian solusi dengan suatu fungsi objektif yang harus diminimalkan seperti Hill Climbing yang digunakan dalam Tugas Akhir ini. Tujuan dari konsep ketetanggaan dan lintasan kritis adalah pembangkitan solusi-solusi baru dari sebuah solusi yang telah ditemukan secara cepat, sederhana dan lebih baik daripada solusi sebelumnya. Solusi sebuah masalah penjadwalan Job-Shop yang berupa jadwal atau waktu pelepasan operasi terkait erat dengan urutan operasi-operasi yang harus dijadwalkan pada sumber daya yang ada. Hal ini karena jadwal semua operasi dapat ditentukan dengan mudah jika urutan operasi-operasi tersebut sudah ditentukan. Karena sebab ini, konsep ketetanggaan dan lintasan kritis sebuah solusi hanya akan diuraikan dengan menggunakan representasi graf disjungtif saja Definisi Formal Misalkan F menyatakan himpunan semua solusi dalam masalah penjadwalan Job- Shop. Hal ini sama juga dengan himpunan semua graf disjungtif tak-bersirkuit yang merepresentasikan masalah penjadwalan Job-Shop tersebut. Terdapat dua fungsi utama yang dapat didefinisikan pada F. Fungsi pertama adalah fungsi objektif f : F R, dimana R adalah himpunan bilangan real. Fungsi tersebut menyatakan suatu nilai yang ingin dioptimalkan dalam penjadwalan. Salah satu contoh fungsi ini adalah makespan dan keterlambatan (banyaknya pekerjaan yang terlambat, keterlambatan maksimum dan total keterlambatan) seperti telah dijelaskan sebelumnya. Fungsi yang kedua adalah fungsi ketetanggaan Nb: F (F), dimana (F) menyatakan power set dari himpunan F, yaitu himpunan yang berisi semua himpunan bagian dari F. Dengan kata lain, Nb adalah sebuah fungsi yang memetakan setiap solusi x F dengan sebuah himpunan bagian Nb(x) F.

16 II-16 Anggota-anggota Nb(x) (yang berupa solusi-solusi di F juga) selanjutnya disebut sebagai tetangga dari x [OLI01] Ketetanggaan dalam algoritma Hill Climbing Algoritma Hill Climbing pada Tugas Akhir ini digunakan untuk mencari solusi optimal lokal. Hal ini dilakukan dengan menganalisa nilai fungsi objektif pada tetangga-tetangga dari solusi yang telah ditemukan. Tetangga yang memiliki fungsi objektif lebih baik daripada solusi sebelumnya akan digunakan sebagai solusi berikutnya pada iterasi yang dilakukan. Sebagai contoh, misalkan telah ditemukan sebuah solusi masalah penjadwalan Job-Shop. Dengan menggunakan fungsi ketetanggaan Nb, beberapa solusi lain dapat dibangkitkan secara efisien. Solusi-solusi lain yang merupakan tetangga dari solusi asal tersebut kemudian dihitung nilai fungsi objektifnya. Jika ada tetangga yang memiliki nilai fungsi objektif lebih optimal dibandingkan dengan solusi asal, maka tetangga tersebut akan dipilih sebagai solusi yang baru. Langkah selanjutnya adalah mencari solusi yang lainnya lagi dengan menganalisa tetanggatetangga dari solusi yang baru. Iterasi ini dilakukan terus sampai tidak ada tetangga yang memiliki fungsi objektif yang lebih optimal Lintasan Kritis Dari sembarang jadwal layak yang direpresentasikan dengan graf disjungtif takbersirkuit, jadwal baru selalu bisa dibangkitkan dengan cara mengubah arah sebuah sisi pada graf disjungtif. Arah yang bisa diubah ini hanyalah arah pada sisi-sisi berarah disjungtif. Arah pada sisi-sisi berarah konjungtif tidak dapat diubah karena merepresentasikan urutan operasi-operasi pada satu pekerjaan. Arah pada sisi-sisi berarah disjungtif menyatakan urutan penggunaan sumber daya oleh operasi-operasi pada beberapa pekerjaan. Dengan demikian, mengubah arah sisi-sisi disjungtif sama halnya dengan mengubah urutan operasi-operasi yang menggunakan sumber daya yang sama. Hal inilah yang menjadi dasar dalam penentuan tetangga-tetangga dari sebuah solusi yang telah ditemukan.

17 II-17 Namun jadwal yang baru dibangkitkan dengan cara seperti di atas tidak menjamin kelayakan jadwal tersebut (tidak adanya konflik dalam jadwal yang baru). Hal ini dikarenakan pengubahan sebuah arah pada sisi disjungtif bisa menyebabkan adanya sirkuit pada graf disjungtif yang baru. Adanya sirkuit ini akan menyebabkan konflik pada penggunaan sumber daya. Selain itu, pengubahan sebuah arah sebuah sisi secara sembarang tidak menjamin terbentuknya jadwal baru dengan nilai fungsi objektif yang lebih optimal. Oleh karena itu, diperlukan suatu kriteria untuk menentukan sisi-sisi mana saja yang bisa diubah tanpa menyebabkan terjadinya sirkuit pada graf disjungtif. Kriteria tersebut juga harus dapat digunakan untuk menemukan solusi lain dengan fungsi objektif yang lebih optimal. Dengan kata lain, kriteria tersebut menjadi dasar dalam pendefinisian fungsi ketetanggaan Nb. Sisi disjungtif pada graf disjungtif yang memenuhi kriteria di atas disebut sebagai sisi kritis (critical arc). Sepasang operasi yang terhubung oleh sebuah sisi kritis selanjutnya disebut sebagai operasi-operasi kritis (critical operations) dan lintasan yang dibentuk oleh sisi-sisi kritis disebut sebagai lintasan kritis. Dalam hal optimasi suatu nilai fungsi objektif, operasi-operasi kritis dapat didefinisikan sebagai operasi-operasi yang menggunakan sumber daya yang sama dan urutannya tidak bisa diubah tanpa mengubah nilai fungsi objektif yang ingin dioptimalkan [OLI01]. Salah satu contoh lintasan kritis adalah lintasan terpanjang pada graf disjungtif [FOR97]. Jika sebuah sisi pada lintasan kritis ini diubah arahnya, tidak akan mungkin terbentuk sebuah sirkuit pada graf disjungtif. Karena jika bisa terbentuk sebuah sirkuit baru pada graf disjungtif, maka lintasan tersebut tidak mungkin merupakan lintasan yang terpanjang. Kriteria ini sangat cocok diaplikasikan jika fungsi objektif yang ingin diminimalkan adalah makespan. Hal ini karena lintasan yang sangat panjang pada umumnya menyebabkan nilai makespan yang besar. Dengan mengubah arah salah satu sisi pada lintasan terpanjang, akan terbentuk

18 II-18 dua lintasan yang lebih pendek. Akibatnya, akan terbentuk solusi baru dengan nilai makespan yang lebih kecil. Sebagai contoh, tinjau kembali graf disjungtif pada Gambar II-7. Salah satu lintasan terpanjang pada graf tersebut adalah lintasan o 21 o 32 o 12 o 13 o 24. Dengan demikian, lintasan tersebut merupakan lintasan kritis. Salah satu tetangga dapat didapatkan dengan cara mengubah arah sebuah sisi berarah disjungtif pada lintasan tersebut. Misalnya dengan mengubah sisi berarah disjungtif (o 32 o 12 ) menjadi sisi berarah disjungtif (o 12 o 32 ), akan dihasilkan sebuah graf disjungtif baru yang merupakan tetangga dari graf disjungtif pada Gambar II-8. Graf tersebut disajikan pada Gambar II-10 berikut. Gambar II-10 Graf Disjungtif Tetangga Struktur Ketetanggaan Literatur-literatur masalah penjadwalan Job-Shop yang ada selama ini menyebutkan paling sedikit ada enam cara membangun struktur ketetanggaan untuk menemukan solusi-solusi baru dari satu solusi yang telah ditemukan. Keenam struktur ketetanggaan tersebut menggunakan lintasan kritis sebagai dasar penentuan tetangga-tetangga dari satu solusi asal. Struktur yang pertama meninjau semua kemungkinan tetangga yang bisa dibangkitkan dengan cara mengubah arah setiap sisi pada setiap lintasan kritis. Dengan demikian banyaknya tetangga yang diperoleh dengan cara ini sangat besar dan memang merupakan yang terbesar dibandingkan dengan struktur lainnya. Struktur yang lainnya lebih ketat daripada struktur yang pertama, yaitu ada beberapa sisi kritis yang arahnya diubah dan beberapa sisanya tidak. Ini akan mengurangi banyaknya tetangga yang harus dianalisa nilai fungsi objektifnya untuk memperoleh solusi yang lebih baik.

19 II-19 Untuk menjelaskan keenam struktur tersebut, digunakan beberapa definisi. Pada operasi-operasi yang menggunakan satu sumber daya yang sama, rp(o ij ) didefinsikan sebagai operasi yang dikerjakan sebelum operasi o ij (predecessor operations) dan rs(o ij ) sebagai operasi yang dikerjakan setelahnya (successor operations). Enam struktur ketetanggaan tersebut adalah [OLI01]: 1. Tetangga dari solusi awal diperoleh dengan cara mengubah sembarang satu sisi pada setiap lintasan kritis yang terdapat pada graf disjungtif. Dengan demikian, ukuran ketetanggaan yang dibangun dengan cara ini tergantung pada banyaknya lintasan kritis yang terdapat pada graf disjungtif dan banyaknya sisi-sisi pada tiap lintasan kritis. Ukuran ketetanggaan pada struktur yang pertama ini tergolong sangat besar. 2. Pada struktur yang kedua ini, sisi kritis yang diubah arahnya adalah sisi kritis (o ij o i j ) sedemikian hingga salah satu diantara sisi (rp(o ij ) o ij ) atau (o i j rs(o i j )) bukan merupakan sisi pada lintasan terpanjang. 3. Struktur ketetanggaan ini meninjau semua permutasi dari himpunan tiga operasi {rp(o ij ), o ij, o i j } dan {o ij, o i j, rs(o i j )} dimana sisi kritis (o ij o i j ) diubah arahnya dan menghasilkan graf disjungtif baru yang tidak mengandung sirkuit. 4. Struktur ketetanggaan yang keempat ini terdiri dari pengubahan sebuah operasi o ij pada suatu blok operasi-operasi yang dijalankan berturutan (adjacent operations) ke bagian awal atau bagian akhir dari blok tersebut. 5. Pada struktur yang kelima ini, sisi kritis yang diubah arahnya hanyalah sisi yang berada pada batas blok operasi-operasi yang dijalankan berturutan. Lebih jauh, hanya satu lintasan kritis saja yang ditinjau. Pemilihan lintasan kritis ini dilakukan secara acak. 6. Struktur terakhir ini berbeda dari lima struktur sebelumnya. Pada struktur ini, sebuah tetangga diperoleh dengan mengubah arah lebih dari satu sisi kritis pada lintasan kritis. Berbeda dengan struktur-struktur sebelumnya dimana hanya satu sisi kritis saja yang diubah arahnya.

20 II Constraint Programming Constraint Programming adalah metode penyelesaian masalah yang terdiri atas dua langkah, yaitu modelling dan resolution [MON01]. Modelling dilakukan dengan cara merumuskan masalah yang diberikan sebagai sebuah Constraint Satisfaction Problem (CSP). Selanjutnya, proses pencarian solusi CSP dilakukan pada langkah resolution dengan menggunakan constraint solvers Constraint Satisfaction Problem (CSP) Definisi Formal Sebuah CSP dapat didefinisikan secara formal sebagai tripel (V, D, C), dimana V menyatakan sebuah himpunan variabel {v 1, v 2,..., v n } dan D adalah fungsi domain pada variabel, yaitu fungsi yang memetakan setiap variabel v i di V dengan sebuah himpunan objek dengan suatu tipe tertentu [OLI01], [SMI01], [STU03]. Dengan demikian, D(v i ) = D i menyatakan domain dari variabel v i. Selanjutnya, C menyatakan himpunan batasan (constraint) pada CSP. Sebuah batasan c i C terkait dengan suatu himpunan bagian dari V dan menspesifikasikan kombinasi nilai-nilai yang diperbolehkan pada variabel-variabel di himpunan bagian tersebut. Dengan kata lain, c i (v j, v k,...) merupakan himpunan bagian dari D j D k... (produk Cartesius dari domain-domain variabel yang terkait dengan batasan c i ). Tetapi pada umumnya, batasan-batasan dari masalah di dunia nyata tidak direpresentasikan seperti itu. Representasi ekstensional seperti di atas membutuhkan memori yang besar untuk menyimpan kombinasi nilai-nilai variabel yang diperbolehkan. Sebagai gantinya, representasi yang sering digunakan adalah representasi intensional, misalnya v i v j, v i v j + v k, dan 2v i = 3v j + 1, dan sebagainya. Sebagai contoh, tinjau masalah matematika berikut 4x y 20 xy, 3,4,5

21 II-21 Masalah di atas merupakan contoh sebuah CSP dengan V = {x,y}, D(x) = D(y) = {3,4,5} dan representasi batasan C dilakukan secara intensional. Representasi batasan secara ekstensional adalah {(3,3), (3,4), (3,5), (4,4)}. Sebuah solusi CSP adalah pemberian nilai semua variabel di V dari domainnya masing-masing sedemikian hingga semua batasan di C terpenuhi. Dengan menggunakan representasi batasan secara ekstensional, sebuah solusi CSP adalah anggota dari irisan semua batasan yang ada. Sebagai contoh, tinjau masalah matematika di atas. Solusi dari CSP tersebut jelas adalah {(3,3), (3,4), (3,5), (4,4)}. Jika masalah tersebut ditambahi sebuah batasan x = y dengan representasi ekstensional berupa {(3,3), (4,4), (5,5)}, maka solusinya menjadi {(3,3), (4,4)} yang merupakan irisan dari dua buah batasan secara ekstensional tersebut. Pada CSP, domain-domain tiap variabel pada umumnya merupakan himpunan berhingga. Dengan demikian, banyaknya kemungkinan pemberian nilai pada setiap variabel dari domainnya dapat dihitung, yaitu D 1 D 2 D n (banyaknya anggota produk Cartesius dari semua domain variabel). Nilai ini menjadi salah satu patokan untuk menentukan ukuran sebuah CSP, walaupun dalam prakteknya, banyaknya solusi CSP jauh lebih kecil dibandingkan dengan nilai tersebut. Constraint Programming menggunakan strategi constraint propagation untuk mengurangi ukuran domain ini. Hal ini dilakukan dengan cara menambahkan batasan-batasan baru yang diturunkan dari batasan-batasan yang diberikan dan juga dengan membuang nilai-nilai di domain yang tidak mengarah ke solusi. Dengan demikian ukuran domain variabel menjadi lebih kecil dan pencarian solusi dapat dilakukan dengan cepat. Salah satu teknik dalam strategi constraint propagation ini adalah Arc Consistency Arc Consistency Seperti halnya masalah penjadwalan Job-Shop yang dapat direpresentasikan dengan graf disjungtif, sembarang CSP juga dapat direpresentasikan dengan suatu

22 II-22 graf berarah, tetapi tidak harus sama seperti graf disjungtif. Simpul dan sisi pada graf berarah yang merepresentasikan CSP memiliki peran yang sama seperti graf disjungtif, yaitu simpul digunakan untuk merepresentasikan variabel dan sisi berarah untuk merepresentasikan batasan CSP. Berdasarkan banyaknya variabel yang terkait, batasan-batasan CSP dapat dikelompokkan menjadi tiga. Batasan uner adalah batasan CSP yang menyangkut satu variabel saja. Sebagai contoh, batasan pada variabel v dalam sebuah CSP yang mengharuskan nilai v ganjil. Dalam hal ini, teknik node consistency digunakan untuk membuang semua nilai genap pada domain asal variabel v. Batasan biner pada CSP menyangkut dua variabel dalam sebuah CSP, misalnya adalah batasan 4x y 20 seperti di atas. Batasan CSP yang paling umum adalah batasan n-ary, yaitu batasan yang menyangkut n buah variabel bersamaan. Sebagai contoh, sebuah CSP yang terdiri dari n buah variabel dan mengharuskan nilai semua variabelnya berbeda. Dalam Tugas Akhir ini, batasan-batasan CSP yang digunakan hanyalah batasan uner dan biner saja. Dalam masalah penjadwalan Job-Shop, contoh batasan uner adalah waktu pelepasan sebuah pekerjaan, misalnya d i 100, yang berarti bahwa pekerjaan J i harus dimulai setelah waktu 100. Urutan dua buah operasi dalam satu pekerjaan atau karena menggunakan sumber daya yang sama merupakan contoh sebuah batasan biner. Dengan menggunakan graf berarah, batasan biner pada variabel x dan y pada umumnya direpresentasikan dengan sepasang sisi berarah dari dua buah simpul yang merepresentasikan variabel x dan y tersebut. Hal ini sama seperti sisi disjungtif pada graf disjungtif. Sebuah sisi berarah dari simpul yang merepresentasikan variabel x ke simpul yang merepresentasikan variabel y dikatakan arc consistent jika untuk setiap nilai a di D(x), terdapat paling sedikit satu nilai b di D(y), sedemikian hingga pemberian nilai x = a dan y = b memenuhi batasan biner c(x,y) pada CSP tersebut. Dengan menggunakan representasi ekstensional, hal ini sama dengan mengatakan bahwa (a, b) merupakan anggota

23 II-23 c(x, y). Salah satu teknik dalam strategi constraint propagation yaitu arc consistency digunakan untuk menghilangkan semua nilai pada domain asal variabel sehingga semua sisi berarah pada graf yang merepresentasikan CSP tersebut arc consistent. Selain dapat mengurangi ukuran domain variabel, arc consistency juga dapat digunakan untuk mendeteksi bahwa sebuah CSP tidak memiliki solusi. Hal ini dapat diketahui jika domain sebuah variabel menjadi kosong setelah proses pembuangan nilainya selesai. Pendeteksian ini dapat dilakukan secara cepat karena tidak perlu melakukan pemberian nilai pada semua variabel terlebih dahulu untuk mengetahui apakah CSP tersebut memiliki solusi atau tidak. Sebagai contoh, misalkan sebuah CSP terdiri atas dua variabel x dan y dengan D(x) = D(y) = {1,2,3,4}. Batasan dalam CSP tersebut misalkan x + 1 = y. Nilai 4 pada domain variabel x menyebabkan sisi berarah dari x ke y menjadi tidak arc consistent. Hal ini karena (4, b) tidak mungkin memenuhi batasan yang diberikan untuk sembarang b di domain variabel y. Dengan demikian nilai 4 di domain variabel x dapat dibuang. Dengan cara yang sama, nilai 1 pada domain varibel y juga dibuang. Jadi, algoritma arc consistency ini menyebabkan domain variabel x menjadi {1,2,3} dan domain variabel y menjadi {2,3,4}. Terdapat beberapa algoritma untuk membuat semua sisi berarah pada graf menjadi arc consistent dengan cara membuang beberapa nilai pada domaindomain asal variabel. Algoritma-algoritma tersebut antara lain, AC-n, mulai dari AC-1 sampai dengan AC-7 dan juga AC Dalam Tugas Akhir ini, algoritma yang digunakan adalah AC Algoritma dan Stretegi Pencarian Solusi Setelah memodelkan masalah sebagai sebuah CSP, langkah berikutnya dalam constraint programming adalah mencari solusi CSP tersebut [MON01]. Pada umumnya, semua CSP dapat diselesaikan dengan sembarang algoritma pencarian yang menggunakan pohon ruang status [STU03]. Bahkan exhaustive search juga

24 II-24 dapat digunakan dengan cara mencoba setiap kemungkinan pemberian nilai pada setiap variabel dari domainnya dan mengecek apakah pemberian nilai tersebut memenuhi batasan-batasan CSP. Namun pencarian solusi dengan exhaustive search sangatlah buruk karena ukuran ruang pencarian yang sangat besar Pencarian Solusi CSP secara Komplit (Complete Search) Selain exhaustive search, terdapat banyak algoritma lain yang telah digunakan dalam literatur-literatur untuk melakukan pencarian solusi CSP secara sistematis dan komplit. Komplit di sini berarti tanpa mempedulikan waktu yang diperlukan, solusi selalu dapat ditemukan atau memang tidak ada solusi dalam CSP tersebut. Sebagian besar algoritma-algoritma tersebut merupakan variasi dari algoritma Backtracking [OLI01]. Dengan menggunakan algoritma Backtracking, pohon ruang status dibentuk selama proses pencarian dengan cara memilih sebuah variabel untuk diberi nilai dari domainnya. Pemberian nilai ini kemudian diperiksa dengan nilai-nilai variabel lain untuk mengetahui apakah pemberian nilai yang telah dilakukan tidak melanggar batasan-batasan CSP yang ada. Jika pemberian nilai ini melanggar sebuah batasan yang ada, maka variabel tersebut diberi nilai lain dari domainnya dan nilai yang menyebabkan pelanggaran tadi dibuang sementara dari domainnya. Jika domain dari variabel tersebut menjadi himpunan kosong karena semua nilai pada domain tersebut dibuang secara sementara, maka backtrack dilakukan dengan memberi nilai lain pada variabel sebelumnya. Sebagai contoh, Gambar II- 11 menyajikan contoh pohon ruang status yang dibentuk dari masalah N-Queen dengan ukuran 4 4. Algoritma Backtracking murni tidak menggunakan keuntungan yang dimiliki oleh strategi constraint propagation. Perbaikan dari algoritma Backtracking dengan menggunakan strategi tersebut disebut algoritma Forward Checking (FC). Sama seperti algoritma Backtracking, algoritma FC juga melakukan pemberian nilai pada setiap algoritma secara sistematis dengan membangun pohon ruang status. Tapi berbeda dengan algoritma Backtracking, pada FC, setelah sebuah variabel

25 II-25 diberi nilai, nilai-nilai pada domain variabel lain yang tidak konsisten dengan pemberian nilai yang telah dilakukan akan langsung dibuang. Dalam hal ini, kekonsistenan nilai-nilai pada domain variabel berarti tidak melanggar batasanbatasan yang ada. Pada FC, backtrack dilakukan jika domain sebuah variabel menjadi kosong karena pembuangan nilai pada domain tersebut. Gambar II-11 Pohon Ruang Status pada Masalah N-Queen Berukuran 4 4 Dengan demikian, kelebihan dari algoritma FC dibandingkan Backtracking adalah FC tidak melakukan pemeriksaan apakah pemberian nilai pada sebuah variabel akan menyebabkan suatu pelanggaran batasan dengan variabel-varibel lain yang telah diberi nilai sebelumnya. Kelemahan dari FC adalah FC tidak dapat mengecek dua variabel yang belum diberi nilai. Walaupun domain variabel tersebut konsisten dengan variabel-variabel lain yang telah diberi nilai, tetapi masih ada kemungkinan bahwa kedua variabel yang belum diberi nilai tersebut tidak konsisten satu sama lain setelah diberi nilai dari domainnya Variable and Value Ordering Pengurutan variabel yang akan diberi nilai maupun pengurutan nilai yang akan diberikan pada suatu variabel dari domainnya bisa mengurangi banyaknya backtrack yang dilakukan dalam proses pencarian solusi. Banyaknya backtrack ini

26 II-26 sering digunakan untuk mengukur efisiensi algoritma Backtracking dan variasinya [OLI01]. Pengurutan variabel yang akan diberi nilai dapat dilakukan secara statis dan dinamis. Pengurutan variabel secara statis artinya urutan ini sudah ditentukan sejak awal dan tidak akan diubah selama proses pencarian solusi berjalan. Pada pengurutan variabel secara dinamis, urutan variabel yang akan diberi nilai berikutnya akan selalu berubah tergantung pada heuristic yang digunakan dan status ruang pencarian solusi atau pohon ruang status. Pengurutan variabel secara statis tidak membutuhkan informasi tambahan apapun. Sedangkan pengurutan variabel secara dinamis membutuhkan beberapa informasi tambahan, yaitu domain-domain dari semua variabel. Dengan demikian, strategi pengurutan variabel secara dinamis tidak dapat dilakukan pada algoritma Backtracking murni karena domain semua variabel pada algoritma ini tidak akan berubah selama proses pencarian solusi berlangsung. Pengurutan variabel secara dinamis dapat digunakan pada algoritma FC, karena domain variabel selalu berubah dengan cara menghilangkan nilai-nilai pada domain yang mengarah pada pelanggaran batasan CSP. Salah satu heuristic yang sering digunakan dalam pengurutan variabel secara dinamis adalah strategi minimum remaining values (MRV) [STU03]. Pada stretegi ini, variabel yang akan diberi nilai berikutnya adalah variabel yang memiliki ukuran domain paling kecil. Strategi MRV tidak dapat membantu dalam menentukan pengurutan variabel jika domain semua variabel tersebut memiliki ukuran yang sama, misalnya pada awal pencarian solusi. Strategi lain yang dapat digunakan sebagai tie-breaker ini adalah degree heuristic [STU03]. Strategi ini berusaha untuk mengurangi percabangan yang akan terjadi pada pohon ruang status dengan cara memilih sebuah variabel yang memiliki batasan paling banyak dengan variabel-variabel lain.

27 II-27 Setelah sebuah variabel terpilih untuk diberi nilai berikutnya, nilai-nilai yang ada pada domain variabel tersebut juga perlu ditentukan urutan pemberiannya dengan tujuan mengurangi backtrack yang akan terjadi. Selain itu, pemilihan urutan nilai domain yang tepat juga dapat mempengaruhi seberapa cepat sebuah solusi ditemukan. Urutan pemberian nilai ini pada umumnya sangat tergantung pada jenis masalah yang ingin dicari solusinya. Pada masalah penjadwalan Job-Shop, pengurutan nilai yang paling tepat adalah urut dari kecil ke besar. Hal ini berarti bahwa setiap operasi dijadwalkan pada waktu tercepat yang diperbolehkan tanpa menyebabkan terjadinya konflik penggunaan sumber daya Constraint Satisfaction and Optimization Problem Beberapa masalah CSP bertujuan untuk mencari solusi yang tidak hanya memenuhi batasan-batasan yang ada saja. Seringkali terdapat sebuah fungsi objektif yang ingin dioptimalkan untuk mengukur kualitas sebuah solusi. Jadi CSP tersebut juga bertujuan untuk mencari solusi yang terbaik dengan memaksimalkan atau meminimalkan nilai suatu fungsi objektif. Untuk melakukan hal ini, digunakan pemodelan masalah sebagai sebuah Constraint Satisfaction and Optimization Problem (CSOP), yaitu sebuah CSP bersamaan dengan sebuah fungsi objektif f yang memetakan setiap solusi yang ada pada CSP tersebut dengan suatu nilai bilangan real. Nilai inilah yang akan menjadi ukuran kualitas solusi CSP tersebut. Jadi, CSOP secara formal dapat didefinisikan sebagai sebuah quadruple (V, D, C, f) dimana V, D, dan C didefinisikan samap seperti definisi CSP biasa dan f : S R, dimana S menyatakan himpunan semua solusi pada CSP asal, yaitu (V, D, C). Pada umumnya fungsi f ini dapat dihitung secara langsung dari nilai variabelvariabel pada solusi di S dengan menggunakan ekspresi-ekspresi aritmetis biasa. Misalkan sebuah CSP bertujuan mencari solusi dengan meminimalkan nilai fungsi objektif f. Jika diketahui bahwa nilai fungsi objektif dari solusi yang dicari tidak boleh melebihi suatu batas U, maka pemodelan masalah menjadi CSOP dilakukan dengan menambahkan sebuah batasan tambahan, yaitu f(x) < U dimana x adalah

28 II-28 solusi yang dicari. Hal ini sama saja dengan CSP (V, D, C {f(x) < U}). Jika solusi yang diinginkan adalah solusi optimal global, yaitu solusi yang memiliki nilai fungsi objektif paling besar atau paling kecil diantara semua solusi yang ada, maka sebuah batasan tambahan seperti di atas harus ditambahkan ke dalam CSP setiap kali sebuah solusi baru yang lebih baik telah ditemukan Local Search Pada suatu masalah CSP dengan ukuran yang sangat besar, pencarian solusi optimal global dengan menggunakan algoritma pencarian yang komplit akan membutuhkan waktu yang sangat lama. Seringkali, solusi yang diinginkan hanyalah solusi yang baik, tidak terlalu buruk dan tidak harus merupakan solusi optimal global, tetapi proses pencariannya dapat dilakukan dalam waktu yang jauh lebih singkat.. Dengan demikian, diperlukan sebuah algoritma untuk menemukan solusi yang dekat dengan solusi optimal secara cepat. Beberapa algoritma yang telah diajukan oleh peneliti-peneliti di bidang ini merupakan variasi dari algoritma Local Search. Algoritma-algoritma ini antara lain adalah Hill Climbing, Genetic Algorithm, Simulated Annealing dan Tabu Search. Pada Tugas Akhir ini, variasi algoritma Local Search yang akan digunakan adalah Hill Climbing. Pada algoritma Local Search secara umum, langkah pertama yang dilakukan adalah melakukan pemberian nilai pada semua variabel secara sembarang. Hal ini mungkin menyebabkan banyak pelanggaran batasan CSP. Untuk mendapatkan sebuah solusi CSP yang tidak mengandung pelanggaran batasan sama sekali, dilakukan perbaikan secara progresif dengan cara mengubah pemberian nilai yang dilakukan untuk mengurangi pelanggaran batasan CSP. Setiap perbaikan mungkin masih mengandung pelanggaran batasan CSP, tetapi pelanggaran yang terjadi setelah perbaikan menjadi lebih sedikit. Iterasi ini berhenti ketika tidak ada lagi pelanggaran batasan sama sekali.

29 II-29 Prinsip di atas juga dapat diaplikasikan untuk mendapatkan solusi yang relatif baik. Dengan mengubah masalah CSP menjadi masalah CSOP, setelah satu solusi ditemukan, langkah berikutnya adalah melakukan perbaikan solusi tersebut secara progresif untuk mendapatkan solusi yang lebih baik daripada solusi yang telah ditemukan. Ini adalah prinsip utama algoritma Hill Climbing. Penggunaan algoritma Hill Climbing untuk mencari solusi optimal lokal masalah penjadwalan kereta api jalur tunggal akan dibahas pada bab berikutnya.

BAB III PEMODELAN MASALAH

BAB III PEMODELAN MASALAH BAB III PEMODELAN MASALAH Masalah penjadwalan kereta api jalur tunggal dapat dimodelkan sebagai sebuah kasus khusus dari masalah penjadwalan Job-Shop. Hal ini dilakukan dengan menganggap perjalanan sebuah

Lebih terperinci

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. 1.1 Latar Belakang BAB I PENDAHULUAN Pada bab pertama ini akan diuraikan mengenai latar belakang, rumusan masalah, tujuan, batasan masalah, metodologi, dan sistematika pembahasan dalam Tugas Akhir ini. 1.1 Latar Belakang

Lebih terperinci

BAB VI KESIMPULAN DAN SARAN

BAB VI KESIMPULAN DAN SARAN BAB VI KESIMPULAN DAN SARAN Bab terakhir ini akan menjelaskan kesimpulan dan saran Tugas Akhir. Kesimpulan dan saran terdiri atas dua bagian, yaitu kesimpulan dan saran mengenai pemodelan dan penyelesaian

Lebih terperinci

Implementasi Model Penjadwalan Job-Shop dalam Masalah Penjadwalan Kereta Api Jalur Tunggal dengan Pendekatan Constraint Programming

Implementasi Model Penjadwalan Job-Shop dalam Masalah Penjadwalan Kereta Api Jalur Tunggal dengan Pendekatan Constraint Programming Abstrak Implementasi Model Penjadwalan Job-Shop dalam Masalah Penjadwalan Kereta Api Jalur Tunggal dengan Pendekatan Constraint Programming Fajar Yuliawan NIM: 13503022 Program Studi Teknik Informatika,

Lebih terperinci

sejumlah variabel keputusan; fungsi yang akan dimaksimumkan atau diminimumkan disebut sebagai fungsi objektif, Ax = b, dengan = dapat

sejumlah variabel keputusan; fungsi yang akan dimaksimumkan atau diminimumkan disebut sebagai fungsi objektif, Ax = b, dengan = dapat sejumlah variabel keputusan; fungsi yang akan dimaksimumkan atau diminimumkan disebut sebagai fungsi objektif nilai variabel-variabel keputusannya memenuhi suatu himpunan kendala yang berupa persamaan

Lebih terperinci

ALGORITMA PENJADWALAN PRODUKSI PADA LINGKUNGAN MESIN JOB SHOP DENGAN MINIMALISASI RATAAN WAKTU TUNGGU OPERASI

ALGORITMA PENJADWALAN PRODUKSI PADA LINGKUNGAN MESIN JOB SHOP DENGAN MINIMALISASI RATAAN WAKTU TUNGGU OPERASI ALGORITMA PENJADWALAN PRODUKSI PADA LINGKUNGAN MESIN JOB SHOP DENGAN MINIMALISASI RATAAN WAKTU TUNGGU OPERASI Gamma/13502058 Abstraksi. Pada makalah ini dijelaskan mengenai pengembangan algoritma untuk

Lebih terperinci

Program Studi Sistem Informasi STMI - Kementerian Perindustrian Jakarta 2012

Program Studi Sistem Informasi STMI - Kementerian Perindustrian Jakarta 2012 OPTIMASI SISTEM INFORMASI PENJADWALAN KULIAH BERBASIS HEURISTIC SEARCH YANG DIKOMBINASIKAN DENGAN TEKNIK SMART BACK TRACKING DAN LOOK AHEAD (STUDI KASUS PADA STMI KEMENTERIAN PERINDUSTRIAN) Oleh : Dedy

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 2.1 Graf (Graph) Graf G didefinisikan sebagai pasangan himpunan (V, E) yang dinotasikan dalam bentuk G = {V(G), E(G)}, dimana V(G) adalah himpunan vertex (simpul) yang tidak kosong

Lebih terperinci

Implementasi Model Penjadwalan Job-Shop dalam Masalah Penjadwalan Kereta Api Jalur Tunggal dengan Pendekatan Constraint Programming

Implementasi Model Penjadwalan Job-Shop dalam Masalah Penjadwalan Kereta Api Jalur Tunggal dengan Pendekatan Constraint Programming Implementasi Model Penjadwalan Job-Shop dalam Masalah Penjadwalan Kereta Api Jalur Tunggal dengan Pendekatan Constraint Programming LAPORAN TUGAS AKHIR Disusun sebagai syarat kelulusan tingkat sarjana

Lebih terperinci

KI Kecerdasan Buatan Materi 7: Pencarian dgn. Batasan Kondisi (Constraint Satisfaction Problems)

KI Kecerdasan Buatan Materi 7: Pencarian dgn. Batasan Kondisi (Constraint Satisfaction Problems) [AIMA] Russel, Stuart J., Peter Norvig, "Artificial Intelligence, A Modern Approach" 3rd Ed., Prentice Hall, New Jersey, 200 KI09322 Kecerdasan Buatan Materi 7: Pencarian dgn. Batasan Kondisi (Constraint

Lebih terperinci

Kecerdasan Buatan/ Artificial Intelligence

Kecerdasan Buatan/ Artificial Intelligence Kecerdasan Buatan/ Artificial Intelligence Constraint Satisfaction Problem (CSP) Rekyan Regasari Mardi Putri, ST, MT Lailil Muflikhah, S.Kom, M.Sc Imam Cholissodin, S.Si., M.Kom M. Ali Fauzi, S.Kom, M.Kom

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Teori Graph 2.1.1 Definisi Graph Menurut Dasgupta dkk (2008), graph merupakan himpunan tak kosong titik-titik yang disebut vertex (juga disebut dengan node) dan himpunan garis-garis

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Konsep Dasar Graf Definisi 2.1.1 Sebuah graf didefinisikan sebagai pasangan terurut himpunan dimana: 1. adalah sebuah himpunan tidak kosong yang berhingga yang anggotaanggotanya

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Dalam kehidupan sehari hari, selalu dilakukan perjalanan dari satu titik atau lokasi ke lokasi yang lain dengan mempertimbangkan efisiensi waktu dan biaya sehingga

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI.. Definisi Graf Secara matematis, graf G didefinisikan sebagai pasangan himpunan (V,E) ditulis dengan notasi G = (V, E), yang dalam hal ini: V = himpunan tidak-kosong dari simpul-simpul

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Teori Graf 2.1.1 Defenisi Graf Graf G didefenisikan sebagai pasangan himpunan (V,E), ditulis dengan notasi G = (V,E), yang dalam hal ini V adalah himpunan tidak kosong dari simpul-simpul

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB LANDASAN TEORI. Teori Graf Teori graf merupakan pokok bahasan yang sudah tua usianya namun memiliki banyak terapan sampai saat ini. Graf digunakan untuk merepresentasikan objek-objek diskrit dan hubungan

Lebih terperinci

PENYELESAIAN TRAVELLING SALESMAN PROBLEM DENGAN METODE TABU SEARCH

PENYELESAIAN TRAVELLING SALESMAN PROBLEM DENGAN METODE TABU SEARCH Buletin Ilmiah Mat. Stat. Dan Terapannya (Bimaster) Volume 04, No. 1 (2015), hal 17 24. PENYELESAIAN TRAVELLING SALESMAN PROBLEM DENGAN METODE TABU SEARCH Fatmawati, Bayu Prihandono, Evi Noviani INTISARI

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang 12 BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah penjadwalan secara umum adalah aktifitas penugasan yang berhubungan dengan sejumlah kendala, sejumlah kejadian yang dapat terjadi pada suatu periode waktu

Lebih terperinci

APLIKASI SIMULATED ANNEALING UNTUK MENYELESAIKAN TRAVELLING SALESMAN PROBLEM

APLIKASI SIMULATED ANNEALING UNTUK MENYELESAIKAN TRAVELLING SALESMAN PROBLEM Buletin Ilmiah Mat. Stat. dan Terapannya (Bimaster) Volume 03, No. 1 (2015), hal 25 32. APLIKASI SIMULATED ANNEALING UNTUK MENYELESAIKAN TRAVELLING SALESMAN PROBLEM Edi Samana, Bayu Prihandono, Evi Noviani

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Pengertian Algoritma Algoritma merupakan urutan langkah langkah untuk menyelesaikan masalah yang disusun secara sistematis, algoritma dibuat dengan tanpa memperhatikan bentuk

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Kereta api merupakan salah satu jenis transportasi darat yang menjadi andalan masyarakat. Pelayanan jasa angkutan kereta api sepenuhnya dijalankan oleh manajemen

Lebih terperinci

APLIKASI PEWARNAAN SIMPUL GRAF UNTUK MENGATASI KONFLIK PENJADWALAN MATA KULIAH DI FMIPA UNY

APLIKASI PEWARNAAN SIMPUL GRAF UNTUK MENGATASI KONFLIK PENJADWALAN MATA KULIAH DI FMIPA UNY APLIKASI PEWARNAAN SIMPUL GRAF UNTUK MENGATASI KONFLIK PENJADWALAN MATA KULIAH DI FMIPA UNY Latar belakang Masalah Pada setiap awal semester bagian pendidikan fakultas Matematika dan Ilmu Pengetahuan Universitas

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA 21 2 TINJUN PUSTK 2.1. lgoritma lgoritma merupakan suatu langkah langkah untuk menyelesaikan masalah yang disusun secara sistematis, tanpa memperhatikan bentuk yang akan digunakan sebagai implementasinya,

Lebih terperinci

LANDASAN TEORI. Bab Konsep Dasar Graf. Definisi Graf

LANDASAN TEORI. Bab Konsep Dasar Graf. Definisi Graf Bab 2 LANDASAN TEORI 2.1. Konsep Dasar Graf Definisi Graf Suatu graf G terdiri atas himpunan yang tidak kosong dari elemen elemen yang disebut titik atau simpul (vertex), dan suatu daftar pasangan vertex

Lebih terperinci

Pemanfaatan Teori Graf untuk Menguraikan Permasalahan dalam Pemodelan Persoalan Penjadwalan Kereta Api

Pemanfaatan Teori Graf untuk Menguraikan Permasalahan dalam Pemodelan Persoalan Penjadwalan Kereta Api Pemanfaatan Teori Graf untuk Menguraikan Permasalahan dalam Pemodelan Persoalan Penjadwalan Kereta Api Muhammad Dhito Prihardhanto - 13507118 Prodi Teknik Informatika, Sekolah Teknik Elektro dan Informatika

Lebih terperinci

Penggunaan Algoritma Dijkstra dalam Penentuan Lintasan Terpendek Graf

Penggunaan Algoritma Dijkstra dalam Penentuan Lintasan Terpendek Graf Penggunaan Algoritma Dijkstra dalam Penentuan Lintasan Terpendek Graf Rahadian Dimas Prayudha - 13509009 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

Permodelan Pohon Merentang Minimum Dengan Menggunakan Algoritma Prim dan Algoritma Kruskal

Permodelan Pohon Merentang Minimum Dengan Menggunakan Algoritma Prim dan Algoritma Kruskal Permodelan Pohon Merentang Minimum Dengan Menggunakan Algoritma Prim dan Algoritma Kruskal Salman Muhammad Ibadurrahman NIM : 13506106 Program Studi Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha

Lebih terperinci

Algoritma Branch & Bound

Algoritma Branch & Bound Algoritma Branch & Bound Bahan Kuliah IF2211 Strategi Algoritma Program Studi Informatika STEI ITB 2018 Overview Pembentukan pohon ruang status (state space tree) dinamis untuk mencari solusi persoalan

Lebih terperinci

BAB 4 PENGUJUAN MODEL DAN ANALISIS. Untuk keperluan pengujian model dan program komputer yang telah

BAB 4 PENGUJUAN MODEL DAN ANALISIS. Untuk keperluan pengujian model dan program komputer yang telah 7 BAB PENGUJUAN MODEL DAN ANALISIS Untuk keperluan pengujian model dan program komputer yang telah dikembangkan dilakukan pengumpulan data sebagai berikut : 1. Pengujian model dalam masalah job shop dengan

Lebih terperinci

Penjadwalan Kereta Api di Daop VIII Surabaya

Penjadwalan Kereta Api di Daop VIII Surabaya Penjadwalan Kereta Api di Daop VIII Surabaya Dosen Pembimbing : Dra. Sri Mumpuni Retnaningsih, MT Rahmat Septiawan Putra 1309 106 003 Abstrak Kereta api merupakan salah satu jenis transportasi darat yang

Lebih terperinci

III PEMODELAN MASALAH PENJADWALAN KERETA API DAN APLIKASINYA

III PEMODELAN MASALAH PENJADWALAN KERETA API DAN APLIKASINYA 8 sidding petak jalan petak blok Keterangan: Stasiun Sinyal Crossing Overtaking Gambar 5 Ilustrasi dari istilah perkeretaapian. III PEMODELAN MASALAH PENJADWALAN KERETA API DAN APLIKASINYA 3.1 Model Matematika

Lebih terperinci

BAB I PENDAHULUAN 1.1. Latar Belakang dan Permasalahan

BAB I PENDAHULUAN 1.1. Latar Belakang dan Permasalahan BAB I PENDAHULUAN 1.1. Latar Belakang dan Permasalahan Kereta api merupakan salah satu angkutan darat yang banyak diminati masyarakat, hal ini dikarenakan biaya yang relatif murah dan waktu tempuh yang

Lebih terperinci

STUDI PERBANDINGAN ALGORITMA CHEAPEST INSERTION HEURISTIC DAN ANT COLONY SYSTEM DALAM PEMECAHAN TRAVELLING SALESMAN PROBLEM

STUDI PERBANDINGAN ALGORITMA CHEAPEST INSERTION HEURISTIC DAN ANT COLONY SYSTEM DALAM PEMECAHAN TRAVELLING SALESMAN PROBLEM Seminar Nasional Aplikasi Teknologi Informasi (SNATI ) ISSN: `1907-5022 Yogyakarta, 19 Juni STUDI PERBANDINGAN ALGORITMA CHEAPEST INSERTION HEURISTIC DAN ANT COLONY SYSTEM DALAM PEMECAHAN TRAVELLING SALESMAN

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Sistem Informasi Geografis (SIG) Sistem Informasi Geografis atau Geographic Information System (GIS) merupakan suatu sistem informasi yang berbasis komputer, dirancang untuk bekerja

Lebih terperinci

Artificial Intelegence/ P_3 EKA YUNIAR

Artificial Intelegence/ P_3 EKA YUNIAR Artificial Intelegence/ P_3 EKA YUNIAR Pokok Bahasan Teknik Pencarian Heuristik Generate And Test Hill Climbing Best First Searching Problem Reduction Constrait Satisfaction Means End Analysis Teknik Pencarian

Lebih terperinci

Penggunaan Algoritma Greedy dalam Membangun Pohon Merentang Minimum

Penggunaan Algoritma Greedy dalam Membangun Pohon Merentang Minimum Penggunaan Algoritma Greedy dalam Membangun Pohon Merentang Minimum Gerard Edwin Theodorus - 13507079 Jurusan Teknik Informatika ITB, Bandung, email: if17079@students.if.itb.ac.id Abstract Makalah ini

Lebih terperinci

TERAPAN POHON BINER 1

TERAPAN POHON BINER 1 TERAPAN POHON BINER 1 Terapan pohon biner di dalam ilmu komputer sangat banyak, diantaranya : 1. Pohon ekspresi 2. Pohon keputusan 3. Kode Prefiks 4. Kode Huffman 5. Pohon pencarian biner 2 Pohon Ekspresi

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Konsep Dasar Graph Sebelum sampai pada pendefenisian masalah lintasan terpendek, terlebih dahulu pada bagian ini akan diuraikan mengenai konsep-konsep dasar dari model graph dan

Lebih terperinci

PENYELESAIAN GAME TEKA-TEKI SILANG DENGAN MENERAPKAN ALGORITMA BACKTRACKING

PENYELESAIAN GAME TEKA-TEKI SILANG DENGAN MENERAPKAN ALGORITMA BACKTRACKING PENYELESAIAN GAME TEKA-TEKI SILANG DENGAN MENERAPKAN ALGORITMA BACKTRACKING Tiffany Adriana - 13505068 Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung if15068@students.if.itb.ac.id

Lebih terperinci

PENYELESAIAN TRAVELLING SALESMAN PROBLEM MENGGUNAKAN METODE SIMPLE HILL CLIMBING

PENYELESAIAN TRAVELLING SALESMAN PROBLEM MENGGUNAKAN METODE SIMPLE HILL CLIMBING Buletin Ilmiah Math. Stat. dan Terapannya (Bimaster) Volume 0, No. (2015), hal 17 180. PENYELESAIAN TRAVELLING SALESMAN PROBLEM MENGGUNAKAN METODE SIMPLE HILL CLIMBING Kristina Karunianti Nana, Bayu Prihandono,

Lebih terperinci

UKDW BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

UKDW BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah Graf adalah suatu diagram yang memuat informasi tertentu jika diinterpretasikan secara tepat. Tujuannya adalah sebagai visualisasi objek-objek agar lebih mudah

Lebih terperinci

IV STUDI KASUS. sebagai stasiun awal. Rute 5 meliputi stasiun. 3, 9, 13, 14, 15, 16, 17 dengan stasiun 3. 4, 10, 15, 18, 19, 22, 23 dengan stasiun 4

IV STUDI KASUS. sebagai stasiun awal. Rute 5 meliputi stasiun. 3, 9, 13, 14, 15, 16, 17 dengan stasiun 3. 4, 10, 15, 18, 19, 22, 23 dengan stasiun 4 0 IV STUDI KASUS Misalkan pada suatu daerah terdapat jaringan rel kereta. Jaringan rel kereta tersebut memiliki 3 stasiun dengan 3 edge antarstasiun. Gambar jaringan dapat dilihat pada Gambar 6. Angka

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Constraint Satisfaction Problem 2.1.1 Pengertian Dasar Constraint adalah batasan dalam pengertian yang paling sederhana. Dalam kehidupan sehari-hari, mungkin sering didengar kalimat

Lebih terperinci

Penyelesaian Traveling Salesman Problem dengan Algoritma Heuristik

Penyelesaian Traveling Salesman Problem dengan Algoritma Heuristik Penyelesaian Traveling Salesman Problem dengan Algoritma Heuristik Filman Ferdian - 13507091 Program Studi Teknik Informatika, Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jalan Ganesha

Lebih terperinci

APLIKASI PENJADWALAN PERKULIAHAN MENGGUNAKAN ALGORITMA SEQUENTIAL SEARCH DAN FORWARD CHECKING

APLIKASI PENJADWALAN PERKULIAHAN MENGGUNAKAN ALGORITMA SEQUENTIAL SEARCH DAN FORWARD CHECKING APLIKASI PENJADWALAN PERKULIAHAN MENGGUNAKAN ALGORITMA SEQUENTIAL SEARCH DAN FORWARD CHECKING Eduardus Hardika Sandy Atmaja 1), Eko Hari Parnadi 2) 1), 2) Teknik Informatika Universitas Sanata Dharna Yogyakarta

Lebih terperinci

PENJADWALAN DENGAN TEKNIK SISIPAN (INSERTION TECHNIQUE) IR. DINI WAHYUNI, MT. Fakultas Teknik Jurusan Teknik Industri Universitas Sumatera Utara

PENJADWALAN DENGAN TEKNIK SISIPAN (INSERTION TECHNIQUE) IR. DINI WAHYUNI, MT. Fakultas Teknik Jurusan Teknik Industri Universitas Sumatera Utara PENJADWALAN DENGAN TEKNIK SISIPAN (INSERTION TECHNIQUE) IR. DINI WAHYUNI, MT. Fakultas Teknik Jurusan Teknik Industri Universitas Sumatera Utara. Konsep Penadwalan Penadwalan dapat didefinisikan sebagai

Lebih terperinci

BAB 1 PENDAHULUAN. Persoalan lintasan terpanjang (longest path) merupakan persoalan dalam mencari

BAB 1 PENDAHULUAN. Persoalan lintasan terpanjang (longest path) merupakan persoalan dalam mencari BAB 1 PENDAHULUAN 1.1 Latar Belakang Persoalan lintasan terpanjang (longest path) merupakan persoalan dalam mencari lintasan sederhana terpanjang maksimum dalam suatu graph yang diberikan. Lintasan terpanjang

Lebih terperinci

BAB 1 PENDAHULUAN. barang, jaringan jalan raya, atau dalam masalah komputasi yaitu jaringan penjadwalan.

BAB 1 PENDAHULUAN. barang, jaringan jalan raya, atau dalam masalah komputasi yaitu jaringan penjadwalan. BAB 1 PENDAHULUAN 1.1 Latar Belakang Kehidupan manusia berkaitan erat dengan jaringan. Jaringan pendistribusian barang, jaringan jalan raya, atau dalam masalah komputasi yaitu jaringan penjadwalan. Dalam

Lebih terperinci

BAB 3 LANDASAN TEORI

BAB 3 LANDASAN TEORI BAB 3 LANDASAN TEORI 3.1. Pengertian Penjadwalan Penjadwalan adalah aktivitas perencanaan untuk menentukan kapan dan di mana setiap operasi sebagai bagian dari pekerjaan secara keseluruhan harus dilakukan

Lebih terperinci

Aplikasi Algoritma Dijkstra dalam Pencarian Lintasan Terpendek Graf

Aplikasi Algoritma Dijkstra dalam Pencarian Lintasan Terpendek Graf Aplikasi Algoritma Dijkstra dalam Pencarian Lintasan Terpendek Graf Nur Fajriah Rachmah - 0609 Program Studi Teknik Informatika, Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jalan

Lebih terperinci

BAB I PENDAHULUAN. hampir di seluruh dunia, termasuk Indonesia. Alat transportasi ini memiliki

BAB I PENDAHULUAN. hampir di seluruh dunia, termasuk Indonesia. Alat transportasi ini memiliki BAB I PENDAHULUAN 1.1 Latar Belakang Kereta api merupakan alat transportasi darat utama yang digunakan hampir di seluruh dunia, termasuk Indonesia. Alat transportasi ini memiliki multi keunggulan komparatif,

Lebih terperinci

I. PENDAHULUAN. Gambar 1. Contoh-contoh graf

I. PENDAHULUAN. Gambar 1. Contoh-contoh graf Quad Tree dan Contoh-Contoh Penerapannya Muhammad Reza Mandala Putra - 13509003 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jalan Ganesha 10 Bandung

Lebih terperinci

BAB I PENDAHULUAN. pengalaman belajar untuk semua peserta didik (Pusat Kurikulum Badan

BAB I PENDAHULUAN. pengalaman belajar untuk semua peserta didik (Pusat Kurikulum Badan 1 BAB I PENDAHULUAN 1.1. Latar Belakang Kegiatan belajar mengajar adalah suatu bentuk penyelenggaraan pendidikan yang memadukan secara sistematis dan berkesinambungan kegiatan pendidikan di dalam lingkungan

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA BAB 2 TINJAUAN PUSTAKA 2.1 Graf 2.1.1 Definisi Graf Graf adalah pasangan himpunan (V, E), dan ditulis dengan notasi G = (V, E), V adalah himpunan tidak kosong dari verteks-verteks {v 1, v 2,, v n } yang

Lebih terperinci

Aplikasi Shortest Path dengan Menggunakan Graf dalam Kehidupan Sehari-hari

Aplikasi Shortest Path dengan Menggunakan Graf dalam Kehidupan Sehari-hari Aplikasi Shortest Path dengan Menggunakan Graf dalam Kehidupan Sehari-hari Andika Mediputra NIM : 13509057 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI Sebelum memulai pembahasan lebih lanjut, pertama-tama haruslah dijelaskan apa yang dimaksud dengan traveling salesman problem atau dalam bahasa Indonesia disebut sebagai persoalan

Lebih terperinci

Penerapan Algoritma Branch and Bound pada Penentuan Staffing Organisasi dan Kepanitiaan

Penerapan Algoritma Branch and Bound pada Penentuan Staffing Organisasi dan Kepanitiaan Penerapan Algoritma Branch and Bound pada Penentuan Staffing Organisasi dan Kepanitiaan Mikhael Artur Darmakesuma - 13515099 Program Studi Teknik Informaitka Sekolah Teknik Elektro dan Informatika Institut

Lebih terperinci

PENGEMBANGAN MODEL PENJADWALAN MENGGUNAKAN TEKNIK SISIPAN (INSERTION TECHNIQUE)

PENGEMBANGAN MODEL PENJADWALAN MENGGUNAKAN TEKNIK SISIPAN (INSERTION TECHNIQUE) PENGEMBANGAN MODEL PENJADWALAN MENGGUNAKAN TEKNIK SISIPAN (INSERTION TECHNIQUE) IR. DINI WAHYUNI, MT. Fakultas Teknik Jurusan Teknik Industri Universitas Sumatera Utara 1. Latar Belakang Kecenderungan

Lebih terperinci

Penerapan Pohon dengan Algoritma Branch and Bound dalam Menyelesaikan N-Queen Problem

Penerapan Pohon dengan Algoritma Branch and Bound dalam Menyelesaikan N-Queen Problem Penerapan Pohon dengan Algoritma Branch and Bound dalam Menyelesaikan N-Queen Problem Arie Tando (13510018) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

LESSON 6 : INFORMED SEARCH Part II

LESSON 6 : INFORMED SEARCH Part II LESSON 6 : INFORMED SEARCH Part II 3.3 Itterative deepening A* search 3.3.1 Algoritma IDA* Itterative deepening search atau IDA* serupa dengan iterative deepening depth first, namun dengan modifikasi sebagai

Lebih terperinci

Penjadwalan Job Shop Fleksibel dengan Mempertimbangkan Saat Siap dan Saat Tenggat

Penjadwalan Job Shop Fleksibel dengan Mempertimbangkan Saat Siap dan Saat Tenggat Petunjuk Sitasi: Putawara, R., Aribowo, W., & Ma'ruf, A. (2017). Penjadwalan Job Shop Fleksibel dengan Mempertimbangkan Saat Siap dan Saat Tenggat. Prosiding SNTI dan SATELIT 2017 (pp. E41-47). Malang:

Lebih terperinci

I PENDAHULUAN II LANDASAN TEORI

I PENDAHULUAN II LANDASAN TEORI 1 I PENDAHULUAN 1.1 Latar Belakang Salah satu tujuan dari industri atau perusahaan adalah menciptakan laba yang maksimal. Salah satu bentuk usahanya adalah dengan memaksimumkan hasil produksi atau meminimumkan

Lebih terperinci

PENJADWALAN PRODUKSI DENGAN METODE BRANCH AND BOUND PADA PT. XYZ

PENJADWALAN PRODUKSI DENGAN METODE BRANCH AND BOUND PADA PT. XYZ PENJADWALAN PRODUKSI DENGAN METODE BRANCH AND BOUND PADA PT. XYZ Saiful Mangngenre 1, Amrin Rapi 2, Wendy Flannery 3 Program Studi Teknik Industri, Fakultas Teknik, Universitas Hasanuddin, Makassar, 90245

Lebih terperinci

PEWARNAAN GRAF SEBAGAI METODE PENJADWALAN KEGIATAN PERKULIAHAN

PEWARNAAN GRAF SEBAGAI METODE PENJADWALAN KEGIATAN PERKULIAHAN PEWARNAAN GRAF SEBAGAI METODE PENJADWALAN KEGIATAN PERKULIAHAN Eric Cahya Lesmana - 13508097 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung Jalan Ganesa

Lebih terperinci

BAB 3 METODOLOGI PEMECAHAN MASALAH

BAB 3 METODOLOGI PEMECAHAN MASALAH 42 BAB 3 METODOLOGI PEMECAHAN MASALAH 3.1 Flow Diagram Pemecahan Masalah dan Penjelasannya 3.1.1 Studi Pendahuluan Untuk mengidentifikasi masalah yang akan diteliti di PT. Furin Jaya, maka penulis melakukan

Lebih terperinci

PENERAPAN SISTEM PERSAMAAN LINEAR ITERATIF MAKS-PLUS PADA MASALAH LINTASAN TERPANJANG

PENERAPAN SISTEM PERSAMAAN LINEAR ITERATIF MAKS-PLUS PADA MASALAH LINTASAN TERPANJANG PENERAPAN SISTEM PERSAMAAN LINEAR ITERATIF MAKS-PLUS PADA MASALAH LINTASAN TERPANJANG Mira Amalia, Siswanto, dan Bowo Winarno Program Studi Matematika FMIPA UNS Abstrak. Aljabar merupakan cabang ilmu matematika

Lebih terperinci

Create PDF with GO2PDF for free, if you wish to remove this line, click here to buy Virtual PDF Printer

Create PDF with GO2PDF for free, if you wish to remove this line, click here to buy Virtual PDF Printer Membangun Pohon Merentang Minimum Dari Algoritma Prim dengan Strategi Greedy Doni Arzinal 1 Jursan Teknik Informatika, Institut Teknologi Bandung Labtek V, Jl. Ganesha 10 Bandung 1 if15109@students.if.itb.ac.id,

Lebih terperinci

PENYELESAIAN TRAVELLING SALESMAN PROBLEM DENGAN ALGORITMA BRANCH AND BOUND

PENYELESAIAN TRAVELLING SALESMAN PROBLEM DENGAN ALGORITMA BRANCH AND BOUND PENYEESAIAN TRAVEING SAESMAN PROBEM DENGAN AGORITMA BRANCH AND BOND Yogo Dwi Prasetyo Pendidikan Matematika, niversitas Asahan e-mail: abdullah.prasetyo@gmail.com Abstract The shortest route search by

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI 15 BAB 2 LANDASAN TEORI 2.1 Tinjauan Pustaka 2.1.1 Pengertian Dasar Penjadwalan Produksi Secara umum, penjadwalan merupakan suatu proses dalam perencanaan dan pengendalian produksi yang merencanakan produksi

Lebih terperinci

MATEMATIKA DISKRIT II ( 2 SKS)

MATEMATIKA DISKRIT II ( 2 SKS) MATEMATIKA DISKRIT II ( 2 SKS) Rabu, 18.50 20.20 Ruang Hard Disk PERTEMUAN XI, XII RELASI Dosen Lie Jasa 1 Matematika Diskrit Graf (lanjutan) 2 Lintasan dan Sirkuit Euler Lintasan Euler ialah lintasan

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Konsep Dasar Simulasi Sistem didefinisikan sebagai sekumpulan entitas baik manusia ataupun mesin yang yang saling berinteraksi untuk mencapai tujuan tertentu. Dalam prakteknya,

Lebih terperinci

Aplikasi Pewarnaan Graf untuk Sistem Penjadwalan On-Air Stasiun Radio

Aplikasi Pewarnaan Graf untuk Sistem Penjadwalan On-Air Stasiun Radio Aplikasi Pewarnaan Graf untuk Sistem Penjadwalan On-Air Stasiun Radio Muhamad Irfan Maulana - 13515037 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA 39 BAB 2 TINJAUAN PUSTAKA 2.1. Teori Graf 2.1.1 Definisi Graf Teori graf merupakan salah satu cabang matematika yang paling banyak aplikasinya dalam kehidupan sehari hari. Salah satu bentuk dari graf adalah

Lebih terperinci

Penerapan Pewarnaan Graf pada Permainan Real- Time Strategy

Penerapan Pewarnaan Graf pada Permainan Real- Time Strategy Penerapan Pewarnaan Graf pada Permainan Real- Time Strategy Kurniandha Sukma Yunastrian / 13516106 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl.

Lebih terperinci

Bab 2 2. Teknik Pencarian

Bab 2 2. Teknik Pencarian Bab 2 2. Teknik Pencarian Bab ini membahas bagaimana membuat ruang masalah untuk suatu masalah tertentu. Sebagian masalah mempunyai ruang masalah yang dapat diprediksi, sebagian lainnya tidak. 1.1 Pendefinisian

Lebih terperinci

GRAF. V3 e5. V = {v 1, v 2, v 3, v 4 } E = {e 1, e 2, e 3, e 4, e 5 } E = {(v 1,v 2 ), (v 1,v 2 ), (v 1,v 3 ), (v 2,v 3 ), (v 3,v 3 )}

GRAF. V3 e5. V = {v 1, v 2, v 3, v 4 } E = {e 1, e 2, e 3, e 4, e 5 } E = {(v 1,v 2 ), (v 1,v 2 ), (v 1,v 3 ), (v 2,v 3 ), (v 3,v 3 )} GRAF Graf G(V,E) didefinisikan sebagai pasangan himpunan (V,E), dengan V adalah himpunan berhingga dan tidak kosong dari simpul-simpul (verteks atau node). Dan E adalah himpunan berhingga dari busur (vertices

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Tinjauan Pustaka 2.1.1 Definisi Umum Penjadwalan Produksi Untuk mengatur suatu sistem produksi agar dapat berjalan dengan baik, diperlukan adanya pengambilan keputusan yang tepat

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI 17 BAB 2 LANDASAN TEORI 2.1 Permasalahan Optimasi Optimasi adalah proses memaksimasi atau meminimasi suatu fungsi tujuan dengan tetap memperhatikan pembatas yang ada. Optimasi memegang peranan penting

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Konsep Dasar Teori Graph 2.1.1 Graph Tak Berarah dan Digraph Suatu Graph Tak Berarah (Undirected Graph) merupakan kumpulan dari titik yang disebut verteks dan segmen garis yang

Lebih terperinci

BAB III LANDASAN TEORI

BAB III LANDASAN TEORI BAB III LANDASAN TEORI A. Jenis dan Bentuk Tata Letak Jalur di Stasiun Berdasarkan Peraturan Menteri Perhubungan No 60 Tahun 2012 tentang persyaratan teknis jalur kereta api, persyaratan tata letak, tata

Lebih terperinci

Gambar 6. Graf lengkap K n

Gambar 6. Graf lengkap K n . Jenis-jenis Graf Tertentu Ada beberapa graf khusus yang sering dijumpai. Beberapa diantaranya adalah sebagai berikut. a. Graf Lengkap (Graf Komplit) Graf lengkap ialah graf sederhana yang setiap titiknya

Lebih terperinci

Pencarian Jalur Terpendek dengan Algoritma Dijkstra

Pencarian Jalur Terpendek dengan Algoritma Dijkstra Volume 2 Nomor 2, Oktober 207 e-issn : 24-20 p-issn : 24-044X Pencarian Jalur Terpendek dengan Algoritma Dijkstra Muhammad Khoiruddin Harahap Politeknik Ganesha Medan Jl.Veteran No. 4 Manunggal choir.harahap@yahoo.com

Lebih terperinci

PENERAPAN METODE SIMULATED ANNEALING UNTUK PENJADWALAN JOB SHOP PADA MESIN PABRIK

PENERAPAN METODE SIMULATED ANNEALING UNTUK PENJADWALAN JOB SHOP PADA MESIN PABRIK PENERAPAN METODE SIMULATED ANNEALING UNTUK PENJADWALAN JOB SHOP PADA MESIN PABRIK Hanafi Agam 1, Arna Fariza 2, Ira Prasetyaningrum 2 Mahasiswa Jurusan Teknik Informatika 1, Dosen Pembimbing 2 Politeknik

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Graf adalah salah satu metode yang sering digunakan untuk mencari solusi dari permasalahan diskrit dalam dunia nyata. Dalam kehidupan sehari-hari, graf digunakan untuk

Lebih terperinci

Oleh Lukman Hariadi

Oleh Lukman Hariadi ANALISIS PENYELESAIAN PUZZLE SUDOKU DENGAN MENERAPKAN ALGORITMA BACKTRACKING (berbentuk piramida terbalik) PROPOSAL JUDUL Diajukan Untuk Menempuh Tugas Akhir Oleh Lukman Hariadi 14201045 PROGRAM STUDI

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Penelitian ini merupakan tugas akhir yang berdasarkan kepada hasil penelitian sebelumnya yang dilakukan oleh Cepi Dea Iskandar pada tahun 2013 dengan judul

Lebih terperinci

BAB III LANDASAN TEORI. A. Tipikal Tata Letak Dan Panjang Jalur Di Stasiun

BAB III LANDASAN TEORI. A. Tipikal Tata Letak Dan Panjang Jalur Di Stasiun BAB III LANDASAN TEORI A. Tipikal Tata Letak Dan Panjang Jalur Di Stasiun 1. Tipikal Tata Letak Jalur Stasiun Tata letak stasiun atau emplasemen adalah konfigurasi jalur untuk suatu tujuan tertentu, yaitu

Lebih terperinci

Journal of Informatics and Technology, Vol 1, No 1, Tahun 2012, p

Journal of Informatics and Technology, Vol 1, No 1, Tahun 2012, p PENENTUAN JALUR TERPENDEK PADA PELAYANAN AGEN TRAVEL KHUSUS PENGANTARAN WILAYAH SEMARANG BERBASIS SIG DENGAN ALGORITMA BRANCH AND BOUND Windi Rayina Rosa, Drs. Suhartono, M.Kom, Helmie Arif Wibawa, S.Si,

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI Pada bab ini akan diuraikan mengenai teori dan terminologi graph, yaitu bentukbentuk khusus suatu graph dan juga akan diuraikan penjelasan mengenai shortest path. 2.1 Konsep Dasar

Lebih terperinci

Aplikasi Pohon Merentang Minimum dalam Rute Jalur Kereta Api di Pulau Jawa

Aplikasi Pohon Merentang Minimum dalam Rute Jalur Kereta Api di Pulau Jawa Aplikasi Pohon Merentang Minimum dalam Rute Jalur Kereta Api di Pulau Jawa Darwin Prasetio ( 001 ) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl.

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Terminologi graf Tereminologi termasuk istilah yang berkaitan dengan graf. Di bawah ini akan dijelaskan beberapa definisi yang sering dipakai terminologi. 2.1.1 Graf Definisi

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Pengertian dan Ruang Lingkup Sistem Produksi Pada sub bab ini akan dibahas mengenai pengertian sistem produksi dari beberapa teori yang sudah ada, serta ruang lingkup sistem produksi

Lebih terperinci

Pembahasan Pencarian Lintasan Terpendek Menggunakan Algoritma Dijkstra dan A*

Pembahasan Pencarian Lintasan Terpendek Menggunakan Algoritma Dijkstra dan A* Pembahasan Pencarian Lintasan Terpendek Menggunakan Algoritma Dijkstra dan A* Willy Setiawan - 13508043 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang 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

Lebih terperinci

BAB II KAJIAN PUSTAKA. Pada bab kajian pustaka berikut ini akan dibahas beberapa materi yang meliputi

BAB II KAJIAN PUSTAKA. Pada bab kajian pustaka berikut ini akan dibahas beberapa materi yang meliputi BAB II KAJIAN PUSTAKA Pada bab kajian pustaka berikut ini akan dibahas beberapa materi yang meliputi graf, permasalahan optimasi, model matematika dari objek wisata di Yogyakarta, dan algoritma genetika

Lebih terperinci

ABSTRAK. iv Universitas Kristen Maranatha

ABSTRAK. iv Universitas Kristen Maranatha ABSTRAK PT. Mitra Abadi Sejahtera adalah sebuah perusahaan yang bergerak di bidang garmen yang mengolah kain menjadi pakaian. Perusahaan memproduksi barang sesuai pesanan konsumen (job order). Masalah

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI Pada bab ini, akan dibahas landasan teori mengenai teori-teori yang digunakan dan konsep yang mendukung pembahasan, serta penjelasan mengenai metode yang digunakan. 2.1. Jalur Terpendek

Lebih terperinci

BAB 2 LANDASAN TEORI. perencanaan dan pengendalian produksi dan juga merupakan rencana

BAB 2 LANDASAN TEORI. perencanaan dan pengendalian produksi dan juga merupakan rencana 8 BAB 2 LANDASAN TEORI 2.1 Definisi Penjadwalan Penjadwalan merupakan bagian yang strategis dari proses perencanaan dan pengendalian produksi dan juga merupakan rencana pengaturan urutan kerja serta pengalokasian

Lebih terperinci

Aplikasi Algoritma Prim dalam Penentuan Pohon Merentang Minimum untuk Jaringan Pipa PDAM Kota Tangerang

Aplikasi Algoritma Prim dalam Penentuan Pohon Merentang Minimum untuk Jaringan Pipa PDAM Kota Tangerang Aplikasi Algoritma Prim dalam Penentuan Pohon Merentang Minimum untuk Jaringan Pipa PDAM Kota Tangerang Adam Fadhel Ramadhan/13516054 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika

Lebih terperinci