Pengembangan Algoritma Mow dan Generalisasi Bahasa Automata untuk Proses Pembuatan Minuman Serta Pengembalian Uang pada Desain Mesin Kopi Otomatis 1
Wamiliana, 2Ossy Dwi Endah W dan 3Marisa Ayu Rahmadhani 1,3
Jurusan Ilmu Komputer FMIPA Unila 2 Jurusan Matematika FMIPA Unila
Abstract The remarkably development in science and technology influences the business trend. One of the mode of businesses that are used widely nowadays is vending machine. Vending machine is a machine that is able to serve client for food, drink and others after the costumers put money into machine slot. This research discusses about an application of coffee vending machine that can make variation of coffee and optimalize output of the money. In making this application, Finite State Automata (FSA) is applied to handle the problem for recognize language in making a drink and MOW algorithm used to optimalize output of money in transaction processing. Keywords : Coffee Vending Machine, Finite State Automata, Optimalize, Algorithm
1. Pendahuluan Seiring dengan berkembangnya zaman, maka teknologi industri penjualan di dunia juga berkembang semakin pesat. Perkembangan teknologi tersebut juga berpengaruh terhadap pemikiran manusia yang semakin maju. Manusia banyak menciptakaan temuan-temuan baru yang selama ini belum ada di dunia. Salah satu temuan yang dibuat oleh manusia yaitu vending machine. Vending machine merupakan suatu mesin penjual otomatis yang dapat mengeluarkan makanan atau minuman setelah pembeli menekan tombol tertentu sesuai dengan makanan atau minuman yang diinginkan, lalu melakukan transaksi dengan cara memasukkan uang ke slot pembayaran yang ada pada mesin tersebut [1]. Salah satu jenis mesin penjual otomatis yang mulai berkembang saat ini adalah mesin pembuat minuman kopi otomatis. Mesin pembuat minuman kopi menyajikan minuman kopi dan variasinya. Harga kopi juga tentu beragam, sesuai dengan variasi dan komposisi minuman yang dipilih oleh konsumen. Oleh karena itu, suatu mesin pembuat minuman kopi otomatis diharapkan mampu membuat minuman yang sesuai dengan berbagai jenis pilihan yang diberikan dengan harga bervariasi sesuai dengan pilihan konsumen. Untuk membuat mesin minuman kopi otomatis, tentu diperlukan algoritma dan konsep yang sesuai agar mesin dapat berjalan dengan baik. Algoritma yang digunakan dalam penelitian ini adalah algoritma MOW. MOW merupakan singkatan dari Marisa, Ossy dan Wamiliana yang merupakan peneliti dan dosen pembimbing dalam makalah ini. Algoritma diperlukan untuk mengetahui bagaimana proses bekerja mesin serta bagaimana memperoleh solusi optimal dalam pengembalian uang pada mesin kopi otomatis. Dalam penelitian ini, konsep yang digunakan adalah Finite State Automata (FSA). Finite state automata adalah mesin yang dapat mengenali kelas bahasa regular [2]. FSA dapat mengenal dan menangkap pola pada proses pembuatan minuman kopi. Beberapa penelitian tentang mesin otomatis sebelumnya telah pernah dilakukan, antara lain penerapan algoritma greedy untuk optimalisasi pengembalian koin pada vending machine keripik lampung, yang mengutamakan proses pengembalian uang koin [4]. Penelitian mesin otomatis lainnya yaitu
http://jurnal.fmipa.unila.ac.id/index.php/komputasi
Hal. 59 dari 94
penerapan konsep Finite State Automata (FSA) pada mesin pembuat minuman kopi otomatis, hanya memfokuskan pada permasalahan proses pembuatan minuman kopi tanpa membahas transaksinya [3]. Pada penelitian kali ini, peneliti akan melengkapi penelitian yang telah ada sebelumnya dengan cara mengembangkan algoritma MOW untuk pengembalian uang secara optimal dan generalisasi bahasa automata untuk proses pembuatan minuman pada desain mesin kopi otomatis. Tujuan dari penelitian ini adalah merancang aplikasi vending machine yang dapat melakukan proses pembuatan minuman kopi secara otomatis dengan berbagai variasi dan menerapkan optimalisasi kembalian uang pada proses transaksi dalam aplikasi vending machine.
2. Metodelogi Metode pengembangan aplikasi yang digunakan dalam penelitian ini adalah metode Software Development Life Cycle (SDLC) yaitu model spiral. Model spiral (spiral model) merupakan suatu metode pengembangan software atau sistem dengan tahapan pengembangan yang dilakukan secara iterasi (berulang). Pada iterasi awal maka yang dihasilkan adalah prototype sedangkan pada iterasi akhir yang diperoleh adalah perangkat lunak yang sudah lengkap. Tahapan – tahapan pada model spiral yaitu komunikasi dengan calon user, perencanaan, analisis resiko, engineering, konstruksi dan peluncuran [5].
3. Pembahasan 3.1 Penggunaan FSA Konsep Finite State Automata (FSA) digunakan untuk menangkap dan mengenal pola dalam proses pembuatan minuman kopi, yaitu dengan membaca input yang diberikan dan masuk ke dalam proses pengecekan masukan tersebut sampai dengan state akhir kemudian akan melakukan proses sesuai dengan jalur input tersebut. Finite State Automata (FSA) akan membaca simbol masukan yang diberikan dari state awal sampai state akhir menuju ke prosesnya [3]. Berikut ini diagram transisi pada proses pembuatan minuman :
Gambar 1. Diagram Transisi Aplikasi Desain Mesin Kopi Otomatis
http://jurnal.fmipa.unila.ac.id/index.php/komputasi
Hal. 60 dari 94
Keterangan State : S0 = State awal S3 = Minuman coklat S6 = Minuman kopi coklat S9 = Gelas M S12 = Bahan susu S15 = Air
S1 = Minuman kopi S4 = Minuman mocca S7 = Minuman susu coklat S10 = Gelas L S13 = Bahan gula S16 = Aduk
Keterangan Transisi Antar State : 0 = Kembali ke state awal a = Pilih mimuman kopi b = Pilih minuman susu c = Pilih minuman coklat d = Pilih minuman mocca e = Pilih minuman kopi susu f = Pilih minuman kopi coklat g = Pilih minuman susu coklat
S2 = Minuman susu S5 = Minuman kopi susu S8 = Gelas S S11 = Bahan kopi S14 = Bahan coklat
h = Pilih gelas S i = Pilih gelas M j = Pilih gelas L k = Kopi l = Susu m = Gula n = Coklat o = Tambah air p = Proses Aduk
3.2 Penggunaan Algoritma MOW Algoritma MOW merupakan suatu algoritma yang berfungsi untuk memecahkan persoalan optimasi untuk mencari solusi optimum. Dalam penelitian ini, algoritma MOW digunakan dalam hal mencari solusi optimal dalam pengembalian uang pada mesin kopi otomatis. Berikut ini algoritma MOW yang diterapkan pada aplikasi desain mesin kopi otomatis : Inisialisasi n, i = integer; hasil [i] = {0,0,0,0,0,0,0,0} of integer; data[i] ={d1, d2, d3, d4, d5, d6, d7, d8} of integer; stok [i] = {s1, s2, s3, s4, s5, s6, s7, s8}of integer; total = X; if total > 0 { for i = 1 to n { if total >= data [i] { if stok [i] >= 1 { hasil = total / data [i]; if stok [i] < hasil [i] { hasil [i] = stok [i] } total = total – (hasil * data [i]) } else { total = total mod data [i] } } Print hasil [i]; } }
http://jurnal.fmipa.unila.ac.id/index.php/komputasi
Hal. 61 dari 94
Berikut ini merupakan contoh optimalisasi uang kembalian pada aplikasi mesin kopi : Tersedia jenis uang kertas dengan nominal 10.000, 5.000, 2.000, 1.000 dan uang koin dengan nominal 1000, 500, 200, 100. Stok di database :
10.000 = 5 lembar 5.000 = 5 lembar 2.000 = 3 lembar 1.000 = 1 lembar 1.000 = 5 keping 500 = 10 keping 200 = 10 keping 100 = 100 keping
Pembeli ingin membeli satu gelas minuman dengan harga 2.700 rupiah. Uang yang dimasukkan pembeli ke mesin sejumlah 100.000 rupiah. Berarti uang kembalian yang dikeluarkan mesin adalah 97.300 rupiah, maka pembeli akan memperoleh nominal uang kembalian secara optimal. Nominal uang kembalian yang diperoleh oleh pembeli adalah sebagai berikut : 5 lembar uang 10000 5 lembar uang 5000 3 lembar uang 2000 1 lembar uang 1000 5 keping uang 1000 10 keping uang 500 10 keping uang 200 33 keping uang 100
3.3 Hasil Implementasi Sistem Aplikasi ini difokuskan pada pengenalan pola dalam proses pembuatan minuman kopi secara otomatis serta optimalisasi pengembalian menggunakan algoritma WOM yang disimulasikan pada PC (Personal Computer), sehingga tidak membahas masalah cek atau deteksi uang, mengeluarkan minuman ataupun uang kertas dan koin sebenarnya. Aplikasi ini dapat membuat 8 jenis minuman yang berbeda-beda, yaitu kopi, susu, coklat, mocca, kopi susu, kopi coklat, susu coklat dan kopi non gula. Masing-masing minuman tersebut mempunyai takaran dan bahan yang berbeda-beda dalam tahap proses pembuatannya. Bahan-bahan yang digunakan dalam proses pembuatan minuman adalah gula, kopi, susu, coklat, air, gelas S, gelas M dan gelas L. Masing-masing minuman memiliki harga yang berbeda-beda sesuai dengan komposisi yang digunakan. Fitur yang tersedia pada beberapa mesin otomatis umumnya hanya melayani pembelian dengan nominal harga yang seragam, sedangkan pada aplikasi mesin kopi otomatis ini melayani pembelian dengan nominal harga yang bervariasi sesuai dengan jenis minuman dan jenis ukuran gelas yang dipilih pembeli. Kelebihan lainnya pada mesin kopi otomatis ini yaitu dapat menerima dan mengeluarkan semua jenis nominal uang kertas serta koin dalam bentuk rupiah.
http://jurnal.fmipa.unila.ac.id/index.php/komputasi
Hal. 62 dari 94
Berikut ini merupakan flowchart pada aplikasi desain mesin kopi otomatis :
http://jurnal.fmipa.unila.ac.id/index.php/komputasi
Hal. 63 dari 94
Gambar 2. Flowchart Aplikasi Desain Mesin Kopi Otomatis Gambar berikut ini merupakan tampilan aplikasi menu utama dan isi stok pada desain mesin kopi otomatis :
Gambar 3. Tampilan Menu Utama Aplikasi Desain Mesin Kopi Otomatis
Gambar 4. Tampilan Menu Isi Stok Aplikasi Desain Mesin Kopi Otomatis
http://jurnal.fmipa.unila.ac.id/index.php/komputasi
Hal. 64 dari 94
3.4 Pengujian Pengujian yang digunakan pada penelitian ini adalah metode Black Box. Metode Black Box merupakan kegiatan pengujian perangkat lunak yang ditujukan pada fungsional aplikasi [5]. Tabel 1. Hasil Pengujian Aplikasi No. 1.
Pengujian Fungsi Aplikasi
Detail a. Kesesuaian input pilihan dengan output
Sesuai, karena output sesuai dengan input yang diberikan pengguna
b. Kesesuaian output grammar
Sesuai, karena input yang diberikan pengguna sesuai dengan grammar yang ditampilkan aplikasi
c. Kesesuaian harga minuman
Sesuai, karena harga yang ditampilkan sesuai dengan minuman yang dipilih
d. Kesesuaian uang kembalian
Total kembalian telah sesuai, yaitu uang yang dimasukkan dikurang harga minuman
e. Kesesuaian optimalisasi pengembalian
Sesuai, karena telah menampilkan kembalian uang secara optimalisasi
f. Proses pengurangan stok bahan
Sesuai, karena stok berkurang sesuai dengan takaran yang dibutuhkan
g. Proses pengisian stok bahan
Sesuai, stok bahan bertambah sesuai dengan jumlah yang dimasukkan
h. Proses penambahan dan pengurangan stok uang
Stok uang bertambah sesuai dengan uang yang dimasukkan pengguna
i. Proses pengisian stok uang pada isi stok
Sesuai, karena stok bertambah sesuai dengan jumlah yang dimasukkan admin
j. Kesesuain output apabila stok uang kembalian kurang
Sesuai, karena aplikasi tidak dapat mengeluarkan kembalian dan langsung menampilkan respon untuk pengguna.
k. Kesesuain output apabila stok uang kembalian cukup
Sesuai, kembalian telah optimal dan mesin menampilkan output kembalian uang.
l. Kesesuain output apabila uang penuh saat melakukan pembelian
Sesuai, karena aplikasi menampilkan respon bahwa nominal uang yang dimasukkan pada di mesin sudah penuh
m. Kesesuaian output apabila uang yang dimasukkan kurang dari harga minuman 2.
Interface Aplikasi
Keterangan
Sesuai, karena mesin menampilkan respon bahwa uang yang dimasukkan kurang.
a.
Menampilkan menu petunjuk
Sesuai
b.
Proses manipulasi tombol
Sesuai
c.
Respon aplikasi (message box)
Sesuai
http://jurnal.fmipa.unila.ac.id/index.php/komputasi
Hal. 65 dari 94
4. Kesimpulan Berdasarkan hasil analisis dan pengujian yang telah dilakukan, dapat diambil kesimpulan yaitu : 1. Konsep Finite State Automata (FSA) dapat digunakan sebagai salah satu alternatif untuk merancang suatu mesin pembuat minuman kopi otomatis yang fleksibel. 2. Algoritma MOW digunakan untuk pengembalian uang dengan solusi optimal, yaitu dengan cara mengeksekusi nilai nominal uang terbesar ke nilai nominal uang terkecil. 3. Solusi optimal pada aplikasi mesin kopi otomatis dipengaruhi oleh jumlah persediaan uang kertas dan uang koin yang tersedia pada stok uang.
5. Referensi [1] Fitria dan Ayu Kartika S. 2009. Pemodelan Mesin Jaja (Vending Machine) dengan Menggunakan Object Oriented Analysis and Design. http://e-riset. darmajaya.ac.id/jurnal-ik/wpcontent/uploads/2009/10/Jurnal_Fitriayu.pdf. [2] Lenti, Febri Nova. 2006. Pendekatan Teori Automata Untuk Menyelesaikan Aplikasi-Aplikasi di Bidang Ilmu Kecerdasan Buatan. Seminar Ilmiah Nasional Komputer dan Sistem Intelijen, Agustus 2006. [3] Melly, Rizky Indah., Wamiliana., Didik Kurniawan. 2012. Penerapan Konsep Finite State Automata (FSA) Pada Mesin Pembuat Minuman Kopi Otomatis. Jurnal komputasi, Desember 2012, Vol 1, No. 1 [4] Nurhayati, 2011. Implementasi Algoritma Greedy Untuk Optimalisasi Pengembalian Koin Pada Vending Machine Kerupuk Lampung. Skripsi. Universitas Lampung. [5] Rosa dan Shalahuddin, M. 2011. Modul Pembelajaran Rekayasa Perangkat Lunak (Terstruktur dan Berorientasi Objek). Modula : Bandung.
http://jurnal.fmipa.unila.ac.id/index.php/komputasi
Hal. 66 dari 94