Anda di halaman 1dari 9

APLIKASI OPTIMASI PEMBELIAN BARANG

MENGGUNAKAN ALGORITMA GENETIKA

MAKALAH TUGAS BESAR


MATA KULIAH KECERDASAN BUATAN

Oleh :
ALIF GILANG FITRAWAN 21120112130049
DANIEL KURNIAWAN 21120112140077

PROGRAM STUDI SISTEM KOMPUTER


FAKULTAS TEKNIK
UNIVERSITAS DIPONEGORO
2015
BAB I
PENDAHULUAN

1.1 Latar Belakang


Saat sedang berbelanja terkadang kita bingung untuk menentukan barang
yang akan dibeli dikarenakan banyaknya pilihan barang sedangkan uang yang
dimiliki terbatas. Padahal tiap – tiap barang memiliki nilai profit tersendiri,
namun masih cukup sulit untuk memilih barang apa saja yang harus dibeli agar
mendapatkan profit maksimal dengan jumlah uang yang dimiliki.
Melihat dari permasalahan di atas, maka terbesit ide untuk membuat sebuah
aplikasi desktop dengan fungsi untuk menghitung optimasi pembelian barang
menggunakan Visual Studio dengan bahasa pemrograman C#. Pada aplikasi ini,
pengguna dapat dibantu menentukan barang apa yang harus dibeli untuk
mendapatkan nilai profit tertinggi sesuai dengan uang yang dimiliki.

1.2 Rumusan Masalah


Berdasarkan latar belakang di atas, maka di dapatkan rumusan masalah
sebagai berikut: “Bagaimana menerapkan metode algoritma genetika dalam
aplikasi optimasi pembelian barang?”

1.3 Tujuan
Tujuan dari pembuatan aplikasi ini adalah:
1. Untuk membantu masyarakat dalam menentukan barang yang harus dibeli
sesuai dengan skala prioritasnya.
2. Memberikan kecerdasan buatan pada aplikasi optimasi pembelian barang
BAB II
DASAR TEORI

2.1 Visual Studio


Visual Studio adalah Integrated Development Environment (IDE) dari
untuk membangun aplikasi console dan Graphical User Interface (GUI) dengan
menggunakan bahasa yang didukung pada .NET Framework. Aplikasi GUI
yang dapat dibangun diantaranya adalah Windows Form, Website, Web
Application, Windows Mobile.[1]
Visual Studio memiliki beberapa list yang akan menjadikan alasan bagi user
sehingga ingin menggunakannya, seperti memiliki editor baru dengan built-in
Windows Presentation Foundation (WPF), multimonitor support, fitur
pencarian yang cepat, pengembangan multicore, multitargeting atau
multiframework support.[2]

2.2 C#
Bahasa pemrograman C# dapat mengembangkan logika aplikasi yang rumit
seperti yang dapat dilakukan menggunakan bahasa keluarga C, namun juga
dapat membuat antarmuka pengguna yang ‘ramah’ terhadap pengguna aplikasi
(user friendly), serta dapat mengakses sistem basis data relational dengan cara
yang relatif mudah. Hal inilah (menurut beberapa literatur di Internet) yang
membuat bahasa pemrograman C# suatu saat akan menjadi salah satu bahasa
pemrograman yang paling banyak digunakan di seluruh dunia.[3]

2.3 Algoritma Genetika


Algoritma genetika adalah teknik pencarian yang di dalam ilmu komputer
untuk menemukan penyelesaian perkiraan untuk optimisasi dan masalah
pencarian. Algoritma genetik adalah kelas khusus dari algoritma evolusioner
dengan menggunakan teknik yang terinspirasi oleh biologi evolusioner seperti
warisan, mutasi, seleksi alam dan rekombinasi (atau crossover). [4]
Algoritma Genetik khususnya diterapkan sebagai simulasi komputer
dimana sebuah populasi representasi abstrak (disebut kromosom) dari solusi-
solusi calon (disebut individual) pada sebuah masalah optimisasi akan
berkembang menjadi solusi-solusi yang lebih baik. Secara tradisional, solusi-
solusi dilambangkan dalam biner sebagai string ‘0’ dan ‘1’, walaupun
dimungkinkan juga penggunaan penyandian (encoding) yang berbeda. Evolusi
dimulai dari sebuah populasi individual acak yang lengkap dan terjadi dalam
generasi-generasi. Dalam tiap generasi, kemampuan keseluruhan populasi
dievaluasi, kemudian multiple individuals dipilih dari populasi sekarang
(current) tersebut secara stochastic (berdasarkan kemampuan mereka), lalu
dimodifikasi (melalui mutasi atau rekombinasi) menjadi bentuk populasi baru
yang menjadi populasi sekarang (current) pada iterasi berikutnya dari algoritma.
BAB III
ANALISIS DAN PERANCANGAN

3.1 Deskripsi Umum Aplikasi


Aplikasi ini berfungsi untuk menghitung optimasi pembelian barang.
Dibuat dengan menggunakan Visual Studio dengan bahasa pemrograman C#.
Dalam aplikasi ini terdapat 3 jenis inputan yang harus dilengkapi untuk
melakukan perhitungan, serta terdapat dua tombol yaitu, tombol “Hitung” untuk
memproses dan tombol “RESET” untuk mengembalikan aplikasi ke kondisi
semula.

3.2 Flowchart Aplikasi

Gambar 3.1 Flowchart Aplikasi


Gambar 3.1 adalah flowchart dari aplikasi optimasi pembelian barang.
Aplikasi ini dimulai dengan user mengisi jumlah uang yang dimiliki, harga
masing – masing barang, dan berapa nilai profit dari masing – masing barang.
User akan menekan tombol “Hitung” untuk mulai melakukan perhitungan.
Setelah user mendapatkan hasil perhitungan berupa jumlah total uang yang
dibutuhkan, nilai profit, jumlah generasi serta keterangan barang apakah harus
dibeli atau jangan dibeli, user dapat memilih tombol “RESET” untuk
mengulang aplikasi atau menekan tombol “CLOSE” untuk menutup aplikasi.

3.3 Algoritma Genetika pada Aplikasi


Pada aplikasi ini, algoritma genetika digunakan dalam optimasi pembelian
barang untuk memilih barang apa saja yang harus dibeli agar user memperoleh
profit maksimum dengan jumlah harga sesuai denganyang dimiliki.
Setelah user menginput kan harga barang dan nilai barang serta mengklik
tombol hitung, program akan mulai melakukan perhitungan. Aplikasi pertama
– tama akan memasukkan data – data harga barang serta nilai barang ke dalam
suatu array. Kemudian aplikasi akan membuat suatu array baru yang digunakan
dalam perhitungan algoritma genetika. Array ini merepresentasikan tiap – tiap
barang dan hanya terdiri dari 2 nilai, nilai 1 menandakan barang tersebut dibeli
dan nilai 0 menandakan barang tersebut tidak dibeli. Kemudian aplikasi kan
menghitung total harga dan nilai barang sesuai dengan urutan isi array genetik.
Aplikasi lalu akan melakukan persilangan dan mutase untuk membentuk urutan
array genetic baru. Proses ini akan terus berulang sampai diperoleh hasil
optimum

3.4 Simulasi Aplikasi


Berikut ini adalah hasil dari aplikasi yang telah dibuat:
Gambar 3.2 Tampilan awal aplikasi
Pada gambar 3.2 adalah Tampilan awal aplikasi. Terdapat 3 jenis inputan
yang harus diisi dan tombol “hitung” yang berfungsi untuk melakukan
penukaran uang.

Gambar 3.3 Tampilan hasil aplikasi


Pada gambar 3.3 merupakan gambar ketika user sudah memasukkan semua
inputan secara lengkap, lalu menekan tombol “hitung”. Hasil dari perhitungan
akan ditampilkan pada label yang disediakan
REFERENSI

[1] Faisal, M Reza., “Seri Belajar ASP.NET Membangun Aplikasi Web Mudah dan
Cepat”, INDC., 2008.
[2] Pelland, Patrice., “Moving To Microsoft Visual Studio 2010”, Microsoft Press.,
2011.
[3] Nugroho, Adi., Mengembangkan Aplikasi Basis Data Menggunakan C# dan
SQL Server, Andi, Yogyakarta, 2010.
[4] https://id.wikipedia.org/wiki/Algoritma_genetik