Visualisasi Gudang Penyusunan Barang menggunakan metode Block Stacking Relevansi Steepest Ascent Hill Climbing Algorithm Pada Pola Penyusunan

BAB 2 LANDASAN TEORI

Pada bab ini akan dijelaskan tentang landasan dari konsep dan teori yang digunakan untuk mendukung pembuatan aplikasi yang dibuat. Landasan teori serta konsep yang akan dijelaskan meliputi penjelasan mengenai grafika komputer, algoritma Steepest Ascent Hill Climbing, WebGL dan Three.js.

2.1. Visualisasi

Visualisasi merupakan pengungkapan suatu gagasan atau perasaan dengan menggunakan bentuk gambar, tulisan kata dan angka, peta, grafik dan lain sebagainya KBBI, 2012.

2.2. Gudang

Menurut Kamus Besar Bahasa Indonesia KBBI, gudang merupakan sebuah rumah atau bangsal tempat untuk menyimpan barang-barang, baik itu berupa barang-barang kimia, kumpulan suratarsip-arsip, sesuatu yang mudah dibekukan, tempat menyimpan senjata, dan lain-lain. Menurut Oxford Dictionaries, Warehouse merupakan sebuah bangunan besar tempat penyimpanan bahan-bahan mentah ataupun barang-barang manufaktur yang akan didistribusikan untuk dijual.

2.3. Grafika Komputer

Grafika komputer sering dikenal dengan istilah visualisasi data. Grafika komputer merupakan bagian dari ilmu komputer yang berkaitan dengan pembuatan serta manipulasi gambar visual secara digital. Awalnya grafika komputer memiliki bentuk yang masih sederhana yaitu dua dimensi 2D, kemudian berkembang menjadi tiga dimensi 3D, pemrosesan citra image processing dan pengenalan pola pattern recognition. Menurut Hudjuli 2012 bagian dari grafika komputer meliputi: 1 Geometri: mempelajari tentang cara menggambarkan permukaan bidang. Universitas Sumatera Utara 6 2 Animasi: mempelajari tentang cara menggambarkan dan memanipulasi gerakan. 3 Rendering: mempelajari tentang algoritma untuk menampilkan efek cahaya. 4 Citra Imaging: mempelajari tentang cara mengambil dan menyunting gambar.

2.3.1. Grafik 3 dimensi 3d

Menurut Basuki dan Nana 2009 objek tiga dimensi 3D merupakan kumpulan titik- titik 3D x, y, z yang kemudian membentuk luasan-luasan face yang digabungakan menjadi satu kesatuan. Face merupakan gabungan titik-titik yang membentuk luasan tertentu atau sering dinamakan dengan sisi.

2.4. Penyusunan Barang menggunakan metode Block Stacking

Pada aplikasi ini penyusunan barang menggunakan metode block stacking, dimana penyusunan barang mengacu pada penyusunan barang yang ditumpuk ke arah atas dengan ketinggian tertentu Yahya, 2013. Oleh karena itu penyusunan barang dimulai dari sebelah kiri ruangan kemudian disusun ke atas dengan syarat barang yang disusun di atas memiliki bobotberat lebih kecil atau sama dengan bobotberat barang yang berada di bawah serta memiliki panjang dan lebar yang lebih kecil atau sama dengan barang yang berada di bawahnya. Apabila barang yang telah ditumpuk telah mencapai batas maksimal tumpukan total berat barang yang ditumpuk kecil atau sama dengan barang dibawahnya maka barang akan disusun ke samping kanan. Jika barang yang telah disusun tidak dimungkinkan lagi untuk disusun ke samping maka barang berikutnya akan disusun di depan barang yang sebelumnya telah disusun, susunan dimulai dari sebelah kiri ruangan dan begitu seterusnya.

2.5. Teori Dasar Algoritma Hill Climbing

Algoritma Hill Climbing merupakan salah satu algoritma pencarian lokal. Algoritma hill climbing dimulai dengan memilih sembarang lintasan dan membuat iterasi perubahan kecil pada solusi, setiap langkah mencari solusi yang terbaik, ketika algoritma tidak dapat melihat perbaikan lagi maka berhenti. Pada saat itulah ditemukan solusi tebaik. Kelebihan algoritma hill climbing yaitu algoritma ini dapat menentukan beberapa kemungkinan solusi yang terjadi sehigga dapat dicari kemungkinan solusi yang terbaik dari beberapa kemungkinan tersebut, sedangkan Universitas Sumatera Utara 7 kelemahannya yaitu algoritma ini membutuhkan waktu yang relatif lama karena harus menghitung kemungkinan solusi yang banyak. Algoritma hill climbing dibedakan menjadi dua, yaitu : algoritma Simple Hill Climbing dan algoritma Steepest Hill Climbing Mufarricha, 2010.

2.5.1. Algoritma simple hill climbing

Algoritma Simple Hill Climbing melakukan proses pengujian dengan menggunakan fungsi heuristik. Pembangkitan keadaan berikutnya sangat bergantung terhadap feedback dari prosedur pengetesan. Proses kerja algoritma simple hill climbing adalah sebagai berikut Kusumadewi Purnomo, 2005 : 1. Dimulai dari keadaan awal, dilakukan pengujian. Jika merupakan tujuan maka berhenti, jika tidak maka lanjutkan dengan keadaan sekarang sebagai keadaan awal. 2. Lanjutkan langkah-langkah berikut hingga tujuan tercapai atau hingga iterasi tidak memberikan perubahan pada keadaan sekarang: a. Cari operator yang belum pernah digunakan; gunakan operator ini untuk mendapatkan keadaan baru. b. Evaluasi keadaan baru tersebut. i. Jika keadaan baru tersebut merupakan tujuan, keluar. ii. Jika bukan tujuan, namun nilainya lebih baik daripada keadaan sekarang, maka jadikan keadaan baru tersebut menjadi keadaan sekarang. iii. Jika keadaan baru tersebut tidak lebih baik daripada keadaan sekarang, maka lanjutkan iterasi.

2.5.2. Algoritma Steepest Ascent Hill Climbing

Algoritma Steppest Ascent Hill Climbing hampir sama dengan algoritma Simple Hill Climbing, perbedaannya terdapat pada pencarian yang dilakukan algoritma Steepest Ascent Hill Climbing tidak dimulai dari posisi paling kiri, melainkan gerakan selanjutnya dicari berdasarkan nilai heuristic terbaik. Dalam hal ini urutan dari penggunaan operator tidak menentukan penemuan solusi. Cara kerja algoritma Steepest Ascent Hill Climbing adalah sebagai berikut sekarang Kusumadewi Purnomo. 2005 : Universitas Sumatera Utara 8 1. Dimulai dari keadaan awal, dilakukan pengujian. Jika merupakan tujuan maka berhenti, jika tidak maka lanjutkan dengan keadaan sekarang sebagai keadaan awal. 2. Lanjutkan langkah-langkah berikut hingga tujuan tercapai atau hingga iterasi tidak memberikan perubahan pada keadaan sekarang: a. Tentukan SUCC sebagai nilai heuristik terbaik dari successor- successor. b. Kerjakan untuk tiap operator yang digunakan oleh keadaan sekarang. i. Gunakan operator tersebut dan bentuk keadaan baru. ii. Evaluasi keadaan baru tersebut. Jika merupakan tujuan maka keluar, jika bukan maka bandingkan nilai heuristiknya dengan SUCC. Jika nilai heuristiknya lebih baik dari nilai SUCC, maka jadikan nilai heuristik tersebut sebagai SUCC, namun jika nilai heuristik tidak lebih baik dari nilai SUCC maka nilai SUCC tidak berubah. c. Jika SUCC lebih baik daripada nilai heuristik keadaan sekarang, ubah node SUCC menjadi keadaan sekarang. Keterangan: SUCC adalah nilai heuristik terbaik dari successor- successor. Contoh implementasi Algoritma Steepest Ascent Hill Climbing pada persoalan TSP Traveling Salesman Problem: Seorang tourist ingin mengunjungi n kota. Jarak antar tiap-tiap kota sudah diketahui. Yang ingin dicari adalah jarak terpendek dimana setiap kota hanya boleh dikunjungi tepat 1 kali. Misalkan terdapat 4 kota dengan jarak tiap-tiap kota sebagai berikut: 9 4 5 8 6 7 Gambar 2.1. Graf TSPTraveling Salesman Problem C A B D Universitas Sumatera Utara 9 Solusi-solusi yang mungkin dengan menyusun kota-kota dalam urutan abjad, misalkan: A – B – C – D : dengan panjang lintasan = 9+6+7 = 22. B – A – C – D : dengan panjang lintasan = 9+4+7 = 20. C – B – A – D : dengan panjang lintasan = 6+9+8 = 23. D – B – C – A : dengan panjang lintasan = 5+6+4 = 15. 1 Algoritma Simple Hill Climbing Operator digunakan untuk menukar posisi kota yang bersebelahan. Fungsi heuristik yang digunakan adalah panjang lintasan yang terjadi. Maka penggunaan operator pada lintasan adalah sebagai berikut: Tukar 1,2  tukar urutan posisi kota ke-1 dengan kota ke-2 Tukar 2,3  tukar urutan posisi kota ke-2 dengan kota ke-3 Tukar 3,4  tukar urutan posisi kota ke-3 dengan kota ke-4 Tukar 4,1  tukar urutan posisi kota ke-4 dengan kota ke-1 Tukar 2,4  tukar urutan posisi kota ke-2 dengan kota ke-4 Tukar 1,3  tukar urutan posisi kota ke-1 dengan kota ke-3 Algoritma Steepest Ascent Hill Climbing hampir sama dengan Simple Hill Climbing, hanya saja gerakan pencarian tidak dimulai dari kiri melainkan berdasarkan nilai heuristik terbaik. Keadaan awal lintasan ABCD 22. Tukar 1, 2 BACD = 9 + 4 + 7 = 20. Tukar 2, 3 ACBD = 4 + 6 + 5 = 15. Tukar 3, 4 ABDC = 9 + 5 + 7 = 21. Tukar 4, 1 DBCA = 5 + 6 + 4 = 15. Tukar 2, 4 ADCB = 8 + 7 + 6 = 21. Tukar 1, 3 CBAD = 6 + 9 + 8 = 23. Dipilih nilai terkecil dari graf tersebut. Karena nilai yang terkecil pertama adalah ACBD15, maka langkah selanjutnya dimulai dari ACBD15. Tukar 1, 2 CABD = 4 + 9 + 5 = 18. Tukar 2, 3 ABCD = 9 + 6 + 7 = 22. Tukar 3, 4 ACDB = 4 + 7 + 5 = 16. Tukar 4, 1 DCBA = 7 + 6 + 9 = 22. Universitas Sumatera Utara 10 Tukar 2, 4 ADBC = 8 + 5 + 6 = 19. Tukar 1, 3 BCAD = 6 + 4 + 8 = 18. Karena tidak terdapat nilai yang lebih kecil dari ACBD15, maka solusi akhir yang di dapat adalah ACBD15. Sumber:http:www.slideshare.netceezabramovicmetode-pencarian-heuristik. Flowchart algoritma Steepest Ascent Hill Climbing dapat dilihat pada Gambar 2.1. Inisialisasi Awal Mulai Tujuan Keadaan Awal - Keadaan Sekarang Tidak Tentukan SUCC Bentuk Keadaan Baru Tujuan Tidak Ya Keadaan Baru - SUCC SUCC Keadaan Sekarang Ya Keadaan Sekarang - SUCC Selesai Ya Keadaan Baru SUCC Ya Tidak SUCC = SUCC Tidak Gambar 2.2. Flowchart algoritma Steepest Ascent Hill Climbing Universitas Sumatera Utara 11

2.6. Relevansi Steepest Ascent Hill Climbing Algorithm Pada Pola Penyusunan

Barang Algoritma Steepest Ascent Hill Climbing digunakan untuk menyelesaikan permasalahan tata letak penyusunan barang pada ruang tiga dimensi dengan tujuan mendapatkan pola penyusunan barang yang terbaik. Parameter optimal atau tidaknya penyusunan barang pada gudang diukur berdasarkan sisa ruang kosong yang tersisa ketika masih terdapat barang yang tidak dapat lagi dimuatdimasukkan dalam ruangan tersebut. Semakin sedikit ruang kosong yang terdapat pada suatu pola penyusunan barang maka pola penyusunan tersebut merupakan solusi terbaik. Pada proses penyusunan barang pada gudang 3D tiga dimensi, salah satu parameter yang menentukan pola penyusunan barang adalah berat barang. Barang yang memiliki berat paling besar akan disusun pertama, kemudian diikuti dengan barang yang memiliki berat lebih kecil dari barang sebelumnya tersebut.

2.7. Teknologi WebGL