• Tidak ada hasil yang ditemukan

LEMBAR PENGESAHAN PENERAPAN ALGORITMA GENETIK UNTUK

N/A
N/A
Protected

Academic year: 2022

Membagikan "LEMBAR PENGESAHAN PENERAPAN ALGORITMA GENETIK UNTUK"

Copied!
15
0
0

Teks penuh

(1)

LEMBAR PENGESAHAN

PENERAPAN ALGORITMA GENETIK UNTUK MASALAH KNAPSACK 0/1

dengan ini , saya menyatakan bahwa isi CD-Rom Laporan Penelitian sama dengan hasil Revisi Akhir

Bandung, DESEMBER 2009

Ricky Susanto NRP: 0572048

Menyetujui,Pembimbing

Pembimbing I Pembimbing II

Dr.Ir Mewati Ayub, MT Peter Hyong Jik Kim, BFA

NIK: 720140 NIK: 710005

Mengetahui

Ketua Jurusan S1 Teknik Informatika

(2)

SURAT PERNYATAAN ORISINALITAS KARYA

 

Saya yang bertanda tangan di bawah ini:

Nama : Ricky Susanto NRP : 0572048

Fakultas / Jurusan : Teknologi Informasi / S1 Teknik Informatika

menyatakan bahwa tugas akhir ini merupakan hasil karya saya sendiri dan bukan duplikasi dari orang lain.

Apabila di kemudian hari diketahui bahwa pernyataan ini tidak benar adanya maka saya bersedia menerima seluruh sanksi yang diberikan.

Demikian pernyataan ini saya buat.

BANDUNG, DESEMBER 2009

Ricky Susanto

(3)

KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Sebagai mahasiswa Universitas Kristen Maranatha Bandung, saya yang bertanda tangan dibawah ini :

Nama : Ricky Susanto NRP : 0572048

Demi pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada Universitas Kristen Maranatha hak bebas royalti Non‐Eksklusif atas karya ilmiah saya yang berjudul “PENERAPAN ALGORITMA GENETIK UNTUK MASALAH KNAPSACK 0/1”.

Dengan hak bebas royalti ini Universitas Maranatha berhak menyimpan, mengalih formatkan, mendistribusikannya, dan mempublikasikan di berbagai media untuk kepentingan akademis tanpa perlu meminta izin dari saya selama tetap mencantumkan nama saya sebagai penulis/pencipta.

Demikian pernyataan ini saya buat dengan sebenar‐benarnya.

BANDUNG, DESEMBER 2009

Ricky Susanto

(4)

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus yang telah memberikann bimbingan dan karunia‐Nya selama pengerjaan tugas akhir, hingga penulis dapat menyelesaikan pelaksanaan tugas akhir dengan judul.

“PENERAPAN ALGORITMA GENETIK UNTUK MASALAH KNAPSACK 0/1”

Tugas akhir merupakan salah satu mata kuliah wajib di jurusan Teknik Informatika Universitas Kristen Maranatha Fakultas Teknologi Informasi. Selesainya laporan tugas akhir ini tidak terlepas dari bimbingan dan dukungan dari banyak pihak. Dukungan ini secara langsung maupun tidak langsung membantu penulis dalam penyelesaian laporan tugas akhir ini. Pada kesempatan ini, penulis secara khusus ingin menyampaikan rasa terima kasih yang sedalam-dalamnya serta penghargaan yang setinggi‐tingginya kepada:

1. Bapak Radiant Victor Imbar, S.Kom, MT, MCP, OCP selaku Dekan Fakultas Teknologi Informasi.

2. Ibu Dr. Ir. Mewati Ayub, MT. selaku dosen pembimbing dan Ketua Jurusan S1 Teknik Informatika yang selalu membantu penulis dalam pengerjaan tugas akhir ini.

3. Bapak Peter Hyong Jik Kim, BFA. selaku dosen pembimbing lapangan yang telah memberikan masukan-masukan bagi penulis.

4. Papah dan Mamah, yang selalu memberi doa dan dukungan baik secara moril maupun masukan‐masukan yang membangun bagi penulis.

5. Kalina, BA. yang selalu mendukung dan memberi dorongan dalam pengerjaan karya tulis ini.

6. Siany Limandinata, Fenny, Marvin Gunardi, Evlin Marcelin, Andre selaku teman-teman yang selalu mendukung dan memberi dorongan dalam pengerjaan karya tulis ini.

7. Segenap teman-teman penulis dari jurusan S1 Teknologi Informatika

angkatan 2005 yang memberi saran-saran yang berharga bagi penulis.

(5)

8. Serta berbagai pihak yang telah banyak membantu yang tidak dapat penulis sebutkan satu.

Penulis telah mengerjakan tugas akhir ini dengan seoptimal mungkin, namun setiap orang pasti tidak terlepas dari kesalahan. Penulis meminta maaf atas segala kekurangan dan kesalahan yang dibuat dari laporan ini. Penulis juga mengharapkan saran yang membangun sehingga bisa menambah pengetahuan dan pengalaman penulis. Besar harapan penulis agar laporan tugas akhir ini dapat memberikan manfaat dan pengetahuan bagi semua pihak.

Terima kasih

Bandung, DESEMBER 2009

Ricky Susanto

(6)

ABSTRAKSI

Masalah knapsack 0/1 adalah masalah pengemasan barang dengan batasan-batasan tertentu. Masalah pengemasan barang pada umumnya dibatasi oleh kapasitas yang disebut knapsack. Banyak cara untuk menyelesaikan masalah ini salah satunya dengan menggunakan algoritma genetik.

Aplikasi ini dibangun untuk membuat simulasi yang menghasilkan solusi untuk mempermudah user dalam melakukan pengemasan barang.

Aplikasi ini mengimplementasikan teknik-tenik yang terdapat pada algoritma genetik dalam menghasilkan solusi untuk masalah knapsack 0/1. Data barang yang di-input oleh user direpresentasikan di dalam array sehingga dapat dengan mudah diolah dengan teknik-teknik algoritma genetik.

Pengujian terhadap aplikasi simulasi membatasi perhitungan hanya pada dimensi volume dan berat. Hasil pengujian ditujukan untuk mencari solusi dengan profit tertinggi dengan kombinasi parameter algoritma genetik yang optimal. Uji kasus juga dilakukan pada kasus nyata dan diharapkan memberikan solusi yang dapat dipakai pada dunia nyata.

Kata Kunci : knapsack 0/1, algoritma genetik, parameter algoritma genetik,

array.

(7)

ABSTRACT

The problem of knapsack 0/1 is the way of packing of things with some limitations. The common problem of packing is usually limited by the capacity called knapsack. There are a lot of ways to solve the problem, one of them by using the algorithm genetic

This application is made to create a simulation and solution of packing that eases the user. This application implements the algorithm techniques in order to create a solution for the knapsack problem. The input from the user, is represented in an array so it can be easily accessed and processed using the algorithm genetic.

The application testing is used to limit the calculation that only depends on the volume and the weight dimension. The test results are used to create a solution that combines the highest profit with the optimum algorithm genetic parameter. The real testing is also used for the real case and is expected to give a best solution that can be used in the real world.

Key Word : knapsack 0/1, genetic algorithm, algorithm genetic parameter.

(8)

2.2.2.2 Urutan Stimulus ... 8

2.2.2.1 Tujuan ... 8

Input Knapsack ... 8

2.2.2 Fitur 2 Input Barang ... 7

2.2.1 Fitur 1 2.2 Fitur Produk Perangkat Lunak ... 7

2.1.4 Antarmuka Komunikasi ... 6

2.1.3 Antarmuka Perangkat Lunak ... 6

2.1.2 Antarmuka Perangkat Keras... 6

2.1.1 Antarmuka dengan Pengguna ... 6

2.1 Persyaratan Antarmuka Eksternal ... 6

BAB 2 SPESIFIKASI PRODUK ... 6

1.2.5 Asumsi dan Ketergantungan... 5

1.2.4 Batasan - Batasan ... 4

1.2.3 Karakteristik Pengguna... 4

1.2.2 Fungsi Produk ... 4

1.2.1 Perspektif Produk... 4

1.2 Gambaran Keseluruhan... 4

1.1.4 Overview Laporan ... 2

1.1.3 Definisi, Akronim, dan Singkatan ... 2

1.1.2 Ruang Lingkup Proyek... 2

1.1.1 Tujuan ... 1

1.1 Pendahuluan ... 1

BAB 1 PERSYARATAN PRODUK ... 1

DAFTAR PROGRAM ... xv

DAFTAR TABEL ... xii

DAFTAR GAMBAR ... xi

DAFTAR ISI ... viii

ABSTRACT ... vii

ABSTRAKSI ... vi

KATA PENGANTAR ... iv

KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS... iii

SURAT PERNYATAAN ORISINALITAS KARYA ... ii

LEMBAR PENGESAHAN ... i

DAFTAR ISI

(9)

4.2 Perjalanan Tahap Implementasi ... 52

Class... 42

4.1.2 Keterkaitan antar Class ... 42

4.1.1 Pembagian 4.1 Perencanaan Tahap Implementasi ... 42

BAB 4 PENGEMBANGAN SISTEM ... 42

Class Diagram... 33

3.2.3 Activity Diagram ... 27

3.2.2 Use Case Diagram... 24

3.2.1 3.2 Desain Perangkat Lunak Secara Keseluruhan... 24

3.1.5 Penerapan Algoritma Genetika dalam Knapsack Problem ... 22

Shared Object ... 21

3.1.4.3 3.1.4.2 Crossover... 20

Roulette Wheel... 19

3.1.4.1 Metode Seleksi 3.1.4 Algoritma Genetik ... 18

knapsack dengan Greedy... 14

3.1.3.1 Pemecahan Knapsack Problem ... 14

3.1.3 3.1.2 Overview Sistem ... 13

3.1.1 Identifikasi ... 13

3.1 Pendahuluan ... 13

BAB 3 DESAIN PERANGKAT LUNAK ... 13

2.2.7.3 Persyaratan Fungsional yang berhubungan... 12

2.2.7.2 Urutan Stimulus ... 11

2.2.7.1 Tujuan ... 11

Setting Parameter Algoritma Genetik ... 11

2.2.7 Fitur 7 2.2.6.3 Persyaratan Fungsional yang berhubungan... 11

2.2.6.2 Urutan Stimulus... 11

2.2.6.1Tujuan ... 10

2.2.6 Fitur 6 Grafik Solusi... 10

2.2.5.3 Persyaratan Fungsional yang berhubungan... 10

2.2.5.2 Urutan Stimulus ... 10

2.2.5.1 Tujuan ... 10

Load ... 10

2.2.5 Fitur 5 2.2.4.3 Persyaratan Fungsional yang berhubungan... 10

2.2.4.2 Urutan Stimulus ... 9

2.2.4.1 Tujuan ... 9

Save... 9

2.2.4 Fitur 4 2.2.3.3 Persyaratan Fungsional yang berhubungan... 9

2.2.3.2 Urutan Stimulus ... 8

2.2.3.1 Tujuan ... 8

2.2.3 Fitur 3 Pencarian Solusi... 8

2.2.2.3 Persyaratan Fungsional yang berhubungan... 8

(10)

LAMPIRAN DATA PENULIS ...IX DAFTAR PUSTAKA...VIII

6.3 Rencana Perbaikan / Implementasi terhadap Saran yang Diberikan... 94

6.2 Keterkaitan antara Saran dengan Hasil Evaluasi ... 93

6.1 Keterkaitan antara Kesimpulan dengan Hasil Evaluasi... 93

BAB 6 KESIMPULAN DAN SARAN... 93

5.3 Ulasan Hasil Evaluasi ... 91

Real... 89

5.2.3 Uji Kasus 5.2.2 Uji Algoritma Genetik ... 69

5.2.1 Black Box ... 65

5.2 Perjalanan Metodologi Pengujian ... 65

5.1.2 Uji Fungsionalitas Modul/Class... 64

5.1.1 Test Case... 62

5.1 Rencana Pengujian Sistem Terimplementasi... 62

BAB 5 TESTING DAN EVALUASI SISTEM ... 62

(11)

Gambar 4.10 Setting Parameter... 60

Gambar 4.9 Grafik ... 60

Gambar 4.8 Save Project... 59

Gambar 4.7 Project ... 58

Gambar 4.6 Load Project... 58

Gambar 4.5 Input Knapsack... 57

Gambar 4.4 Input Barang ... 56

Gambar 4.3 Menu Utama ... 55

Gambar 4.2 Top Down Implementasi ... 52

Class... 42

Gambar 4.1 Relasi Antar Gambar 3.11 Class Diagram ... 34

Setting Parameter ... 33

Gambar 3.10 Activity Diagram Gambar 3.9 Activity Diagram Grafik Solusi... 32

Gambar 3.8 Activity Diagram Save... 31

Gambar 3.7 Activity Diagram Load ... 30

Gambar 3.6 Activity Diagram Pencarian Solusi... 29

Gambar 3.5 Activity Diagram Memasukan Knapsack ... 28

Gambar 3.4 Activity Diagram Memasukan Barang... 28

Gambar 3.3 Use Case Diagram... 24

Crossover... 20

Gambar 3.2 Varian Gambar 3.1 Metode Roulette Wheel... 19

DAFTAR GAMBAR

(12)

view grafik ... 64

Tabel 5.6 Test Case Save ... 64

Tabel 5.5 Test Case Load ... 63

Tabel 5.4 Test Case Tabel 5.3 Test Case Pencarian Solusi ... 63

Tabel 5.2 Test Case Menginput knapsack... 62

Tabel 5.1 Test Case Menginput Barang ... 62

Tabel 4.1 Realisasi Fungsionalitas... 54

Class BukaSO ... 39

Tabel 3.15 Class SaveSO ... 38

Tabel 3.15 Class Seleksi... 38

Tabel 3.14 Class Crossover ... 37

Tabel 3.13 Class Mutasi... 37

Tabel 3.12 Class AG... 36

Tabel 3.11 Class Main... 34

Tabel 3.10 Tabel 3.9 Notasi Use Case View ... 27

Tabel 3.8 Notasi Use Case Save ... 26

Tabel 3.7 Notasi Use Case Edit Data... 26

Tabel 3.6 Notasi Use Case Pencarian Solusi ... 26

Tabel 3.5 Notasi Use Case Menginput Knapsack ... 25

Tabel 3.4 Notasi Use Case Menginput Barang... 25

Tabel 3.3 Notasi Use Case Load... 25

Kromosom... 22

Tabel 3.2 Greedy ... 17

Tabel 3.1 Tabel 1.1 Definisi Akronim dan Singkatan ... 2

DAFTAR TABEL

(13)

Tabel 5.29 Hasil Uji Kasus 4... 82

Knapsack Kasus 4... 82

Tabel 5.28 Tabel 5.27 Barang Kasus 4 ... 82

Tabel 5.26 Solusi Kasus 3 ... 78

Tabel 5.25 Hasil Uji Kasus 3... 77

Knapsack Kasus 3... 77

Tabel 5.24 Tabel 5.23 Barang Kasus 3 ... 76

Tabel 5.22 Solusi Kasus 2 ... 74

Tabel 5.21 Hasil Uji Kasus 2... 73

Knapsack Kasus 2... 73

Tabel 5.20 Tabel 5.19 Barang Kasus 2 ... 72

Tabel 5.18 Solusi Kasus 1 ... 70

Tabel 5.17 Hasil Uji Kasus 1... 69

Knapsack Kasus 1... 69

Tabel 5.16 Tabel 5.15 Barang Kasus 1 ... 69

Edit data ... 68

Tabel 5.14 Black Box Test view grafik ... 68

Tabel 5.13 Black Box Test Save ... 67

Tabel 5.12 Black Box Test Load ... 67

Tabel 5.11 Black Box Test Tabel 5.10 Black Box Test Pencarian Solusi... 66

Tabel 5.9 Black Box Test Menginput knapsack ... 66

Tabel 5.8 Black Box Test Menginput Barang ... 65

Edit data ... 64 Tabel 5.7 Test Case

(14)

Tabel 5.39 Hasil Evaluasi ... 91 Real ... 90 Tabel 5.38 Solusi Kasus

Real ... 89 Tabel 5.37 Hasil Uji Kasus

Knapsack Kasus Real ... 89 Tabel 5.36

Real... 89 Tabel 5.35 Barang Kasus

Tabel 5.34 Solusi Kasus 5 ... 87 Tabel 5.33 Hasil Uji Kasus 5... 86

(15)

program 4.13 Fungsi SaveFN ... 52

program 4.13 Fungsi Saveso ... 51

program 4.12 Fungsi NamaFile... 50

program 4.12 Fungsi Bukaso... 49

program 4.11 Fungsi Sl ... 49

program 4.10 Fungsi MT ... 48

program 4.9 Fungsi CR ... 47

program 4.8 Fungsi startPerhitungan... 47

program 4.7 Fungsi Parameter ... 46

program 4.6 Fungsi Terbaik... 46

program 4.5 Fungsi Fitness ... 45

program 4.4 Fungsi Filter... 45

program 4.3 Fungsi BuatKromosom ... 44

program 4.2 Fungsi Buattabel ... 44

Datagrid ... 43

program 4.1 Fungsi program 3.3 Greedy by Density... 17

program 3.2 Greedy by Weight... 16

program 3.1 Greedy by Profit ... 16

DAFTAR PROGRAM

Referensi

Dokumen terkait

Acuan Kualitas Rubrik , harus memenuhi beberapa kriteria yaitu: (1) rubrik memuat seperangkat indikator untuk menilai kompetensi tertentu, (2) Indikator dalam rubrik diurutkan

Laporan dalam dibuat oleh mahasiswa yang bersangkutan sesuai dengan program yang dilaksanakan dalam bentuk soft copy (format laporan, cover dan pengesahan

Anggaran yang digunakan untuk menunjang kelancaran pelaksanaan operasional menggunakan anggaran yang ada dan apabila ada biaya yang timbul pada setiap kegiatan

Jejak arkeologi berupa pal-pal sekutu dapat ditarik garis merahnya dengan usaha membuat perimeter atau blokade wilayah untuk penguasaan daratan Morotai bagian selatan

Dari sedikit penjelasan diatas karena terdapat permasalahan, maka Penulis ingin meneliti peran keluarga, tokoh masyarakat dan Pemerintah Desa Ngabetan dalam

Banyaknya warga desa Bugel yang menjadi Buruh harian lepas kemungkinan karena banyak warga Desa Bugel yang hanya menempuh pendidikan sampai Sekolah Dasar (SD/Sederajat)

Penerbitan publikasi KOTA JAMBI DALAM ANGKA (KJDA) 2012merupakan penyajian yang sama seperti pada tahun sebelumnya dengan referensi waktu tahun 2011.. Dalam

Agar penelitian ini membuahkan hasil, yang menjadi fokus dalam penelitian ini adalah hasil belajar siswa yang dipengaruhi oleh teknik ladang kata dengan media