Sistem Pendukung Keputusan Berbasis Web Untuk Menentukan Alternatif Perjalanan Wisata di DIY dan Sekitarnya dengan Menggunakan Algoritma Genetika

  

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

  

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

  

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

  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.

  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.

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.

  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 ) ix 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

  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

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

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

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

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

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

  4.4 Pembuatan Interface

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

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

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

  4.2.3 Penentuan Nilai Fitness Untuk Masing-masing Kromosom 38

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

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

  4.2 Implementasi Program

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

  BAB IV IMPLEMENTASI DAN ANALISA PROGRAM

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

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

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

  3.5 Perancangan Program

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

  3.4 Perancangan Basis Data

  4.5 Pembahasan Program …………………………………………... 44 xi xii

  BAB V PENUTUP

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

  5.2 Saran-saran ……………………………………………………… 45 DAFTAR PUSTAKA

  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

  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 31Gambar 3.4 Context Diagram Halaman 33Gambar 3.5 Decomposition Diagram Halaman 34Gambar 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

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.

  2

  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.

  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

  4 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.

  5 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.

  6 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 Sumber data identifikasi

  Langkah 1 Langkah 2

  Analisa kualitatif Analisa kuantitatif ES DSS keputusan Langkah 3

  T implemen tasi

  Y implementasi Langkah 4 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.

  7 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.

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.

  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.

  10

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 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 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

  13 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

  14 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 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. 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

  1. Solusi

  2. Populasi

  2. Himpunan Solusi

  3. Population Size

  3. Ukuran populasi (banyaknya kromosom dalam satu populasi)

  4. Nilai fitness

  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. Crossover

  5. Proses pertukaran gen dari dua berbeda sehingga menghasilkan keturunan (offspring) dengan karakteristik yang berbeda dari kromosom orangtua.

  6. Mutasi

  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 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 :

  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>

  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, 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).

  22 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 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 : id_obyek nama_obyek jam_buka jam_tutup harga 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 :

  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

  25 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 =