BAB II KAJIAN PUSTAKA 2.1. State of The Art

60
12 BAB II KAJIAN PUSTAKA 2.1. State of The Art Sistem backup dengan virtualisasi sekarang telah dikembangkan untuk banyak aplikasi terutama untuk aplikasi-aplikasi keamanan. Virtualisasi server sebagai pengganti bentuk fisik dari sebuah server mempunyai banyak manfaat, terutama kepraktisannya karena tidak perlu membeli peralatan komputer server untuk membangun sebuah server. Sistem backup juga memiliki banyak fungsi, diantaranya adalah dapat berperan sebagai alternatif jika data center utama sedang mengalami pemeliharaan (maintenance), manipulasi data, ataupun terjadi kerusakan mesin (down). Masalah utamanya adalah jika data center memiliki jumlah data yang sangat banyak, sistem backup pada umumnya akan mem-backup seluruh data yang sudah ditentukan oleh administrator dengan intensitas waktu tertentu. Dikarenakan ukuran data relatif besar, dapat mengakibatkan jalur transmisi (bandwidth) semakin padat, dan aktifitas jaringan pun semakin menurun. Ada beberapa teknik untuk memanipulasi ukuran data yang relatif besar yang akan diproses, salah satunya adalah dengan menggunakan pemisahan data. Beberapa penelitian yang telah dilakukan sebelumnya terkait dengan judul yang diangkat diantaranya peneliti J. Wei, H. Jiang, K. Zhou, and D. Feng (2010) melakukan penelitian “MAD2: A scala'ble high-throughput exact deduplication approach for network backup services”. Dalam penelitian ini mengusulkan metode pendekatan MAD2, pendekatan deduplication yang tepat dan scalable untuk

Transcript of BAB II KAJIAN PUSTAKA 2.1. State of The Art

Page 1: BAB II KAJIAN PUSTAKA 2.1. State of The Art

12

BAB II

KAJIAN PUSTAKA

2.1. State of The Art

Sistem backup dengan virtualisasi sekarang telah dikembangkan untuk

banyak aplikasi terutama untuk aplikasi-aplikasi keamanan. Virtualisasi server

sebagai pengganti bentuk fisik dari sebuah server mempunyai banyak manfaat,

terutama kepraktisannya karena tidak perlu membeli peralatan komputer server

untuk membangun sebuah server. Sistem backup juga memiliki banyak fungsi,

diantaranya adalah dapat berperan sebagai alternatif jika data center utama sedang

mengalami pemeliharaan (maintenance), manipulasi data, ataupun terjadi

kerusakan mesin (down). Masalah utamanya adalah jika data center memiliki

jumlah data yang sangat banyak, sistem backup pada umumnya akan mem-backup

seluruh data yang sudah ditentukan oleh administrator dengan intensitas waktu

tertentu. Dikarenakan ukuran data relatif besar, dapat mengakibatkan jalur transmisi

(bandwidth) semakin padat, dan aktifitas jaringan pun semakin menurun. Ada

beberapa teknik untuk memanipulasi ukuran data yang relatif besar yang akan

diproses, salah satunya adalah dengan menggunakan pemisahan data.

Beberapa penelitian yang telah dilakukan sebelumnya terkait dengan judul

yang diangkat diantaranya peneliti J. Wei, H. Jiang, K. Zhou, and D. Feng (2010)

melakukan penelitian “MAD2: A scala'ble high-throughput exact deduplication

approach for network backup services”. Dalam penelitian ini mengusulkan metode

pendekatan MAD2, pendekatan deduplication yang tepat dan scalable untuk

Page 2: BAB II KAJIAN PUSTAKA 2.1. State of The Art

13

layanan backup jaringan berdasarkan tingginya trafik throughput. MAD2

menghilangkan data ganda baik ditingkat file dan ditingkat potongan data dengan

menggunakan empat teknik untuk mempercepat proses duplikasi dan perataan

distribusi data. Pertama, MAD2 mengatur sidik jari (fingerprint) menjadi Bucket

Matrix Hash (HBM), dapat digunakan untuk menjaga area data backup. Kedua,

MAD2 menggunakan Bloom Filter Array (BFA) sebagai indeks cepat untuk

mengidentifikasi non-duplikat objek data yang masuk atau menunjukkan dimana

kemungkinan menemukan duplikat. Ketiga, Dual Cache terintegrasi dalam MAD2

secara efektif menangkap dan memanfaatkan data secara lokal. Akhirnya, MAD2

menggunakan teknik Load- Balance berbasis DHT (Distributed Hash Tables) untuk

mendistribusikan secara merata objek data antara beberapa node storage sesuai

urutan cadangan objek data untuk lebih meningkatkan kinerja dengan beban yang

seimbang. Hasil evaluasi menunjukkan MAD2 secara signifikan melakukan

perkiraan pendekatan yang efisiensi dalam hal deduplication, dan mendukung

throughput deduplication minimal 100MB/s untuk setiap komponen penyimpanan

dalam sistem backup.

Penelitian yang dilakukan oleh Okafor Kennedy, Udeze Chidiebele. C.C,

Prof. H. C. Inyiama, dan Dr. C.C Okezie (2012) dengan judul “Virtualization: A

Cost Effective Approach to Infrastructure Management in Data Center Networks”

menjelaskan tentang langkah terbaik menggunakan redundansi infrastruktur untuk

membangun beberapa pusat data dengan sistem operasi, aplikasi dan layanan data

yang independent. Penelitian tersebut mengadopsi skema virtualisasi data center

sebagai arsitektur server yang dinamis untuk memperbaiki tantangan duplikasi

Page 3: BAB II KAJIAN PUSTAKA 2.1. State of The Art

14

infrastruktur di jaringan data center sehingga menghemat biaya. Tetapi masalah

yang dihadapi jika menggunakan pemisahan data adalah adanya data yang

merupakan data integrasi akan bercampur aduk dengan data biasa dan terjadinya

duplikasi data, hal ini akan menyulitkan proses pembalikan (restore) data. Hal

tersebutlah yang akan coba dicarikan solusi dalam penelitian ini.

Penelitian dari I Putu Eka Suparwita (2012) yang berjudul “Implementasi

Sistem Backup Otomatis Virtual Private Server Dengan Crontab” menjelaskan

tentang backup server otomatis dalam Virtual Private Server (VPS) dengan

menggunakan sistem penjadwalan dari CRONTAB. Backup otomatis Virtual

Private Server yang telah dibuat sudah dapat beroperasi sesuai tujuan

pembuatannya yaitu mampu melakukan backup secara otomatis pada Virtual

Private Server. Akan tetapi backup yang dilakukan tidak menggunakan teknik

apapun untuk memilah file yang di-backup, hanya menggunakan sistem

penjadwalan dari CRONTAB.

Dalam penelitian selanjutnya Velvizhi J. dan Balaji C. G. (2012) dengan

judul “Fingerprint Lookup-An Effective and Efficient Backup Using Deduplication

Technique” menjelaskan bahwa data deduplication menghindari data yang

berlebihan dalam penyimpanan cadangan operasi. Dalam sistem ini, file yang berisi

data dibagi menjadi potongan (chunk) dengan menggunakan konteks pendekatan

potongan dan pencarian sidik jari (fingerprint) untuk setiap potongan. Hasil

penelitian tersebut menunjukkan bahwa ruang penyimpanan yang digunakan untuk

backup lebih efisien dan kinerja backup lebih meningkat.

Page 4: BAB II KAJIAN PUSTAKA 2.1. State of The Art

15

Stephen Mkandawire (2012) melakukan penelitian “Improving Backup and

Restore Performance for Deduplication-based Cloud Backup Services”. Penelitian

ini hampir sama dengan penelitian Velvizhi J. dan Balaji C. G, tapi

diimplementasikan pada teknologi Cloud Computing. Data deduplication

bergantung pada perbandingan sidik jari (fingerprints) dari potongan data, dan

menyimpannya dalam potongan indeks untuk mengidentifikasi dan menghapus

data yang berlebihan, dengan tujuan akhir menghemat ruang penyimpanan dan

bandwidth jaringan pada teknologi cloud computing.

Penelitian Iswahyudi Hulukati, Arip Mulyanto dan Rochmad M. Thohir

Jassin (2013) yang berjudul “Model Server Cluster Sebagai Redundant System”

yang menghasilkan model server cluster dengan menerapkan metode replikasi data

dan failover yang dapat menyediakan pelayanan kepada client yang dikhususkan

untuk penyimpanan database. Dalam penelitian ini menerapkan sistem backup

menggunakan mirror dari server dengan menggandakan file server secara

keseluruhan, dengan kata lain penelitian ini mengimplementasikan full backup.

Melihat penelitian yang dilakukan oleh Stephen Mkandawire, dan

penelitian-penelitian lainnya khususnya dibidang pengolahan data center,

diusulkan metode Neural Network dengan Iterative Dychotomizer version 3 (ID3)

dan Backpropagation untuk melakukan proses backup. Dengan menggunakan

metode Neural Network akan diambil data yang akan di-backup hanya pada data

yang mengalami perubahan dengan mencocokkan dengan metadata dan kode

identitas (algoritma hash) dari setiap data guna mendapatkan data yang benar-benar

harus di-backup untuk menanggulagi metode sebelumnya yang sangat rentan

Page 5: BAB II KAJIAN PUSTAKA 2.1. State of The Art

16

terhadap duplikasi data yang terlalu besar dan proses backup data yang memerlukan

waktu yang lama sehingga dapat menyebabkan dampak penggunaan resource

komputer server yang terlalu tinggi. Disamping itu metode ini juga akan

diimplementasikan untuk virtualisasi server karena pada metode konvensional yang

diangkat memiliki kerentanan terhadap safety data dan memakan banyak resource

perangkat keras seperti penggunaan memori dan CPU untuk setiap proses backup

yang berjalan. Diharapkan dengan menggunakan metode Neural Network

menggunakan Iterative Dychotomizer version 3 (ID3) dan Backpropagation ini bisa

handal dalam melakukan proses backup data dalam setiap server yang ada pada

data center.

Page 6: BAB II KAJIAN PUSTAKA 2.1. State of The Art

17

Tabel 2.1 Rangkuman State of The Art

No. Judul, Penulis Sistem Operasi Base System Tipe Server Metode

Windows Linux Dekstop Website Console Virtual

Server

Dedicated

Server

Cloud

Server

Cluster ANN Rsync MAD

2

1 MAD2: A scala'ble

high-throughput exact

deduplication approach

for network backup

services, J. Wei, dkk

(2010)

2 Virtualization: A Cost

Effective Approach to

Infrastructure

Management in Data

Center Networks,

Okafor Kennedy, dkk

(2012)

3 Implementasi Sistem

Backup Otomatis

Virtual Private Server

dengan Crontab, I Putu

Eka Suparwita (2012)

4 Fingerprint Lookup-An

Effective and Efficient

Backup Using

Deduplication

Technique, Velvizhi J.

dan Balaji C. G. (2012)

Page 7: BAB II KAJIAN PUSTAKA 2.1. State of The Art

18

No. Judul, Penulis Sistem Operasi Base System Tipe Server Metode

Windows Linux Dekstop Website Console Virtual

Server

Dedicated

Server

Cloud

Server

Cluster ANN Rsync MAD

2

5 Improving Backup and

Restore Performance

for Deduplication-

based Cloud Backup

Services, Stephen

Mkandawire (2012)

6 Model Server Cluster

sebagai Redundant

System, Iswahyudi

Hulukati, Arip

Mulyanto dan Rochmad

M. Thohir Jassin (2013)

7 Proposal Penelitian

√ √ √ √

Page 8: BAB II KAJIAN PUSTAKA 2.1. State of The Art

19

2.2. Data Center

Data center menjadi salah satu komponen penting dalam lingkungan bisnis

yang ada saat ini. Sebagai inti dari layanan bisnis, data center diharapkan mampu

memberikan pelayanan yang maksimal, sekalipun dalam keadaan terjadinya suatu

bencana sehingga bisnis dalam perusahaan tersebut tetap bertahan dan keuntungan

bagi perusahaan akan terus mengalir. Berangkat dari peran data center yang begitu

signifikan, kemudian dikaitkan dengan berbagai isu yang ada pada data center

akhir-akhir ini, terutama masalah Disaster Recovery Planning, kajian mengenai

data center menjadi salah satu topik menarik dalam lingkungan bisnis (Yulianti,

2008).

Mengolah data dalam jumlah yang banyak tentulah tidak mudah. Sehingga

pada sebuah organisasi yang besar untuk pengelolaan data, mereka memusatkan

data pada data center. Data center menyimpan semua data yang dibutuhkan oleh

organisasi. Data tersebut diambil, diolah dan disimpan kembali pada data center.

Data yang disimpan pada data center merupakan data yang memiliki nilai bagi

organisasi, dengan pengelolaan data yang baik akan membuat data terlindungi

(Wood, 2011).

Pengelolaan data perlu didukung dengan proteksi data. Pengamanan data

perlu dilakukan apalagi pada data center yang menyimpan semua data organisasi.

Pusat data atau yang lebih dikenal data center adalah suatu fasilitas yang digunakan

untuk menempatkan sistem komputer dan komponen-komponen terkaitnya, seperti

sistem telekomunikasi dan penyimpanan data. Fasilitas ini biasanya mencakup juga

catu daya redundan atau cadangan, koneksi komunikasi data redundan, pengontrol

Page 9: BAB II KAJIAN PUSTAKA 2.1. State of The Art

20

lingkungan (misalnya AC dan ventilasi), pencegah bahaya kebakaran, serta piranti

keamanan fisik dan salah satu penempatan server untuk website atau database

(Kochhar, 2011).

Pada data center terdapat ratusan bahkan ribuan server yang tersusun pada

rak server yang ditata sesuai bentuk fisiknya. Di setiap ruang memiliki pendingin,

sistem catu daya (power supply), Uninteruptable Power System (UPS), security dan

jaringan terkoneksi yang ditata dengan detail. Bahkan lantai dimana server

dibangun memiliki karakteristik yakni terdapat upaya peredam dan selokan tempat

jaringan kabel listrik maupun komputer (Greenberg, 2009).

Disain dan perencanaan data center harus memperhatikan minimum aspek-

aspek berikut (Sun Microsystem, 2008):

1. Lokasi aman, memenuhi syarat sipil bangunan, geologi, vulkanologi,

topografi.

2. Terproteksi dengan sistem cadangan, untuk sistem catu daya, pengatur

udara/lingkungan, komunikasi data.

3. Menerapkan tata kelola standar data center meliputi:

a. Standar Prosedur Operasi

b. Standar Prosedur Perawatan

c. Standar dan Rencana Pemulihan dan Mitigasi Bencana

d. Standar Jaminan Kelangsungan Bisnis

Masalah keamanan dan kerahasiaan data juga merupakan salah satu aspek

penting dari suatu sistem informasi. Dalam hal ini, sangat terkait dengan betapa

pentingnya informasi tersebut dikelola oleh orang yang berkepentingan. Informasi

Page 10: BAB II KAJIAN PUSTAKA 2.1. State of The Art

21

akan tidak berguna lagi apabila informasi itu dimanipulasi oleh orang yang tidak

berhak, dan informasi tersebut tidak memiliki salinan (backup) dari informasi

aslinya, sehingga informasi tersebut tidak sah (valid). Banyak teknik dan metode

yang digunakan untuk melakukan pengamanan pada sebuah data center,

diantaranya adalah dengan membuat sistem backup yang baik (Mkandawire, 2012).

Layanan utama data center seperti yang digambarkan pada gambar 2.1 yang

terdiri dari 5 (lima) komponen.

Gambar 2.1 Layanan utama data center (Yulianti, 2008)

Menurut Yulianti dan Nanda (2008), sesuai dengan gambar 2.1 layanan

utama data center adalah sebagai berikut:

1. Business Continuance Infrastructure (Infrastruktur yang Menjamin

Kelangsungan Bisnis) merupakan aspek-aspek yang mendukung

kelangsungan bisnis ketika terjadi suatu kondisi kritis terhadap data

center. Aspek-aspek tersebut meliputi kriteria pemilihan lokasi data

center, kuantifikasi ruang data center, laying-out ruang dan instalasi

data center, sistem elektrik yang dibutuhkan, pengaturan infrastruktur

Page 11: BAB II KAJIAN PUSTAKA 2.1. State of The Art

22

jaringan yang scalable, pengaturan sistem pendingan dan fire

suppression.

2. Data Center Security (Infrastruktur Keamanan Data Center) terdiri dari

sistem pengamanan fisik dan non-fisik pada data center. Fitur sistem

pengamanan fisik meliputi akses user ke data center berupa kunci akses

memasuki ruangan (kartu akses atau biometrik) dan segenap petugas

keamanan yang mengawasi keadaan data center (baik di dalam maupun

di luar), pengamanan fisik juga dapat diterapkan pada seperangkat

infrastruktur dengan melakukan penguncian dengan kunci gembok

tertentu. Pengamanan non-fisik dilakukan terhadap bagian software

atau sistem yang berjalan pada perangkat tersebut, antara lain dengan

memasang beberapa perangkat lunak keamanan seperti access control

list, firewall, (Intrusion Detection System) IDS dan host IDS, fitur-fitur

keamanan pada layer ke-2 (datalink layer) dan layer ke-3 (network

layer) disertai dengan pengelolaan keamanan.

3. Application Optimization (Optimasi Aplikasi) berkaitan dengan layer

ke-4 (transport layer) dan layer ke-5 (session layer) untuk

meningkatkan waktu respon suatu server. Layer ke-4 adalah layer end-

to-end yang paling bawah antara aplikasi sumber dan tujuan,

menyediakan end-to-end flow control, end-to-end error detection dan

correction, mungkin juga menyediakan congestion control tambahan.

Sedangkan layer ke-5 menyediakan riteri dialog (siapa yang memiliki

giliran berbicara/mengirim data), token management (siapa yang

Page 12: BAB II KAJIAN PUSTAKA 2.1. State of The Art

23

memiliki akses ke resource bersama) serta sinkronisasi data (status

terakhir sebelum link terputus). Berbagai isu yang terkait dengan hal ini

adalah load balancing, caching, dan terminasi Secure Sockets Layer

(SSL), yang bertujuan untuk mengoptimalkan jalannya suatu aplikasi

dalam suatu sistem.

4. IP Infrastrucrure (Infrastruktur Internet Protocol – IP) merupakan

infrastruktur IP menjadi layanan utama pada data center. Layanan ini

disediakan pada layer ke-2 dan layer ke-3. Isu yang harus diperhatikan

terkait dengan layer ke-2 adalah hubungan antara server dan perangkat

layanan, memungkinkan akses ke media, mendukung sentralisasi yang

reliable, loop-free, predictable, dan scalable. Sedangkan pada layer ke-

3, isu yang terkait adalah memungkinkan fast-convergence routed

network (seperti dukungan terhadap default gateway). Kemudian juga

tersedia layanan tambahan yang disebut Intelligent Network Services,

meliputi fitur-fitur yang memungkinkan application services network-

wide, fitur yang paling umum adalah mengenai QoS (Quality of

Services), multicast (memungkinkan kemampuan untuk menangani

banyak user secara konkuren), private LAN dan policy-based routing.

5. Storage Infrastructure (Infrastruktur Penyimpanan) terkait dengan

segala infrastruktur penyimpanan. Isu yang diangkat antara lain adalah

arsitektur Storage Area Network (SAN), fibre channel switching,

replikasi, backup serta archival.

Page 13: BAB II KAJIAN PUSTAKA 2.1. State of The Art

24

2.3. Virtualisasi Server

Virtualisasi adalah sebuah teknologi yang memungkinkan untuk membuat

versi virtual dari sesuatu yang bersifat fisik, misalnya sistem operasi, storage data

atau sumber daya jaringan. Proses tersebut dilakukan oleh sebuah software atau

firmware bernama Hypervisor. Hypervisor adalah layer yang seakan-akan menjadi

sebuah infrastruktur untuk menjalankan beberapa virtual machine (Calzolari,

2009). Dalam prakteknya, dengan membeli dan memiliki satu buah mesin, seolah-

olah memiliki banyak server, sehingga bisa mengurangi pengeluaran Information

Technology (IT) untuk pembelian server baru, komponen, storage, dan software

pendukung lainnya (Greenberg, 2009).

Konsep virtualisasi sesungguhnya bukan konsep yang baru. Mainframe

IBM sudah menggunakan sistem operasi Virtual Machine (VM) yang sudah

menerapkan teknologi virtualisasi selama beberapa dekade. Saat ini sistem operasi

VM memungkinkan untuk menjalankan beberapa sistem Linux pada sebuah mesin

mainframe (Golden, 2008). Dengan kata lain, sejumlah mesin Linux dapat

dikonsolidasikan pada sebuah mainframe menggunakan sistem operasi VM.

Sistem komputer modern tersusun atas beberapa layer, yaitu layer

hardware, layer operating system, dan layer program aplikasi seperti yang

tergambar dalam gambar 2.2.

Page 14: BAB II KAJIAN PUSTAKA 2.1. State of The Art

25

Gambar 2.2 Layer pada sistem komputer modern (Vmware, Inc., 2007)

Pada gambar 2.2 software virtualisasi melakukan abstraksi dari mesin

virtual dengan cara menambahkan layer baru di antara 3 layer di atas. Posisi dari

layer baru tersebut menentukan level dari virtualisasi. Secara umum terdapat 3 level

virtualisasi (Vmware, Inc., 2007), yaitu:

1. Level hardware

Pada tahun 1970 mainframe IBM menjadi pionir dalam virtualisasi

secara hardware. Mainframe tersebut menjalankan sistem operasi VM

yang berfungsi untuk menyediakan servis virtualisasi, sehingga

mainframe tersebut dapat dipartisi dimana masing-masing partisi dapat

menjalankan sistem operasi dan aplikasi sendiri. Layer virtualisasi

berada tepat di atas layer hardware, sehingga akses ke hardware dari

mesin virtual dapat dilakukan secara efisien. Seperti terlihat dalam

gambar 2.3 arsitektur virtualisasi pada level hardware disebut juga

sebagai arsitektur hypervisor (Kennedy, 2012).

Page 15: BAB II KAJIAN PUSTAKA 2.1. State of The Art

26

Gambar 2.3 Virtualisasi pada level hardware (Vmware, Inc., 2007)

Pada gambar 2.3 virtualisasi pada level hardware dipengaruhi dari jenis

arsitektur platform seperti misalnya x86 dan AMD64, platform ini nanti

yang menggunakan CPU (Central Processing Unit), memori, NIC

(Network Interface Card) dan disk secara bersama.

2. Level sistem operasi

Layer virtualisasi diletakkan di atas layer sistem operasi. Program

aplikasi dijalankan di atas sistem operasi pada mesin virtual. Akses ke

hardware dari mesin virtual harus melalui sistem operasi dari mesin

fisik, sehingga tidak terlalu efisien pada arsitektur hypervisor. Seperti

terlihat dalam gambar 2.4 arsitektur virtualisasi pada level sistem

operasi disebut juga sebagai arsitektur hosted.

Page 16: BAB II KAJIAN PUSTAKA 2.1. State of The Art

27

Gambar 2.4 Virtualisasi level sistem operasi (Vmware, Inc., 2007)

Pada gambar 2.4 virtualisasi pada level sistem operasi ini berada diatas

level hardware, menjembatani application dan guest operating system.

3. Level bahasa tingkat tinggi

Layer virtualisasi berada di atas layer program aplikasi, berfungsi untuk

melakukan abstraksi mesin virtual yang dapat menjalankan program

yang ditulis dan dikompilasi sesuai dengan definisi abstrak mesin

virtual yang akan menjalankan program tersebut.

2.4. Sistem Backup

Menurut Mkandawire (2012) backup adalah suatu copy dari file system atau

bagian dari file system (seperti data atau file) yang disimpan pada media

penyimpanan lain yang dapat digunakan sewaktu-waktu untuk me-restore

(mengembalikan) data atau file tersebut jika dibutuhkan. Data yang di-backup akan

tersimpan dalam replika dari data center utama, replika tersebut dapat berperan

Page 17: BAB II KAJIAN PUSTAKA 2.1. State of The Art

28

sebagai alternatif jika data center utama sedang mengalami pemeliharaan

(maintenance), manipulasi data, ataupun terjadi kerusakan mesin (down).

Dalam melakukan backup data, perlu adanya pengecekan kekosistenan data,

yaitu dengan membandingkan data pada struktur direktori dengan data pada blok,

lalu apabila ditemukan kesalahan, maka program tersebut akan mencoba

memperbaikinya (Stephano, 2009). Ada tiga jenis backup data, diantaranya adalah

(Vice, 2013):

1. Backup Penuh (Full Backup)

Full backup adalah menyalin semua data termasuk direktori ke media

lain. Oleh karena itu, hasil full backup lebih cepat dan mudah saat

operasi restore. Namun pada saat pembuatannya membutuhkan waktu

yang lama dan ruang yang sangat besar.

2. Backup Peningkatan (Incremental Backup)

Incremental backup adalah menyalin semua data yang berubah sejak

terakhir kali melakukan full backup. Incremental backup sering juga

disebut differential backup.

3. Backup Cermin (Mirror Backup)

Mirror backup sama dengan full backup, tetapi data tidak dipadatkan

atau dikompress (dengan format .tar, .zip, atau yang lain) dan tidak bisa

dilindungi dengan password. Dapat juga diakses dengan menggunakan

tools seperti Windows Explorer. Mirror backup adalah metode backup

yang paling cepat bila dibandingkan dengan metode yang lain karena

Page 18: BAB II KAJIAN PUSTAKA 2.1. State of The Art

29

menyalin data dan folder ke media tujuan tanpa melakukan pemadatan.

Tapi hal itu menyebabkan media penyimpanannya harus cukup besar.

Beberapa sebab kerusakan atau kegagalan operasi backup adalah sebagai

berikut (Vice, 2013):

1. Aliran listrik terputus, yang dapat mengakibatkan hilangnya informasi

yang ada di memori utama dan register.

2. Kesalahan operator (human error), dimana operator atau manusia

melakukan kesalahan operasi yang tidak disengaja.

3. Kesalahan perangkat lunak, yang dapat mengakibatkan hasil

pengolahan tidak benar, informasi yang disajikan ke user salah, dan

basisdata menjadi tidak konsisten.

4. Disk rusak, yang dapat mengakibatkan hilangnya informasi atau

rusaknya basis data yang ada dalam disk.

Beberapa jenis kerusakan yang dapat terjadi diantaranya sebagai berikut

(Ashar, 2010):

1. Kegagalan transaksi (transaksi failure)

Ada beberapa jenis kesalahan yang dapat menyebabkan sebuah

transaksi menjadi gagal, yaitu:

a. Kesalahan logika (logical error), dimana program tidak dapat

melanjutkan eksekusi normalnya karena adanya kondisi internal

tertentu seperti masukan yang salah atau rusak, data yang tidak

tersedia, nilai data di luar batas domain yang diperbolehkan

(overflow), logika program yang tidak tepat.

Page 19: BAB II KAJIAN PUSTAKA 2.1. State of The Art

30

b. Kesalahan sistem (system error), dimana program atau sistem telah

memasuki kondisi yang tidak diharapkan (seperti deadlock),

sebagai hasil dari tidak tereksekusinya program atau sistem secara

normal.

2. Kerusakan sistem (system crash)

Perangkat keras yang macet (hang), menyebabkan isi media

penyimpanan sementara hilang.

3. Kegagalan atau kerusakan disk (disk failure)

Terjadinya bad sector atau disk yang macet pada saat berlangsungnya

operasi input-output (I/O) ke disk.

Ada beberapa jenis media penyimpanan (storage) yang digunakan untuk

sistem backup, yang dapat dibedakan dari segi kecepatan, kapasitas dan juga

ketahanannya terhadap kerusakan (Ross, 2009):

1. Media penyimpanan sementara (volatile storage)

Informasi yang ada di media penyimpanan ini hanya ada selama catuan

listrik mengalir. Jika catuan listriknya terputus, maka informasi/data

yang tersimpan akan hilang. Akan tetapi kelebihan media penyimpanan

ini terletak pada kecepatannya yang sangat tinggi. Contoh media

penyimpananya adalah RAM (Random Access Memory), cache dan

register.

2. Media penyimpanan permanen (non-volatile storage)

Informasi yang ada dalam media penyimpanan ini tetap ada walaupun

catuan listrik tidak mengalir lagi.

Page 20: BAB II KAJIAN PUSTAKA 2.1. State of The Art

31

3. Media penyimpanan stabil (stable storage)

Informasi yang ada di media penyimpanan ini tidak pernah hilang atau

rusak (secara fisik oleh faktor-faktor internal).

Kerusakan terhadap disk (yang merupakan jenis media penyimpanan

permanen yang paling umum), kerusakan data karena aktivitas pemakai ataupun

kerusakan data oleh aplikasi eksternal, dapat diantisipasi dengan melakukan operasi

backup secara periodik.

Berdasarkan waktu pelaksanaan atau strateginya ada 2 (dua) jenis operasi

backup yang dapat dipilih, yaitu:

1. Backup Statis, dimana backup dilakukan oleh administrator secara

manual.

2. Backup Dinamis, dimana backup dilakukan oleh mesin yang terjadwal

dengan baik.

2.4.1. Sistem Remote Backup

Sebuah alternatif lain di samping penerapan data terdistribusi adalah dengan

menjalankan pengolahan transaksi pada sebuah server yang disebut sebagai server

utama atau server primer, tetapi dengan memiliki sebuah server untuk backup jarak

jauh (remote backup), dimana semua data dari server utama direplikasi. Server

remote backup sering kali disebut juga sebagai server sekunder. Server remote

backup tersebut harus terus disinkronisasi dengan server primer, begitu terjadi

perubahan pada server primer (Ross, 2009). Server remote backup secara fisik

harus terpisah dari server primer seperti pada gambar 2.5.

Page 21: BAB II KAJIAN PUSTAKA 2.1. State of The Art

32

Gambar 2.5 Arsitektur Remote Backup

Pada gambar 2.5 remote backup bisa dilakukan melalui network dari server

primer dan proses backup nantinya akan tersimpan log-nya dalam log record pada

server primer.

2.4.2. Rsync

Rsync adalah utilitas untuk mentransfer dan menyinkronkan file secara

efisien ke seluruh sistem komputer, dengan memeriksa timestamp dan ukuran file.

Rsync adalah utilitas perangkat lunak gratis untuk sistem mirip Unix dan Linux yang

menyalin file dan direktori dari satu host ke host lainnya. Algoritma rsync adalah

jenis delta encoding, dan digunakan untuk meminimalkan penggunaan jaringan

(Ross, 2009). Rsync biasanya digunakan untuk menyinkronkan file dan direktori di

antara dua sistem yang berbeda. Rsync akan menggunakan SSH untuk terhubung

dari user ke remote-host. Setelah terhubung, Rsync akan memanggil rsync remote-

host dan kemudian kedua program akan menentukan bagian file mana yang perlu

ditransfer melalui koneksi. Rsync dianggap sebagai aplikasi yang ringan karena

transfer filenya bersifat incremental, setelah transfer file secara penuh pada awal

backup, selanjutnya hanya file yang telah diubah yang akan ditransfer. Rsync sering

digunakan untuk menyediakan backup offsite dengan menyinkronkan data ke mesin

remote di luar firewall.

primer network backup

log record

Page 22: BAB II KAJIAN PUSTAKA 2.1. State of The Art

33

2.4.3. Bacula File Daemon

Bacula adalah software opensource untuk mengelola dan verifikasi data

komputer di jaringan komputer dengan berbagai jenis. Bacula relatif mudah

digunakan dan efisien, sambil menawarkan banyak fitur pengelolaan penyimpanan

yang canggih sehingga memudahkan pencarian dan pemulihan file yang hilang atau

rusak. Bacula dapat digunakan di sistem komputer tunggal sampai sistem di

jaringan yang luas. Bacula digunakan disisi klien, bersifat multiplatform sistem

operasi, dijalankan oleh "file daemon" yang berjalan disisi klien untuk membuat

session di jaringan. File Daemon adalah perangkat lunak yang menyediakan akses

server-client ke data yang akan dibackup (Vice, 2013).

2.4.4. Restore

Restore adalah proses pengembalian data dari file backup yang dilakukan

sebelum atau pada saat terjadi kerusakan, kecelakaan, atau bencana alam yang

merusak data utama. Ketika melakukan restore mengembalikan komputer atau

perangkat elektronik lainnya ke keadaan sebelumnya, dengan kata lain data yang

dikembalikan adalah posisi data pada saat di-backup (Vice, 2013).

Mengembalikan data komputer sering dilakukan sebagai upaya terakhir

untuk memperbaiki mesin yang bermasalah. Sebagai contoh, jika virus telah

menginfeksi sejumlah besar file system, sistem restore adalah cara untuk

mendapatkan komputer dapat bekerja kembali. Jika hard drive telah rusak dan tidak

dapat diperbaiki dengan menggunakan utilitas disk, perlu untuk meng-format hard

drive dan mengembalikan komputer dari disk instalasi sistem operasi yang asli.

Page 23: BAB II KAJIAN PUSTAKA 2.1. State of The Art

34

2.5. Artificial Intelligence

Kecerdasan Buatan atau Intelegensi Artifisial (disingkat AI) didefinisikan

sebagai kecerdasan entitas ilmiah. Kecerdasan diciptakan dan dimasukkan ke dalam

suatu mesin (komputer) agar dapat melakukan pekerjaan seperti yang dapat

dilakukan manusia. Beberapa macam bidang yang menggunakan kecerdasan buatan

antara lain sistem pakar, permainan komputer (games), logika fuzzy, jaringan syaraf

tiruan dan robotika. Dalam Artificial Intelligence terdapat empat teknik dasar

pemecahan masalah, yaitu: searching, reasoning, planning dan learning (gambar

2.6). Keempat teknik dasar ini memiliki karakteristik yang unik dan dapat

digunakan sendiri-sendiri secara terpisah atau digabungkan (Suyanto, 2014).

Gambar 2.6 Empat teknik dasar dalam Artificial Intelligence

Pada gambar 2.6 yang menunjukkan teknik dasar dalam Artificial

Intelligence dengan penjelasan sebagai berikut:

1. Searching

Teknik penyelesaian masalah dengan cara melakukan searching atau

pencarian. Langkah pertama adalah mendefinisikan ruang masalah

yang digambarkan sebagai himpunan keadaan (state) atau dapat juga

Searching

Learning

Planning

Reasoning

Page 24: BAB II KAJIAN PUSTAKA 2.1. State of The Art

35

sebagai himpunan rute dari keadaan awal (initial state) menuju keadaan

tujuan (goal state) untuk suatu masalah yang dihadapi. Langkah kedua

adalah mendefinisikan aturan produksi yang digunakan untuk

mengubah suatu state ke state yang lain. Langkah terakhir adalah

memilih metode pencarian yang tepat sehingga dapat menemukan

solusi terbaik dengan usaha yang minimal. Terdapat dua jenis

pencarian yang dapat dilakukan yakni:

a. Blind/Un-informed Search

Dapat dikatakan juga pencarian buta karena tidak ada informasi

awal yang digunakan dalam proses pencarian. Metode yang

tergolong Blind Search adalah:

1) Breadth First Search (BFS)

2) Uniform Cost Search (UCS)

3) Depth First Search (DFS)

4) Iterative Deepening Search (IDS)

5) Bi-directional Search (BDS)

b. Heuristic / Informed Search

Metode ini menggunakan suatu fungsi yang menghitung biaya

perkiraan dari suatu simpul tertentu menuju ke simpul tujuan.

Heuristic disini diartikan sebagai suatu proses yang mungkin dapat

menyelesaikan masalah tetapi tidak ada jaminan bahwa solusi yang

dicari selalu dapat ditemukan.

Page 25: BAB II KAJIAN PUSTAKA 2.1. State of The Art

36

Metode yang termasuk dalam heuristic adalah:

1) Generate and Test

2) Hill Climbing

3) Simulate Annealing

4) Best First Search.

2. Reasoning

Teknik penyelesaian masalah dengan cara merepresentasikan masalah

ke dalam basis pengetahuan (knowledge base) menggunakan logic atau

bahasa formal (bahasa yang dipahami komputer). Metode yang

digunakan untuk merepresentasikan pengetahuan dan melakukan

penalaran diantaranya:

a. Propositional Logic (Logika Proposisi)

b. First Order Logic atau Predicate Calculus (Kalkulus Predikat)

c. Fuzzy Logic (Logika Samar)

3. Planning

Teknik penyelesaian masalah dengan cara memecah masalah ke dalam

sub-sub masalah yang lebih kecil, menyelesaikan sub-sub masalah satu

demi satu, kemudian menggabungkan solusi-solusi dari sub-sub

masalah tersebut menjadi sebuah solusi lengkap dengan tetap

mengingat dan menangani interaksi yang terdapat pada sub-sub

masalah tersebut. Dua metode dasar yang digunakan adalah:

a. Goal Stack Planning (GSP)

b. Constraint Posting (CP)

Page 26: BAB II KAJIAN PUSTAKA 2.1. State of The Art

37

4. Learning

Teknik Learning ini berbeda dengan ketiga teknik sebelumnya, yaitu

searching, reasoning, dan planning. Ketiga teknik tersebut harus

mendefinisikan aturan yang benar dan lengkap untuk sistem yang akan

dibangun, akan tetapi terkadang pada masalah tertentu tidak bisa

didefinisikan aturan secara benar dan lengkap karena data-data yang

didapatkan tidak lengkap. Teknik learning inilah solusi untuk secara

otomatis menemukan aturan yang diharapkan dapat berlaku secara

umum untuk data-data yang belum pernah diketahui. Metode yang

menggunakan teknik learning adalah:

a. Neural Network

b. Algoritma Genetika

2.6. Fuzzy System

Terori fuzzy set atau himpunan samar pertama kali dikemukakan oleh Lotfi

A. Zadeh sekitar tahun 1965 pada sebuah makalah yang berjudul “Fuzzy Sets”.

Dengan teori fuzzy set, dapat dipresentasikan dan dapat menangani masalah

ketidakpastian yang dalam hal ini bisa berarti keraguan, ketidakpastian,

ketidaktepatan, kekurang lengkapan informasi, dan kebenaran yang bersifat

sebagian (Suyanto, 2014). Dalam dunia nyata seringkali menghadapi suatu masalah

yang informasinya sangat sulit diterjemahkan ke dalam suatu rumus atau angka

yang tepat karena informasi tersebut bersifat kualitatif (tidak bisa diukur secara

kuantitatif).

Page 27: BAB II KAJIAN PUSTAKA 2.1. State of The Art

38

2.6.1. Fuzzy Set

Misalkan U adalah universe (semesta) objek dan x adalah anggota U.

Suatu fuzzy set A di U didefinisikan sebagai suatu fungsi keanggotaan µA (x), yang

memetakan setiap objek di U menjadi suatu nilai real dalam interval [0,1]. Nilai-

nilai µA(x) menyatakan derajat keanggotaan x di dalam A. Himpunan yang

membedakan anggota dan non anggotanya dengan batasan yang jelas disebut crisp

set. Misalnya, jika C = {x|x integer, x > 2}, maka anggota C adalah 3, 4, 5, dan

seterusnya. Sedangkan yang bukan anggota C adalah 2, 1, 0, -1, dan seterusnya.

Konvensi untuk menuliskan fuzzy set yang dihasilkan dari U yang diskrit

adalah sebagai berikut:

A = + + … = ∑ …………............(2.1)

sedangkan jika U adalah kontinu, maka fuzzy set A dinotasikan sebagai:

A = ʃ ………………………………………………....(2.2)

Penulisan notasi tersebut hanyalah deskripsi formal dan tanda “ ” menyatakan

pasangan (bukan operasi pembagian). Sedangkan tanda “+” menyatakan simbol

function-theoritic union (bukan operasi penjumlahan).

Di dalam fuzzy system, fungsi keanggotaan memainkan peranan yang sangat

penting untuk merepresentasikan masalah dan menghasilkan keputusan yang

akurat.

i

µ A (x1)

x1

µ A (x2)

x2

µ A (xi)

xi

xϵU

µ A (x)

x

Page 28: BAB II KAJIAN PUSTAKA 2.1. State of The Art

39

Terdapat banyak sekali fungsi keanggotaan yang dapat digunakan,

diantaranya adalah:

1. Fungsi Sigmoid

Sesuai dengan namanya, fungsi ini berbentuk kurva sigmoidal seperti

huruf S. Setiap nilai x (anggota crisp set) dipetakan ke dalam interval

[0, 1]. Grafik (gambar 2.7) dan notasi matematika (rumus 2.3) untuk

fungsi ini adalah sebagai berikut:

Gambar 2.7 Grafik fungsi sigmoid

0, x ≤ a

2(((x-a)/(c-a))2, a < x ≤ b)

1-2(((x-c)/(c-a))2 , b < x ≤ c)

1, c < x …………..(2.3)

2. Fungsi Phi

Disebut fungsi Phi karena bentuk seperti simbol phi. Pada fungsi

keanggotaan ini, hanya terdapat satu nilai x yang memiliki derajat

keanggotaan sama dengan 1, yaitu ketika x = c. Nilai-nilai disekitar c

memiliki derajat keanggotaan yang masih mendekati 1. Grafik (gambar

Sigmoid (x,a,b,c) =

Page 29: BAB II KAJIAN PUSTAKA 2.1. State of The Art

40

2.8) dan notasi matematika (rumus 2.4) dari fungsi ini adalah sebagai

berikut:

Gambar 2.8 Grafik fungsi phi

Phi (x, c-b, c-b/2, c), x ≤ c

1-Phi (x, c, c+b/2, c+b), x > c ..................(2.4)

3. Fungsi Segitiga

Pada fungsi ini juga terdapat hanya satu nilai x yang memiliki derajat

keanggotaan sama dengan 1, yaitu ketika x=b. Tetapi nilai-nilai di

sekitar b memiliki derajat keanggotaan yang turun cukup tajam

(menjauhi 1). Grafik (gambar 2.9) dan notasi matematika (rumus 2.5)

dari fungsi segitiga adalah sebagi berikut:

Gambar 2.9 Grafik fungsi segitiga

0, x ≤ a, x ≥ c

(x-a)/(b-a), a < x ≤ b

-(x-c)/(c-b), b < x ≤ c ………………….(2.5)

Phi (x,b,c) =

Segitiga (x,a,b,c) =

Page 30: BAB II KAJIAN PUSTAKA 2.1. State of The Art

41

4. Fungsi Trapesium

Berbeda dengan fungsi segitiga, pada fungsi ini terdapat beberapa nilai

x yang memiliki derajat keanggotaan sama dengan 1, yaitu ketika b ≤ x

≤ c. Tetapi derajat keanggotaan untuk a < x < b dan c < x ≤ d memiliki

karakteristik yang sama dengan fungsi segitiga. Grafik (gambar 2.10)

dan notasi matematika (rumus 2.6) dari fungsi trapesium adalah sebagai

berikut:

Gambar 2.10 Grafik fungsi trapesium

0, x ≤ a, x ≥ d

(x-a)/(b-a), a < x < b

1, b ≤ x ≤ c

-(x-d)/(d-c), c < x ≤ d …………..(2.6)

5. Fungsi Generalized Bell

Fungsi keanggotaan generalized bell, memiliki nilai parameter {a,b,c}

yang didefinisikan sebagai berikut (rumus 2.7):

bell (x,a,b,c) = 1

1+ …………………………(2.7)

Parameter b selalu positif agar kurva menghadap kebawah, seperti

terlihat pada gambar 2.11.

Trapesium (x,a,b,c,d) =

x - c 2b

a

Page 31: BAB II KAJIAN PUSTAKA 2.1. State of The Art

42

Gambar 2.11 Grafik fungsi Generalized Bell

6. Fungsi Gaussian

Fungsi keanggotaan berbentuk Gaussian didefinisikan oleh 2 parameter

σ dan c dengan persamaan sebagai berikut (rumus 2.8):

gaussian (x: σ,c) = e ……………….………...(2.8)

Fungsi keanggotaan Gauss ditentukan oleh parameter σ dan c yang

menunjukan titik tengah dan lebar fungsi, seperti terlihat pada gambar

2.12.

Gambar 2.12 Grafik fungsi Gaussian

- x – c 2

σ

Page 32: BAB II KAJIAN PUSTAKA 2.1. State of The Art

43

2.6.2. Fuzzy Logic

Fuzzy logic didefinisikan sebagai suatu jenis logic yang bernilai ganda dan

berhubungan dengan ketidakpastian dan kebenaran parsial. Objek dasar dari suatu

logic adalah proposition (proposisi) atau pernyataan yang menyatakan suatu fakta.

Fuzzy logic memiliki derajat keanggotaan dalam rentang 0 (nol) hingga 1

(satu), berbeda dengan logika digital yang hanya memiliki dua nilai yaitu 1 (satu)

atau 0 (nol). Logika fuzzy digunakan untuk menerjemahkan suatu besaran yang

diekspresikan menggunakan bahasa (linguistic), misalkan besaran kecepatan laju

kendaraan yang diekspresikan dengan pelan, agak cepat, cepat dan sangat cepat.

Secara umum dalam sistem logika fuzzy terdapat empat buah elemen dasar, yaitu:

1. Basis kaidah (rule base), yang berisi aturan-aturan secara linguistik

yang bersumber dari para pakar.

2. Suatu mekanisme pengambilan keputusan (inference engine), yang

memperagakan bagaimana para pakar mengambil suatu keputusan

dengan menerapkan pengetahuan (knowledge).

3. Proses fuzzifikasi (fuzzification), yang mengubah besaran tegas (crisp)

ke besaran fuzzy.

4. Proses defuzzifikasi (defuzzification), yang mengubah besaran fuzzy

hasil dari inference engine, menjadi besaran tegas (crisp).

Page 33: BAB II KAJIAN PUSTAKA 2.1. State of The Art

44

2.6.3. Sistem Berbasis Aturan Fuzzy

Membangun sistem yang menggunakan aturan fuzzy dapat dilakukan

dengan 4 buah elemen dasar yang disebutkan sebelumnya yaitu (Suyanto, 2014):

1. Variabel Linguistik

Variabel linguistik adalah suatu interval numerik dan mempunyai nilai-

nilai linguistik, yang semantiknya didefinisikan oleh fungsi

keanggotaannya. Misalnya, suhu adalah suatu variable linguistik yang

bisa memiliki nilai-nilai linguistik seperti ‘Dingin’, ‘Hangat, ‘Panas’

yang semantiknya didefinisikan oleh fungsi-fungsi keanggotaan

tertentu.

Suatu sistem berbasis aturan fuzzy yang lengkap terdiri dari tiga

komponen utama: Fuzzyfication, Inference dan Defuzzification.

Fuzzification mengubah masukan-masukan yang nilai kebenarannya

bersifat pasti (crisp input) ke dalam bentuk fuzzy input, yang berupa

nilai linguistik yang semantiknya ditentukan berdasarkan fungsi

keanggotaan tertentu. Inference melakukan penalaran menggunakan

fuzzy input dan fuzzy rules yang telah ditentukan sehingga menghasilkan

fuzzy output. Sedangkan Deffuzification mengubah fuzzy output menjadi

crisp rule berdasarkan fungsi keanggotaan yang telah ditentukan.

2. Fuzzification

Masukan-masukan yang nilai kebenarannya bersifat pasti (crisp input)

dikonversi ke bentuk fuzzy input, yang berupa nilai linguistik yang

semantiknya ditentukan berdasarkan fungsi keanggotaannya. Misalnya,

Page 34: BAB II KAJIAN PUSTAKA 2.1. State of The Art

45

suhu 200C dikonversikan menjadi Hangat dengan derajat keanggotaan

sama dengan 0,7.

3. Inference

Suatu aturan fuzzy dituliskan sebagai (rumus 2.9):

IF antecendent THEN consequent …………………(2.9)

Dalam suatu sistem berbasis aturan fuzzy, proses inference

memperhitungkan semua aturan yang ada dalam basis pengetahuan.

Hasil dari proses inference direpresentasikan oleh suatu fuzzy set untuk

setiap variabel bebas (pada consequent). Derajat keanggotaan untuk

setiap nilai variabel tidak bebas menyatakan ukuran kompatibilitas

terhadap variabel bebas (pada antecendent). Misalkan, terdapat suatu

sistem dengan n variable bebas x1, …, xn dan m variabel tidak bebas y1,

…, ym. Misalkan R adalah suatu basis dari sejumlah r aturan fuzzy

(rumus 2.10)

IF P1(x1, …, xn) THEN Q1(y1, …, ym)

… …

IF Pr(x1, …, xn) THEN Qr(y1, …, ym) ……………………...(2.10)

Dimana P1, …, Pr menyatakan fuzzy predicate untuk variabel bebas, dan

Q1, …, Qr menyatakan fuzzy predicate untuk variable tidak bebas.

Page 35: BAB II KAJIAN PUSTAKA 2.1. State of The Art

46

Terdapat dua model aturan fuzzy yang digunakan secara luas dalam

berbagai aplikasi, yaitu:

a. Model Mamdani

Pada model ini, aturan fuzzy didefinisikan sebagai (rumus 2.11):

IFx1 is A1 AND … AND xn is An THEN y is B …................(2.11)

Dimana A1, …, An, dan B adalah nilai-nilai linguistik (atau fuzzy set)

dan “x1 is A1” menyatakan bahwa nilai variable x1 adalah anggota

fuzzy set A1.

b. Model Sugeno

Model ini dikenal juga sebagai Takagi-Sugeno-Kang (TSK) model,

yaitu suatu varian dari model Mamdani. Model ini menggunakan

aturan yang berbentuk rumus 2.12.

IF x1 is A1 AND…AND xn is An THEN y = f (x1,…,xn)........(2.12)

Dimana f bisa berupa sembarang fungsi dari variabel-variabel input

yang nilainya berada dalam interval veriabel output. Biasanya,

fungsi ini dibatasi dengan menyatakan f sebagai kombinasi linier

dari variabel-variabel input (rumus 2.13):

f (x1,…,xn)=w0+ w1 x1+…+ wn xn ………………………….(2.13)

Dimana w0, w1, …, wn adalah konstanta yang berupa bilangan real

yang merupakan bagian dari spesifikasi aturan fuzzy.

Page 36: BAB II KAJIAN PUSTAKA 2.1. State of The Art

47

4. Defuzzification

Terdapat berbagai metode defuzzification yang telah berhasil

diaplikasikan untuk berbagai macam masalah, diantaranya adalah:

a. Centroid method

Metode ini disebut juga sebagai Centre of Area atau Centre of

Gravity. Metode ini merupakan metode yang paling penting dan

menarik diantara semua metode yang ada. Metode ini menghitung

nilai crisp menggunakan rumus 2.14.

y * = ʃ y µR (y)dy

ʃ µR (y)dy ………………………………………….(2.14)

Dimana y* suatu nilai crisp. Fungsi integration dapat diganti dengan

fungsi summation jika y bernilai diskrit, sehingga menjadi rumus

2.15.

y * = ∑ y µR (y)

∑ µR (y) …………………………………………..(2.15)

Dimana y adalah nilai crisp dan µR (y) adalah derajat keanggotaan

dari y.

b. Height method

Metode ini dikenal juga sebagai prinsip keanggotaan maksimum

karena metode ini secara sederhana memilih nilai crisp yang

memiliki derajat keanggotaan maksimum. Oleh karena itu, metode

ini hanya bisa dipakai untuk fungsi keanggotaan yang memiliki

Page 37: BAB II KAJIAN PUSTAKA 2.1. State of The Art

48

derajat keanggotaan 1 pada suatu nilai crisp tunggal dan 0 pada

semua nilai crisp yang lain. Fungsi seperti ini sering disebut sebagai

singleton.

c. First (or last) of Maxima

Metode ini juga merupakan generalisasi dari height method untuk

kasus dimana fungsi keanggotaan output memiliki lebih dari satu

nilai maksimum. Sehingga, nilai crisp yang digunakan adalah salah

satu dari nilai yang dihasilkan dari maksimum pertama atau

maksimum terakhir (tergantung pada aplikasi yang akan dibangun).

d. Mean-Max method

Metode ini disebut juga sebagai Middle of Maxima. Metode ini

merupakan generalisasi dari height method untuk kasus dimana

terdapat lebih dari satu nilai crisp yang memiliki derajat

keanggotaan maksimum. Sehingga y* didefinisikan sebagai titik

tengah antara nilai crisp terkecil dan nilai crisp terbesar (rumus

2.16).

y * = m + M

2 ………………………………………..(2.16)

Dimana m adalah nilai crisp yang paling kecil dan M adalah nilai

crisp yang paling besar.

e. Weighted Average

Metode ini mengambil nila rata-rata dengan menggunakan

pembobotan berupa derajat keanggotaan. Sehingga y* didefinisikan

sebagai (rumus 2.17).

Page 38: BAB II KAJIAN PUSTAKA 2.1. State of The Art

49

y * = µ (y) y

µ (y) ………………………………………..(2.17)

Dimana y adalah nilai crisp dan µ(y) adalah derajat keanggotaan dari

nilai crisp y.

2.6.4. Permasalahan Dalam Fuzzy System

Pada sebagian masalah, dimana terdapat seorang ahli yang sangat

memahami tingkah laku variabel-variabel linguistik dan aturan yang ada, maka

pendefinisian fungsi keanggotaan dan aturan fuzzy bisa dilakukan dengan mudah

dan cepat.

Tetapi ketika tidak bisa memahami masalah dan tidak bisa menemukan ahli

yang memahami masalah yang dihadapi, maka pendefinisian fungsi keanggotaan

dan aturan fuzzy memerlukan usaha keras dan waktu yang lama. Jika fungsi

keanggotaan atau aturan fuzzy yang didefinisikan tidak tepat, maka performansi dari

sistem fuzzy yang dibangun menjadi tidak optimal. Tetapi dalam bidang Soft

Computing telah ditemukan cara pendefinisian kedua hal tersebut, yaitu

menggunakan Evolutionary Algorithm (EA) atau Artificial Neural Network (ANN).

Kedua metode tersebut, baik EA maupun ANN, berusaha menemukan fungsi

keanggotaan ataupun aturan fuzzy yang paling optimum untuk masalah yang

dihadapi.

Page 39: BAB II KAJIAN PUSTAKA 2.1. State of The Art

50

2.7. Neural Network

Jaringan Syaraf Tiruan (Artificial Neural Network) adalah sebuah model

matematik yang berupa kumpulan unit yang terhubung secara parallel yang

bentuknya menyerupai jaringan saraf pada otak manusia (neural). Jaringan syaraf

tiruan sering digunakan juga dalam bidang kecerdasan buatan (Yegnanarayana,

2009).

Neural Network merupakan kategori ilmu Soft Computing. Neural Network

sebenarnya mengadopsi dari kemampuan otak manusia yang mampu memberikan

stimulasi atau rangsangan, melakukan proses, dan memberikan output. Output

diperoleh dari variasi stimulasi dan proses yang terjadi di dalam otak manusia.

Kemampuan manusia dalam memproses informasi merupakan hasil kompleksitas

proses di dalam otak. Misalnya, yang terjadi pada anak-anak, mereka mampu

belajar untuk melakukan pengenalan meskipun mereka tidak mengetahui algoritma

apa yang digunakan. Kekuatan komputasi yang luar biasa dari otak manusia ini

merupakan sebuah keunggulan di dalam kajian ilmu pengetahuan.

Dari struktur neuron pada otak manusia, dan proses kerja yang dijelaskan di

atas, maka konsep dasar pembangunan neural network buatan terbentuk. Ide

mendasar dari Artificial Neural Network (ANN) adalah mengadopsi mekanisme

berpikir sebuah sistem atau aplikasi yang menyerupai otak manusia, baik untuk

pemrosesan berbagai sinyal elemen yang diterima, toleransi terhadap kesalahan

atau error, dan juga parallel processing. Karakteristik dari ANN dilihat dari pola

hubungan antar neuron, metode penentuan bobot dari tiap koneksi, dan fungsi

Page 40: BAB II KAJIAN PUSTAKA 2.1. State of The Art

51

aktivasinya. Gambar 2.13 menjelaskan struktur ANN secara mendasar yang terdiri

dari 3 (tiga) komponen.

Gambar 2.13 Struktur ANN (Yegnanarayana, 2009)

Seperti terlihat dalam gambar 2.13, struktur ANN diantaranya adalah

sebagai berikut (Puspitaningrum, 2007):

1. Input, berfungsi seperti dendrite.

2. Output, berfungsi seperti akson.

3. Fungsi aktivasi, berfungsi seperti sinapsis.

Neural network dibangun dari banyak node atau unit yang dihubungkan oleh

link secara langsung. Link dari unit yang satu ke unit yang lainnya digunakan untuk

melakukan propagasi aktivasi dari unit pertama ke unit selanjutnya. Setiap link

memiliki bobot numerik. Bobot ini menentukan kekuatan serta penanda dari sebuah

konektivitas.

Proses pada ANN dimulai dari input yang diterima oleh neuron beserta

dengan nilai bobot dari tiap-tiap input yang ada. Setelah masuk ke dalam neuron,

nilai input yang ada akan dijumlahkan oleh suatu fungsi perambatan (summing

function), yang bisa dilihat seperti pada di gambar 2.13 dengan lambang sigma (∑).

Hasil penjumlahan akan diproses oleh fungsi aktivasi setiap neuron, disini akan

dibandingkan hasil penjumlahan dengan threshold (nilai ambang) tertentu. Jika

Page 41: BAB II KAJIAN PUSTAKA 2.1. State of The Art

52

nilai melebihi threshold, maka aktivasi neuron akan dibatalkan, sebaliknya jika

masih dibawah nilai threshold, neuron akan diaktifkan. Setelah aktif, neuron akan

mengirimkan nilai output melalui bobot-bobot outputnya ke semua neuron yang

berhubungan dengannya. Proses ini akan terus berulang pada input-input

selanjutnya (Puspitaningrum, 2007).

ANN terdiri dari banyak neuron di dalamnya. Neuron-neuron ini akan

dikelompokkan ke dalam beberapa layer. Neuron yang terdapat pada tiap layer

dihubungkan dengan neuron pada layer lainnya. Hal ini tentunya tidak berlaku pada

layer input dan output, tapi hanya layer yang berada di antaranya. Informasi yang

diterima di layer input dilanjutkan ke layer-layer dalam ANN secara satu persatu

hingga mencapai layer terakhir atau layer output. Layer yang terletak di antara input

dan output disebut sebagai hidden layer. Namun, tidak semua ANN memiliki hidden

layer, ada juga yang hanya terdapat layer input dan output saja.

2.7.1. Decision Tree Learning

Decision tree learning adalah salah satu metode belajar yang sangat populer

dan banyak digunakan secara praktis. Metode ini merupakan metode yang berusaha

menemukan fungsi-fungsi pendekatan yang bernilai diskrit dan tahan terhadap data-

data yang terdapat kesalahan (noisy data) serta mampu mempelajari ekspresi-

ekspresi disjunctive (ekspresi OR). Iterative Dychotomizer version 3 (ID3) adalah

salah satu jenis decision tree yang sangat populer.

Konsep Decision Tree adalah mengubah data menjadi pohon keputusan

(decision tree) dan aturan-aturan keputusan (rule) yang terlihat pada gambar 2.14.

Page 42: BAB II KAJIAN PUSTAKA 2.1. State of The Art

53

Gambar 2.14 Konsep Decision Tree

Decision tree adalah struktur flowcart yang mempunyai tree (pohon),

dimana setiap simpul internal menandakan suatu tes atribut, setiap cabang

merepresentasikan hasil tes, dan simpul daun merepresentasikan kelas atau

distribusi kelas. Alur pada decision tree ditelusuri dari simpul akar ke simpul daun

yang memegang prediksi kelas untuk contoh tersebut. Decision tree mudah untuk

dikonversi ke aturan klasifikasi (classification rule). Konsep data dalam decision

tree dinyatakan dalam bentuk tabel dengan atribut dan record (Suyanto, 2014).

Pohon (tree) merupakan sebuah graf terhubung yang tidak mengandung

sirkuit. Konsep pohon (tree) dalam teori graf merupakan konsep yang sangat

penting, karena terapannya diberbagai bidang ilmu. Oleh karenanya antara pohon

(tree) sangat erat hubungannya dengan teori graf. Definisi pohon adalah graf tak

berarah terhubung yang tidak mengandung sirkuit, menurut definisi tersebut, ada

dua sifat penting pada pohon yaitu terhubung dan tidak mengandung sirkuit. Pohon

(tree) merupakan graf dimana dua simpul memiliki paling banyak satu lintasan

yang menghubungkannya. Pohon seringkali memiliki akar, karena setiap simpul

pada pohon hanya memiliki satu lintasan akses dari setiap simpul lainnya, maka

tidak mungkin bagi sebuah lintasan untuk membentuk simpul (loop) atau siklus

(cycle) yang secara berkesinambungan melalui serangkaian simpul seperti terlihat

pada gambar 2.15 (Suyanto, 2014).

Page 43: BAB II KAJIAN PUSTAKA 2.1. State of The Art

54

Gambar 2.15 Konsep Tree (Suyanto, 2014)

Komponen dalam pencarian Decision tree learning adalah sebagai berikut:

a. Entropy dan Information Gain

Sebuah obyek yang diklasifikasikan dalam pohon harus dites nilai

entropinya. Entropy adalah ukuran dari teori informasi yang dapat mengetahui

karakteristik dari impuryt, dan homogenity dari kumpulan data yaitu dengan

mengatur heterogenitas (keberagaman) dari suatu sampel data. Jika kumpulan

sampel data semakin heterogen, maka nilai entropy-nya semakin besar. Dari nilai

entropy tersebut kemudian dihitung nilai information gain (IG) masing-masing

atribut. Secara matematis, entropy dirumuskan sebagai berikut (rumus 2.18):

Entropy(S) = - (pi log2 pi ) – (pj log2 pj) ………………………………(2.18)

dimana (1) S adalah ruang/data sampel yang digunakan untuk training. (2) Pi adalah

jumlah yang bersolusi positif (mendukung) pada data sampel untuk kriteria tertentu.

(3) Pj adalah jumlah yang bersolusi negatif (tidak mendukung) pada data sampel

untuk kriteria tertentu.

Dari rumus entropy 2.18 tersebut dapat disimpulkan bahwa definisi entropy

(S) adalah jumlah bit yang diperkirakan dibutuhkan untuk dapat mengekstrak suatu

kelas (i atau j) dari sejumlah data acak pada suatu ruang sampel S. Entropy bisa

dikatakan sebagai kebutuhan bit untuk menyatakan suatu kelas. Semakin kecil nilai

entropy maka semakin baik digunakan dalam mengekstraksi suatu kelas.

Page 44: BAB II KAJIAN PUSTAKA 2.1. State of The Art

55

Setelah mendapat nilai entropy untuk suatu kumpulan data, maka kita dapat

mengukur efektivitas suatu atribut dalam mengklasifikasikan data. Ukuran

efektifitas ini disebut information gain. Secara matematis, infomation gain dari

suatu atribut A, dituliskan sebagai berikut (rumus 2.19):

Gain (S, A) = Entropy (S) - ∑ Entropy (Sv) ………… (2.19)

dimana (1) A adalah atribut, (2) V menyatakan suatu nilai yang mungkin untuk

atribut A, (3) Values (A) merupakan himpunan nilai-nilai yang mungkin untuk

atribut A, (4) | Sv | adalah jumlah sampel untuk nilai v, (5) | S | merupakan jumlah

seluruh sampel data, dan (6) Entropy (Sv) adalah entropy untuk sampel-sampel yang

dimiliki v.

b. Algoritma ID3

Iterative Dychotomizer version 3 (ID3) adalah algoritma decision tree

learning (algoritma pembelajaran pohon keputusan) yang paling dasar. Algoritma

ini melakukan pencarian secara menyeluruh (greedy) pada semua kemungkinan

pohon keputusan. Salah satu algoritma induksi pohon keputusan yaitu Iterative

Dychotomizer version 3 (ID3). ID3 dikembangkan oleh J. Ross Quinlan. Algoritma

ID3 dapat diimplementasikan menggunakan fungsi rekursif (fungsi yang

memanggil dirinya sendiri). Algoritma ID3 berusaha membangun decision tree

(pohon keputusan) secara top-down (dari atas ke bawah), mulai dengan pertanyaan

“atribut mana yang pertama kali harus dicek dan diletakkan pada root?”, pertanyaan

ini dijawab dengan mengevaluasi semua atribut yang ada dengan menggunakan

suatu ukuran statistik (yang banyak digunakan adalah information gain) untuk

v ϵValues (A)

|Sv|

|S|

Page 45: BAB II KAJIAN PUSTAKA 2.1. State of The Art

56

mengukur efektivitas suatu atribut dalam mengklasifikasikan kumpulan sampel

data.

Decision Tree adalah sebuah struktur pohon, dimana setiap node pohon

merepresentasikan atribut yang telah diuji, setiap cabang merupakan suatu

pembagian hasil uji, dan node daun (leaf) merepresentasikan kelompok kelas

tertentu. Level node teratas dari sebuah decision tree adalah node akar (root) yang

biasanya berupa atribut yang paling memiliki pengaruh terbesar pada suatu kelas

tertentu.

Berikut ini adalah algoritma ID3 (Suyanto, 2014):

Function ID3 (KumpulanSampel, AtributTarget, KumpulanAtribut)

1. Buat simpul Root

2. If semua sampel adalah kelas i, maka Return pohon satu simpul Root

dengan label = i

3. If KumpulanAtribut kosong, Return pohon satu simpul Root dengan

label = nilai atribut target yang paling umum (yang paling sering

muncul)

Else

a. A Atribut yang merupakan the best classifer (dengan

information gain terbesar)

b. Atribut keputusan untuk Root A

c. For vi (setiap nilai pada A)

1) Tambahkan suatu cabang di bawah Root sesuai dengan nilai vi

Page 46: BAB II KAJIAN PUSTAKA 2.1. State of The Art

57

2) Buat suatu variable, misalnya Sampelvi, sebagai himpunan

bagian (subset) dari KumpulanSampel yang bernilai vi pada

atribut A.

3) If Sampelvi kosong

a) Then dibawah cabang ini tambahkan suatu simpul daun

(leaf node, simpul yang tidak punya anak dibawahnya)

dengan label = nilai atribut target yang paling umum (yang

paling sering muncul)

b) Else dibawah cabang ini tambahkan subtree dengan

memanggil fungsi ID3 (Sampelvi, AtributTarget,Atribut-

{A})

End

End

End

4. Return Root

2.7.2. Backpropagation

Artificial Neural Network (ANN) merupakan salah satu sistem pemrosesan

informasi atau data yang didisain dengan menirukan cara kerja otak manusia dalam

menyelesaikan suatu masalah dengan melakukan proses belajar melalui perubahan

bobot sinapsisnya (Puspitaningrum, 2007). Salah satu metode yang digunakan

dalam ANN adalah Backpropagation. Backpropagation adalah algoritma

pembelajaran untuk memperkecil tingkat error dengan cara menyesuaikan

bobotnya berdasarkan perbedaan output dan target yang diinginkan.

Page 47: BAB II KAJIAN PUSTAKA 2.1. State of The Art

58

Backpropagation juga merupakan sebuah metode sistematik untuk

pelatihan multilayer ANN karena backpropagation memiliki tiga layer dalam proses

pelatihannya, yaitu input layer, hidden layer dan output layer, dimana

backpropagation ini merupakan perkembangan dari single layer network (jaringan

layar tunggal) yang memiliki dua layer, yaitu input layer dan output layer. Dengan

adanya hidden layer pada backpropagation dapat menyebabkan tingkat error pada

backpropagation lebih kecil dibanding tingkat error pada single layer network,

karena hidden layer pada backpropagation berfungsi sebagai tempat untuk meng-

update dan menyesuaikan bobot, sehingga didapatkan nilai bobot yang baru yang

bisa diarahkan mendekati dengan target output yang diinginkan. Gambar 2.16

menggambarkan tentang arsitektur backpropagation.

Gambar 2.16 Arsitektur Backpropagation (Chauvin, 2013)

Pada gambar 2.16 yang menjelaskan tentang arsitektur backpropagation

dimana:

X = Masukan (input).

Vij = Bobot pada lapisan tersembunyi.

Page 48: BAB II KAJIAN PUSTAKA 2.1. State of The Art

59

Wij = Bobot pada lapisan keluaran.

Voj = Bias pada lapisan tersembunyi.

Woj = Bias pada lapisan tersembunyi dan lapisan keluaran.

J = 1, 2, 3,….., n.

n = Jumlah unit pengolah pada lapisan tersembunyi.

k = Jumlah unit pengolah pada lapisan keluaran.

Y = Keluaran hasil.

Pada input layer tidak terjadi proses komputasi, namun terjadi pengiriman

sinyal input X ke hidden layer. Pada hidden dan output layer terjadi proses

komputasi terhadap bobot dan bias, serta dihitung pula besarnya output dari hidden

dan output layer tersebut berdasarkan fungsi aktivasi tertentu. Dalam algoritma

backpropagation ini digunakan fungsi aktivasi sigmoid biner, karena output yang

diharapkan bernilai antara 0 sampai 1 (Chauvin, 2013).

Beberapa faktor yang mempengaruhi keberhasilan algoritma

backpropagation adalah sebagai berikut (Puspitaningrum, 2007):

a. Inisialisasi bobot

Bobot awal menentukan apakah jaringan akan mencapai global

minimal atau lokal minimal kesalahan, dan seberapa cepat jaringan

akan konvergen.

b. Laju pembelajaran

Laju pembelajaran merupakan parameter jaringan dalam

mengendalikan proses penyesuaian bobot. Nilai laju pembelajaran yang

optimal bergantung pada kasus yang dihadapi. Laju pembelajaran yang

Page 49: BAB II KAJIAN PUSTAKA 2.1. State of The Art

60

terlalu kecil menyebabkan konvergensi jaringan menjadi lebih lambat,

sedang laju pembelajaran yang terlalu besar dapat menyebabkan

ketidakstabilan pada jaringan.

c. Momentum

Momentum digunakan untuk mempercepat pelatihan jaringan. Metode

momentum melibatkan penyesuaian bobot ditambah dengan faktor

tertentu dari penyesuaian sebelumnya.

Sebelum diproses, data master dinormalisasi terlebih dahulu. Normalisasi

data adalah proses penskalaan data input sesuai dengan range fungsi aktifasi yang

digunakan. Normalisasi data dilakukan apabila data input bernilai besar (melebihi

nilai maksimum fungsi aktifasi yang digunakan) dan prosesnya sebelum

perhitungan keluaran jaringan. Jadi, keluaran jaringan yang merupakan jumlah

perkalian antara bobot dan data input menggunakan data input yang sudah melalui

normalisasi data. Sedangkan denormalisasi data adalah proses pengembalian data

yang diskala menjadi data yang sebenarnya. Denormalisasi data dilakukan pada

data hasil keluaran jaringan.

Persamaan 2.20, 2.21 dan 2.22 adalah persamaan untuk normalisasi data,

sedangkan persamaan 2.23 untuk denormalisasi data.

x’ = α * x + β …………………………………………… (2.20)

α = Upperbound – Lowerbound ………………………. (2.21)

max(x) – min(x)

β = Upperbound – (α * max(x) ) ………………………… (2.22)

x = (x’ – β) ………………………………………………. (2.23)

α

Page 50: BAB II KAJIAN PUSTAKA 2.1. State of The Art

61

Dengan x’ adalah data diskala, x adalah data asli, upperbound adalah batas

atas nilai data, lowerbound adalah batas bawah nilai data. Pada Backpropagation

menggunakan fungsi aktifasi sigmoid biner dengan interval [0,1] dimana

upperbound=1 dan lowerbound=0.

Algoritma pelatihan backpropagation pada dasarnya terbagi menjadi 2

(dua) langkah, yaitu langkah maju (feed forward) dan propagasi balik (back

propagation). Pada feed forward, perhitungan bobot-bobot neuron hanya

didasarkan pada vektor masukan, perhitungan ini untuk menghitung error antara

keluaran aktual dan target. Sedangkan pada backpropagation bobot-bobot

diperhalus dengan memperbaiki bobot-bobot sinaptik pada semua neuron yang ada.

Algoritma pelatihan feedforward dan backpropagation adalah sebagai berikut

(Suyanto, 2014):

1. Definisikan masalah, misalkan matriks masukan (P) dan matriks target

(T).

2. Inisialisasi, menentukan arsitektur jaringan, nilai ambang MSE sebagai

kondisi berhenti, learning rate, serta menetapkan nilai-nilai bobot

sinaptik melalui pembangkitan nilai acak dengan interval nilai

sembarang. Pembangkitan nilai acak dapat dilakukan dalam interval

[0,+1]. Nilai Mean Square Error (MSE) pada satu siklus pelatihan

adalah nilai kesalahan (error = nilai keluaran - nilai masukan) rata-rata

dari seluruh record (tupple) yang dipresentasikan ke ANN dan

dirumuskan seperti rumus 2.24:

MSE = ∑ error2

jumlah record ………………………………..(2.24)

Page 51: BAB II KAJIAN PUSTAKA 2.1. State of The Art

62

Semakin kecil MSE, ANN semakin kecil kesalahannya dalam

memprediksi kelas dari record yang baru. Maka, pelatihan ANN

ditujukan untuk memperkecil MSE dari satu siklus ke siklus berikutnya

sampai selisih nilai MSE pada siklus ini dengan siklus sebelumnya

lebih kecil atau sama dengan batas minimal yang diberikan (epsilon).

3. Pelatihan jaringan

a. Perhitungan Maju (feed forward)

Dengan menggunakan bobot-bobot yang telah ditentukan pada

inisialisasi awal (W1), dapat dihitung keluaran dari hidden layer

berdasarkan persamaan berikut (misalnya digunakan fungsi

aktivasi sigmoid seperti rumus persamaan 2.25).

A1 = 1

1 + e (W1*P+B1) ………………………………..(2.25)

Hasil dari keluaran hidden layer (A1) dipakai untuk mendapatkan

keluaran dari output layer seperti pada rumus persamaan 2.26.

A2 = W2 * A1 + B2 ……………………………………(2.26)

Keluaran dari jaringan (A2) dibandingkan dengan target yang

diinginkan. Selisih nilai tersebut adalah error dari jaringan seperti

pada rumus persamaan 2.27.

E = T – A2 …………………………………………….(2.27)

Sedangkan nilai error keseluruhan dinyatakan oleh rumus

persamaan 2.28 berikut ini :

SSE = ∑ ∑ E2 …………………………………………(2.28)

Page 52: BAB II KAJIAN PUSTAKA 2.1. State of The Art

63

b. Perhitungan Mundur (back propagation)

Nilai error yang didapat dipakai sebagai parameter dalam

pelatihan. Pelatihan akan selesai jika error yang diperoleh sudah

dapat diterima. Error yang didapat dikembalikan lagi ke lapis-lapis

yang berada di depannya. Selanjutnya, neuron pada lapis tersebut

akan memperbaiki nilai-nilai bobotnya. Perhitungan perbaikan

bobot diberikan pada rumus-rumus persamaan (2.29-2.34) berikut:

D2 = (1 – A22) * E ………………………………………(2.29)

D1 = (1 – A12) * (W2 * D2) …………………………….(2.30)

dW1 = dW1 + (lr * D1 * P) …………………………….(2.31)

dB1 = dB1 + (lr * D1) ………………………………….(2.32)

dW2 = dW2 + (lr * D2 * P) …………………………….(2.33)

dB2 = dB2 + (lr * D2) ………………………………….(2.34)

c. Perbaikan Bobot Jaringan

Setelah neuron-neuron mendapatkan nilai yang sesuai dengan

kontribusinya pada error keluaran, maka bobot-bobot jaringan

akan diperbaiki agar error dapat diperkecil. Perbaikan bobot

jaringan diberikan oleh rumus-rumus persamaan (2.35-2.38)

berikut:

TW1 = W1 + dW1……………………………………….(2.35)

TB1 = B1 + dB1 ………………………………………...(2.36)

TW2 = W2 + dW2 ………………………………………(2.37)

TB2 = B2 + dB2 ………………………………………...(2.38)

Page 53: BAB II KAJIAN PUSTAKA 2.1. State of The Art

64

d. Presentasi Bobot Jaringan

Bobot-bobot yang baru, hasil dari perbaikan, dipakai kembali

untuk mengetahui apakah bobot-bobot tersebut sudah cukup baik

bagi jaringan. Baik bagi jaringan berarti bahwa dengan bobot-

bobot tersebut, error yang akan dihasilkan sudah cukup kecil.

Pemakaian nilai bobot-bobot yang baru diperlihatkan pada rumus-

rumus persamaan (2.39-2.42) berikut:

TA1 = 1

1 + e (TW1*P+TB1) ………………………………(2.39)

TA2 = TW2 * TA1 + TB2 ……………………………….(2.40)

TE = T – TA2 …………………………………………...(2.41)

TSSE = ∑ TE2 …………………………………………..(2.42)

Kemudian bobot-bobot sinapsis jaringan diubah menjadi bobot-

bobot baru:

W1 = TW1; B1=TB1; W2=TW2; B2=TB2;

A1=TA1; A2=TA2; E=TE; SSE=TSSE;

4. Langkah-langkah diatas adalah untuk satu kali siklus pelatihan (satu

epoch). Bisanya, pelatihan harus diulang-ulang lagi hingga jumlah

siklus tertentu atau telah tercapai SSE (Sum Square Error) atau MSE

(Mean Square Error) yang diinginkan.

5. Hasil akhir dari pelatihan jaringan adalah bobot-bobot W1, W2, B1, dan

B2.

Page 54: BAB II KAJIAN PUSTAKA 2.1. State of The Art

65

Proses pelatihan metode Backpropagation diperlihatkan dalam gambar alur

seperti pada gambar 2.17.

Gambar 2.17 Proses Pelatihan Metode Backpropagation

Terdapat dua kondisi stopping pada algoritma backpropagation

(Puspitaningrum, 2007), yaitu:

1. Error < Error maksimum

Error adalah perbedaan yang terjadi antara ouput terhadap target yang

diinginkan. Proses ANN akan berhenti jika besarnya error yang terjadi

telah bernilai lebih kecil dari nilai error maksimum yang telah

ditetapkan. Besarnya nilai error dihitung dengan menggunakan fungsi

error kuadratis (rumus 2.43):

E = 0.5 Σk (tk – Yk)2 …………………………………….(2.43)

2. Epoch > Epoch maksimum

Epoch adalah suatu langkah yang dilakukan dalam pembelajaran pada

ANN. Jika besarnya epoch lebih besar dari besarnya epoch maksimum

yang telah ditetapkan, maka proses pembelajaran akan berhenti.

Page 55: BAB II KAJIAN PUSTAKA 2.1. State of The Art

66

Kedua kondisi stopping di atas digunakan dengan logika OR. Jadi kondisi

stopping terjadi jika besarnya Error < Error maksimum atau Epoch > Epoch

maksimum.

2.8. Pemrograman Sistem

Pemrograman sistem direncanakan menggunakan aplikasi Console

(terminal di sistem operasi linux) dengan menggunakan bahasa pemrograman

Python. Untuk beberapa komponen seperti proses backup dengan bantuan bash

shell script yang bisa digunakan dalam sistem operasi opensource seperti Linux,

sedangkan yang lainnya akan dibangun sendiri. Aplikasi yang akan direcanakan

nantinya akan dapat melakukan backup data dari multiplatform sistem operasi baik

Linux ataupun Windows. Untuk media penyimpanan data menggunakan sistem

operasi Ubuntu Linux. Data yang nantinya akan disimpan di dalam virtualisaasi

backup server adalah beberapa data yang didapatkan dalam proses backup pada

masing-masing server.

2.9. Metadata File

Metadata mendeskripsikan isi, kualitas, kondisi, dan karakteristik lainnya

mengenai suatu data yang ditulis dengan format standard. Metadata dapat juga

disebut dengan informasi mengenai suatu data. Metadata mengandung informasi

mengenai isi dari suatu data yang dipakai untuk keperluan manajemen file/data

tersebut nantinya dalam suatu basis data (Ross, 2009). Jika data tersebut dalam

bentuk teks, metadatanya berupa keterangan mengenai nama ruas (field), panjang

Page 56: BAB II KAJIAN PUSTAKA 2.1. State of The Art

67

field, dan tipe field-nya seperti integer, character, date, dan lain sebagainya. Untuk

jenis data gambar (image), metadata mengandung informasi mengenai siapa

pemotretnya, kapan pemotretannya, dan setting kamera pada saat dilakukan

pemotretan dan lain sebagainya. Sedangkan untuk jenis data berupa kumpulan file,

metadata-nya adalah nama-nama file, tipe file, dan nama pengelola (administrator)

dari file-file tersebut dan lain sebagainya.

Metadata memberikan fungsi yang sama seperti katalog yaitu: (1) membuat

sumberdaya bisa ditemukan dengan menggunakan kriteria yang relevan, (2)

mengidentifikasi sumberdaya, (3) mengelompokkan sumberdaya yang serupa, (4)

membedakan sumberdaya yang tak miliki kesamaan, (5) memberikan informasi

lokasi. Metadata terdiri dari tiga jenis utama yaitu (Ross, 2009):

1. Metadata deskriptif yang berisi informasi yang menjelaskan resource

dan membantu menemukan resource dalam suatu sistem. Contohnya

adalah sebuah katalog buku, dalam katalog buku umumnya berisi

informasi seperti nomor buku, tema, judul, dan penulis yang dapat

digunakan untuk mencari buku-buku tertentu di perpustakaan.

2. Metadata struktural, menggambarkan struktur obyek yang bisa terdiri

atas tabel dan kolom dalam database, daftar lagu pada CD, atau

halaman dalam sebuah buku. Metadata strukrutal membantu pengguna

mengeksplorasi resource menggunakan indeks dan bahkan

menggambarkan bagaimana beberapa objek berhubungan dengan yang

lain, seperti urutan file. Metadata struktural dapat mengandung

informasi tambahan termasuk batas-batas logis, posisi dalam memori,

Page 57: BAB II KAJIAN PUSTAKA 2.1. State of The Art

68

dan bahkan menjelaskan bagaimana dan mengapa sebuah objek

digunakan.

3. Metadata administratif membantu pemakai mengelola resource dan

menyediakan informasi seperti jenis file, tanggal pembuatan, kontrol

kualitas, dan frekuensi penggunaan. Jenis metadata ini digunakan

untuk merekam informasi jangka pendek dan jangka panjang tentang

kumpulan data. Sebagai contoh, monitor komputer akan berisi ukuran

monitor, model, resolusi, warna, cahaya, dan kebutuhan daya listrik.

Metadata pada suatu file dapat diperlihatkan dengan menggunakan tools

yang ada pada sistem operasi atau menggunakan tools umum seperti ntfscopy, exif,

dan tool-tools yang lainnya. Gambar 2.18 adalah contoh hasil ekstrasi metadata dari

sebuah file menggunakan tools ntfscopy.

Gambar 2.18 Contoh metadata file yang didapat dari tools ntfscopy

Page 58: BAB II KAJIAN PUSTAKA 2.1. State of The Art

69

2.10 Kode Identitas File (Hash)

Hash adalah algoritma ini terutama digunakan untuk melakukan

pemeriksaan integritas file dalam berbagai situasi. Hash adalah satu metode untuk

menilik keaslian file dari suatu media, dapat diibaratkan sebagai biometric

identifikasi digital dari file, folder atau drive. Dikatakan biometric identifikasi

digital dikarenakan fungsi hash berkaitan dengan term checksum, fingerprint, dan

ciphers dari sebuah file tersebut (Ross, 2009). Pengubahan nama file tidak

berpengaruh terhadap nilai Hash. Fungsi Hash sendiri adalah memetakan data

digital agar diperoleh hash yang menunjukkan ukuran tepat dari file tersebut.

Secara sederhaha hash mirip dengan DNA, jadi memungkinkan seseorang

memverifikasi data yang diperoleh apakah memang sama seperti aslinya atau tidak.

Hash digunakan antara lain di dalam hash tables yang fungsinya adalah agar

dapat menemukan data dengan cepat, secara sederhana dapat digambarkan bahwa

hash digunakan untuk memetakan search key ke dalam suatu index, dan kemudian

index ini ditempatkan kedalam suatu record dimana record lain yang berkaitan

disimpan. Kegunaan lainnya adalah menemukan duplikasi data atau data yang mirip

(similar).

Beberapa algoritma hashing adalah MD5, SHA, SHA256, CRC, SHA1,

SHA2, dan lain sebagainya. Algoritma hash menggunakan MD5 banyak digunakan

untuk hasing pada berbagai tipe file dan memiliki toleransi error checking yang

lebih kecil dibandingkan algoritma lainnya. Hasil hashing menggunakan MD5

dapat dikembangkan kedalam sebuah nilai numerik yang dapat digunakan untuk

mengukur tingkat healty dari sebuah file (Ross, 2009). Penggunaan hashing MD5

Page 59: BAB II KAJIAN PUSTAKA 2.1. State of The Art

70

dalam penelitian ini dikarenakan hasil dari hashing MD5 dapat mengelompokkan

tingkat pembacaan file menjadi 3 (tiga) kategori seperti tabel 2.2 yang dalam

penelitian ini digunakan sebagai kategori atribut Readable. Tabel 2.2 adalah data

tingkat healty berdasarkan National Information Standards Organization (NISO,

2007).

Tabel 2.2 Standar Tingkat Healty dari File menggunakan MD5

Numerik File (Range) Description

0 – 0,002024 Poor File (Kurang)

0,002025 – 0,6 Read File (Cukup)

0,6 – 1 Good File (Bagus)

2.11 Pengujian Sistem

Tahap selanjutnya adalah melakukan pengujian terhadap implementasi

sistem backup dalam virtualisasi server yang telah dibangun. Pengujian pertama

dilakukan dengan menggunakan bconsole yang dijalankan di aplikasi terminal di

linux dikarenakan sistem backup berbasis console untuk konfigurasi awal sistem

backup yang akan dilakukan, yaitu meliputi pengaturan waktu backup dan

penempatan file backup serta server apa saja yang akan di-backup. Tujuan dari

pengujian ini adalah untuk membuktikan apakah sistem backup sudah berjalan

dengan baik untuk mem-backup server dalam data center.

Pengujian kedua dilakukan untuk mengukur kemampuan dari sistem backup

dalam virtualisasi server. Tolak ukur utama dalam pengujian ini adalah time dan

accuracy. Tolak ukur Time diperlukan untuk pengujian kemampuan berdasarkan

waktu backup dengan membandingkan antara backup server tanpa klasifikasi ANN

menggunakan Rsync dengan backup server menggunakan klasifikasi ANN

Page 60: BAB II KAJIAN PUSTAKA 2.1. State of The Art

71

khususnya ID3 dan backpropagation. Tolak ukur Accuracy diperlukan untuk

pengujian kemampuan mengukur keakuratan file yang di-backup menggunakan

ANN dengan cara membandingkan banyaknya file yang berubah dengan file yang

di-backup antara backup server tanpa klasifikasi menggunakan Rsync dengan

backup server menggunakan klasifikasi ANN, dimana kondisi yang terbaik adalah

pada saat sistem backup memiliki tingkat keakuratan data yang lebih besar, hal ini

membuktikan bahwa sistem backup sangat akurat.

Kedua pengujian tersebut akan dilakukan dalam 2 (dua) kondisi, yaitu:

1. Pengujian Full Backup yang dilakukan secara manual untuk permulaan

backup.

2. Pengujian Incremental Backup yang dilakukan secara otomatis oleh

server backup dengan mem-backup data yang berubah.