Top Banner
Sistem Pendukung Keputusan Berbasis Web Untuk Menentukan Alternatif Perjalanan Wisata di DIY dan Sekitarnya dengan Menggunakan Algoritma Genetika Skripsi Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Jurusan Teknik Informatika Disusun Oleh : Sukeksi Esti Pratiwi NIM : 015314057 JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS SANATA DHARMA YOGYAKARTA 2007
61

Sistem Pendukung Keputusan Berbasis Web Untuk ...

Feb 08, 2023

Download

Documents

Khang Minh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Sistem Pendukung Keputusan Berbasis Web Untuk ...

Sistem Pendukung Keputusan Berbasis Web

Untuk Menentukan Alternatif Perjalanan Wisata

di DIY dan Sekitarnya

dengan Menggunakan Algoritma Genetika

Skripsi

Diajukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik

Jurusan Teknik Informatika

Disusun Oleh :

Sukeksi Esti Pratiwi

NIM : 015314057

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2007

Page 2: Sistem Pendukung Keputusan Berbasis Web Untuk ...

WEB-BASED DECISSION SUPPORT SYSTEM FOR

DETERMINING ALTERNATIVE TOUR TRIP

AROUND DIY PROVINCE

USING GENETIC ALGORITHM

A THESIS

Presented as Partial Fulfillment of Requirements to Obtain the Sarjana

Teknik Degree in Informatics Engineering

Disusun Oleh :

Sukeksi Esti Pratiwi

015314057

INFORMATICS ENGINEERING STUDY PROGRAM

DEPARTMENET OF INFORMATICS ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2007

i

Page 3: Sistem Pendukung Keputusan Berbasis Web Untuk ...
Page 4: Sistem Pendukung Keputusan Berbasis Web Untuk ...
Page 5: Sistem Pendukung Keputusan Berbasis Web Untuk ...

PERNYATAAN

Dengan ini saya sebagai penulis tugas akhir menyatakan dengan

sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat karya atau bagian

karya orang lain, kecuali pemikiran, metode atau hasil penelitian orang lain yang

diambil disebutkan dengan jelas sebagai acuan.

Yogyakarta, Agustus 2007

Sukeksi Esti Pratiwi

Penulis

iv

Page 6: Sistem Pendukung Keputusan Berbasis Web Untuk ...

ABSTRAK

Melakukan perjalanan wisata, merupakan aktifitas yang menyenangkan.

Tetapi terkadang orang sulit untuk menentukan tujuan obyek wisata. Karena itu

dalam tugas akhir ini dibuat Sistem Pendukung Keputusan untuk menentukan rute

perjalanan wisata.

Penyelesaian masalah rute perjalanan wisata ini akan diselesaikan dengan

menggunakan algoritma Genetika. Untuk menyelesaikan masalah tersebut, maka

batasan-batasan masalahnya harus jelas. Batasan-batasan itu meliputi waktu dari

kunjungan obyek wisata, dan juga harga dari tiket masuk tiap obyek tersebut.

Hasil akhir yang diperoleh adalah rute perjalanan wisata, dengan total harga

tiket masuk yang sesuai atau lebih kecil dari input dana yang dimasukkan oleh

wisatawan.

v

Page 7: Sistem Pendukung Keputusan Berbasis Web Untuk ...

ABSTRACT

Take a tour trip is a fun activity. But sometimes peoples feel difficult to

determine their destination, so this final assignment make a Decission Support

System to determine tour trip route.

The problem will be solved by Genetic algorithm, so the problem’s

boundaries must be clearly. The boundaries include a visit time, and cost of ticket

from a tour’s object.

The result of this final assignment is a tour trip route, with a total cost of

ticket that appropriate or less than an input that have been entered by tourist.

vi

Page 8: Sistem Pendukung Keputusan Berbasis Web Untuk ...

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Kuasa

yang telah melimpahkan berkat-Nya sehingga penulis dapat menyelesaikan

Laporan Tugas Akhir ini. Penulisan tugas akhir ini ditujukan untuk memenuhi

salah satu syarat memperoleh gelar Sarjana Teknik Jurusan Teknik Informatika.

Terselesaikannya penulisan tugas akhir ini tidak lepas dari peran serta

beberapa pihak, baik secara langsung maupun secara tidak langsung. Oleh karena

itu, penulis ingin menyampaikan terima kasih kepada pihak-pihak yang telah ikut

membantu dalam penulisan tugas akhir ini, baik dalam memberikan bimbingan,

petunjuk, kerjasama, kritikan, maupun saran, antara lain kepada:

1. Bapak Drs.J.J. Siang, M.Sc., selaku Dosen Pembimbing I.

2. Ibu Agnes Maria Polina, S.Kom., M.Sc., selaku Ketua Jurusan Teknik

Informatika Universitas Sanata Dharma.

3. Ibu Ridowati Gunawan, S.Kom., M.T., Bapak St. Wisnu Wijaya, S.T., M.T.,

dan Bapak H.Agung Hernawan, S.T., selaku panitia penguji pada ujian

pendadaran penulis.

4. Kedua orang tua penulis, yang memberikan semangat dan dorongan kepada

penulis untuk dapat menyelesaikan penulisan laporan tugas akhir ini.

5. Seluruh staff dan dosen pengajar di Univeritas Sanata Dharma pada umumnya

dan Jurusan Teknik Informatika pada khususnya.

vii

Page 9: Sistem Pendukung Keputusan Berbasis Web Untuk ...

6. Teman – teman Jurusan Teknik Informatika Angkatan 2001 (A dan B) dan

rekan - rekan Teknik Informatika USD lainnya.

7. Ace, Vini, terima kasih atas bantuan dan dorongan semangatnya. Tria, Ida,

Heni, Nita, teman-teman seperjuangan dalam menyelesaikan TA. Sigit, Oni,

Narko, yang telah banyak sekali membantu dalam pengerjaan TA.

8. Kepada Mas Evin yang tersayang, yang selalu memberi semangat, doa, dan

bantuan, serta perhatiannya selama ini.

9. Teman – teman kos, Deny, Wiwin, Mbak Pipit, Mbak Ika.

10. Dan seluruh pihak yang telah ikut ambil bagian dalam penyelesaian laporan

tugas akhir ini yang tidak dapat penulis sebutkan satu - persatu.

Penulis menyadari bahwa masih banyak kekurangan yang terdapat pada

laporan ini. Saran dan kritik selalu penulis harapkan dari pembaca untuk

perbaikan – perbaikan di masa yang akan datang.

Akhir kata penulis berharap tulisan ini bermanfaat bagi kemajuan dan

perkembangan ilmu pengetahuan dan berbagai pihak pengguna pada umumnya.

Yogyakarta, Agustus 2007

Sukeksi Esti Pratiwi

( Penulis )

viii

Page 10: Sistem Pendukung Keputusan Berbasis Web Untuk ...

DAFTAR ISI

HALAMAN JUDUL ………………………………………………….. i

HALAMAN PERSETUJUAN ………………………………………... ii

HALAMAN PENGESAHAN ………………………………………… iii

HALAMAN PERNYATAAN ………………………………………... iv

ABSTRAKSI …………………………………………………………. v

ABSTRACT ………………………………………………………….. vi

KATA PENGANTAR ………………………………………………… vii

DAFTAR ISI ………………………………………………………….. ix

DAFTAR TABEL …………………………………………………….. xiii

DAFTAR GAMBAR ………………………………………………….. xiv

BAB I PENDAHULUAN

1.1 Latar Belakang Masalah ……………………………………….. 1

1.2 Rumusan Masalah ……………………………………………… 2

1.3 Batasan Masalah ……………………………………………….. 2

1.4 Tujuan dan Manfaat Penelitian …………………………………. 2

1.5 Metodologi Penelitian ………………………………………….. 3

1.6 Sistematika Penulisan …………………………………………... 3

BAB II LANDASAN TEORI

2.1 Sistem Pendukung Keputusan

2.1.1 Definisi ……………………………………………………. 5

2.1.2 Proses Pengambilan Keputusan …………………………… 5

ix

Page 11: Sistem Pendukung Keputusan Berbasis Web Untuk ...

2.1.3 Pengertian …………………………………………………. 6

2.1.4 Manfaat dan Keterbatasan Sistem Pendukung Keputusan

2.1.4.1 Manfaat Sistem Pendukung Keputusan ………….. 8

2.1.4.2 Keterbatasan Sistem Pendukung Keputusan ……... 8

2.2 Algoritma Genetika

2.2.1 Algoritma Genetika ……………………………………….. 10

2.2.2 Sejarah Algoritma Genetika ………………………………. 10

2.2.3 Konsep Dasar Algoritma Genetika ……………………….. 10

2.3 Internet, World Wide Web dan HTTP (Hyper Text Transfer Protocol)

2.3.1 Internet ……………………………………………………. 17

2.3.2 World Wide Web ………………………………………….. 17

2.3.3 HTTP (Hyper Text Transfer Protocol) …………………… 18

2.4 HTML (Hyper Text Markup Language)

2.4.1 Dasar-dasar HTML ……………………………………….. 18

2.4.2 Struktur Dokumen HTML ………………………………... 19

2.5 PHP

2.5.1 Sejarah PHP ………………………………………………. 20

BAB III ANALISA DAN PERANCANGAN SISTEM

3.1 Gambaran Umum Sistem ……………………………………….. 22

3.2 Pengambilan Data

3.2.1 Penerapan Algoritma Genetika ……………………………. 22

3.3 Perancangan Antar Muka ……………………………………….. 28

3.3.1 Halaman Utama / Index …………………………………… 29

x

Page 12: Sistem Pendukung Keputusan Berbasis Web Untuk ...

3.3.2 Halaman Menu / Form Menu ………………………………. 30

3.3.3 Halaman Hasil …………………………………………….. 31

3.4 Perancangan Basis Data

3.4.1 Physical Design …………………………………………… 32

3.5 Perancangan Program

3.5.1 Data Flow Diagram ………………………………………. 33

3.5.2 E-R Diagram ……………………………………………… 35

3.5.3 Relational Model …………………………………………. 36

BAB IV IMPLEMENTASI DAN ANALISA PROGRAM

4.1 Aplikasi Sistem …………………………………………………. 37

4.2 Implementasi Program

4.2.1 Representasi Kromosom ………………………………….. 37

4.2.2 Pembangkitan Populasi Awal ……………………………. 38

4.2.3 Penentuan Nilai Fitness Untuk Masing-masing Kromosom 38

4.2.4 Pemilihan Kromosom Untuk Dijadikan Orangtua……….. 39

4.2.5 Operasi Persilangan atau Crossover ……………………… 39

4.3 Koneksi dari PHP ke MySQL …………………………………. 40

4.4 Pembuatan Interface

4.4.1 Layar Utama / Index ……………………………………… 40

4.4.2 Form Obyek Wisata ………………………………………. 42

4.4.3 Form Hasil ……………………………………………….. 43

4.5 Pembahasan Program …………………………………………... 44

xi

Page 13: Sistem Pendukung Keputusan Berbasis Web Untuk ...

BAB V PENUTUP

5.1 Kesimpulan …………………………………………………….. 45

5.2 Saran-saran ……………………………………………………… 45

DAFTAR PUSTAKA

xii

Page 14: Sistem Pendukung Keputusan Berbasis Web Untuk ...

DAFTAR TABEL

Tabel Keterangan Halaman

Tabel 2.1 Istilah dalam algoritma Genetika Halaman 16

Tabel 3.1 Tabel Obyek Wisata Halaman 32

Tabel 3.2 Tabel Kategori Halaman 32

Tabel 3.3 Tabel Waktu Tempuh Halaman 33

xiii

Page 15: Sistem Pendukung Keputusan Berbasis Web Untuk ...

DAFTAR GAMBAR

Gambar Keterangan Halaman

Gambar 3.1 Form Index Halaman 29

Gambar 3.2 Form Menu Halaman 30

Gambar 3.3 Form Hasil Halaman 31

Gambar 3.4 Context Diagram Halaman 33

Gambar 3.5 Decomposition Diagram Halaman 34

Gambar 3.6 Overview Diagram Bagian 1 Halaman 34

Gambar 3.7 E-R Diagram Halaman 35

Gambar 3.8 Relational Diagram Halaman 36

Form 4.1 Form Layar Utama Halaman 41

Form 4.2 Form Menu Obyek Wisata Halaman 42

Form 4.3 Form Hasil Halaman 43

xiv

Page 16: Sistem Pendukung Keputusan Berbasis Web Untuk ...

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Saat ini mungkin banyak wisatawan yang bingung dengan tujuan obyek

wisata yang akan dituju. Mengingat dari dana yang dimiliki oleh wisatawan

terbatas, sehingga wisatawan memerlukan fasilitas untuk menentukan alternatif

obyek mana saja yang sesuai dengan dana yang dimiliki.

Untuk itu, diperlukan suatu Sistem Pendukung Keputusan berbasis web,

yang diharapkan dapat membantu wisatawan, dalam menentukan pilihan obyek

wisata yang akan dituju. Sehingga wisatawan yang berasal dari dalam maupun

luar Yogyakarta dapat menggunakan web ini untuk menentukan alternatif obyek

– obyek wisata yang ada di Yogyakarta. Metode yang digunakan dalam

menentukan alternatif pilihan obyek wisata ini adalah dengan algoritma Genetika,

dimana obyek – obyek wisata nanti akan dipilih secara random (dilakukan oleh

program secara otomatis), untuk dijadikan sebagai solusi alternatif pilihan. Alasan

menggunakan algoritma Genetika ini adalah karena dalam algoritma Genetika ada

suatu cara dalam memilih suatu alternatif, yaitu dengan cara crossover. Cara ini

untuk masalah alternatif perjalanan wisata sangatlah berguna karena akan

memberi banyak sekali solusi pilihan. Dan bila solusi yang ada memenuhi syarat

yang telah ditentukan, maka solusi ini bisa digunakan dalam program. Bila tidak,

maka akan dibuang, dan tidak dipakai / tidak diambil sebagai solusi.

1

Page 17: Sistem Pendukung Keputusan Berbasis Web Untuk ...

1.2 Rumusan Masalah

Dari latar belakang masalah tersebut, ditemukan rumusan masalah sebagai

berikut :

1. Bagaimana memilih alternatif perjalanan wisata secara tepat, yang

sesuai dengan dana yang dimiliki.

2. Wisatawan memilih obyek-obyek wisata sesuai dengan kategori obyek

yang disukainya

3. Menerapkan algoritma Genetika dalam alternatif perjalanan wisata.

1.3 Batasan Masalah

1. Hanya untuk menangani para wisatawan yang akan berwisata di daerah

Yogyakarta, dengan menggunakan kendaraan pribadi.

2. Pemilihan dari obyek wisata, dibuat dalam program, sehingga

wisatawan tinggal memilih paket-paket yang telah dibuat dalam aplikasi

ini.

3. Data obyek wisata bersifat statis.

1.4 Tujuan dan Manfaat Penelitian

Tujuan dari penulisan skripsi ini adalah untuk memberikan kemudahan

fasilitas bagi wisatawan dalam menentukan tujuan alternatif obyek wisata yang

akan dituju. Dengan demikian, maka wisatawan sekaligus juga dapat

memperkirakan berapa biaya yang diperlukan dalam melakukan perjalanan wisata

tersebut.

2

Page 18: Sistem Pendukung Keputusan Berbasis Web Untuk ...

1.5 Metodologi Penelitian

Metode penelitian yang digunakan adalah :

1. Metode Studi Pustaka

Mendapatkan dan mengumpulkan bahasan-bahasan yang berkaitan

dengan permasalahan yang dikerjakan yaitu mengenai system

pendukung keputusan, dan juga PHP melalui buku-buku, internet, dan

media informasi lainnya.

2. Metode Pengamatan dan Observasi

Metode pendekatan dengan cara mengambil data di tempat studi kasus

yang berhubungan dengan data yang dibutuhkan.

1.6 Sistematika Penulisan

Sistematika penulisan tugas akhir ini adalah sebagai berikut :

a. BAB 1 PENDAHULUAN

Bab ini membahas mengenai latar belakang masalah, rumusan

masalah, batasan masalah yang ditentukan untuk lebih

memfokuskan bidang yang dibahas, tujuan dan manfaat penelitian,

metodologi penelitian, dan sistematika penulisan.

b. BAB II LANDASAN TEORI

Bab ini berisi mengenai acuan bahan-bahan yang mendukung

pokok pembahasan tugas akhir, yaitu pembahasan mengenai

konsep Sistem Pendukung Keputusan, algoritma Genetika,

internet, HTTP, HTML, PHP, dan MySQL.

3

Page 19: Sistem Pendukung Keputusan Berbasis Web Untuk ...

c. BAB III ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisi mengenai perancangan sistem yang akan dibuat,

meliputi bagaimana cara menyelesaikan algoritma Genetika untuk

permasalahan dalam skripsi ini.

d. BAB IV IMPLEMENTASI DAN ANALISA HASIL

Bab ini berisi mengenai pembuatan dari program dan hasil analisa

dari program tersebut.

e. BAB V PENUTUP

Bab ini berisi mengenai kesimpulan dan saran-saran yang masih

kurang dalam sistem pendukung keputusan ini.

4

Page 20: Sistem Pendukung Keputusan Berbasis Web Untuk ...

BAB II

LANDASAN TEORI

Secara garis besar yang akan diuraikan dalam landasan teori adalah konsep

mengenai Sistem Pendukung Keputusan, metode Heuristik, algoritma Genetika,

dan pengenalan mengenai internet, HTTP (Hyper Text Trasfer Protocol), HTML

(Hypertext MarkupLanguage), PHP (Hypertext Preprocessor), dan database yang

dipakai yaitu MySQL.

2.1 Sistem Pendukung Keputusan

2.1.1 Definisi

Pengambilan Keputusan adalah proses memilih dari berbagai alternatif untuk

mencapai tujuan.

2.1.2 Proses Pengambilan Keputusan

Menurut Simon, proses pengambilan keputusan ada empat langkah :

1. Identifikasi Masalah.

Mengumpulkan informasi dari banyak sumber untuk mengidentifikasi

masalah.

2. Analisis.

Menjawab pertanyaan apa yang harus dikerjakan. Analisa dapat kualitatif

maupun kuantitatif. Analisa kuantitatif dapat dibantu dengan DSS,

sedangkan kualitatif dapat dibantu dengan ES.

5

Page 21: Sistem Pendukung Keputusan Berbasis Web Untuk ...

DSSES

T

Y

3. Pilihan.

Hasil dari analisis diputuskan. Langkah ini didukung oleh suatu Sistem

Pendukung Keputusan jika pembuat adalah perorangan dan dengan GDSS

bila diputuskan oleh grup.

4. Implementasi

Dukungan komputer untuk proses pembuatan keputusan.

2.1.3 Pengertian

Alternatif keputusan yang dibuat untuk Sistem Pendukung Keputusan adalah

untuk memecahkan masalah. Pada Sistem Pendukung Keputusan akan

menghasilkan beberapa alternatif penyelesaian masalah, sedangkan keputusan

akhir terletak pada pemakai.

Sumber data

identifikasi

Analisa kualitatif Analisa kuantitatif

keputusan

implementasi

implementasi

Langkah 1

Langkah 2

Langkah 3

Langkah 4

6

Page 22: Sistem Pendukung Keputusan Berbasis Web Untuk ...

Sistem Pendukung Keputusan adalah pasangan intelektual individu

kebudayaan komputer untuk meningkatkan kualitas keputusan.

Sistem Pendukung Keputusan adalah pendukung dengan dasar komputer

untuk pengambil keputusan manajerial yang sedang mengerjakan masalah yang

semi terstruktur.

Tujuan utama Sistem Pendukung Keputusan adalah melengkapi informasi-

informasi yang diperlukan untuk mendukung tugas-tugas dan kegiatan dalam hal

pengambilan keputusan.

Keputusan memiliki 3 tipe, yaitu :

1. Terstruktur

Keputusan yang diambil dari proses-proses terstruktur yang mengarah

pada rutinitas dan masalah yang berulang-ulang dimana standar

pemecahannya sudah ada, sifatnya adalah bisa diprogram.

2. Semi Terstruktur

Keputusan yang diambil dari beberapa proses yang tidak semuanya

terstruktur. Sifatnya adalah sebagian masih bisa diprogram sehingga

membutuhkan pertimbangan-pertimbangan, perhitungan secara terperinci.

3. Tidak Terstruktur

Keputusan yang diambil dari proses-proses tidak terstruktur, bersifat

samar dan permasalahannya kompleks dimana tidak ada sedikitpun

pemecahannya. Biasanya keputusan ini berasal dari luar organisasi.

7

Page 23: Sistem Pendukung Keputusan Berbasis Web Untuk ...

2.1.4 Manfaat dan Keterbatasan Sistem Pendukung Keputusan

2.1.4.1 Manfaat Sistem Pendukung Keputusan

Sistem Pendukung Keputusan memberikan beberapa manfaat untuk

pemakainya. Secara umum manfaat yang dapat diambil dari Sistem

Pendukung Keputusan adalah :

1. Sistem Pendukung Keputusan memperluas kemampuan pengambil

keputusan dalam memproses data atau informasi bagi pemakainya.

2. Sistem Pendukung Keputusan membantu pengambil keputusan dalam hal

penghematan waktu yang dibutuhkan untuk memecahkan masalah

terutama untuk masalah yang sangat kompleks dan tidak terstruktur.

3. Sistem Pendukung Keputusan dapat menghasilkan solusi dengan lebih

cepat serta hasilnya dapat diandalkan.

4. Walaupun suatu Sistem Pendukung Keputusan mungkin saja tidak mampu

memecahkan masalah yang dihadapi oleh pengambil keputusan, namun ia

dapat menjadi stimulant bagi pengambil keputusan dalam memahamu

persoalannya. Karena Sistem Pendukung Keputusan mampu menyajikan

berbagai alternatif.

5. Sistem Pendukung Keputusan dapat menyediakan bukti tambahan untuk

memberikan pembenaran sehingga dapat memperkuat posisi pengambil

keputusan.

2.1.4.2 Keterbatasan Sistem Pendukung Keputusan

Sistem Pendukung Keputusan memiliki keterbatasan dalam hal tertentu.

Keterbatasan yang terdapat pada Sistem Pendukung Keputusan :

8

Page 24: Sistem Pendukung Keputusan Berbasis Web Untuk ...

1. Ada beberapa kemampuan manajemen dan bakat manusia yang tidak

dapat dimodelkan, sehingga model yang ada dalam sistem tidak semuanya

mencerminkan persoalan sebenarnya.

2. Kemampuan suatu Sistem Pendukung Keputusan terbatas pada

pembendaharaan pengetahuan yang dimilikinya (pengetahuan dasar serta

model dasar).

3. Proses-proses yang dapat dilakukan oleh Sistem Pendukung Keputusan

biasanya tergantung juga pada kemampuan perangkat lunak yang

digunakan.

4. Sistem Pendukung Keputusan tidak memiliki kemampuan intuisi seperti

yang dimiliki oleh manusia. Karena walau bagaimanapun canggihnya

suatu Sistem Pendukung Keputusan dia hanyalah kumpulan perangkat

keras, perangkat lunak dan sistem operasi yang tidak dilengkapi dengan

kemampuan berpikir.

Namun hal yang perlu ditekankan dalam pengertian Sistem Pendukung

Keputusan adalah Sistem Pendukung Keputusan tidak untuk membuat

keputusan. Sebab Sistem Pendukung Keputusan hanya mempunyai

kemampuan untuk mengolah data dan informasi yang diperlukan dalam

pengambilan keputusan, jadi sistem hanya berfungsi sebagai alat bantu

manajemen. Secara luas, dapat dikatakan bahwa Sistem Pendukung

Keputusan dirancang untuk menghasilkan berbagai alternatif yang ditawarkan

kepada para pengambil keputusan.

9

Page 25: Sistem Pendukung Keputusan Berbasis Web Untuk ...

2.2 Algoritma Genetika

2.2.1 Algoritma Genetika

Algoritma Genetika adalah algoritma yang berdasarkan pada mekanisme

seleksi alami dan konsep Genetika. Konsep Genetika digunakan untuk

merepresentasikan setiap kemungkinan solusi dari masalah optimasi yang ada.

Sedangkan seleksi alam merepresentasikan proses seleksi terhadap calon-calon

solusi dari sebuah populasi. Dalam implementasinya algoritma Genetika meniru

beberapa proses yang terdapat pada evolusi alami makhluk hidup antara lain

seleksi alam dan reproduksi. (crossover dan mutasi).

2.2.2 Sejarah Algoritma Genetika

Algoritma genetika berawal dari usaha para ilmuwan dalam mencari

algoritma yang dapat digunakan untuk mengatasi masalah-masalah optimasi yang

kompleks (sering ditemukan pada perusahaan-perusahaan industri dan

manufaktur), karena sangat sulit mencari penyelesaiannya apabila menggunakan

beberapa algoritma konvensional yang pernah ada sebelumnya. Algoritma

Genetika ditemukan oleh John Holland dan dikembangkan olehnya beserta

muridnya berdasarkan penelitian yang dilakukan oleh I.Rechenberg.

2.2.3 Konsep Dasar Algoritma Genetika

Algoritma Genetika menerapkan prinsip pada evolusi makhluk hidup yaitu

seleksi alam dan konsep Genetika yang dikemukakan oleh Darwin. Dari konsep

Genetika diketahui bahwa setiap organisme merupakan suatu sistem yang terdiri

dari organ dan setiap organ tersebut terdiri dari sel-sel yang membentuk organ

tersebut. Setiap sel kemudian dibagi lagi menjadi beberapa kromosom dimana

10

Page 26: Sistem Pendukung Keputusan Berbasis Web Untuk ...

setiap kromosom terdiri dari gen-gen sebagai pembentuk karakteristik/sifat

tertentu dari makhluk hidup yang saling berbeda satu sama lain. Sedangkan dari

teori seleksi alam adalah proses pemilihan / selection anggota populasi di bumi

berdasarkan tingkat kemampuan suatu organisme untuk beradaptasi dengan

lingkungannya. Hal ini menurut Darwin karena terdapat beberapa organisme yang

mempunyai tingkat kemampuan bertahannya berbeda dengan organisme lain.

Adapun proses-proses dalam evolusi alami yang menjadi konsep dari

algoritma genetika adalah proses seleksi alam dalam rangka mencari anggota

populasi yang mempunyai tingkat ketahanan hidup yang tinggi sehingga dapat

menyesuaikan diri dengan lingkungannya dan proses reproduksi yang merupakan

salah satu proses biologi yang bertujuan untuk mempertahankan kelestarian dari

suatu spesies karena dengan adanya reproduksi akan didapatkan keturunan yang

sifatnya diturunkan dari induknya. Reproduksi mencakup dua proses yaitu

crossover (perkawinan silang) dan mutation (mutasi). Perkawinan silang adalah

suatu proses pertukaran gen dari dua individu yang mempunyai karakterisik yang

berbeda untuk menghasilkan keturunan dengan karakteristik yang berbeda dari

induknya dan diharapkan lebih baik dari induknya. Sedangkan mutasi adalah

proses perubahan genetika dari suatu spesies karena tersebut melakukan adaptasi

terhadap lingkungannya.

Dalam algoritma Genetika, lingkungan tempat tinggal suatu jenis populasi

merupakan representasi dari masalah yang akan dicari penyelesaiannya,

sedangkan populasi itu sendiri merepresentasikan kumpulan calon solusi dari

masalah yang dihadapi. Setiap populasi terdiri dari beberapa kromosom, jumlah

11

Page 27: Sistem Pendukung Keputusan Berbasis Web Untuk ...

kromosom pada setiap populasi disesuaikan dengan population sizenya. Dari

setiap solusi dapat diperoleh nilai fitnessnya. Nilai ini merupakan ukuran yang

digunakan untuk mengukur keoptimalan suatu solusi dalam menyelesaikan

masalah. Berdasarkan penjelasan diatas, maka dalam menyelesaikan masalah

dengan menggunakan algoritma Genetika perlu didefinisikan terlebih dahulu

beberapa parameter yang diperlukan, antara lain :

• Probabilitas Crossover (Pc)

Probabilitas atau peluang crossover ini menunjukkan rasio dari

kromosom anak yang dihasilkan dengan ukuran populasinya dalam

setiap generasi. Probabilitas crossover ini juga dapat menunjukkan

jumlah kromosom dalam populasi yang akan mengalami crossover

pada setiap generasi. Biasanya besarnya probabilitas crossover

berkisar antara 20-80%.

• Probabilitas Mutasi (Pm)

Probabilitas mutasi merupakan representasi dari jumlah total gen

pada populasi yang akan mengalami mutasi. Besarnya probabilitas

mutasi biasanya berkisar antara 0.5-1%.

• Population size

Population size menunjukkan jumlah kromosom yang ada dalam

populasi. Pada umumnya besarnya Population size yang digunakan

adalah 10-50 kromosom.

• Laju Regenerasi

12

Page 28: Sistem Pendukung Keputusan Berbasis Web Untuk ...

Laju Regenerasi dalam algoritma genetika menunjukkan banyaknya

generasi yang akan dibentuk melalui iterasi secara berturut-turut dari

setiap populasi. Laju generasi yang paling umum digunakan adalah

500-1000 kali.

Setelah parameter-parameter tersebut ditentukan maka langkah-langkah

yang dilakukan selanjutnya dalam algoritma Genetika untuk mencari penyelesaian

dari suatu masalah adalah :

1. Menentukan model dari sistem yang dibuat (memodelkan sistem).

Untuk melakukan komputasi terhadap masalah optimasi yang dihadapi

maka terlebih dahulu dibuat sebuah representasi yang sesuai dengan

masalah tersebut. Dalam pemodelan ini juga harus ditentukan batasan-

batasan untuk memperkecil ruang pencarian yang akhirnya nanti dapat

mempengaruhi cepat lambatnya penemuan solusi dan fungsi tujuan dari

permasalahan tersebut. Fungsi tujuan dalam algoritma Genetika dikenal

dengan sebutan fungsi fitness. Fungsi fitness adalah fungsi yang

digunakan untuk menentukan nilai fitness dari kromosom dan

merupakan alat ukur dari keoptimalan kromosom. Nilai fitness yang

dihasilkan dari perhitungan fungsi fitness juga dapat menentukan apakah

suatu kromosom merupakan solusi yang tepat serta untuk menentukan

apakah kromosom tersebut dapat menjadi anggota populasi pada

generasi berikutnya.

2. Pembangkitan kromosom anggota populasi dan mengevaluasi setiap

kromosom dalam populasi dengan menentukan nilai fitnessnya.

13

Page 29: Sistem Pendukung Keputusan Berbasis Web Untuk ...

Pembangkitan kromosom-kromosom sebagai anggota populasi

dilakukan secara random. Anggota populasi yang terpilih kemudian

dievaluasi dengan cara menentukan nilai fitness dari setiap populasi.

Penghitungan nilai fitness didapat berdasarkan fungsi tujuan yang telah

ditentukan sebelumnya pada saat pemodelan masalah. Nilai fitness ini

digunakan untuk mengetahui apakah suatu kromosom anggota populasi

merupakan solusi yang tepat untuk permasalahan yang ada atau dapat

juga digunakan untuk menentukan apakah calon solusi tersebut dapat

menjadi anggota populasi generasi berikutnya.

3. Penentuan nilai fitness kromosom-kromosom anggota populasi.

Pada masalah optimasi, fungsi fitness yang digunakan untuk mencari

nilai fitness adalah fungsi dari masalah optimasi itu sendiri. Perhitungan

nilai fitness ini digunakan untuk menentukan apakah suatu kromosom

anggota populasi merupakan solusi yang tepat untuk permasalahan yang

ada atau dapat juga digunakan untuk menentukan apakah calon solusi

tersebut dapat menjadi anggota populasi generasi berikutnya.

4. Pemilihan kromosom untuk dijadikan orangtua

Dari himpunan kromosom pada populasi kemudian dilakukan pemilihan

dua buah kromosom untuk dijadikan orangtua. Pemilihan ini dapat

dilakukan dengan berbagai metode seleksi antara lain : roda roulette

seleksi, seleksi rangking, seleksi random, dll. Kromosom orangtua yang

terpilih tadi selanjutnya akan dikenakan operasi perkawinan silang

(crossover) atau mutasi. Dan diharapkan melalui operasi ini akan

14

Page 30: Sistem Pendukung Keputusan Berbasis Web Untuk ...

menghasilkan individu – individu baru dengan nilai fitness yang lebih

baik dari orangtuanya.

5. Proses reproduksi untuk menghasilkan kromosom baru.

Kromosom yang terpilih sebagai orangtua pada proses ketiga kemudian

dikenakan proses reproduksi. Proses reproduksi yang dikenakan pada

kromosom orangtua tersebut meliputi :

a. Perkawinan silang (crossover)

Berdasarkan konsep dasar perkawinan silang pada evolusi alamiah,

maka perkawinan silang dapat diartikan sebagai proses pertukaran

gen dari dua kromosom orangtua yang berbeda sehingga

menghasilkan offspring (keturunan) dengan karakteristik yang

berbeda dari kromosom orangtua. Keturunan yang diperoleh ini

diharapkan akan mempunyai nilai fitness yang lebih baik dari

kromosom kedua orangtua.

b. Mutasi (Mutation)

Selain operasi perkawinan silang, kromosom keturunan yang

dihasilkan juga dikenakan operasi mutasi untuk mendapatkan

kromosom-kromosom baru. Mutasi adalah proses perubahan

sejumlah gen suatu kromosom. Atau dengan kata lain merupakan

proses pertukaran gen kromosom-kromosom dengan sebuah gen

yang lain. Kromosom yang mengalami mutasi adalah kromosom

hasil crossover dengan nilai fitness yang jelek. Seberapa sering

mutasi dilakukan disesuaikan dengan besarnya probabilitas mutasi.

15

Page 31: Sistem Pendukung Keputusan Berbasis Web Untuk ...

Adapun perbedaan yang mendasar antara proses perkawinan silang dengan

mutasi adalah bahwa perkawinan silang diperlukan dua kromosom orangtua,

sedangkan pada mutasi hanya diperlukan satu kromosom. Dengan operasi

perkawinan silang ataupun mutasi yang dilakukan secara berulang-ulang melalui

iterasi secara berturut-turut, diharapkan akan menemukan kromosom yang paling

baik. Kromosom tersebut diharapkan merepresentasikan solusi optimal atau solusi

yang mendekati nilai optimal dari permasalahan yang ada.

Istilah Sinonim

1. Kromosom

2. Populasi

3. Population Size

4. Nilai fitness

5. Crossover

1. Solusi

2. Himpunan Solusi

3. Ukuran populasi (banyaknya

kromosom dalam satu populasi)

4. Sebagai alat ukur dari

keoptimalan kromosom atau

dapat digunakan untuk

mengetahui apakah suatu

kromosom merupakan solusi

yang tepat serta untuk

menentukan apakah kromosom

terebut dapat menjadi anggota

populasi generasi berikutnya.

5. Proses pertukaran gen dari dua

kromosom orangtua yang

16

Page 32: Sistem Pendukung Keputusan Berbasis Web Untuk ...

6. Mutasi

berbeda sehingga menghasilkan

keturunan (offspring) dengan

karakteristik yang berbeda dari

kromosom orangtua.

6. Proses pertukaran gen sebuah

kromosom dengan gen yang

lain.

Tabel 2.1 Istilah-istilah dalam algoritma Genetika.

2.3 Internet, World Wide Web dan HTTP (Hyper Text Transfer Protocol)

2.3.1 Internet

Internet berasal dari kata Interconnection Networking, adalah jaringan

komputer yang terdiri dari berbagai jenis ukuran, mulai dari sebuah PC (Personal

Computer), jaringan local berskala kecil atau sempit dan juga jaringan-jaringan

yang berskala luas. Jaringan-jaringan tersebut saling berhubungan atau

berkounikasi satu sama lain dengan berbasiskan protocol IP (Internet Protocol)

pada network layer (layer ke-3 dari 7 layer OSI model) dan TCP (Transmission

Control Protocol) pada transport layer (layer ke-4), sehingga setiap pemakai dari

setiap jaringan dapat saling mengakses semua layanan yang disediakan oleh

jaringan lainnya.

2.3.2 World Wide Web

World Wide Web merupakan sebuah arsitektur untuk memasuki dokumen-

dokumen yang saling berhubungan di seluruh internet. Untuk waktu sekarang ini

World Wide Web menjadi salah satu pilihan yang tepat bagi user. Interface

17

Page 33: Sistem Pendukung Keputusan Berbasis Web Untuk ...

grafisnya yang sangat menarik menyebabkan World Wide Web menjadi popular

sehingga mudah digunakan bahkan oleh user pemula sekalipun. Disamping itu

World Wide Web juga menyediakan informasi yang lengkap pada setiap masalah

yang ingin diketahui oleh user.

2.3.3 HTTP (Hyper Text Transfer Protocol)

HTTP (Hyper Text Transfer Protocol) adalah protocol pada lapisan aplikasi

yang dipergunakan dalam WWW (World Wide Web). HTTP (Hyper Text Transfer

Protocol) selalu berhubungan dengan web server.

Web server bertugas melayani permintaan browser terhadap halaman web

dan dokumen lain. Web server biasa dijalankan sebagai suatu server yang siap

melayani permintaan setiap akan dibutuhkan.

2.4 HTML (Hyper Text Markup Language)

2.4.1 Dasar – dasar HTML

Mendesain HTML berarti melakukan suatu tindakan pemrograman. Namun

HTML bukanlah sebuah bahasa pemrograman. HTML hanyalah berupa perintah –

perintah yang telah terstruktur berupa tag – tag penyusun. Menuliskan tag – tag

HTML tidaklah sebatas hanya memasukkan perintah – perintah tertentu agar

HTML dapat diakses oleh browser. Mendesain HTML adalah seni tersendiri.

Homepage yang merupakan implementasi dari HTML adalah refleksi dari orang

yang membuatnya. Untuk itu sangatlah perlu mendesain HTML dengan baik agar

para pengunjung homepage merasa senang dan puas.

Mendesain HTML dapat dilakukan dengan dua cara, yaitu :

18

Page 34: Sistem Pendukung Keputusan Berbasis Web Untuk ...

1. Menggunakan HTML editor, seperti Microsoft Front Page Editor,

Netscape Composer, Macromedia Backstage, Adobe Pagemill, Homesite

Pro, dan lain – lain. Adapun kelebihan dari cara ini adalah HTML

merupakan sebuah program yang khusus didesain untuk membuat,

melakukan editing bahkan mempublikasikan ke internet. Dengan

kemampuannya menggabungkan kemudahan dan kecanggihan teknologi

internet ke dalam dokumen HTML maka cara ini sangat disukai oleh para

pemula dan desainer yang tidak ingin belajar lebih dalam mengenai

HTML.

2. Menuliskan sendiri secara manual satu per satu tag – tag HTML ke dalam

dokumen HTML. Adapun kelebihan dari cara ini adalah user akan lebih

paham mengenai cara kerja dan berbagai perintah yang biasa dipakai pada

HTML. Adapun kekurangan dari cara ini adalah user harus menuliskan

secara manual satu per satu tag – tag HTML. Hal tersebut sangat dirasakan

sulit karena akan memakan banyak tenaga dan waktu ekstra untuk

melakukannya, ditambah lagi user harus melakukan cara – cara

konvensional untuk melihat hasilnya pada web browser.

2.4.2 Struktur Dokumen HTML

Secara sederhana HTML terdiri dari dua bagian yaitu Header dan Body.

Struktur HTML diapit oleh tag awal < HTML > dan diakhiri dengan tag akhir </

HTML >.

Standar penulisannya adalah :

<HTML>

<HEAD>

19

Page 35: Sistem Pendukung Keputusan Berbasis Web Untuk ...

Deskripsi dokumen

</HEAD>

<BODY>

Isi dokumen

</BODY>

</HTML>

Contoh :

<HTML>

<HEAD>

<TITLE> Selamat datang </TITLE>

</HEAD>

<BODY>

Hallo apa kabar?

</BODY>

</HTML>

Hasilnya adalah :

Hallo apa kabar?

2.5 PHP

2.5.1 Sejarah PHP

PHP adalah salah satu bahasa Server-side yang didesain khusus untuk

aplikasi web. PHP dapat disisipkan diantara bahasa HTML. Dan kerna PHP

adalah bahasa Server-side, maka bahasa PHP akan dieksekusi di server.

PHP dibuat pertama kali oleh seseorang yaitu Rasmus Lerdorf, yang pada

awalnya dibuat untuk menghitung jumlah pengunjung pada homepagenya. Di

awal Januari 2001, PHP telah dipakai lebih dari 5 juta domain di seluruh dunia,

20

Page 36: Sistem Pendukung Keputusan Berbasis Web Untuk ...

dan akan terus bertambah karena kemudahan aplikasi PHP ini dibandingkan

dengan bahasa Server-side yang lain.

PHP termasuk dalam Open Source Product maksudnya adalah PHP dapat

diakses secara bebas. Jadi dapat dirubah source codenya dan mendistribusikannya

secara bebas. PHP juga diedarkan secara gratis, serta juga dapat berjalan di

berbagai web server misalnya Apache, PWS (Personal Web Server).

21

Page 37: Sistem Pendukung Keputusan Berbasis Web Untuk ...

BAB III

ANALISA DAN PERANCANGAN SISTEM

3.1 Gambaran Umum Sistem

Sistem ini betujuan untuk membantu wisatawan dalam memilih alternatif

obyek wisata yang ingin dituju, berdasarkan dengan biaya yang dimiliki. Dalam

sistem ini, pertama wisatawan akan memasukkan biaya / budget untuk obyek

wisata yang dimiliki sebagai input. Dalam hal ini biaya yang dihitung adalah

biaya tiket masuk dari tiap obyek wisata. Kemudian wisatawan akan diberi pilihan

obyek wisata berdasarkan kategori obyek, yang berlaku untuk satu orang, dan

dalam satu hari saja. Setelah itu, akan ditampilkan rute obyek wisata yang sudah

dipilih dalam bentuk paket-paket wisata, dan disini juga akan ditampilkan waktu

dari waktu berangkat sampai waktu berakhir, jumlah waktu yang ditempuh, dan

total jumlah biaya.

3.2 Pengambilan Data

3.2.1 Penerapan Algoritma Genetika

Dalam penerapan algoritma Genetika ini, akan dibuat langkah-langkah

sebagai berikut :

1. Pemodelan Sistem

Untuk memilih obyek wisata ini, akan dibuat suatu model pemilihan, yaitu

dengan meng-kodekan obyek wisata tersebut. Misalnya obyek-obyek wisata

ini akan dikodekan dengan angka 1, 2, 3 dan seterusnya. Obyek wisata ini

22

Page 38: Sistem Pendukung Keputusan Berbasis Web Untuk ...

dijadikan sebagai kromosom. Dan untuk jarak dari obyek wisata, diasumsikan

dari pusat Yogyakarta 0 km, dan dikodekan misalnya 0.

Obyek wisata ini dibagi dalam 3 kategori, yaitu : Museum, Candi, dan Pantai.

Cara pemilihan kategori ini nanti akan dibuat secara random (acak). Disini

ditentukan akan diambil 3 obyek dari kategori yang dipilih. Dari 3 obyek itu,

akan ditentukan dari jam buka dan jam tutup obyek tersebut. Bila yang di-

random nanti tidak memenuhi waktu dan harga budget tersebut, maka bisa

dibuang (tidak dimasukkan dalam pilihan).

2. Pembangkitan Populasi Awal

Pembangkitan populasi awal dilakukan secara acak sebanyak n kromosom.

Dalam perancangan ini, populasi awal terdiri dari 3 obyek yang dipilih secara

acak. Misal disini ada 10 obyek wisata yang diambil dari masing-masing

kategori, yaitu :

23

Page 39: Sistem Pendukung Keputusan Berbasis Web Untuk ...

id_obyek nama_obyek jam_buka jam_tutup harga

0 Pusat Kota 00:00:00 00:00:00 0

1 Candi Borobudur 08:00:00 16:00:00 8000

2 Candi Prambanan 08:00:00 16:00:00 7000

3 Candi Kalasan 08:00:00 13:00:00 7000

4 Museum Ulen Sentalu 08:00:00 14:00:00 10000

5 Museum Puropakualaman 08:00:00 14:00:00 7000

6 Museum Sono Budoyo 08:00:00 14:00:00 7000

7 Pantai glagah 08:00:00 23:59:59 5000

8 Pantai Parangtritis 08:00:00 23:59:59 3500

9 Pantai Samas 08:00:00 23:59:59 5000

10 Pantai Baron 08:00:00 23:59:59 8000

Sebagai contoh akan diambil 2 kromosom, misal : 0-2-5-3-0 dan 0-1-7-4-0

3. Penentuan Nilai Fitness Kromosom-kromosom Anggota Populasi.

Dari populasi awal di atas, akan dicari nilai fitness dari kromosom tersebut,

untuk menentukan apakah kromosom itu merupakan solusi yang tepat untuk

permasalahan yang ada. Misal contoh yang diambil adalah 0-2-5-3-0 dan 0-1-

6-4-0, maka masing-masing akan dicek apakah memenuhi syarat yang

ditentukan.

Syaratnya yaitu jika obyek yang dikunjungi akan diambil sebagai iterasi bila

perhitungan total waktu tidak lebih besar dengan jam tutup dari obyek

selanjutnya. Perhitungannya sebagai berikut :

TWT = [wb + (Oa,Ot)wt + wk]1 + ........ + [((Oa,Ot)twt)n-1 + (Oa,Ot)wt + wk]n

24

Page 40: Sistem Pendukung Keputusan Berbasis Web Untuk ...

Keterangan :

TWT = total waktu tempuh

wb = waktu berangkat

Waktu berangkat untuk awal iterasi, di default mulai dari jam 08:00:00.

Untuk waktu berangkat pada iterasi selanjutnya diambil dari waktu

berakhir kunjungan pada obyek pertama atau iterasi pertama, demikian

seterusnya sampai iterasi terakhir.

Oa = Obyek asal , Ot = obyek tujuan

wt = waktu tempuh (lama perjalanan)

Waktu tempuh didapat dari jarak masing-masing obyek wisata, dimana

menggunakan rumus V = S / t .

V menunjukkan kecepatan, S menunjukkan jarak, dan t menunjukkan

waktu. Kemudian di set bahwa kecepatan mobil adalah 60 km/jam.

Sehingga bila jarak dari obyek A = 75 km, maka 75 x 60/60 hasilnya 75

jam atau 1 jam 15 menit, atau 1.25 jam.

wk = waktu kunjungan di obyek

Waktu kunjungan di obyek ini juga diset selama 1 jam.

Kemudian akan dicek 2 contoh kromosom, yaitu adalah 0-2-5-3-0 dan 0-1-7-

4-0 :

a. kromosom 0-2-5-3-0

rute 0 – 2

waktu berangkat = 08:00:00 (default)

waktu tempuh = 0.5 jam

waktu sampai = 08:30:00

25

Page 41: Sistem Pendukung Keputusan Berbasis Web Untuk ...

waktu kunjung = 1 jam

waktu berakhir = 09:30:00

rute 2 – 5

waktu berangkat = 09:30:00

waktu tempuh = 0.5 jam

waktu sampai = 10:00:00

waktu kunjung = 1 jam

waktu berakhir = 11:00:00

rute 5 – 3

waktu berangkat = 11:00:00

waktu tempuh = 0.5 jam

waktu sampai = 11:30:00

waktu kunjung = 1 jam

waktu berakhir = 12:30:00

rute 3 – 0

waktu berangkat = 12:30:00

waktu tempuh = 0.5 jam

waktu sampai = 13:00:00

total waktu tempuh = 2 jam

total harga = 21.000

b. kromosom 0-1-7-4-0

rute 0 -1

waktu berangkat = 08:00:00 (default)

waktu tempuh = 1 jam

waktu sampai = 09:00:00

waktu kunjung = 1 jam

waktu berakhir = 10:00:00

rute 1 – 7

waktu berangkat = 10:00:00

26

Page 42: Sistem Pendukung Keputusan Berbasis Web Untuk ...

waktu tempuh = 2 jam

waktu sampai = 12:00:00

waktu kunjung = 1 jam

waktu berakhir = 13:00:00

rute 7 – 4

waktu berangkat = 13:00:00

waktu tempuh = 2 jam

waktu sampai = 15:00:00

waktu kunjung = 1 jam

waktu berakhir = 16:00:00

rute 4 – 0

waktu berangkat = 16:00:00

waktu tempuh = 1 jam

waktu sampai = 17:00:00

Rute ini gagal karena ternyata waktu sampai di obyek 4 lebih besar dari

jam tutup di obyek 4, maka rute ini tidak dipakai.

Demikian seterusnya untuk kromosom yang lain, akan dicek satu persatu.

Dalam masalah ini ditentukan bahwa kromosom atau populasi awal ada 10

kromosom.

Jika ternyata dari 10 kromosom ada hasil yang valid sebanyak 5, maka 5

kromosom ini akan di crossover. Dan akan dilakukan pengecekan seperti yang

tadi. Crossover mengambil 2 kromosom secara random untuk dijadikan

orangtua. Jika ternyata hasil crossover ada 1 yang lebih baik dari kromosom

tadi, maka ditambahkan ke dalam 5 kromosom tadi, dan dari 5 kromosom radi

dibuang 1, agar jumlahnya tetap 5.

4. Pemilihan Kromosom Untuk Dijadikan Orangtua.

27

Page 43: Sistem Pendukung Keputusan Berbasis Web Untuk ...

Pemilihan ini akan diambil 2 kromosom untuk dijadikan sebagai kromosom

orangtua, yang kemudian nanti akan di-crossover.

5. Proses Reproduksi untuk Menghasilkan Kromosom Baru.

a. Perkawinan Silang (crossover)

Dari kromosom orangtua tersebut akan disilangkan, dan diharapkan akan

menghasilkan nilai fitness yang lebih baik dari orangtua.

Untuk contoh di atas, dari kromosom 0-2-5-3-0 akan di-crossover dengan

0-1-7-4-0. Akan menghasilkan 2 buah kromosom lagi, yaitu : 0-2-7-4-0

dan 0-1-5-3-0.

Untuk kromosom awal, yaitu 0-2-5-3-0 dicek. Pengecekannya dengan

menghitung dari waktu yang menuju tiap obyek. Kemudian akan dihitung

harga dari tiket masuk ke obyek tersebut.

Kemudian kromosom hasil crossover akan dicek apakah memenuhi

dengan waktu kunjungannya.

Untuk kromosom-kromosom yang lain juga akan diproses seperti di atas,

sampai ditemukan beberapa alternatif pilihan yang memenuhi syarat, dan

kemudian dimasukkan sebagai paket-paket wisata.

3.3 Perancangan Antar Muka

Antar Muka atau interface merupakan suatu sarana yang digunakan sebagai

komunikasi antara sistem dengan user. Berikut ini rancangan interface dari

Sistem Pendukung Keputusan ini :

28

Page 44: Sistem Pendukung Keputusan Berbasis Web Untuk ...

3.3.1 Halaman Utama / Index

Gambar 3.1 Form Index

Gambar ini merupakan halaman Utama dari perancangan sistem ini. Disini ada

pilihan Menu Obyek, dimana user bisa klik dan akan memilih obyek-obyek yang

akan dipilih, dan akan menuju ke halaman Form Menu.

Animasi gambar

MENU HOME

HomeMenu Obyek

Animasi tulisan

29

Page 45: Sistem Pendukung Keputusan Berbasis Web Untuk ...

Animasi gambar

MENU HOME

HomeMenu Obyek

Budget (per orang,hanya untuk 1 hari)

: Rp

Pilih Kategori ObyekWisata (berlakuuntuk 1 hari)

Kategori 1 : Candi

Kategori 2 : Candi

Kategori 3 : Candi

GO

3.3.2 Halaman Menu / Form Menu

Gambar 3.2 Form Menu

Dalam form ini, user akan memilih obyek berdasarkan kategori yang telah

disediakan, dan juga memasukkan budget yang dimiliki. Dalam sistem ini akan

menghitung harga dari tiket masuk saja, dan hanya untuk per orang dalam satu

hari. Kemudian jika user klik GO, maka akan menuju ke halaman Hasil.

30

Page 46: Sistem Pendukung Keputusan Berbasis Web Untuk ...

3.3.3 Halaman Hasil

Gambar 3.3 Form Hasil

Form ini merupakan hasil dari masukan user. Misal user memasukkan budget

sebesar Rp. 17.000,00, dan kategori yang dipilih adalah Candi, Museum, Pantai,

maka akan ditampilkan solusi pilihan yang sesuai dengan budget yang telah

dimasukkan tadi. Dengan demikian user bisa memilih sendiri pilihan mana yang

disukai.

Animasi gambar

MENU HOMEHomeMenu Obyek

terdapat2solusipilihan ke 1rute : Pusat Kota - Candi Prambanan - Benteng Vredeburg - Pantai Kukup-PusatKotawaktu:08:00:00-16:15:00totalwaktu:8.25jamharga:Rp16500pilihan ke 2rute : Pusat Kota - Candi Ratu Boko - Benteng Vredeburg - Pantai Kukup-PusatKotawaktu:08:00:00-16:15:00totalwaktu:8.25jamharga:Rp16500

31

Page 47: Sistem Pendukung Keputusan Berbasis Web Untuk ...

3.4 Perancangan Basis Data

3.4.1 Physical Design

a. tabel_obyek

Nama Field Type Width Keterangan

id_obyek

id_kategori_obyek

nama_obyek

tiket_masuk

jam_buka

jam_tutup

keterangan

Integer

Integer

Varchar

Integer

Time

Time

Text

Digunakan sebagai primarykey untuk tabel obyek wisata

Digunakan untuk menunjukkanid dari masing-masing kategoriobyek

Keterangan nama obyekHarga tiket masuk obyek

Waktu buka dari obyek wisataWaktu tutup dari obyek wisata

Keterangan / deskripsimengenai obyek wisata

Tabel 3.1 Tabel Obyek Wisata

Tabel Obyek Wisata ini berisi mengenai data-data yang ada pada obyek

wisata.

b. tabel_kategori

Nama Field Type Width Keterangan

id_kategori_obyek

nama_kategori

Integer

Varchar

Digunakan untuk menunjukkanid dari masing-masing kategoriobyek

Berisi nama kategori dari idkategori. Id 1 menunjukkankategori Candi, id 2menunjukkan kategoriMuseum, id 3 menunjukkankategori Pantai

Tabel 3.2 Tabel Kategori

32

Page 48: Sistem Pendukung Keputusan Berbasis Web Untuk ...

Tabel ini berisi mengenai id kategori obyek dan nama kategori yang berelasi

dengan tabel_obyek.

c. tabel_waktu_tempuh

Nama Field Type Width Keterangan

a_obj

k_obj

nilai

Integer

Integer

Float

Menunjukkan obyek wisataasal untuk menuju ke obyekwisata berikutnya

Menunjukkan obyek wisata ke/ tujuan dari obyek wisata asal

Menunjukkan waktu tempuhdari masing-masing obyek.

Tabel 3.3 Tabel Waktu Tempuh

Tabel ini berisi mengenai waktu tempuh dari setiap masing-masing obyek.

Sehingga dari tiap obyek ke obyek lain akan mempunyai suatu matriks dari waktu

tempuh tersebut.

3.5 Perancangan Program

3.5.1 Data Flow Diagram

Gambar 3.4 Context Diagram

33

Page 49: Sistem Pendukung Keputusan Berbasis Web Untuk ...

0

Sistem PendukungKeputusan Berbasis

Web Untuk PerjalananWisata

1P

Mengisi form pilihanobyek wisata

Gambar 3.5 Decomposition Diagram

34

Page 50: Sistem Pendukung Keputusan Berbasis Web Untuk ...

3.5.2 Entity Relationship Diagram

Gambar 3.7 ER Diagram

mempunyai obyek mempunyai

id_kategori_obyekid_obyek

kategori Waktutempuh

1 N 1 N

35

Page 51: Sistem Pendukung Keputusan Berbasis Web Untuk ...

3.5.3 Relational Model

Gambar 3.8 Relational Diagram

id_kategori_obyekkategori

id_obyekid_kategori_obyeknama_obyektiket_masukjam_bukajam_tutupketerangan

tabel_kategori tabel_obyek

***

*

a_objk_objnilai

tabel_waktu_tempuh

****

36

Page 52: Sistem Pendukung Keputusan Berbasis Web Untuk ...

BAB IV

IMPLEMENTASI DAN ANALISA PROGRAM

4.1 Aplikasi Sistem

Aplikasi yang digunakan untuk implementasi sistem ini ada 2, yaitu :

• MySQL

MySQL merupakan salah satu jenis database server yang

merupakan bahasa dasar untuk mengakses database.

• PHP

Adalah aplikasi pemrograman yang dipakai untuk pengkodean

seperti form, menu, dan user interface lainnya.

4.2 Implementasi Program

4.2.1 Representasi Kromosom

Dalam merepresentasikan kromosom, obyek-obyek wisata yang telah dipilih

oleh wisatawan, berdasarkan kategori yang telah dipilihnya, akan dirandom.

function getObjRandom($objArray,$Obj,$re=0){ $index = rand(0,count($Obj)-1); $status = FALSE; if($re==10000) {

pesan("pembentukan sample ga tercapai : error =>10000 recursive");

} for($i=0;$i<count($objArray);$i++) { if($Obj[$index] == $objArray[$i]) $status = TRUE; } $re++; if($status) { return getObjRandom($objArray,$Obj,$re); }

37

Page 53: Sistem Pendukung Keputusan Berbasis Web Untuk ...

else { return $Obj[$index]; }}

4.2.2 Pembangkitan Populasi Awal

Dalam Pembangkitan Populasi Awal, kromosom-kromosom yang telah

direpresentasikan dibentuk sebanyak sepuluh kali, sehingga menghasilkan

populasi awal yang beranggotakan sepuluh kromosom.

4.2.3 Penentuan Nilai Fitness Untuk Masing-masing Kromosom

Nilai fitness yang dicapai dalam masalah ini adalah harga. Harga yang

direkomendasikan adalah total harga dari tiket masuk obyek yang dikunjungi.

functionsortSampleByHarga($sample,$mWT,$mO,$wk,$wb,$budget,$jml_sample){ if(count($sample) < 2) return $sample; $sample_with_info = getInfo($sample,$mWT,$mO,$wk,$wb,$budget);

$ok = array(); $sort = array(); $tmpS = array(); for($i=0;$i<count($sample_with_info);$i++) { $tmpS[$i] = $sample_with_info[$i]['total_harga']; }

asort($tmpS);

foreach ($tmpS as $key => $val) { array_push($sort,$sample_with_info[$key]['rute']); }

$s_r = array(); // sample yang di kembalikan for($i=0;$i<$jml_sample;$i++) array_push($s_r,$sort[$i]); return $s_r;}

38

Page 54: Sistem Pendukung Keputusan Berbasis Web Untuk ...

4.2.4 Pemilihan Kromosom Untuk dijadikan Orangtua

Kromosom yang akan dijadikan sebagai orangtua dipilih dengan menyeleksi

dua buah kromosom secara acak.

function

get2SampleRandom($sample,$kedalaman_recursive=0,$hsl=array())

{

if($kedalaman_recursive==100)

pesan("terlalu banyak recursive");

$pos_rand = rand(0,count($sample)-1);

array_push($hsl,$sample[$pos_rand]);

$kedalaman_recursive++;

if(count($hsl)==2)

return $hsl;

else

return

get2SampleRandom($sample,$kedalaman_recursive,$hsl);

}

4.2.5 Operasi Persilangan atau Crossover

Untuk mendapatkan generasi baru, salah satu caranya adalah dengan

melakukan persilangan atau crossover.

Dalam melakukan crossover, akan dibutuhkan dua kromosom yang titik

pemotongannya ada di tengah. Karena dalam rute obyek ini berjumlah 5 obyek,

maka titik pemotongannya ada di 2 obyek di depan, jadi untuk obyek di depan

berjumlah 2, obyek selanjutnya berjumlah 3.

function CrossOver($s1,$s2){ if(count($s1) != count($s2))die("ERROR");

$jml_kiri = floor(count($s1)/2); $t1 = NULL; $t2 = NULL; for($i=0;$i<count($s1);$i++) { $t1 = $s1[$i]; $t2 = $s2[$i]; $s1[$i] = $t2;

39

Page 55: Sistem Pendukung Keputusan Berbasis Web Untuk ...

$s2[$i] = $t1; if($i==($jml_kiri-1))break; } return array($s1,$s2);}

4.3 Koneksi dari PHP ke MySQL

Berikut ini potongan script yang digunakan untuk mengkoneksi PHP ke

database MySQL.

define("HOST","localhost");define("USERNAME","root");define("PASSWORD","");define("DBNAME","tourism");$conn = mysql_connect(HOST,USERNAME,PASSWORD);if(! $conn)die("Can't connect mysql !");mysql_select_db(DBNAME) or die("Can't open".DBNAME);

4.4 Pembuatan Interface

Interface atau pengantarmukaan merupakan sarana komunikasi antara sistem

dengan user. Antarmuka dari sistem ini terdiri dari menu dan form yang masing-

masing memiliki kegunaan yang berbeda.

4.4.1 Layar Utama / Index

Ketika sistem pertama kali dijalankan, maka sistem akan menampilkan layar

utama yang berisi menu / link.

40

Page 56: Sistem Pendukung Keputusan Berbasis Web Untuk ...

Form 4.1 : Form Layar Utama

Dalam Layar tersebut ada link Home dan link Menu User. Jika Link Menu

User di-klik, maka akan menuju ke form input user.

41

Page 57: Sistem Pendukung Keputusan Berbasis Web Untuk ...

4.4.2 Form Obyek Wisata

Form 4.2 : Form Menu Obyek Wisata

Dalam form ini user memasukkan budget yang dimiliki, dengan ketentuan

bahwa budget ini hanya berlaku untuk 1 orang, dan hanya untuk biaya masuk

obyek selama 1 hari atau 1 pilihan paket. Kemudian user memilih kategori obyek

yang ingin dikunjunginya. Setelah dipilih, maka user bisa klik GO, yang

kemudian akan menampilkan paket-paket, atau pilihan rute wisata, beserta

harganya.

42

Page 58: Sistem Pendukung Keputusan Berbasis Web Untuk ...

4.4.3 Form Hasil

Misal pada form di atas, user memilih kategori Candi, Museum, Pantai, dan

budget yang dimasukkan adalah Rp. 17.000,-. Maka setelah klik GO, akan muncul

hasil dari inputan tadi, berdasarkan fitnessnya, yaitu harga yang paling sedikit

(murah), yang sesuai dengan budget yang telah user masukkan.

Form 4.3 : Form Hasil

Disini akan ditampilkan pilihan yang sesuai dengan budgetnya, dan yang

diambil adalah harga yang paling kecil, karena fitnessnya adalah harga.

43

Page 59: Sistem Pendukung Keputusan Berbasis Web Untuk ...

4.5 Pembahasan Program

Dalam program ini ada kelemahannya yaitu bahwa kategori obyek yang

sudah dipilih oleh user menjadi suatu urutan yang telah fixed. Dalam arti bahwa

misal yang dipilih adalah Candi – Museum – Pantai, maka yang harus dikunjungi

pertama kali harus dimulai dari Candi, Museum, dan terakhir Pantai, tidak bisa

dibolak-balik.

Selain itu, jika yang dipilih adalah Pantai – Candi – Museum, maka hasil

yang akan muncul adalah obyek-obyek yang waktu tempuhnya dekat dari pusat

kota. Sehingga tidak semua obyek akan bisa dikunjungi.

Sebagai contoh, user memilih Pantai – Candi – Museum, dengan budget

yang dimasukkan sebesar Rp. 20.000,-, maka hasil yang keluar :

Pilihan 1

rute : Pusat Kota - Pantai Samas - Candi Prambanan - Museum Jogja Kembali - Pusat Kota

waktu:08:00:00-13:15:00

totalwaktu:5.25jam

harga : Rp 17000

Pilihan 2

rute : Pusat Kota - Pantai Samas - Candi Kalasan - Museum Jogja Kembali - Pusat Kota

waktu:08:00:00-13:15:00

totalwaktu:5.25jam

harga : Rp 17000

44

Page 60: Sistem Pendukung Keputusan Berbasis Web Untuk ...

BAB V

PENUTUP

5.1 Kesimpulan

Dari hasil perancangan sistem ini, maka dapat disimpulkan bahwa :

1. Sistem Pendukung Keputusan untuk menentukan alternatif perjalanan

wisata ini membantu user dalam menentukan pilihannya.

2. Dengan algoritma Genetika, perhitungan dari populasi awal, kromosom,

dan crossover, maka nilai fitness dari harga tiket masuk yang didapat

adalah yang sesuai atau lebih kecil sama dengan harga budget yang

dimasukkan oleh user.

5.2 Saran – saran

Dalam sistem pendukung keputusan ini masih banyak sekali kekurangan yang

terdapat di dalamnya, sehingga untuk pengembangan sistem yang akan datang,

disarankan untuk melakukan berbagai hal, antara lain :

1. Memasukkan fasilitas untuk input, dan update. Yang dengan demikian

harus ada admin yang menangani.

2. Diperlukan fasilitas untuk menghitung masukan hari yang dimiliki

wisatawan, dan juga disediakan fasilitas untuk memilih hotel, sehingga

untuk budget yang dimiliki wisatawan akan dihitung dari semua masukan

selama perjalanannya dalam rute wisata ini.

45

Page 61: Sistem Pendukung Keputusan Berbasis Web Untuk ...

DAFTAR PUSTAKA

- , Php Manual, http://www.php.net/, 2006.

Daihani, Dadan Umar. Komputerisasi Pengambilan Keputusan, PT Elex Media

Komputindo, Jakarta, 2001

Gen, Mitsuo dan Cheng, Runwei. Genetic Algorithms and Engineering Design,

Japan : John Wiley & Sons, Inc., 1997

Pearl, Judea. Heuristic : Intelligent Search Strategies for Computer Problem

Solving, California : Addison – Wesley Publishing Company, 1984

Suryadi, K, Dr. Ir. Sistem Pendukung Keputusan Suatu Wacana Struktural

Idealisasi dan Implementasi Konsep Pengambilan Keputusan, PT.

Remaja Rosdakarya

Sidik, Ir Betha, Pemrograman Web dengan PHP, INFORMATIKA Bandung,

2004.

Turban, Efraim. Decisson Support System and Expert System, Prentice Hall, USA,

1995.