• Tidak ada hasil yang ditemukan

ANALISIS DAN PERANCANGAN

3.3 Pemodelan Sistem

Tujuan dari dilakukannya pemodelan sistem adalah untuk membangun sebuah model dari sistem nyata yang akan dibangun. UML (Unified Modeling Language) adalah alat yang digunakan dalam membuat abstraksi dari sistem yang akan dibangun. Pemodelan sistem yang akan digunakan pada penelitian ini, yaitu Use Case Diagram , Activity Diagram, dan Sequence Diagram.

3.3.1 Use Case Diagram

Use Case diagram adalah model fungsional dari sebuah sistem dalam bentuk actor dan use case. Use case adalah suatu pola yang menggambarkan interaksi diantara sistem dan actor. Fungsi-fungsi yang ada pada sistem dapat dipahami dengan mudah menggunakan use case. Pada gambar 3.3. terdapat use case diagram untuk permasalahan pada penelitian ini.

19

Gambar 3.3. Use Case Diagram.

Dapat dilihat use case diagram pada gambar 3.3. Diagram memiliki satu actor yang berperan sebagai pengguna sistem (user). Hal yang dapat dilihat oleh user adalah data lokasi yang telah tersimpan di database dan user juga bisa menginput bobot buah kelapa sawit pada masing-masing lokasi pengangkutan untuk menentukan rute pengangkutan buah kelapa sawit. Data yang tersimpan pada database dapat di-update oleh user sesuai kebutuhan. Proses routing dilakukan dengan algoritma genetika.

Setelah melalui berbagai proses, maka ditemukan rute pengangkutan buah kelapa sawit. Untuk lebih lengkapnya, penjelasan Use Case di atas dapat dilihat pada Tabel 3.1.

Tabel 3.1. Narasi Use Case Algoritma Genetika Use Case Name Algoritma Genetika

Actor User

Description User menginput bobot buah kelapa sawit untuk mendapatkan rute pengangkutan buah kelapa sawit.

Precondition User belum menginput bobot buah kelapa sawit untuk mendapatkan rute pengangkutan buah kelapa sawit.

Postcondition Sistem menampilkan output rute pengangkutan buah

kelapa sawit.

Typical course of event Aktivitas Pengguna Respons Sistem 1. User menginput bobot

buah kelapa sawit untuk mendapatkan rute pengangkutan buah kelapa sawit.

1. Sistem menampilkan output berupa rute pengangkutan buah kelapa sawit dari beberapa generasi.

Alternatecourse -

3.3.2 Activity Diagram

Activity Diagram adalah rancangan aliran aktivitas atau kerja pada sebuah sistem.

Activity Diagram pada sistem dipenelitian ini adalah Activity Diagram Baca Data Lokasi dan Activity Diagram Routing.

3.3.2.1 Activity Diagram Baca Data Lokasi

Gambar 3.4. Activity Diagram Baca Data Lokasi.

21

Pada gambar 3.4. dapat dilihat activity diagram baca data lokasi, yang merupakan ilustrasi dari proses ditampilkannya database kepada user yang berisikan data lokasi.

Pada awal aplikasi dibuka, sistem akan menampilkan halaman utama program, setelah itu data lokasi akan terbuka. Untuk memastikan ada tidaknya database yang dibutuhkan, akan dilakukan pengecekan oleh sistem. Jika tidak tersedia, maka akan ada notifikasi pesan error dan user harus membuat database terlebih dahulu. Jika data yang dibutuhkan sudah tersedia, maka akan ditampilkan keseluruhan data lokasi oleh sistem.

3.3.2.2 Activity Diagram Routing

Gambar 3.5. Activity Diagram Routing.

Pada gambar 3.5 dapat diilihat bagaimana proses dari activity diagram routing, yang mana diawali dengan user menginput bobot buah kelapa sawit pada masing-masing lokasi pengangkutan. Kemudian secara otomatis user bisa mengisi nilai dari parameter algoritma genetika seperti, ukuran populasi, crossover rate, mutation rate, dan juga maksimum generasi. Tetapi user juga bisa untuk tidak mengisinya, maka nilai parameter algoritma genetika akan diambil dari nilai yang sudah ada pada sistem.

Setelah itu, user mengklik button proses dan akan ditampilkan hasil dari rute pengangkutan buah kelapa sawit.

3.3.3 Sequence Diagram

Sequence Diagram adalah diagram behavior atau diagram yang menyajikan perilaku dari software. Pada sequence diagram akan digambarkan proses interaksi objek lewat message dalam operasi eksekusi pada sebuah usecase. Sequence diagram berperan dalam menggambarkan skenario atau deretan langkah-langkah yang dikerjakan sebagai sebuah respon dari suatu kejadian untuk menampilkan hasil atau output.

Sequence Diagram sistem penelitian ini terdapat pada gambar 3.6.

23

Gambar 3.6. Sequence Diagram.

3.4 Flowchart

Flowchart merupakan penyajian yang sistematis atas proses dan langkah-langkah atau urutan prosedur dari suatu program yang digambarkan secara grafik. Bagan alir adalah bagan (chart) yang menggambarkan alir atau prosedur sistem secara logis (Rezeki &

Tarmuji, 2013). Gambar 3.7. menunjukkan flowchart sistem pada penelitian ini.

Gambar 3.7. Flowchart Sistem.

Pada gambar 3.7. dapat dilihat bahwa, akan ditampilkan lokasi-lokasi pengangkutan yang telah tersimpan di database. Kemudian, dilakukan input bobot buah kelapa sawit pada masing-masing lokasi pengangkutan. Setelah itu, akan dilakukan proses routing menggunakan algoritma genetika dan akan diperoleh rute pengangkutan buah kelapa sawit.

25

Pada gambar 3.8. dan gambar 3.9. adalah flowchart proses routing dengan algoritma genetika.

Gambar 3.8. Flowchart Routing dengan Algoritma Genetika.

Pada gambar 3.8 ditunjukkan bagaimana proses routing dengan algoritma genetika.

Langkah pertama diawali dengan membentuk populasi awal, Populasi merupakan kumpulan dari kandidat solusi. Populasi awal dibentuk dari 52 titik lokasi pengangkutan yang berperan sebagai gen penyusun kromosom, yang mana kromosom merupakan rute dari pengangkutan buah kelapa sawit.

Pada pengangkutan buah kelapa sawit, beberapa lokasi memiliki permintaan angkutan yang lebih besar dari kapasitas maksimum kendaraan. Kapasitas maksimum kendaraan pada penelitian ini adalah 5500 kg. Dalam proses pembentukan populasi, akan dimulai dari depot dan diakhiri dengan depot. Depot disini berperan sebagai center atau tempat berangkat dan kembalinya kendaraan. didalam graf, depot diposisikan sebagai vertex. Dalam pembentukan rute sebagai populasi awal, akan dikunjungi lokasi-lokasi yang kebutuhan angkutannya lebih besar dari kapasitas

kendaraan terlebih dahulu. Pengunjungan akan dilakukan lebih dari sekali pengunjungan hingga bobot buah kelapa sawit yang akan diangkut lebih kecil atau sama dengan 5500 kg. Apabila bobot buah kelapa sawit pada masing-masing lokasi pengangkutan sudah tidak melebihi kapasitas angkutan, maka akan dilakukan pengecekan kembali dari lokasi pertama. Jika permintaan angkutan buah kelapa sawit pada lokasi tersebut masih belum terpenuhi dan permintaan angkutannya lebih kecil dari kapasitas kendaraan, maka lokasi akan dikunjungi dan dimasukkan ke dalam kromosom. Nilai dari kapasitas angkutan akan berkurang sebesar bobot buah kelapa sawit yang diangkut pada lokasi tersebut. Proses ini akan terus berulang pada lokasi-lokasi yang belum dilakukan pengunjungan. Apabila seluruh lokasi-lokasi pengangkutan telah menjadi penyusun kromosom pertama, maka untuk isi dari kromosom kedua sampai seterusnya di acak menggunakan fungsi random. Berdasarkan langkah-langkah tersebut, maka didapat populasi awal berisi kromosom-kromosom yang berbeda nilai pada setiap gennya. Selanjutnya akan dijelaskan proses penentuan rute dengan algoritma genetika pada gambar 3.9.

27

Jika populasi pertama telah didapatkan, kemudian akan dilanjutkan dengan perhitungan nilai fitness masing-masing kromosom dengan rumus 1/ total jarak rute yang terbentuk. Nilai fitness merupakan nilai yang menunjukkan kebugaran suatu individu. Jarak antar lokasi dan jarak setiap lokasi ke depot, disimpan didalam database.

Di permasalahan ini, karena pembentukan kromosom ke-dua dan seterusnya didapat dari proses random dari gen kromosom pertama, maka akan terjadi perubahan posisi lokasi yang menyebabkan ketidak sesuaian antara posisi depot pada kromosom tersebut dengan kebutuhan angkutan bobot buah pada lokasi pengangkutan. Dengan demikian, akan dilakukan penambahan nilai pada total jarak kromosom tersebut supaya kromosom memiliki peluang yang lebih kecil untuk terpilih pada generasi selanjutnya.

Setelah nilai fitness setiap kromosom didapat, selanjutnya akan dilakukan proses seleksi dengan metode Roulette-Wheel.

1. Menghitung nilai probabilitas kumulatif pada setiap kromosom 2. Membangkitkan bilangan acak dalam range 0 − 1, jika

a. Bilangan acak 𝑘 yang dibangkitkan < probabilitas kumulatif kromosom ke-1, maka kromosom ke-1 terpilih.

b. Probabilitas kumulatif kromosom ke k-1 < bilangan acak k < probabilitas kumulatif ke k, maka kromosom ke-k dipilih.

Kromosom-kromosom yang terpilih dari proses seleksi akan dijadikan populasi awal pada generasi selanjutnya. Kromosom-kromosom yang memiliki nilai fitness terbesar, akan disimpan menjadi kromosom terbaik pada generasi tersebut.

Setelah proses seleksi, selanjutnya akan dilakukan crossover dengan membangkitkan bilangan acak sebanyak ukuran populasi. Apabila nilai acak yang dibangkitkan pada salah satu kromosom lebih kecil dari nilai crossover rate, maka kromosom akan terpilih menjadi induk dan akan ditukar dengan kromosom yang juga menjadi induk terpilih.

Jika proses crossover telah selesai, maka akan dilakukan proses mutasi dengan membangkitkan bilangan acak sebanyak ukuran populasi. Apabila nilai acak yang dibangkitkan pada salah satu kromosom lebih kecil dari nilai mutation rate, maka kromosom tersebut akan dimutasi. Kromosom yang terpilih akan ditukar isi gen (lokasi) yang dipilih dari proses acak dengan gen (lokasi) lain yang juga dipilih secara

acak.

Populasi yang didapat setelah proses mutasi, selanjutnya akan dijadikan populasi awal pada generasi berikutnya yang akan mengalami proses seleksi, crossover dan mutasi kembali sampai jumlah maksimum generasi. Kromosom-kromosom terbaik pada setiap generasi akan ditentukan kembali nilai fitness yang terbesar untuk dijadikan kromosom terbaik dari keseluruhan generasi yang akan dijadikan rute pengangkutan buah kelapa sawit.

Dokumen terkait