BAB 3 PERANCANGAN PROGRAM. dari OOP (Object Oriented Programming) di mana dalam prosesnya, hal-hal

dokumen-dokumen yang mirip
BAB 4 IMPLEMENTASI DAN HASIL PENELITIAN. Pada bab 4 ini akan dijelaskan hasil rancangan sistem aplikasi optimizer, yaitu

BAB 1 PENDAHULUAN. menggunakan sistem komputerisasi. Salah satu bentuk perusahaan yang sangat

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

BAB 3 PERANCANGAN PROGRAM APLIKASI

BAB III KONSEP DAN PERANCANGAN APLIKASI

BAB III ANALISA MASALAH DAN RANCANGAN PROGRAM

BAB 3 ANALISIS DAN PERANCANGAN. Berbagai pembangunan terus dilaksanakan di setiap wilayah di Indonesia,

BAB 4 PERANCANGAN DAN IMPLEMENTASI PROGRAM. dengan struktur yang sederhana dengan algoritma yang rumit, sehingga

BAB 3 PERANCANGAN PROGRAM. Dalam perancangan program aplikasi optimalisasi pemesanan bahan baku ini,

BAB 3 PERANCANGAN PROGRAM APLIKASI

BAB 3 ALGORITMA DAN PERANCANGAN. membaca partitur musik ini adalah sebagai berikut : hanya terdiri dari 1 tangga nada. dengan nada yang diinginkan.

BAB 3 PERANCANGAN PROGRAM

BAB 3 ANALISIS DAN PERANCANGAN SISTEM PROGRAM APLIKASI HANDS RECOGNIZER

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. sequential (waterfall). Metode ini terdiri dari empat tahapan, yaitu: analisis,

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISA MASALAH DAN RANCANGAN PROGRAM

BAB 3 PERANCANGAN PROGRAM

BAB 3 PERANCANGAN PROGRAM

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

TAKARIR. algorithm algoritma/ kumpulan perintah untuk menyelesaikan suatu masalah. kesalahan program

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. analisis, desain/perancangan, kode, dan pengujian/implementasi. Tahap analisis

BAB III ANALISIS DAN PERANCANGAN PROGRAM. oleh sistem untuk mendapatkan hasil yang sesuai. Berikut ini adalah gambaran umum

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

MODUL MICROSOFT OFFICE POWERPOINT 2010 KKL STMIK AMIKOM PURWOKERTO

BAB III METODE DAN PERANCANGAN. Tahap iniakan mencari dan memahami bahan-bahan pustaka seperti jurnal, buku, dan

BAB III ANALISA DAN PERANCANGAN

BAB 3 ANALISIS DAN PERANCANGAN

BAB 4 IMPLEMENTASI DAN EVALUASI. Berikut ini merupakan spesifikasi perangkat keras dan perangkat lunak yang

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. pengembangan sistem yang lazim disebut Waterfall Model. Metode ini terdiri dari enam

BAB 3 PERANCANGAN PROGRAM. Dalam perancangan program aplikasi optimalisasi pemesanan bahan baku ini,

BAB 3 RANCANGAN PROGRAM APLIKASI

BAB 3 PERANCANGAN PROGRAM APLIKASI

BAB III ANALISIS DAN PERANCANGAN. Perancangan game mencocokkan gambar ini dibuat agar dapat berjalan

PERANCANGAN PROGRAM. struktur/hirarki menu, State Transition Diagram (STD), modul dan pseudocode, serta

Manual Penggunaan Algoritma Evolusi Diferensial untuk Mengoptimasikan Tata Letak Fasilitas Komarudin

BAB 3 ANALISIS DAN PERANCANGAN APLIKASI

Bab IV Implementasi Sistem

Bab I Pengenalan Visual BASIC

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. digunakan, kemudian dilanjutkan dengan rancangan sistem aplikasi berupa cetak biru

Pemrograman dengan C++ Builder 2004 Taryana S Pendahuluan C++ Builder adalah sebuah aplikasi yang digunakan untuk pengembangan dengan

1. Pendahuluan 1.1. Latar Belakang

BAB 4 PERANCANGAN SISTEM DAN EVALUASI. perancangan diagram UML (use case, activity, class, dan sequence), perancangan

Gambar 3.1. Diagram alir apikasi image to text

PENGEMBANGAN APLIKASI PENJADWALAN KULIAH SEMESTER I MENGGUNAKAN ALGORITMA GENETIKA

BAB 4 IMPLEMENTASI DAN EVALUASI. genetik yang dibuat. Dalam mengimplementasi program aplikasi diperlukan syarat

ABSTRAK. Kata kunci : Aplikasi, Penjadwalan, Algoritma Genetika. viii

BAB IV HASIL DAN PEMBAHASAN

Perancangan Sistem Penjadwalan Asisten Dosen Menggunakan Algoritma Genetika (Studi Kasus: STIKOM Bali)

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. Nama program yang hendak dikembangkan adalah Viola Jones Simulator. Tujuan dari

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB III PERANCANGAN PROGRAM

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB 4 IMPLEMENTASI DAN EVALUASI PROGRAM. implementasi dari program aplikasi yang dibuat. Penulis akan menguraikan

Setting local IP address dan subnet mask dari VoIP Gateway tersebut. Berikut adalah cara mengkonfigurasi modem ADSL:

BAB 3 PERANCANGAN PROGRAM. objek, analisis blob, SMS service, dan video saving. Deteksi objek adalah proses untuk

Untuk dapat memasuki aplikasi KUTAHU e-learning system anda Pertama-tama memasuki login. Login ini dimaksudkan untuk memasuki sistem aplikasi.

BAB 3 METODOLOGI. Metodologi penelitian yang digunakan dalam penulisan ini adalah studi

BAB IV HASIL DAN UJI COBA

BAB 4 IMPLEMENTASI DAN EVALUASI. menjadi perangkat keras (hardware) dan perangkat lunak (software) Spesifikasi Perangkat Keras (Hardware)

BAB III ANALISIS DAN PERANCANGAN SISTEM PROGRAM SIMULASI PERAMBATAN GETARAN MENGGUNAKAN FRAKTAL 3D

BAB III ANALISA MASALAH DAN PERANCANGAN

BAB 3 ANALISIS DAN PERANCANGAN. menentukan dan mengungkapkan kebutuhan sistem. Kebutuhan sistem terbagi menjadi

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

BAB 4 IMPLEMENTASI DAN EVALUASI

PEMROGRAMAN DELPHI 7.0

MATERI TIK KELAS 5 SEMESTER 1 SD KATOLIK SANTA MARIA MAGELANG

IMPLEMENTASI ALGORITMA GENETIKA PADA KNAPSACK PROBLEM UNTUK OPTIMASI PEMILIHAN BUAH KEMASAN KOTAK

PERANCANGAN DAN PEMBUATAN APLIKASI OPTIMASI PENYUSUNAN IKLAN GAMBAR DENGAN ALGORITMA GENETIKA ABSTRAK

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN PERANCANGAN

BAB 4 PENGUJIAN PROGRAM DAN HASIL PENGUJIAN

LAMPIRAN A PERHITUNGAN SIMPLE CASE SECARA MANUAL E

Bab III PERANCANGAN PROGRAM APLIKASI

BAB III ANALISA DAN PERANCANGAN

3.2.3 Resiko, Keuntungan dan Kerugian Forex Metode Prediksi dalam Forex MetaTrader 4 sebagai Platform Trading dalam Forex...

- Setelah aplikasi terbuka, klik kanan kemudian pilih run

BAB III ANALISIS DAN PERANCANGAN TUTORIAL INTERAKTIF. ini dilakukan sebelum pembuatan tutorial interaktif. Dalam tahap ini, pembuatan tutorial

BAB 3 PERANCANGAN SISTEM

BAB III ANALISA DAN PERANCANGAN SISTEM

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISA DAN PERANCANGAN 3.1 ANALISA PERANGKAT LUNAK BASIS DATA MULTIMEDIA

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

BAB III ANALISA MASALAH DAN PERANCANGAN SISTEM

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS DAN DESAIN SISTEM

BAB 3 ALGORITMA DAN PERANCANGAN

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

MODUL 2 SELECTION & LOOPING PADA FORM

1. MENGENAL VISUAL BASIC

Prosedur merupakan suatu tata cara kerja atau kegiatan untuk menyelesaikan pekerjaan

Transkripsi:

BAB 3 PERANCANGAN PROGRAM 3.1 Spesifikasi Rumusan Rancangan Program Algoritma Genetika dirancang dengan mengikuti prinsip-prinsip dan sifatsifat dari OOP (Object Oriented Programming) di mana dalam prosesnya, hal-hal yang digunakan selama proses adalah sebuah objek. Istilah-istilah yang digunakan dalam bahasan juga banyak mengacu pada istilah dalam OOP. Alasan dari rancangan program Algoritma Genetika untuk berorientasi objek karena : a. Cara kerja program ini adalah memproses data yang mewakili objek-objek yang ada di dunia nyata. Akan lebih baik jika objek-objek yang ada di dunia nyata, dalam programnya juga diwakili dengan objek-objek. Seperti contoh sebuah barang-barang dalam gudang yang akan disusun diwakili dengan sebuah objek pattern, sebuah bidang diwakili dengan sebuah objek bidang yang tentunya mempunyai sifat mengikuti dunia nyata yang bisa dirotasi, ditranslasi, dan sebagainya. b. Object Oriented Programming (OOP) merupakan teknik programming yang sedang berkembang saat ini, di mana banyak bahasa pemrograman yang baru menerapkan prinsip full OOP, sehingga untuk masa depan program Algoritma Genetik dapat dikembangkan sesuai dengan kebutuhan user dan dapat dengan mudah untuk ditransfer dan dikembangan dengan bahasa yang berbeda (yang bersifat OOP juga).

30 Rancangan Program optimasi ini terbagi menjadi tiga bagian utama yaitu tahap input, tahap proses (Algoritma Genetik), tahap output. a. Tahap Input adalah tahap dimana user dapat memasukkan data pola yang diinginkan yang berupa width dan height beserta settingan parameter Algoritma Genetik. b. Pada tahap proses, dimulai dari pembentukan populasi awal dan objek Parameter Algoritma Genetik. Kemudian dilanjutkan dengan menyusun objek dalam bidang lalu dilakukan perhitungan fitness. Setelah itu, baru dilakukan pengecekan jumlah generasi. Jika jumlah generasi baru sudah lebih besar dari jumlah generasi sebelumnya, maka akan menampilkan output. Jika belum, proses akan menambah satu generasi baru sebagai pembentukan populasi yang baru. c. Proses output adalah proses dimana hasil yang akan ditampilkan dapat akan menjadi seoptimal mungkin dengan menggunakan Algoritma Genetika. Hasil keluaran yang akan ditampilkan berupa file gambar yang berekstensi.png. 3.1.1 Proses Input Dalam proses ini, user dapat memasukkan inputan berupa width dan height sebagai data dalam bidang maupun settingan parameter Algoritma Genetik yang diinginkan untuk proses perhitungan. Untuk memulai perhitungan, user dapat menekan button Start pada menu welcome atau dapat juga dilakukan melalui menu bar file new kemudian akan muncul tampilan layar untuk memasukkan input data berupa width dan height dengan menekan button Add Row beserta dengan settingan parameter Algoritma

31 Genetikanya. Jika user ingin menghapus beberapa kolom pada inputan width dan height, user dapat menekan button Delete Row dimana kolom terakhir dari inputan yang akan dihapus oleh program. 3.1.2 Proses Algoritma Genetik Tahap ini merupakan inti dari program searching dengan metode Algoritma Genetika. Pada tahap ini dengan data-data yang telah dihasilkan dari proses input langsung digunakan dalam proses Algoritma Genetika. Untuk menjalankan proses ini, user dapat menekan button Run agar dapat memulai proses searching hingga mendapat hasil output akhirnya. Pada tahap ini akan terjadi beberapa proses mengikuti metode dari Algoritma Genetika. Langkah-langkah yang dilakukan oleh proses Algoritma Genetika ini adalah sebagai berikut : a. Menghitung TotalBoxArea Dalam tahap ini, algoritma yang sedang berjalan adalah menghitung jumlah kotak baik berupa persegi maupun persegi panjang sesuai dari inputan yang diberikan oleh user. cara perhitungan dari luas dari TotalBoxArea adalah : TotalBoxArea = boxes.get(i).xsize * boxes.get(i).ysize Dimana ukuran dari xsize merupakan ukuran dari width sedangkan ysize adalah ukuran dari height berdasarkan inputan dari sang user. b. GenerateRandomGeneration Pada tahap GenerateRandomGeneration, Algoritma Genetika akan menggenerate sebuah generasi baru secara random yang didapat dari kromosom setiap kotak untuk mendapatkan BestGeneration.

32 c. PrepChromosomsForFitnessCalc Dalam tahap ini, beberapa kromosom telah disiapkan untuk perhitungan fungsi fitness dengan memasukkan nomor pada masing-masing kotak dalam sebuah kromosom. d. Calcfitness Kemudian pada tahap Calcfitness adalah tahap dimana perhitungan dan penetapan nilai fitness dari setiap kromosom yang ada. e. Sortchromosomes Pada tahap selanjutnya adalah Sortchromosomes yang bertujuan untuk mengurutkan seluruh kromosom sehingga dapat memilih kromosom yang terbaik dari daftar kromosom yang pertama. f. Evolution Dan pada tahap akhir yaitu Evolution atau biasa disebut dengan teori evolusi, dimana pada tahap ini akan menghasilkan sebuah generasi baru dari generasi kromosom sebelumnya. Disini akan terjadi proses selection (seleksi), crossover (pindah silang), mutation (mutasi) dan geneswap (pertukaran gen). 3.1.3 Cara kerja dari Algoritma Genetika Berikut ini adalaha cara kerja dari Algoritma Genetika yang berjalan di dalam program :

33 1. Proses pembuatan kotak yang berbentuk persegi dan persegi panjang Gambar 3.1 Objek Pola Pada Gambar 3.1 menjelaskan tentang gambar dari bentuk masing - masing pola berdasarkan inputan dari user yang berupa width dan height. 2. Proses pengurutan pada penempatan objek pola Gambar 3.2 Pengurutan Objek Pola

34 Pada gambar 3.2 menjelaskan tentang proses pengurutan objek pola yang dimulai dari kotak pertama hingga kotak terakhir. Proses penempatan objek pola dimulai dari pengecekan sisi paling kiri pada bingkai bidang kemudian dilanjutkan dengan pengecekan sisi paling atas pada bingkai bidang. Setelah batas paling atas pada bingkai bidang sudah terisi penuh maupun hampir penuh oleh objek pola tersebut hingga membuat objek pola selanjutnya sudah tidak muat lagi jika ditaruh disamping pola sebelumnya, maka proses pengecekan lokasi penempatan objek pola selanjutnya yaitu dengan mengecek sisi paling kiri bingkai bidang dan mengecek sisi paling bawah pada objek pola yang sudah diletakkan sebelumnya pada bingkai bidang. Proses ini terus berlanjut hingga semua objek pola selesai diletakkan. Untuk cost setiap kromosom dihitung sebagai ruang terbuang yang berada pada bingkai bidang setelah semua objek pola ditempatkan dalam bingkai bidang 1. Dimana y mewakili nilai dari height (tinggi bingkai bidang), x mewakili nilai dari width (lebar bingkai bidang) dan a adalah luas total dari masing - masing bidang. Sebagai contoh dalam pencarian cost/fitness area dapat dimisalkan nilai dari y = 55,x = 60 dan a = 2150 maka untuk mencari nilai cost/fitness area adalah : 1 2150 55. 60 1 0.651 0.349

35 Gambar 3.3 Hasil Sementara dari Pengurutan Objek Pola 3.1.4 Proses Output Pada tahap akhir, yaitu proses output dimanaa hasil dari seluruh pencarian letak dan pengurutan pola dengan menggunakann Algoritma Genetika akan ditampilkan pada program ini. Contoh dilihat pada Gambar 3.4. dari hasil output pada program inii bisa Gambar 3.4 Sampel Hasil Akhir Pengurutan Objek Pola 3.2 Perancangan Program Perancangan sistem yang bertujuan untuk memenuhi berbagai tuntutan untuk menghasilkan sebuah aplikasi pengoptimalan pola terbaik. Sistem ini diharapkan memberikan kemudahan bagi penggunanya. Perancangan ini berupa perancangan

36 struktur menu, use case diagram, flowchart diagram dan perancangan interface dari masing-masing menu. 3.2.1 Rancangan Struktur Menu Struktur menu software dirancang adalah sebagai berikut. a. Struktur Menu Utama Gambar 3.5 Struktur Menu Utama Pada Gambar 3.5 merupakan struktur menu utama dari program ini yang ketika dijalankan tampilan awalnya mendeskripsikan judul skripsi dalam layar utama program ini dan memiliki button continue untuk menuju ke halaman berikutnya. b. Struktur Menu File Gambar 3.6 Struktur Menu File

37 Pada Gambar 3.6 menjelaskan struktur menu pada menu file yang dimana pada menu file ini memiliki 4 sub menu yang terdiri dari sub menu New, sub menu dialog Open, sub menu dialog Save, dan sub menu Exit. Di setiap sub menu memiliki fungsi yang berbeda - beda yang akan dijelaskan lebih detail pada bab berikutnya. c. Struktur Menu Help Gambar 3.7 Struktur Menu Help Pada Gambar 3.7 menjelaskan tentang struktur menu dari menu Help yang terdiri dari 2 sub menu yaitu sub menu About dan sub menu Description. Menu Help ini bertujuan untuk membantu memudahkan user untuk menjalankan program ini dan memudahkan user dalam mengenal fungsi-fungsi dari masing-masing menu yang berada dalam program ini dan tidak lupa juga program ini sudah dilengkapi dengan biodata dari sang penulis.

38 3.2.2 Use Case Diagram Pada tahap penjelasan program dengan menggunakan Diagram Use Case dapat dilihat ilustrasinya pada gambar berikut. Gambar 3.8 Use Case Diagram untuk Optimizer Setelah melihat Use Case Diagram pada Gambar 3.8 dapat dijelaskan bahwa sang user dapat melakukan 3 interaksi dalam program optimizer ini yaitu user dapat memasukkan input data dan settingan parameter Algoritma Genetika, mencari solusi peletakan pola dengan menggunakan proses searching dari Algoritma Genetika, serta dapat melihat solusi akhir dari peletakan pola yang sudah dioptimalkan oleh program ini.

39 3.2.3 Flowchart Diagram Pada tahap penjelasan program selanjutnya dengan menggunakan Diagram Flowchart dari proses mulai hingga selesai untuk mendapatkan solusi optimal dapat dilihat ilustrasinya pada gambar berikut. Gambar 3.9 Flowchart Analisis Program Berjalan

40 3.2.4 Rancangan Layar Program a. Menu Welcome Menu ini adalah merupakan menu tampilan utama dari rancangan layar program yang dibuat untuk menyambut user dengan mendeskripsikan secara sekilas judul dari karya ilmiah yang telah dibuat oleh penulis. Untuk menuju ke halaman berikutnya user dapat menekan button continue. Rancangan layar Welcome dapat dilihat pada gambar berikut. Welcome X Continue Gambar 3.10 Rancangan Layar Welcome Berikut ini adalah pseudocode untuk form Welcome. If ditekan tombol Continue then Tampilkan page berikut b. Menu Optimizer Pada menu Optimizer ini merupakan menu untuk sang user untuk menginput data-data yang dibutuhkan untuk tahap pencarian solusi serta tampilan untuk hasil dari pencarian solusi yang diinginkan.

41 Rancangan layar menu Optimizer dapat dilihat pada gambar berikut. Gambar 3.11 Rancangan Layar Menu Optimizer Berikut ini adalah pseudocode untuk form Menu Optimizer. If ditekan tombol Add Row then Menginput nilai Width dan Height If ditekan tombol Delete Row then Menghapus baris terakhir dari inputan If ditekan tombol Run then Menghitung total box area Mengenerate secara random pada generasi awal While total new gen < total last gen Begin Perhitungan fungsi fitness Sorting kromosom Evolusi End Tampilkan Output

42 c. Menu About Pada Menu About ini berisikan tentang judul karya ilmiah sang penulis dan biodata singkat sang penulis beserta dosen pembimbing sang penulis selama mengerjakan karya ilmiah ini. Rancangan layar menu About dapat dilihat pada gambar berikut. Gambar 3.12 Rancangan Menu About Berikut adalah pseudocode untuk menu about. If ditekan tombol OK then Keluar dari menu About d. Menu Description Pada Menu Description ini berisikan tentang penjelasan masing-masing fungsi dari menu bar, sub menu bar, button serta prosedur penggunaan yang ada dalam program ini. Rancangan layar menu Description dapat dilihat pada gambar berikut. Gambar 3.13 Rancangan Modul Description Berikut adalah pseudocode untuk menu Description. If ditekan tombol OK then Keluar dari menu Description.