• Tidak ada hasil yang ditemukan

Penerapan Algoritma Genetika Dan Backpropagation Neural Network Untuk Memprediksi Jumlah Penduduk Kota Medan

N/A
N/A
Protected

Academic year: 2021

Membagikan "Penerapan Algoritma Genetika Dan Backpropagation Neural Network Untuk Memprediksi Jumlah Penduduk Kota Medan"

Copied!
5
0
0

Teks penuh

(1)

Penerapan Algoritma Genetika Dan Backpropagation Neural Network Untuk

Memprediksi Jumlah Penduduk Kota Medan

Fudingman Halawa

Prodi Teknik Informatika,Universitas Budi Darma, Medan, Indonesia E-mail: [email protected]

Abstrak

Dalam memperkirakan jumlah penduduk di kota Medan yang sangat meningkat tahun sebelumnya, namun untuk tahun berikutnya jumlah penduduk belum bisa diperkirakan sehingga dengan adanya prediksi jumlah penduduk maka dapat membantu pemerintah Kota Medan untuk mengambil kebijakan yang berkaitan dengan peningkatan kualitas hidup penduduk. Data-data jumlah penduduk saat ini hanya didapat melalui sensus penduduk dan pengumpulan data dari setiap kecamatan yang ada. Melihat betapa pentingnya informasi akan jumlah penduduk menjadikan dasar dari penulis untuk melakukan penelitian dengan melakukan jumlah penduduk di kota Medan dengan hanya melihat tingkat error terkecil. Dalam mengatasi masalah tersebut maka Untuk mengoptimalkan parameter yang digunakan diperlukan algoritma genetika. Dan metode Backpropagation Neural Network adalah salah satu metode Jaringan Syaraf Tiruan yang banyak digunakan dalam bidang prediksi atau peramalan

Kata Kunci :jumlah penduduk,prediksi, Algoritma Genetika,Backpropagation Neural Network.

1.

PENDAHULUAN

Penduduk adalah orang-orang yang berada di dalam suatu wilayah yang terikat oleh aturan-aturan yang berlaku dan saling berinteraksi satu sama lain secara terus menerus / kontinyu. Dalam sosiologi, penduduk adalah kumpulan manusia yang menempati wilayah geografi dan ruang tertentu. Jumlah penduduk yang berdomisili pada suatu daerah menjadi sebuah informasi yang sangat penting bagi para pemakai data kependudukan, khususnya para perencana, pengambil kebijaksanaan, dan peneliti sangat membutuhkan data penduduk yang berkesinambungan dari tahun ke tahun. Berkurang atau bertambahnya penduduk

Pada suatu daerah memiliki peranan yang sangat penting pada daerah itu sendiri. Seperti yang kita tahu bahwa hampir semua rencana pembangunan perlu ditunjang dengan data jumlah penduduk, persebaran dan susunannya agar relevan dengan rencana tersebut. Tidak hanya pada rencana pembangunan saja yang membutuhkan data jumlah penduduk. Tetapi juga pada segi perekonomian, pendidikan, kesehatan dan sebagainya. Hal itu tentu saja merupakan masalah yang rumit bagi pemerintah dalam usahanya untuk membangun dan meningkatkan taraf hidup negaranya. Semakin bertambah jumlah penduduk dalam suatu daerah semakin tinggi pula investasi yang dibutuhkan suatu daerah tersebut.

Permasalahannya adalah dalam memperkirakan jumlah penduduk di kota Medan yang sangat meningkat tahun sebelumnya, namun untuk tahun berikutnya jumlah penduduk belum bisa diperkirakan sehingga dengan adanya prediksi jumlah penduduk maka dapat membantu pemerintah Kota Medan untuk mengambil kebijakan yang berkaitan dengan peningkatan kualitas hidup penduduk. Data-data jumlah penduduk saat ini hanya didapat melalui sensus penduduk dan pengumpulan data dari setiap kecamatan yang ada.

Melihat betapa pentingnya informasi akan jumlah penduduk menjadikan dasar dari penulis untuk melakukan penelitian dengan melakukan jumlah penduduk di kota Medan dengan hanya melihat tingkat error terkecil. Berdasarkan penelitian dilakukan oleh

Adam mizza dengan judul Implementasi Algoritma

Genetika pada Struktur Backpropagation Neural Network

Untuk Klasifikasi Kanker Payudara menyimpulkan

algoritma Genetika menemukan nilai akurasi terbaik model Neural Network dengan cara mengoptimasikan parameternya menggunakan algoritma genetika.

Parameter pertama yang dioptimasi yaitu jumlah unit hidden layer yang dalam hal ini dibatasi satu hidden layer , dan parameter kedua yaitu learning rate.[1]

Dalam mengatasi masalah tersebut maka

Backpropagation Neural Network adalah salah satu metode Jaringan Syaraf Tiruan yang banyak digunakan dalam bidang prediksi atau peramalan. Prediksi yang dihasilkan dari model Neural Network akan lebih akurat jika parameter-parameter yang digunakan dapat dioptimalkan secara tepat dan benar. Untuk mengoptimalkan parameter yang digunakan diperlukan algoritma genetika. Penelitian ini dilakukan untuk menerapkan kedua metode tersebut dalam memprediksi jumlah penduduk di Kota Medan.

2.

TEORITIS

2.1 Prediksi

Prediksi merupakan suatu usaha untuk meramalkan keadaan dimas mendatang melalui pengujian keadaan dimasa lalu.esensi prediksi adalah perkiraan peristiwa diwaktu yang akan datang atas dasar pola diwaktu yang lalu,dan penggunaan kebijakan terhadap proyeksi dengan pola diwaktu yang lalu. prediksi adalah seni dan ilmu untuk memperkirakan kejadian dimasa depan.hal ini dapat dilakukan dengan melibatkan pengambilan data masa lalu dan menempatkannya ke masa yang akan datang dengan suatu bentuk model matematis [5].

2.2 Algoritma Genetika

Algoritma yang memanfaatkan proses seleksi alamiah yang dikenal dengan proses evolusi. Dalam proses evolusi, individu secara terus-menerus mengalami perubahan gen untuk menyesuaikan dengan lingkungan hidupnya. Proses seleksi alamiah ini melibatkan perubahan gen yang terjadi pada individu melalui proses

(2)

perkembangbiakan. Dalam algoritma genetika ini, proses perkembangbiakan merupakan proses dasar yang menjadi perhatian utama, dengan tujuan mendapatkan keturunan yang lebih baik

2.3 Langkah-langkah Algoritma Genetika

Struktur utama dari suatu algoritma genetika dapat digambarkan dengan langkah-langkah pada gambar 1.

Gambar 1 langkah algoritma Genetika 2.4 Algoritma Backpropagation (BP)

Algoritma BP umumnya diterapkan pada perceptron berlapis banyak (multilayer perceptrons). Perceptron paling tidak mempunyai bagian input, bagian output dan beberapa lapis yang berada diantara input dan output. Lapis ditengah ini, yang juga dikenal dengan lapis tersembunyi (hidden layers), bisa satu, dua, tiga dan seterusnya. Dalam praktek, banyaknya hidden layer paling banyak adalah tiga lapis. Output lapis terakhir dari hidden layer langsung dipakai sebagai output dari neural network [7].

Proses pelatihan BP memerlukan tiga tahapan, yaitu feedforward data input untuk pelatihan, backpropagation untuk nilai error serta penyesuaian nilai bobot tiap node masing-masing layer pada NN. Diawali

dengan feedforward nilai input, tiap input unit ke-i (xi) menerima sinyal input yang selanjutnya akan dipancarkan ke hidden layer z1,...,zp. Selanjutnya hidden unit ke-j akan menghitung nilai sinyal (zj), yang akan dipancarkan ke output layer, menggunakan fungsi aktivasi f.

dan

dimana θ1j = bias hidden unit ke-j. Nilai bias dan bobot awal dapat diambil secara acak. Tiap unit output ke-k (Yk).

dan

Dimana θ2k= bias hidden unit ke-k. Selama proses training berlangsung, tiap unit output membandingkan nilai target (Tm) untuk suatu input pattern guna menghitung nilai parameter yang akan memperbaiki (update) bobot nilai tiap unit dalam masing-masing layer.[7]

3.

ANALISA

Dengan studi kasus pada dinas kependudukan dapat dilakukan analisa prediksi terhadap data jumlah penduduk sebelumnya. khususnya data selama tahun, dalam pembahasan ini penulis hanya menggunakan 3 tahun data jumlah penduduk kota medan sebagai sampel. Maka pengelola data penduduk dapat memprediksi jumlah penduduk yang cukup baik. Dengan salah satu tujuan adalah untuk memprediksi jumlah penduduk pada tahun 2018. Berikut ini adalah data jumlah penduduk yang akan dijadikan sampel untuk analisa dan untuk pengujian diambil selama 3 tahun yaitu kusus data penduduk medan kota.

Tabel 1 jumlah penduduk Medan Kota dan jenis kelamin selama 3 tahun

Tahun Laki-laki` Perempuan total

2015 36.769 37.670 74.439

2016 20.56 25.456 46.016

2017 23.456 46.345 69.801

Total Keseluruhan 190.256

3.1 Penyelesaian dengan algoritma genetika

Penyelesaian menggunakan algoritma genetika mengenai langkah-langkah penyelesaian permasalahan dalam memprediksi jumlah penduduk Kota Medan adalah sebagai berikut:

Tabel 2 penyederhanaan data penduduk

Y X1 x2

36.769 20.56 23.456

37.670 5.456 46.345

(3)

Dalam mencari nilai persamaan Satu persamaan regresi (1) berlaku untuk keseluruhan data.

Y1 = Y + x1 +x2

Y1 = 36.769 + 37.670 + 74.439 = 148.878 X1 = 20.56 + 5.456 + 69.801 = 95.817 X2 = 23.456 + 46.345 + 69.801 = 139.602

Langkah selanjutnya adalah melakukan proses perhitungan memprediksi harga saham menggunakan algoritma genetika.

a. Pembentukan chromosome

Representasi kromosom menggunakan real-coded genetic algorithm. Pembentukannya dengan membangkitkan nilai random pada interval [-100,100]. Hasil nilai random tersebut menyatakan proporsi koefisien regresi. Panjang kromosom sama dengan banyaknya koefisien untuk satu tahun

Tabel 3 Representasi Kromosom Parent

1 2 3 Y X1 x2 36.769 20.56 23.456 37.670 5.456 46.345 74.439 69.801 69.801 b. Inisialisasi

Proses inisialisasi dilakukan dengan cara memberikan nilai awal gen-gen dengan nilai acak sesuai batasan yang telah ditentukan. Misalnya Misalkan kita tentukan jumlah populasi adalah 2, maka:

Chromosome[1] = [Y;X1;x2] = [36.769; 20.56; 23.456] Chromosome[2] = [aY;X1;X2] = [37.670; 5.456; 46.345] Chromosome[3] = [aY;X1;X2] = [74.439; 5.456; 69.801] c. Evaluasi Cromosome

Permasalahan yang ingin diselesaikan adalah nilai variabel y, x1 dan x2 yang memenuhi persamaan y+2x1+3x2 = 100, maka fungsi_objektif yang dapat digunakan untuk mendapatkan solusi adalah fungsi_objektif(chromosome) = | (y+2x1+3x2) – 100 | Kita hitung fungsi_objektif dari chromosome yang telah dibangkitkan: fungsi_objektif (chro[1]) = Abs((36.769+ 2*20.56+ 3*23.456) - 100) = Abs((36.769+ 41.12 + 70.368) - 100) = Abs(48.257 - 100) = -51.743

d. Seleksi Chromosome Proses seleksi dilakukan dengan cara membuat chromosome yang mempunyai fungsi_objektif kecil mempunyai kemungkinan terpilih yang besar atau mempunyai nilai probabilitas yang tinggi. Untuk itu dapat digunakan fungsi fitness = (1/(1+fungsi_objektif)), fungsi_objektif perlu ditambah 1 untuk menghindari kesalahan program yang diakibatkan pembagian oleh 0.

e. Crossover

Setelah proses seleksi maka proses selanjutnya adalah proses crossover. Metode yang digunakan salah satunya adalah one-cut point, yaitu memilih secara acak satu posisi dalam chromosome induk kemudian

saling menukar gen. Chromosome yang dijadikan induk dipilih secara acak dan jumlah chromosome yang mengalami crossover dipengaruhi oleh parameter crossover_rate ( ρc ). Misal kita tentukan crossover probability adalah sebesar 25%, maka diharapkan dalam satu generasi ada 50% Chromosome (3 chromosome) dari satu generasi mengalami proses crossover.

f. Mutasi

Jumlah chromosome yang mengalami mutasi dalam satu populasi ditentukan oleh parameter

mutation_rate. Proses mutasi dilakukan dengan cara mengganti satu gen yang terpilih secara acak dengan suatu nilai baru yang didapat secara acak. Prosesnya adalah sebagai berikut. Pertama kita hitung dahulu panjang total gen yang ada dalam satu populasi. Dalam kasus ini panjang total genadalah total_gen = (jumlah gen dalam chromosome) * jumlah populasi.

Chromosome-chromosome ini akan mengalami proses yang sama seperti generasi sebelumnya yaitu proses evaluasi, seleksi, crossover dan mutasi yang kemudian akan menghasilkan chromosome-chromosome baru untuk generasi yang selanjutnya. Proses ini akan berulang sampai sejumlah generasi yang telah ditetapkan sebelumnya. Setelah 50 generasi didapatkan chromosome yang terbaik adalah:

chromosome[1] = [-2.0978; 20.56; 1.240543] chromosome[2] = [36.769; 1.85761; 23.456] chromosome[3] = [74.439; 5.456; 69.801] Chromosome = [36.769; 1.85761; 23.456] Jika di dekode maka:

Y= 36.769; x1=1.85761 ; x2=23.456;

X2=36 Jika dihitung terhadap persamaan x3 = Y+2X1+3X2:

36.769 + (2*1.85761) + (3*23.456) = 74.08322 (Hasil Akhir)

= 36.769 + 3.71522 + 70.368 =110.852

3.2 Penyelesaian Metode Backpropagation Neural Network

Berdasrkan penyelesaian diatas, selanjutnya dapat diselesaikan dengan metode backpropagation naural network dengan sebuah layer tersembunyi (dengan 3 unit), untuk mengenali fungsi logika XOR dengan 2 masukan X1 dan X2.dengan iterasi untuk menghitung bobot jaringan untuk pola pertama (X1=1, X2=1 dan t=0). Gunakan laju pemahaman α=0.2. selanjutnya, penyelesaian metode backprogation neural network, dapat diselesaikan dengan menentukan bobot pada setiap input dan output, pemeberian bobot dilakukan secara acak yang terdiri 2 tabel yaitu tabel A dn tabel B yang terdiri dengan tabel input dan output.

Tabel 4 Pembobotan dari data

Kriteria Nilai Bobot

Laki-Laki 36

Perempuan 37

(4)

Dari tabel pembobotan diatas maka ditambahkan bilangan ajak untuk untuk memenuhi tabel pembobotan, dapat dilihat pada tabel berikut ini.

a. Inisialisasi semua bobot dengan bilangan acak kecil.

z1 Z2 Z3 X1 36 38 -36 X2 3 36 -37 X3 65 36 70 1 b. tabel output

Berikut ini tabel ouput yang akan di dapatkan untuk mendapatkan informasi Y Z1 36 Z2 -37 Z3 -36 1 71

Berikut ini algoritma program berdasarkan algoritma backpropagation N = neuron unit N1 = 36 = x1 N1 = 37 = x2 N1 = 71 = x3 input N1 = 39 = x4 N1 = 40 = x5 N1 = 41 = b (bias) N1 = 37 = z1 (hidden unit) N1 = 38 = y (output unit)

Berikut adalah langkah-langkah penyelesaian : Kita perlu membuat file bertipe teks ( dari soal untuk proses training dan untuk proses uji prediksi ).

36 37 38 70 67

56 50 69 71

36 85 90 37 58

65 37 40 45 36

a. Menentukan Learning Rate (η) dengan kisaran nilai antara 0 sampai 1 yang ditentukan oleh user.

b. Menentukan Epoch untuk training dari program tersebut. Epoch merupakan perulangan komputasi program untuk menentukan bobot dari masing-masing input. Epoch dimasukkan secara manual oleh user. c. Membuat procedure “bacadata” untuk membaca file

teks, yang akan membaca teks nilai.txt, yang kemudian digunakan dalam training untuk input neuron dan target.

d. Menginisialisasi bobot yang akan masuk ke hidden layer secara random, antara 0-1.

e. Membuat fungsi sigmoid unipolar f. Dengan rumus : Oj = F ( Σ Wji Oi – θj )

Karena menggunakan neuron Bias, maka treshold θj = 0.

Fungsi aktivasi

Membuat procedure training.

Dalam prosedur training terdapat 4 (Empat) tahap yaitu :

a. Melakukan kalkulasi fungsi aktivasi terhadap tiap bobot dan unit.

N7 = F(W1.N1 + W2.N2 + W3.N3 + W4.N4 + W5.N5 + W6.N6) ( N6 = O6 = bias = selalu 1)

N8 = F(W8.N7 + W7.N6) ( N6 = O6 = bias = selalu 1)

b. Menghitung error gradien untuk tiap hidden dan output unit

§ Output unit : d8 = N8.(1 – N8).(y – N8)

Oj = {nilai output} dan Tj = {nilai target} § Hidden unit :

d7 = N7.(1 – N7).(d8.W8)

c. Menjalankan training bobot / weight training, yaitu bobot baru = bobot lama + perubahan bobot.

w1(baru) = w1(lama) + ή.δ7.N1 w2(baru) = w2(lama) + ή.δ7.N2 w3(baru) = w3(lama) + ή.δ7.N3 w4(baru) = w4(lama) + ή.δ7.N4 w5(baru) = w5(lama) + ή.δ7.N5 w6(baru) = w6(lama) + ή.δ7.N6 w7(baru) = w8(lama) + ή.δ8.N6 w8(baru) = w8(lama) + ή.δ8.N7

d. Lanjutkan ke iterasi berikutnya sampai iterasi = epoch yang diinginkan.

Selanjutnya diteruskan pada tahap langkah 8

e. Membuat fungsi uji, untuk menguji hasil training dengan nilai tes yang sudah disediakan.Menghitung hidden unit menggunkan fungsi akivasi yaitu mengalikan bobot hasil training dengan nilai yang diinputkan.

N7 = F(W1.N1 + W2.N2 + W3.N3 + W4.N4 + W5.N5 + W6.N6)

y = F(W8.N7 + W7.N6)

Contoh Output program untuk input Learning rate : 38,765. Dengan selisih dengan hasil asli 2.434634 Dengan hasil prediksi yaitu 79,4346 pada tahun 2018

4.

PERANCANGAN

Komputer berfungsi sebagai sarana pengolahan program yang memiliki manfaat bagi penggunanya. Oleh kaena itu, komputer haruslah menyediakan fasilitas-fasilitas yang mendukung dalam setiap pekerjaannya. 4.1 Tampilan Interface

Dari perancangan yang di lakukan sebelumnya dan telah di lakukan pengujian, maka perancangan sistem ini siap untuk implementasikan.

a. Tampilan Login

Berikut ini merupakan tampilan dari form Login, dimana pada username terdapat 2 pilihan menu yaitu

(5)

Gambar 2 Tampilan login

b. Form Menu Utama

Berikut ini merupakan tampilan dari form Menu Utama.

Gambar 3 Tampilan Menu Utama c. Form data penduduk

Berikut ini merupakan tampilan dari form data penduduk.

Gambar 4 Tampilan data penduduk d. Form data hasil

Berikut ini merupakan tampilan dari data hasil algoritma genetika dan neural network.

Gambar 5 Tampilan data penduduk

5.

KESIMPULAN

Berdasarkan penelitian yang telah dilakukan, maka dapat diambil kesimpulan sebagai berikut:

a. Data yang digunakan dalam memprediksi jumlah penduduk adalah data penduduk medan kota laki-laki dan perempuan tahun 2015, 2016, dan 2017.

b. Data tersebut diolah Menggunakan algoritma genetika dan metode Backpropagation Neural Network dan menghasilkan prediksi tahun 2018.

c. Dari analisa tersebut, dapat diimplementasian dengan menggunakan bahasa pemograman microsoft Visual Basic 2008.

Daftar Pustaka

[1] Adam Mizza Zamani, "Implementasi Algoritma Genetika pada Struktur Backpropagation Neural Network Untuk Klasifikasi Kanker Payudara,"

JURNAL TEKNIK, vol. 1, no. 2301-9271, pp. 222-227, september 2012.

[2] Maharani Dessy Wuryandari, “Jaringan Syaraf Tiruan Untuk Memprediksi Laju Pertumbuhan Penduduk Menggunakan Metode Backpropagation (Studi Kasus Di Kota Bengkulu)”, Media Infotama, Vol. 12 No. 1, Februari 2016

[3] M.F Andrijasa, “Jaringan Syaraf Tiruan”, Andi, Yogyakarta, 2006.

[4] Jong Jek Siang, M.Sc, “Jaringan Syaraf Tiruan & Pemrograman Menggunakan Matlab”,

Yogyakarta,Andi, 2005.

[5] Hery prasetya,manajemen operasi, 2009 Yogyakarta media prisindo.

[6] Aghus Sofwan, Algoritma Genetika Dalam Pemilihan Spesifikasi Komputer,snati 2008

[7] Novi Yanti Penerapan metode Neural network Dengan struktur Backpropagation Untuk Prediksi stok obat diapotek(studi kasus : apotek Abc)

Gambar

Gambar 1 langkah algoritma Genetika  2.4  Algoritma Backpropagation (BP)
Gambar 2 Tampilan login  b.  Form Menu Utama

Referensi

Dokumen terkait

kelebihan animasi berbasis adobe flash dalam penelitian ini yaitu dapat menampilkan struktur tubuh terlihat secara jelas beserta bagian-bagiannya, dan dalam proses

[r]

To understand the metabolic kinetics in both source and sink organs such as leaves and roots of ginseng plant, respectively, and to assess the changes in ginsenosides

Wenzel, Brown, dan Beck (2009) sebe- lumnya juga sudah menjelaskan pendapat Crosby yang mengatakan bahwa tindakan bunuh diri adalah perilaku yang berpotensi melukai

Konsep diri positif yang dimiliki oleh anggota Satlantas dapat membuat anggota Satlantas mampu memahami dirinya dan tidak merasa minder atau malu untuk melakukan komunikasi

Dalam kaitannya dengan isu politik, emosi moral adalah konstruk psikologis yang harus hadir sebagai panduan perilaku politik, terutama seorang pemimpin politik yang

Hasil dari pengujian sifat - sifat fisik atau karakteristik agregat kasar, agregat halus dan bahan pengisi ( filler ) agregat standar yang digunakan dalam campuran

Hasil penelitian menunjukkan bahwa secara parsial pertumbuhan rasio lancar, pertumbuhan rasio tingkat pengembalian ekuitas, dan pertumbuhan ukuran perusahaan berpengaruh