BAB 4
IMPLEMENTASI DAN PENGUJIAN
4.1 Implementasi
Implementasi sistem merupakan lanjutan dari tahap analisis dan perancangan sistem.Sistem ini dibangun dengan menggunakan bahasa pemrograman C dan menggunakan Sharp
Develop 5.1.Pada sistem ini terdapat 4 empat tampilan halaman, yaitu HalamanTitle, Halaman Home, Halaman Pengaturan dan Halaman About.
4.1.1 Tampilan Halaman Menu Title
Halaman title merupakan tampilan halaman yang muncul pertama sekali pada saat sistem dijalankan. Tampilan Halaman menu title dapat dilihat pada gambar 4.1
Gambar 4.1 Tampilan Halaman Menu Title
4.1.2 Tampilan Halaman Menu Home
Tampilan halaman menu homemerupakan halaman yang digunakan untuk menampilkan hasil perhitungan pada graph dengan mengatur node awal dan node tujuan pada graph.
Tampilan menuhome dapat dilihat pada Gambar 4.2.
Universitas Sumatera Utara
Gambar 4.2 Tampilan Halaman Menu Home
4.1.3 Tampilan Halaman Menu Pengaturan Tampilan halaman menu pengaturan merupakan halaman yang digunakan untuk mengelola
graf yang akan dibentuk. Pada halaman ini user dapat menginputkan node baru ataupun menghapus node yang telah ada, kemudian pada halaman ini juga dapat mengatur tetangga
dari tiap-tiap node yang telah dibuat pada sistem. Tampilan halaman menupengaturan dapat dilihat pada Gambar 4.3.
Universitas Sumatera Utara
Gambar 4.3 Tampilan Halaman MenuManageVerteks
4.1.4 Tampilan Halaman Menu About Tampilan halaman menu about merupakan halaman tentang penulis dan penjelasan
lainnya.Gambar 4.4 dibawah ini menunjukkan tampilan halaman menu about.
Gambar 4.4 Tampilan Halaman Menu About 4.2 Pengujian
Pengujian sistem merupakan tahap lanjutan setelah implementasi sistem.Pengujian sistem bertujuan untuk membuktikan sistem yang dibangun telah berjalan dengan baik.Pengujian
sistem ini dilakukan padagraphdengan node maksimal 15 nodes dan menggunakan 2 algoritma dengan membandingkan real running time dan hasil jarak terpendek.
Universitas Sumatera Utara
4.2.1 Pengujian Proses Implementasi Untuk melakukan proses pengujian pertama kali yang harus dilakukan adalah load graph,
dengan cara menuju halaman pengaturan lalu tekan load. Tampilan load graph dapat dilihat pada Gambar 4.5.
Gambar 4.5 Tampilan Load graf
User hanya dapat membuka graf yang sudah dibuat terlebih dahulu atau telah tersedia dan hanya dapat membuka file berformat .json. Setelah user menekan button loadmaka user harus
ke halaman menuhome untuk menampilkan graf dalam sistemkemudian memilih buttonpanah yang berfungsi untuk mengacak bentuk graf, graf yang telah di load dapat dilihat pada
Gambar 4.6.
Gambar 4.6 Tampilan Grafyang Dimasukkan Dalam Sistem
Universitas Sumatera Utara
Setelah user memasukkan grafkemudian dapat dilakukan penambahan nodeataupun tetangga dari node yangbaru, dengan menuju kembali ke halaman pengaturan kemudian memilih
untuk tambah node atau tambah tetangga. Hasil dapat dilihat pada Gambar 4.7
Gambar 4.7 Tampilan Penambahan Tetangga pada Sebuah Node
Setelah userselesai menambahkan tetangga pada node yang telah dipilih di bagian root sebelah kiri sistem, lalu user juga dapat memperbaharui jarak dari node baru menuju
tetangganya masing-masing.Tampilan hasil proses penambahan tetangga serta memperbaharui jarak nyadapat dilihat pada Gambar 4.8 berikut.
Gambar 4.8 Tampilan Proses Penambahan Tetangga dan Memperbaharui Jarak
Universitas Sumatera Utara
Tampilan hasil graf setelah tetangga dan jarak telah diperbaharui dapat dilihat pada gambar 4.9
Gambar 4.9 Tampilan GrafDengan Penambahan Node dan Jarak
4.2.2 Pengujian Proses Algoritma L-Deque Deque beroperasi sama seperti Queuedengan cara First In First Out FIFO elemen pertama
masuk merupakan elemen yang pertama keluar yaitu, grafik yang tingkat demi tingkat dieksplorasi.Deque sebuah daftar yang menggabungkan sifat-sifat dari kedua antrian dan
tumpukan atau antrian. Sebuah deque adalah daftar di mana penambahan dan penghapusan yang mungkin di kedua ujung.
Proses pencarian jalur terpendek menggunakan algoritma L-Deque dapat dilihat pada gambar 4.10 berikut
Universitas Sumatera Utara
Gambar 4.10 Tampilan Pengujian Pencarian Shortest Path dengan Algoritma L-Deque
4.2.2.1 Perhitungan Manual Algoritma L-Deque Contoh pencarian jarak terpendekmaenggunakan algoritma L-Deque dengan grafseperti pada
gambar 4.11 berikut
Gambar 4.11 Graf Algoritma L-Deque
Tentukan node yang akan menjadi titik asal kemudian tentukan node yang akan menjadi titik tujuan. Pencarian dilakukan dengan cara penempatan di dalam sebuah array
Deque dan menggunakan dua buah petunjuk yaitu LEFT dan RIGHT, yang berturut-turut menunjuk pada sisi kiri dan sisi kanan deque.
Universitas Sumatera Utara
Diketahui: Titik Asal = J, Titik Tujuan = A Circular Deque dengan 4 array memori
Maka dapat dilakukan pencarian dalam penempatan sebuah array
B D
Dilakukan operasi berturut turut: 1.
A ditambahkan ke kanan dari sebuah arraydeque 2.
1 itemdihapus yang paling kanan 3.
J ditambahkan ke bagian kiri 4.
A ditambahkan ke bagian paling kanan 5.
Array telah penuh. Jawab :
1. _, C, D, A
2. _, C, D, _
3. J, B, D, _
4. J, B, D, A
5. LEFT + RIGHT+1, Queue penuh dan terjadi OVERFLOW
4.2.3 Pengujian Proses Algoritma Bellman-Ford Algoritma bellman-ford merupakan salah satu algoritma yang menangani kasus
pencarian lintasan dengan bobot terkecil.Algoritma ini memungkinkan apabila di dalam system yang dibangun terdapat pencilan.Seperti yang sudah dicobakan sebelumnya, apabila
simpul yang dituju ataupun simpul asal merupakan sebuah pencilan maka hasil yang didapatkan adalah infinity.Tidak hanya itu bahkan apabila ternyata tidak ada lintasan yang
menghubungkan antara simpul awal dan simpul tujuan, maka bobot yang dihasilkan juga berupa infinity.Tampilanpemilihan grafdapat dilihat pada Gambar 4.14.
Universitas Sumatera Utara
Gambar 4.12 Tampilan Pemilihan Graf
Setelah graf di tampilkan, maka akan dilakukan pengujian terhadap graf untuk menentukan lintasan terpendek dari satu node asal menuju node tujuan yang dapat ditentukan oleh user
Gambar 4.13 Tampilan Pengujian Pencarian Shortest Path dengan Algoritma Bellman- Ford
Universitas Sumatera Utara
4.2.3.1 Perhitungan Manual Algoritma Bellman-Ford
Gambar 4.14 Graf Bellman-Ford
Contoh proses perhitungan Algoritma Bellman-Ford dalam graf dapat dilihat pada gambar 4. Langkah 1
Buat vertex awal = 0 dan vertex lainnya dengan nilai tak terhingga
Gambar 4.15 Langkah 1
Hasil dari gambar 4 dapat dilihat pada tabel 1.
Tabel 4.1 Tabel Hasil langkah 1
I A
B C
D J
d [V]
∞ ∞
∞ ∞
∞
Pi [V]
Universitas Sumatera Utara
Langkah 2 Hitung semua vertex.
- Vertex I = 0 - Vertex A = 6 melewati vertex I
- Vertex B = 8 melewati vertex A
- Vertex C = 2 melewati vertex I
- Vertex D = 16 melewati vertex B
Universitas Sumatera Utara
- Vertex J = 12 melewati vertex B
Hasil dari langkah 2 dapat dilihat dari tabel 2
Tabel 4.2 Hasil langkah 2.
I A
B C
D J
d [V] 6
8 2
16 12
Pi [V] I
A I
B B
Langkah 3 Hitung kembali semua vertex yang belum terlewati
Gambar 4.16 Hasil langkah 2
Universitas Sumatera Utara
- Vertex I = 0
- Vertex A = 5 melewati vertex C
- Vertex B = 7 melewati vertex A
- Vertex D = 6 melewati vertex C
- Vertex J = 17 melewati vertex D dan 11 jika melewati vertex B
Universitas Sumatera Utara
Hasil dari langkah 3 dapat dilihat pada tabel 3.
Tabel 4.3 Hasil Langkah 3 I
A B
C D
J
d [V] 5
7 2
6 11
Pi [V] C
A I
C B
Tampilan Hasil yang telah di uji dengan menggunakan Algoritma Bellman-Ford untuk mendapatkan jarak terpendek dapat dilihat pada gambar 5.
Gambar 4.17Shortest PathMenggunakan Algoritma Bellman-Ford
4.3 Kompleksitas Algoritma Perhitungan kompleksitas algoritma L-Deque dapat dilihat pada Tabel 4.4.