bab 2 landasan teori 2.1. kecerdasan...

67
8 BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatan Istilah kecerdasan buatan sebenarnya berasal dari bahasa Inggris “Artificial Intelligence” (AI). Jika diartikan tiap kata, artificial artinya buatan, sedangkan intelligence adalah kata sifat yang berarti cerdas. Jadi artificial intelligence maksudnya adalah sesuatu buatan atau suatu tiruan yang cerdas. Cerdas di sini maksudnya adalah kepandaian atau ketajaman dalam berpikir, seperti halnya otak manusia dalam menyelesaikan suatu masalah. 2.1.1. Latar Belakang Pada awal diciptakannya, komputer hanya difungsikan sebagai alat komputasi belaka. Seiring dengan perkembangan waktu, penggunaan komputer semakin mendominasi kehidupan manusia sehingga komputer tidak hanya digunakan sebagai alat hitung saja, tetapi lebih dari itu yaitu menggantikan beberapa pekerjaan yang biasanya dilakukan oleh manusia. Manusia menjadi pintar dalam menyelesaikan segala permasalahan yang dihadapi karena manusia mempunyai pengetahuan dan pengalaman. Pengetahuan didapatkan dari proses belajar, pengalaman didapatkan karena perjalanan waktu dan kehidupan yang dialami oleh manusia. Semakin banyak bekal pengetahuan dan pengalaman yang dimiliki oleh seseorang, diharapkan orang tersebut lebih mampu menyelesaikan masalah yang dihadapinya.

Upload: phungthien

Post on 04-Mar-2018

214 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

8

BAB 2

LANDASAN TEORI

2.1. Kecerdasan Buatan

Istilah kecerdasan buatan sebenarnya berasal dari bahasa Inggris

“Artificial Intelligence” (AI). Jika diartikan tiap kata, artificial artinya buatan,

sedangkan intelligence adalah kata sifat yang berarti cerdas. Jadi artificial

intelligence maksudnya adalah sesuatu buatan atau suatu tiruan yang cerdas.

Cerdas di sini maksudnya adalah kepandaian atau ketajaman dalam berpikir,

seperti halnya otak manusia dalam menyelesaikan suatu masalah.

2.1.1. Latar Belakang

Pada awal diciptakannya, komputer hanya difungsikan sebagai alat

komputasi belaka. Seiring dengan perkembangan waktu, penggunaan komputer

semakin mendominasi kehidupan manusia sehingga komputer tidak hanya

digunakan sebagai alat hitung saja, tetapi lebih dari itu yaitu menggantikan

beberapa pekerjaan yang biasanya dilakukan oleh manusia.

Manusia menjadi pintar dalam menyelesaikan segala permasalahan

yang dihadapi karena manusia mempunyai pengetahuan dan pengalaman.

Pengetahuan didapatkan dari proses belajar, pengalaman didapatkan karena

perjalanan waktu dan kehidupan yang dialami oleh manusia. Semakin banyak

bekal pengetahuan dan pengalaman yang dimiliki oleh seseorang, diharapkan

orang tersebut lebih mampu menyelesaikan masalah yang dihadapinya.

Page 2: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

9

Namun bekal pengetahuan saja tidak cukup, manusia juga diberikan

akal untuk melakukan penalaran, mengambil kesimpulan berdasarkan

pengetahuan dan pengalaman yang dimilikinya. Tanpa memiliki kemampuan

penalaran yang baik, tidak ada artinya manusia itu memiliki pengetahuan dan

pengalaman sebanyak apapun. Demikian juga sebaliknya, walaupun seorang

manusia memiliki kemampuan penalaran yang baik, namun tanpa bekal

pengetahuan dan pengalaman yang memadai, manusia juga tidak dapat

menyelesaikan masalahnya dengan baik.

Agar komputer bisa bertindak seperti dan sebaik manusia, maka

komputer juga harus diberi bekal pengetahuan dan diberikan kemampuan

untuk menalar. Untuk itu, artificial intelligence akan mencoba untuk

memberikan beberapa metode untuk membekali komputer dengan kedua

komponen tersebut agar komputer bisa menjadi mesin yang cerdas.

2.1.2. Definisi Kecerdasan Buatan

Pernyataan bahwa komputer itu cerdas tentu bergantung kepada sudut

pandang dari orang yang memanfaatkan komputer tersebut. Karena itulah

sangat sulit untuk mendefinisikan dengan pasti apa yang dimaksud dengan

kecerdasan buatan itu. Artificial Intelligence digunakan untuk mengetahui dan

memodelkan proses-proses berpikir manusia dan mendesain mesin agar dapat

menirukan perilaku manusia.

Kecerdasan buatan (Artificial Intelligence) dapat juga didefinisikan

sebagai (http://id.wikipedia.org/wiki/Artificial_intelligence) kecerdasan yang

ditunjukkan oleh suatu entitas buatan. Sistem seperti ini umumnya dianggap

Page 3: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

10

sebagai komputer. Kecerdasan diciptakan dan dimasukkan ke dalam suatu

mesin (komputer) agar dapat melakukan pekerjaan seperti yang dapat

dilakukan manusia.

Menurut Russell dan Norvig (2003, p5) definisi tentang kecerdasan

buatan dikembangkan berdasarkan empat kelompok kategori, yaitu :

• Sistem yang berpikir selayaknya manusia berpikir (thinking

humanly)

• Sistem yang bertindak selayaknya manusia bertindak (acting

humanly)

• Sistem yang berpikir secara rasional (thinking rationally)

• Sistem yang bertindak secara rasional (actingt rationally)

Dari keempat perspektif di atas, pengertian kecerdasan buatan dapat

dipandang dari berbagai sudut pandang, antara lain :

• Sudut pandang kecerdasan

Kecerdasan buatan akan membuat mesin menjadi cerdas, yaitu

mampu berbuat seperti apa yang dilakukan oleh manusia.

• Sudut pandang penelitian

Kecerdasan buatan adalah suatu studi bagaimana membuat

mesin atau computer dapat melakukan sesuatu sebaik yang

dikerjakan oleh manusia. Ada beberapa bidang (domain) yang

sering dibahas oleh para peneliti meliputi:

Page 4: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

11

a. Mundane Task meliputi persepsi (vision & speech), bahasa

alami (understanding, generation & translation), pemikiran

yang bersifat umum (common sense), dan robot kontrol.

b. Formal Task misalnya permainan (games), Matematika

(geometri, logika, kalkulus integral, pembuktian).

c. Expert Task seperti analisis finansial, analisis medikal,

analisis ilmu pengetahuan, rekayasa (desain, pencarian

kegagalan, perencanaan manufaktur).

• Sudut pandang bisnis

Kecerdasan buatan adalah sekumpulan peralatan (tools) yang

sangat powerfull dan metodologis dalam menyelesaikan

masalah bisnis.

• Sudut pandang pemrograman

Kecerdasan buatan meliputi studi tentang pemrograman

simbolik, penyelesaian masalah (problem solving) dan

pencarian (searching).

Untuk melakukan aplikasi kecerdasan buatan ada dua bagian utama

yang sangat dibutuhkan, yaitu :

• Basis pengetahuan (Knowledge Base)

Berisi fakta – fakta, teori, pemikiran dan hubungan antara satu

dengan yang lainnya.

• Mesin Inferensi (Inference Engine)

Merupakan mesin penarik kesimpulan berdasarkan fakta.

Page 5: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

12

2.1.3. Konsep Kecerdasan Buatan

Kecerdasan buatan bukan hanya sekedar ingin mengerti apa itu sistem

kecerdasan, tetapi juga mengkonstruksinya. Metode pengujian kecerdasan

yang paling dikenal yaitu Turing Test, diperkenalkan oleh Alan Turing pada

tahun 1950. Proses pengujian ini melibatkan seseorang yang bertanya

(manusia) dan dua objek (manusia dan komputer cerdas) yang diberi

pertanyaan. Dalam pengujian ini, orang yang bertanya berusaha membedakan

antara objek manusia dan objek komputer cerdas.

Sifat penting dari kecerdasan buatan adalah bahwa kecerdasan buatan

merupakan bagian dari ilmu komputer yang melakukan proses secara simbolik

dan non-algoritmik dalam penyelesaian masalah. Proses penyelesaian masalah

dalam konsep kecerdasan buatan dimulai dari metode heuristic, yang dalam

bahasa Yunani berarti menemukan. Heuristic disini merupakan suatu strategi

untuk melakukan proses pencarian (search) ruang problem secara efektif, yang

memandu proses pencarian yang kita lakukan di sepanjang jalur yang memiliki

kemungkinan sukses paling besar.

Selanjutnya proses inferensi (penarikan kesimpulan), dimana AI

(Artificial Intelligence) mencoba membuat mesin yang memiliki kemampuan

berpikir atau mempertimbangkan (reasoning), termasuk didalamnya proses

(inferencing) berdasarkan fakta-fakta dan aturan dengan menggunakan metode

heuristic, dan sebagainya.

Page 6: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

13

Terakhir dilakukan pencocokan pola (Pattern Matching) yaitu berusaha

untuk menjelaskan objek, kejadian (events) atau proses, dalam hubungan logik

atau komputasional.

2.1.4. Tujuan Dikembangkannya Kecerdasan Buatan

Adapun tujuan dikembangkannya kecerdasan buatan adalah sebagai

berikut :

• Untuk mengembangkan metode dan sistem untuk

menyelesaikan masalah-masalah yang biasa diselesaikan

melalui aktifivitas intelektual manusia, misalnya pengolahan

citra, perencanaan, peramalan dan lain-lain, meningkatkan

kinerja sistem informasi yang berbasis komputer.

• Untuk meningkatkan pengertian dan pemahaman kita pada

bagaimana otak manusia bekerja.

2.1.5. Kelebihan dan Kekurangan Kecerdasan Buatan

Secara sederhana, kelebihan dan kekurangan dari kecerdasan buatan

dapat dilihat dalam tabel berikut. (Hestiningsih, 2007).

Page 7: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

14

Tabel 2.1 Kelebihan dan kekurangan kecerdasan buatan

Kelebihan Kekurangan 1. Lebih bersifat pemanen 2. Lebih mudah diduplikasi dan

disebarkan 3. Lebih murah jika dibandingkan

dengan Natural Intelligence 4. Lebih bersifat konsisten 5. Dapat didokumentasikan 6. Dapat mengerjakan pekerjaan lebih

cepat 7. Dapat mengerjakan pekerjaan lebih

baik

1. Tidak kreatif, karena untuk

menambah pengetahuan harus dilakukan melalui sistem yang dibangun

2. Harus bekerja dengan input-input simbolik sehingga tidak memungkinkan untuk menggunakan pengalaman secara langsung

3. Pemikiran sangat terbatas

2.2. Soft Computing

Sistem cerdas pada dasarnya merupakan suatu sistem yang berusaha

meniru cara berpikir manusia. Peniruan cara berpikir tersebut terdiri atas dua

bagian yaitu peniruan proses berpikir dan peniruan proses komputasi.

Pengembangan suatu sistem yang memiliki kecerdasan komputasional dikenal

dengan istilah soft computing. Soft computing berusaha untuk

mengintegrasikan beberapa paradigma model perhitungan meliputi artificial

neural network, fuzzy logic dan genetic algorithms.

2.2.1. Pengertian Soft Computing

Soft Computing adalah kumpulan teknik – teknik perhitungan dalam

ilmu komputer, inteligensia semu, machine learning dan beberapa disiplin ilmu

teknik lainnya, yang berusaha untuk mempelajari, memodelkan, dan

menganalisa fenomena yang sangat rumit : untuk metode yang lebih

konvensional yang tidak memberikan biaya rendah, analitis dan solusi lengkap

(http://en.wikipedia.org/wiki/Soft_computing).

Page 8: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

15

Selain itu, pengertian soft computing yang lain adalah segolongan

metode yang mampu mengolah data dengan baik walaupun didalamnya

terdapat ketidakpastian (uncertainty), ketidakakuratan (imprecision) maupun

kebenaran parsial (partial truth).

2.2.2. Soft Computing Sebagai Solusi

Metode soft computing (Wiryana, 2004) menempati posisi yang

menarik dalam perkembangan metode komputasi dan pemecahan masalah

pada saat ini. Hal ini karena ditawarkan solusi yang menarik dan kemudahan

implementasi dari metode ini untuk memecahkan masalah-masalah yang

tadinya sangat sulit dipecahkan dengan komputer dengan menggunakan

metode komputasi konvensional.

Dengan adanya toleransi terhadap imprecision, uncertainty dan partial

truth, diharapkan akan dapat menciptakan suatu sistem yang cerdas (intelligent

systems), handal (robustness), mudah diproses atau dijalankan (tractability)

dan membutuhkan biaya yang lebih murah (low solution cost). Karakteristik ini

menempatkan soft computing sebagai salah satu solusi yang dapat digunakan

untuk memecahkan berbagai masalah yang terdapat pada domain dunia nyata

(real-world domain), misalnya :

- Bagaimana kita mampu membaca berbagai macam corak tulisan

tangan, atau bahkan pada tulisan itu ada sebagian yang terhapus.

- Bagaimana membuat AC agar mengatur sendiri suhunya secara

otomatis, sehingga udara didalam ruangan terasa nyaman.

Page 9: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

16

- Bagaimana mengenali sesorang, padahal tidak seluruh wajahnya

dapat terlihat.

Solusi berbagai masalah yang terdapat pada domain ini tidak mudah

dihitung dengan berbagai model analitik yang ada. Diperlukan solusi yang

seolah memiliki kecerdasan sehingga mampu menyelesaikan masalah –

masalah yang sedemikian kompleks itu. Disinilah soft computing dapat

menjadi suatu solusi atas permasalahan-permasalahan tersebut.

Metode soft computing, tidak menggunakan satu algoritma yang pasti

untuk memecahkan suatu masalah. Suatu teknik hanyalah mendeskripsikan

interaksi antar sub sistem, bukanlah langkah pemecahan permasalahan secara

detail. Sehingga dapat dilukiskan pemecahan menggunakan diagram sebagai

berikut (Wiryana, 2004) :

Gambar 2.1 Pemecahan masalah dengan Soft Computing

Pada problem space, untuk setiap problem yang ingin dipecahkan, telah

diketahui contoh penyelesaiannya, yang biasanya dilakukan oleh manusia.

Informasi yang bersifat pemetaan dari masalah ke solusi inilah yang akan

diberikan kepada perangkat soft computing. Dengan memberikan proses

Page 10: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

17

pelatihan maupun optimasi secara terus menerus terhadap sistem maka solusi

untuk seluruh problem space dapat ditemukan. Jadi dalam perancangan sistem,

tidak pernah didefinisikan bagaimana solusi tersebut dicapai, yang ada

hanyalah contoh-contoh, ataupun aturan-aturan kecil dari sistem tersebut.

2.2.3. Metode-metode Soft Computing

Dengan mengacu pada definisi yang diberikan oleh Zadeh, metode-

metode dalam soft computing dapat dikategorikan ke dalam tiga kategori besar:

• Jaringan Saraf Tiruan (Artificial Neural Network) yang

menggunakan pembelajaran.

• Probabilistic Reasoning untuk mengakomodasi ketidakpastian.

• Logika Samar (Fuzzy Logic) untuk mengakomodasi

ketidaktepatan.

Kemudian ditambah dengan :

• Genetic Algorithm

• Belief Network

• Chaos Theory

Metode–metode ini sebenarnya bukanlah sesuatu yang baru yang

dikembangkan setelah munculnya konsep soft computing. Yang terjadi justru

sebaliknya. Metode–metode Fuzzy Logic, Artificial Neural Network,

Probabilistic Reasoning maupun Genetic Algorithm telah ada lebih dahulu.

Fuzzy Logic telah berkembang sejak tahun 1965. Konsep–konsep dasar Neural

Network telah digali sejak tahun 1940an. Demikian pula halnya dengan

Probabilistic Reasoning dan Genetic Algorithm yang bukan merupakan hal

Page 11: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

18

baru. Oleh karena itu, Zadeh menyebut soft computing sebagai reinkarnasi dari

metode–metode di atas.

Walaupun semua konsep dan teori diatas adalah untuk memproses

sistem dan menyelesaikan masalah yang bersifat uncertainty, keberadaan

semua konsep dan teori tersebut seharusnya tidak dilihat sebagai suatu

persaingan (competitive) tetapi lebih dilihat sebagai saling melengkapi

(complementary). Tidak ada satu konsep atau teoripun yang bersifat perfect,

powerful, dan general untuk menyelesaikan semua masalah dalam real-world

application, sehingga penggunaan suatu konsep atau teori bergantung dan

disesuaikan dengan jenis dan karakteristik dari permasalahan dan aplikasinya.

Bahkan, untuk dapat membentuk suatu complicated system yang cerdas

(intelligent system), harus diperlukan suatu hybrid system melalui

penggabungan beberapa konsep dan teori dari soft computing.

Lebih lanjut lagi, dalam konsep soft computing, metode–metode ini

ibarat pilar-pilar, saling mendukung dan bekerjasama dalam memecahkan

suatu permasalahan. Keunggulan yang diperoleh dari kerjasama metode–

metode itu lebih ditekankan daripada keunggulan individual masing-masing.

Kekurangan satu metode akan ditutup dengan kelebihan metode lainnya dan

keunggulan satu metode disumbangkan, sehingga segi–segi positif dari metode

yang ada tersebut dapat dimanfaatkan secara optimal.

beberapa karakteristik dari Soft computing yang perlu diperhatikan,

yaitu:

Page 12: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

19

1. Soft computing memerlukan keahlian manusia, apabila

direpresentasikan dalam bentuk aturan (IF-THEN)

2. Model komputasi dari soft computing diilhami oleh proses biologis

3. Soft computing merupakan teknik optimasi baru

4. Soft computing menggunakan komputasi numeris

5. Soft computing memiliki toleransi kegagalan

2.2.3.1 Jaringan Saraf Tiruan

Jaringan saraf Tiruan adalah sebuah prosesor yang terdistribusi paralel

dan mempunyai kecenderungan untuk menyimpan pengetahuan yang

didapatkannya dari pengalaman dan membuatnya tetap tersedia untuk

digunakan. Hal ini menyerupai kerja otak dalam dua hal yaitu :

1. Pengetahuan diperoleh oleh jaringan melalui suatu proses belajar.

2. Kekuatan hubungan antar sel saraf yang dikenal dengan bobot

sinapsis digunakan untuk menyimpan pengetahuan.

Gambar 2.2 Contoh Jaringan Saraf Tiruan Sederhana

Page 13: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

20

Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

input dikalikan dengan bobot (weight) yang sesuai dengan kekuatan sinapsis.

Jumlah seluruh input yang berbobot tersebut menentukan kemungkinan neuron

untuk menembakan sinyal. Nilai ini yang disebut dengan level aktivasi

(activation level). Level aktivasi menggunakan fungsi aktivasi agar dapat

dihitung. Perhitungan nilai aktivasi ini biasanya menggunakan fungsi-fungsi :

• Fungsi Identitas

• Fungsi Tangga Biner

• Fungsi Tangga Bipolar

• Fungsi Sigmoid Biner

• Fungsi Sigmoid Bipolar

2.2.3.2 Probabilistic Reasoning

Sejauh ini, telah dikenal beberapa teknik yang digunakan untuk

menggambarkan model kepercayaan, di mana ada dua kondisi nyata yang

didapatkan, yaitu sebagian fakta yang dipercaya benar (true) dan yang

dipercaya salah (false). Misalnya untuk memecahkan masalah yang mampu

menjelaskan tingkat kepercayaan tak tentu tetapi ada beberapa bukti (evidence)

yang mendukung masalah tersebut.

Suatu penalaran di mana adanya penambahan fakta baru dapat

mengakibatkan ketidakkonsistenan disebut dengan penalaran Non Monotonis.

Beberapa ciri dari jenis penalaran ini antara lain:

1. Mengandung ketidakpastian

2. Adanya perubahan pengetahuan

Page 14: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

21

3. Penambahan fakta baru dapat mengubah konklusi yang sudah

terbentuk

Untuk mengatasi penalaran non monotonis dibutuhkan suatu penalaran

yang mampu beradaptasi terhadap ketidakpastian, yakni dengan penalaran

probabilitas.

Metode penalaran probabilitas mengijinkan sistem intelegensia semu

untuk menggunakan pengetahuan yang tak tentu atau probabilitas dan dapat

membantu kita mengumpulkan bukti untuk melakukan hipotesa. Penalaran

probabilitas merupakan alat yang tepat untuk membuat keputusan. Teori

pengambilan keputusan, berhubungan dengan teori probabilitas, menyediakan

teknik tambahan untuk membantu meminimalisasi resiko dalam pengambilan

keputusan.

2.2.3.3 Genetic Algorithm

Genetic Algorithm (GA) adalah teknik pencarian yang di dalam ilmu

komputer untuk menemukan penyelesaian perkiraan untuk optimisasi dan

masalah pencarian (http://id.wikipedia.org/wiki/Algoritma_genetik). Algoritma

Genetik pertama kali dikembangkan oleh John Holland pada tahun 1970-an di

New York, Amerika Serikat.

Metoda Algoritma Genetik diinspirasikan dan didasarkan pada proses

evolusi yang terjadi pada makhluk hidup. Proses evolusi bertujuan untuk

menghasilkan keturunan yang lebih baik. Demikan juga metoda Algoritma

Genetik, bekerja dengan suatu cost function sebagai fungsi yang menguji

kualitas solusi yang dalam hal ini dilambangkan sebagai suatu individu dalam

Page 15: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

22

satu generasi. Suatu solusi akan di-kodekan dengan kode string dan dapat

dianggap seperti DNA, kemudian akan dikawinkan dengan solusi lainnya.

Suatu individu baru terlahir dianggap sebagai solusi baru. Sehingga pada

dasarnya Genetic Algorithm ini merupakan proses search yang berdasarkan

seleksi alami dan genetika (Wiryana, 2004).

Keuntungan dari Genetic Algorithm adalah sifat metode pencariannya

yang lebih optimal, tanpa terlalu memperbesar ruang pencarian, dan tanpa

kehilangan completeness. Sehingga dapat dengan mudah digunakan pada suatu

permasalahan untuk menghasilkan suatu search heuristic yang tidak domain

dependent.

Algoritma Genetik ini merupakan perkembangan dari evolutionary

algorithm, yang hanya menggunakan prinsip seleksi dan mutasi saja,

sedangkan Algoritma Genetik menggunakan seleksi, mutasi, rekombinasi, dan

beberapa variasi mekanisme yang diinsprasikan oleh mekanisme alam.

Gambar 2.3 Contoh proses Algoritma Genetik

Page 16: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

23

Secara sederhana, algoritma umum dari algoritma genetik ini dapat

dirumuskan menjadi beberapa langkah, yaitu :

a. Membentuk suatu populasi individual dengan keadaan acak

b. Mengevaluasi kecocokan setiap individual keadaan dengan

hasil yang diinginkan

c. Memilih individual dengan kecocokan tertinggi (fitness)

d. Bereproduksi, mengadakan persilangan antar individual

terpilih diselingi mutasi

e. Mengulangi langkah b – d sampai ditemukan individual

dengan hasil yang diinginkan

Kelebihan–kelebihan yang dimiliki oleh Genetic Algorithm adalah

• GA memiliki kemampuan untuk mencari nilai optimal secara

paralel, melalui proses kerjasama antara berbagai unit, yang

disebut kromosom individu.

• GA tidak memerlukan perhitungan matematika yang rumit

seperti differensial yang diperlukan oleh algoritma optimisasi

yang lain.

Sementara, Genetic Algorithm pun memiliki beberapa kekurangan,

yaitu :

• Tidak memiliki rumusan yang pasti, bagaimana mentransfer

parameter permasalahan ke dalam kode genetik. Dengan kata

lain, hal ini memerlukan pengalaman dan wawasan dari

desainer.

Page 17: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

24

• Banyak parameter yang perlu diset secara baik agar proses

evolusi dalam GA berjalan sesuai dengan yang diharapkan.

• Penentuan rumus untuk menghitung fitness merupakan hal yang

sangat penting dan mempengaruhi proses evolusi pada GA.

Sayangnya tidak ada prosedur yang baku bagaimana

menentukan rumus tsb.

2.2.3.4 Belief Network

Belief Network (disebut juga Bayesian Network) adalah sebuah model

grafis probabilistik yang merepresentasikan sekumpulan variabel dan

kebebasan probabilistiknya (http://en.wikipedia.org/wiki/Belief_network).

Sebagai contoh, sebuah Bayesian Network dapat menggambarkan hubungan

probabilistik antara penyakit dan gejala, jaringannya dapat digunakan untuk

menghitung peluang kehadiran berbagai tipe penyakit.

Dalam pemodelannya, Bayesian Network menggunakan Directed

Acyclic Graph (DAG), di mana setiap node mewakili satu variabel dan arc

(edge) melambangkan kondisi ketergantungan antar variabel. Ketergantungan

tersebut diukur oleh conditional probability untuk setiap node dengan parent

node-nya. Maka jika variabel-variabel dari jejaring adalah },,1,{ niX i Κ= dan

Pa(Xi) menggambarkan himpunan parent dari Xi, maka parameter dari jejaring

ini adalah sebuah himpunan distribusi },,1)),(|({ niXPaXP ii Κ= .

Probabilitas ini menjelaskan joint probabilities distribution untuk seluruh

jejaring sebagai berikut ini:

Page 18: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

25

∏=

=n

iiin XPaXPXXP

11 ))(|(),,( Κ

Untuk mendefinisikan sebuah jejaring Bayesian, harus dispesifikasikan

terlebih dahulu :

• Variabel-variabel untuk X1, X2, ..., Xn.

• Hubungan antara variabel-variabel tersebut. Hubungan ini

merepresentasikan pengaruh kasual antar variabel-variabel.

Jejaring yang dibentuk dari variabel-variabel ini dan hubungan-

hubungan di antaranya haruslah merupakan sebuah DAG.

• Probabilitas setiap variabel terhadap parent-nya, yaitu P(Xi |

Pa(Xi)) untuk i = 1, ..., n.

Dapat juga dikatakan bahwa Jejaring Bayesian merupakan sebuah

model dan alat acuan untuk memecahkan masalah-masalah yang tidak pasti

dengan cara menggambarkan relasi probabilitas.

2.2.3.5 Chaos Theory

Chaos Theory mendeskripsikan kelakuan dari sistem dinamis nonlinier

tertentu yang mungkin mempertunjukan kedinamisan yang sensitif pada

kondisi awal. Sebagai hasil dari kesensitifan ini, yang menunjukan dirinya

sebagai sebuah pertumbuhan eksponensial dari gangguan dalam kondisi awal,

kelakuan sistem yang semrawut tampak secara acak. Hal ini terjadi meskipun

sistem ini deterministic, yang berarti kedinamisan masa depan mereka secara

mutlak ditentukan oleh kondisi awalnya, tanpa elemen acak yang terlibat

(http://en.wikipedia.org/wiki/Chaos_theory).

Page 19: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

26

2.2.3.6 Logika Samar

Logika Samar (Fuzzy Logic) adalah metodologi pemecahan masalah

dengan beribu–ribu aplikasi dalam pengendali yang tersimpan dan pemrosesan

informasi. Fuzzy logic menyediakan cara sederhana untuk menggambarkan

kesimpulan pasti dari informasi yang ambigu, samar–samar, atau tidak tepat.

Sedikit banyak, fuzzy logic menyerupai pembuatan keputusan pada manusia

dengan kemampuannya untuk bekerja dari data yang ditafsirkan dan mencari

solusi yang tepat.

Konsep Fuzzy Logic diperkenalkan oleh Prof. Lotfi Zadeh dari

Universitas California di Berkeley pada 1965, dan dipresentasikan bukan

sebagai suatu metodologi control, tetapi sebagai suatu cara pemrosesan data

dengan memperkenankan penggunaan partial set membership dibanding crisp

set membership atau non-membership.

Fuzzy logic pada dasarnya merupakan logika bernilai banyak

(multivalued logic) yang dapat mendefinisikan nilai diantara keadaan

konvensional seperti ya atau tidak, benar atau salah, hitam atau putih, dan

sebagainya. Penalaran fuzzy menyediakan cara untuk memahami kinerja dari

sistem dengan cara menilai input dan output system dari hasil pengamatan.

2.2.3.6.1 Alasan Penggunaan Logika Samar

Logika Samar menawarkan beberapa karakteristik unik (Kaehler, 1998)

yang menjadikannya suatu pilihan yang baik untuk banyak masalah control.

Karakteristik-karakteristik yang dimaksud antara lain :

Page 20: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

27

• Sudah menjadi sifatnya yang kuat selama tidak membutuhkan

ketepatan, input yang bebas derau (noise), dan dapat diprogram

untuk gagal dengan aman jika sensor arus balik dimatikan atau

rusak. Kontrol output adalah fungsi kontrol halus meskipun

jarak variasi input yang cukup besar.

• Selama fuzzy logic controller memproses aturan–aturan yang

dibuat user yang memerintah sistem kontrol target, ia dapat

dimodifikasi dengan mudah untuk meningkatkan atau

mengubah secara drastis performa sistem. Sensor yang baru

dapat dengan mudah digabungkan ke dalam sistem secara

sederhana dengan menghasilkan aturan memerintah yang

sesuai.

• Fuzzy logic tidak terbatas pada sedikit masukan umpan-balik

dan satu atau dua output control, tidak juga penting untuk

menilai atau menghitung parameter rata-rata perubahan dengan

tujuan agar dapat diimplementasikan. Sensor data yang

menyediakan beberapa indikasi untuk aksi dan reaksi sistem

sudah cukup. Hal ini memungkinkan sensor menjadi murah

sehingga menghemat biaya sistem keseluruhan dan

kompleksitas rendah.

• Karena menggunakan operasi–operasi yang berbasiskan aturan,

jumlah input yang masuk akal dapat diproses ( 1 sampai 8 atau

lebih ) dan banyak output ( 1 sampai 4 atau lebih ) dihasilkan,

Page 21: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

28

walaupun pendefinisian rulebase secara cepat menjadi rumit

jika terlalu banyak input dan output dipilih untuk implementasi

tunggal selama pendefinisian rules (aturan), hubungan timbal

baliknya juga harus didefinisikan. Akan lebih baik jika

memecah sistem kedalam potongan–potongan yang lebih kecil

dan menggunakan fuzzy logic controllers yang lebih kecil untuk

didistribusikan pada sistem, masing–masing dengan tanggung

jawab yang lebih terbatas.

• Fuzzy Logic dapat mengontrol sistem nonlinier yang akan sulit

atau tidak mungkin untuk dimodelkan secara matematis. Hal ini

membuka pintu bagi sistem control yang secara normal

dianggap tidak mungkin untuk otomatisasi.

Sedangkan karakteristik utama dari fuzzy logic yang ditemukan oleh

Prof. Lotfi A. Zadeh adalah sebagai berikut (Aziz & Parthiban, 1996) :

• Dalam fuzzy logic, penalaran tepat dipandang sebagai suatu

kasus terbatas dari penalaran kira –kira.

• Dalam fuzzy logic segala sesuatunya adalah masalah derajat

keanggotaan.

• Sistem logis manapun dapat difuzzifikasi.

• Dalam fuzzy logic, pengetahuan diinterpretasikan sebagai

koleksi dari fuzzy yang dipaksakan pada sekumpulan variabel.

• Kesimpulan dipandang sebagai sebuah proses dari

perkembangan pembatas elastis.

Page 22: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

29

Menurut Kusumadewi (2004,p) terdapat beberapa alasan penggunaan

logika fuzzy antara lain :

• Konsep logika fuzzy mudah dimengerti. Konsep matetmatis

yang mendasari penalaran fuzzy sangat sederhana dan mudah

dimengerti.

• Logika fuzzy sangat fleksibel

• Logika fuzzy memiliki toleransi terhadap data – data yang tidak

tepat.

• Logika fuzzy mampu memodelkan fungsi-fungsi non-linear

yang sangat kompleks.

• Logika fuzzy dapat membangun dan mengaplikasikan

pengalaman-pengalaman para pakar secara langsung tanpa

harus melalui proses pelatihan.

• Logika fuzzy dapat bekerjasama dengan teknik-teknik kendali

secara konvensional.

• Logika fuzzy didasarkan pada bahasa alami

Adapun langkah – langkah penggunaan fuzzy logic adalah sebagai

berikut (Kaehler, 1998) :

1. Definisikan tujuan dan kriteria kontrol :

• Apa yang kita coba kontrol?

• Apa yang harus kita lakukan untuk mengontrol sistem?

• Respon seperti apa yang kita butuhkan?

• Apa mode kegagalan sistem yang mungkin?

Page 23: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

30

2. Tentukan hubungan antara input dan output serta memilih jumlah

minimum variabel input pada mesin fuzzy logic (secara khusus error

dan rata-rata perubahan error).

3. Dengan menggunakan struktur berbasis aturan dari fuzzy logic,

jabarkan permasalahan kontrol ke dalam aturan IF X AND Y

THEN Z yang mendefinisikan respon output sistem yang

diinginkan untuk kondisi input sistem yang diberikan. Jumlah dan

kompleksitas dari rules bergantung pada jumlah parameter input

yang diproses dan jumlah variabel fuzzy yang bekerjasama dengan

tiap–tiap parameter. Jika mungkin, gunakan setidaknya satu

variabel dan turunan waktunya. Walaupun mungkin untuk

menggunakan sebuah parameter tunggal yang error saat itu juga

tanpa mengetahui rata–rata perubahannya, hal ini melumpuhkan

kemampuan sistem untuk meminimalisasi keterlampauan untuk

sebuah tingkat input.

4. Buat fungsi keanggotaan yang menjelaskan nilai input atau output

yang digunakan dalam rules.

5. Buat rutinitas proses awal dan akhir yang penting jika

diimplementasikan dalam software, sebaliknya program rules ke

dalam mesin hardware fuzzy logic.

6. Uji sistem, evaluasi hasil, atur rules dan fungsi keanggotaan, dan

lakukan uji ulang sampai didapat hasil yang memuaskan.

Page 24: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

31

2.2.3.6.2 Konsep Logika Samar

Dalam logika konvensional, nilai kebenaran mempunyai kondisi

yang pasti yaitu benar atau salah (true atau false), dimana tidak ada kondisi

antara. Namun pemikiran mengenai logika konvensional ini sangat tidak

mungkin dalam kehidupan yang nyata. Karenanya, muncul konsep logika

samar (Fuzzy Logic) yang menawarkan suatu logika yang dapat

merepresentasikan dunia nyata.

Konsep penting dalam logika samar yaitu variabel linguistik yang

juga memegang peranan penting dalam beberapa aplikasi. Variabel

linguistik adalah variabel yang bernilai kata/kalimat, bukan angka. Alasan

penggunaan kata atau kalimat dibanding angka yaitu karena informasi yang

disampaikan lebih informatif, meskipun peranan linguistik kurang spesifik

dibandingkan angka.

Contoh :

Jika “kecepatan” adalah variabel linguistik, maka nilai linguistik

untuk variabel kecepatan misalnya “lambat”, “sedang”, dan “cepat”.

Tentunya hal ini sesuai dengan kebiasaan manusia sehari-hari dalam menilai

sesuatu, misalnya : “Ia mengendarai mobil dengan cepat”, tanpa

memberikan berapa nilai kecepatannya.

2.2.3.6.3 Himpunan Fuzzy

Sangat penting bagi kita untuk terlebih dahulu mengetahui apa itu

crisp set atau yang dikenal juga dengan conventional set, sebelum kita

Page 25: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

32

mengarah pada bagaimana himpunan fuzzy dibuat untuk mengatasi

kekurangan pada crisp set.

2.2.3.6.3.1 Crisp Set

Dalam kebanyakan jenis pemikiran sehari-hari dan refleksi

bahasanya, manusia menggunakan crisp set untuk mengelompokan

sesuatu. Yang menjadi anggota dari crisp set adalah yang seluruhnya

berhubungan atau yang tidak sama sekali. Contohnya, seorang wanita pasti

dikatakan hamil atau tidak, ia tidak pernah dikatakan “hamil sebagian” atau

“sedikit hamil”.

Berpikir dengan crisp set menjadikan segala sesuatunya lebih

sederhana, karena sesuatu bisa merupakan anggota dari suatu crisp set atau

tidak. Crisp set dapat digunakan untuk merepresentasikan gambaran

pengertian hitam dan putih. Seringkali juga, saat sesuatu itu merupakan

anggota dari sebuah crisp set maka pada waktu yang sama bukan

merupakan anggota dari crisp set manapun. Kembali hal ini

menyederhanakan penggunaan logika dengan proses pemikiran semacam

ini. Konstruksi linguistik yang menggambarkan jenis pemikiran ini dapat

benar–benar berguna, terutama saat kategori crisp digunakan.

Pada himpunan tegas (crisp), nilai keanggotaan suatu item x dalam

suatu himpunan A, yang sering ditulis dengan µA[x], memiliki 2

kemungkinan, yaitu (Kusumadewi, 2004 : p3) :

• Satu (1), yang berarti bahwa suatu item menjadi anggota dalam

suatu himpunan, atau

Page 26: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

33

• Nol (0), yang berarti bahwa suatu item tidak menjadi anggota

dalam suatu himpunan.

Untuk lebih jelasnya, bisa dilihat dari contoh dibawah ini :

Gambar 2.4 Himpunan : MUDA, PAROBAYA, dan TUA

Dari gambar di atas dapat dijelaskan bahwa :

• Apabila seseorang berusia 34 tahun, maka ia dikatakan MUDA

(µMUDA[34] = 1);

• Apabila seseorang berusia 35 tahun, maka ia dikatakan TIDAK

MUDA (µMUDA[35] = 0);

• Apabila seseorang berusia 35 tahun, maka ia dikatakan

PAROBAYA (µPAROBAYA[35] = 1);

• Apabila seseorang berusia 34 tahun, maka ia dikatakan TIDAK

PAROBAYA (µPAROBAYA[34] = 0);

• Apabila seseorang berusia 55 tahun, maka ia dikatakan

PAROBAYA (µPAROBAYA[55] = 1);

• Apabila seseorang berusia 35 tahun kurang 1 hari, maka ia

dikatakan TIDAK PAROBAYA (µPAROBAYA[35 – 1hr] = 0);

Page 27: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

34

Dari sini bisa dikatakan bahwa pemakaian himpunan crisp untuk

menyatakan umur sangat tidak adil, adanya perubahan kecil saja pada suatu

nilai mengakibatkan perbedaan kategori yang cukup signifikan. Oleh

karena itu, digunakanlah himpunan fuzzy untuk mengantisipasi hal tersebut.

2.2.3.6.3.2 Fuzzy Set

Logika fuzzy lahir berdasarkan fenomena–fenomena alam yang

serba tidak tepat dan samar ditinjau dari cara berpikir manusia, dimana

pada kenyataannya tidak ada suatu kondisi atau pernyataan yang tepat

100% benar atau 100% salah. Prof. Lotfi A. Zadeh mengemukakan bahwa

true atau false dalam logika Boolean tidak dapat merepresentasikan

pernyataan yang tidak pasti yang berada diantara pernyataan true atau false

tadi, seperti yang sering terjadi dalam dunia nyata. Untuk

merepresentasikan nilai ketidakpastian antara true atau false tersebut, Prof.

Lotfi A. Zadeh mengembangkan suatu teori berdasarkan conventional set

yang disebutnya fuzzy set (himpunan fuzzy). Sebagai ganti dari pernyataan

dengan nilai seluruhnya true atau semuanya false, logika fuzzy

memberikan nilai yang spesifik pada setiap nilai diantara pernyataan true

atau false dengan menentukan fungsi kenaggotaan (membership function)

bagi tiap nilai input dari proses fuzzy (crisp input) dan derajat keanggotaan

(degree of membership) yaitu menyatakan derajat dari crisp input sesuai

membership function antara 0 sampai 1, sehingga memungkinkan bagi

suatu persamaan memiliki nilai true dan false secara bersamaan.

Page 28: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

35

Menurut Prof. Lotfi A Zadeh (Aziz & Parthiban, 1996), fuzzy set

adalah sebuah kelas dari objek dengan serangkaian kesatuan dari grades of

membership (nilai keanggotaan). Sebuah himpunan dikarakterisasikan oleh

sebuah fungsi keanggotaan yang memberikan tiap objek sebuah nilai

keanggotaan yang rentang nilainya antara 0 dan 1. Gagasan pencantuman

(inclusion), penyatuan (union), persimpangan (intersection), pelengkap

(complement), hubungan (relation), kecembungan (convexity), dan

sebagainya diberikan pada himpunan tersebut, dan berbagai macam sifat

dari pemikiran ini dalam konteks dari fuzzy set dibangun. Secara khusus,

dalil untuk fuzzy set cembung dibuktikan tanpa perlu fuzzy set terputus.

Aturan umum untuk teori fuzzy set dituliskan sebagai berikut

(Marshall, 1993) :

dimana n merupakan jumlah kemungkinan.

Rumusan diatas menyatakan bahwa kita dapat mengambil n jumlah

event yang mungkin dan menggunakan f untuk menghasikan hasil tunggal

yang mungkin.

Untuk lebih jelasnya mengenai himpunan fuzzy dapat dilihat pada

contoh persoalan dibawah ini (Kusumadewi, 2004 : p5) :

Page 29: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

36

Gambar 2.5 Himpunan fuzzy untuk variabel Umur

Dengan adanya himpunan fuzzy memungkinkan seseorang untuk

dapat masuk kedalam 2 himpunan yang berbeda, MUDA dan

PAROBAYA, PAROBAYA dan TUA, dan sebagainya. Seberapa besar

eksistensinya dalam himpunan tersebut dapat dilihat pada nilai

keanggotaannya. Dari gambar di atas, dapat dilihat bahwa :

• Seseorang yang berumur 40 tahun, termasuk dalam himpunan

MUDA dengan µMUDA[40] = 0,25; namun dia juga termasuk

dalam himpunan PAROBAYA dengan µPAROBAYA[40] = 0,5.

• Seseorang yang berumur 50 tahun, termasuk dalam himpunan

MUDA dengan µMUDA[50] = 0,25; namun dia juga termasuk

dalam himpunan PAROBAYA dengan µPAROBAYA[50] = 0,5.

Kalau pada himpunan crisp, nilai keanggotaan hanya ada 2

kemungkinan, yaitu 0 atau 1, pada himpunan fuzzy nilai keanggotaan

terletak pada rentang 0 sampai 1. Apabila x memiliki nilai keanggotaan

fuzzy µA[x] = 0 berarti x tidak menjadi anggota himpunan A, demikian

Page 30: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

37

pula apabila x memiliki nilai keanggotaan fuzzy µA[x] = 1 berarti x menjadi

anggota penuh pada himpunan A.

Terkadang kemiripan antara keanggotaan fuzzy dengan probabilitas

menimbulkan kerancuan. Keduanya memiliki nilai pada interval [0,1],

namun interpretasi nilainya sangat berbeda antara kedua kasus tersebut.

Keanggotaan fuzzy memberikan suatu ukuran terhadap pendapat atau

keputusan, sedangkan probabilitas mengindikasikan proporsi terhadap

keseringan suatu hasil bernilai benar dalam jangka panjang. Misalnya, jika

nilai keanggotaan suatu himpunan fuzzy MUDA adalah 0,9 maka tidak

perlu dipermasalahkan berapa seringnya nilai itu diulang secara individual

untuk mengharapkan suatu hasil yang hampir pasti muda. Di lain pihak,

nilai probabilitas 0,9 muda berarti 10% dari himpunan tersebut diharapkan

tidak muda.

Himpunan fuzzy memiliki 2 atribut, yaitu (Kusumadewi, 2004 : p6):

• Linguistik

Yaitu penamaan suatu grup yang mewakili suatu keadaan atau

kondisi tertentu dengan menggunakan bahasa alami, seperti :

MUDA, PAROBAYA, TUA.

• Numerik

Yaitu suatu nilai (angka) yang menunjukan ukuran dari suatu

variabel seperti : 40, 25, 50, dsb.

Page 31: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

38

2.2.3.6.4 Perbedaan Himpunan Klasik dan Himpunan Fuzzy

Perbedaan himpunan fuzzy dengan himpunan klasik dapat

diilustrasikan seperti pada gambar dibawah ini. Dari gambar tersebut dapat

terlihat himpunan fuzzy memiliki batas yang tidak jelas, sedangkan

himpunan klasik memiliki batas yang jelas. Pada gambar di bawah ini, tanda

‘)’ menyatakan batas akhir dari sebuah scope dan tanda ‘[‘ menyatakan batas

awal sebuah scope dari himpunan klasik.

Gambar 2.6 Rentang suhu yang dinyatakan dalam Himpunan Klasik

Gambar 2.7 Rentang suhu yang dinyatakan dalam Himpunan Fuzzy

2.2.3.6.5 Sistem Fuzzy

Ada beberapa hal yang perlu diketahui dalam memahami sistem

fuzzy, yaitu (Kusumadewi, 2004 : p6) :

a. Variabel Fuzzy

Page 32: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

39

Variabel fuzzy merupakan variabel yang hendak dibahas dalam

suatu sistem fuzzy. Contoh : umur, temperatur, permintaan, dsb.

b. Himpunan Fuzzy

Himpunan fuzzy merupakan suatu grup yang mewakili suatu

kondisi atau keadaan tertentu dalam suatu variabel fuzzy.

c. Semesta Pembicaraan

Semesta pembicaraan adalah keseluruhan nilai yang diperbolehkan

untuk dioperasikan dalam suatu variabel fuzzy. Semesta

pembicaraan merupakan himpunan bilangan real yang senantiasa

naik (bertambah) secara monoton dari kiri ke kanan. Nilai semesta

pembicaraan dapat berupa bilangan positif maupun negatif.

Adakalanya nilai semesta pembicaraan ini tidak dibatasi batas

atasnya. Contoh :

• Semesta pembicaraan untuk variable umur : [0 +∞]

• Semesta pembicaraan untuk variable temperature : [0 40]

d. Domain

Domain himpunan fuzzy adalah keseluruhan nilai yang diijinkan

dalam semesta pembicaraan dan boleh dioperasikan dalam suatu

himpunan fuzzy. Seperti halnya semesta pembicaraan, domain

merupakan himpunan bilangan real yang senantiasa naik

(bertambah) secara monoton dari kiri ke kanan. Nilai domain dapat

berupa bilangan positif maupun negatif. Contoh :

• MUDA = [0, 45]

Page 33: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

40

• PAROBAYA = [35, 55]

• TUA = [45, +∞]

2.2.3.6.6 Fungsi Keanggotaan

Fungsi keanggotaan (membership function) adalah suatu kurva yang

menunjukan pemetaan titik–titik data input ke dalam nilai keanggotaannya

(sering juga disebut dengan derajat keanggotaan) yang memiliki interval

antara 0 sampai 1 (Kusumadewi, 2004 : p8). Salah satu cara yang dapat

digunakan untuk mendapatkan nilai keanggotaan adalah dengan melalui

pendekatan fungsi.

2.3 Analisis Kelompok

Analisis Kelompok (cluster analysis), disebut juga analisis segmentasi

(segmentation analysis) atau analisis taksonomi (taxonomy analysis),

merupakan seperangkat teknik untuk mencapai pekerjaan memilah–milah

objek–objek observasi menjadi subset–subset yang relatif homogen,

berdasarkan kesamaan–kesamaan antar objek (Pontoh, 2002).

Clustering adalah klasifikasi objek ke dalam kelompok yang berbeda,

atau lebih tepatnya, pembagian sebuah set data ke dalam subset–subset

(cluster), sehingga data dalam tiap subset idealnya berbagi beberapa sifat

umum yang seringkali dekatnya bergantung pada perhitungan jarak.

Pengelompokkan data (data clustering) adalah teknik umum untuk analisis

data statistik, yang digunakan pada banyak bidang, termasuk machine

learning, data mining, pengenalan pola, analisis citra dan bioinformatik

(http://en.wikipedia.org/wiki/Cluster_analysis).

Page 34: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

41

Terdapat dua jenis algoritma pengelompokan data antara lain

pengelompokkan hierarkis (hierarchical clustering) dan pengelompokan

partisional (partitional clustering)

(http://en.wikipedia.org/wiki/Cluster_analysis).

2.3.1 Hierarchical Clustering

Algoritma hierarkis menemukan cluster berturut-turut menggunakan

cluster yang dibangun sebelumnya, atau dengan kata lain pembagian data ke

dalam kelompok-kelompok tertentu tidak dilakukan dalam satu langkah.

Bahkan, serangkaian pembagian terjadi, yang mungkin berjalan dari sebuah

cluster tunggal yang berisikan semua objek ke n cluster yang masing-masing

berisi sebuah objek tunggal.

Hierarchical Clustering dibagi kedalam dua metode antara lain :

• Agglomerative Method

Didapat dengan serangkaian penyatuan n objek kedalam

kelompok-kelompok. Metode ini lebih umum digunakan.

• Divisive Method

Memisahkan n objek secara berturut-turut kedalam finer

grouping.

Hierarchical Clustering dapat ditunjukkan dengan sebuah diagram dua

dimensi yang dikenal sebagai dendogram yang mengilustrasikan penyatuan

atau pemisahan yang dibuat pada tiap urutan tahap dari analisis. Contoh

dendogram adalah sebagai berikut :

Page 35: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

42

Gambar 2.8 Dendogram

Prosedur pengelompokan hierarkis agglomerative menghasilkan

serangkaian pembagian data, Pn, Pn-1, ....... , P1 . Pn yang pertama berisi n

kelompok objek tunggal, P1 berisi kelompok tunggal yang berisi semua

permasalahan n.

Pada tiap tahap tertentu metode ini bekerja sama dengan dua cluster

yang paling mirip. Perbedaan antara metode timbul karena cara yang berbeda-

beda dalam menetapkan jarak (atau kemiripan) antar cluster.

Beberapa teknik pengelompokkan agglomerative yang sering

digunakan adalah :

• Single Linkage Clustering

Salah satu metode pengelompokan hierarkis

agglomerative yang paling sederhana adalah pertalian tunggal

(single lingkage), dikenal juga dengan teknik tetangga terdekat

(nearest neighbor). Pendefinisian sifat dari metode ini adalah

bahwa jarak antar kelompok ditetapkan sebagai jarak antara

Page 36: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

43

pasangan objek terdekat, dimana hanya pasangan yang

berisikan satu objek dari tiap kelompok yang dipertimbangkan.

Gambar 2.9 Single Linkage Clustering

• Complete Linkage Clustering

Metode pengelompokan Complete Linkage , disebut

juga furthest neighbor, adalah kebalikan dari single linkage.

Jarak antar kelompok ditetapkan sebagai jarak antar pasangan

objek terjauh, satu dari tiap-tiap kelompok.

Page 37: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

44

Gambar 2.10 Complete Linkage Clustering

• Average Linkage Clustering

Jarak antar dua cluster ditetapkan sebagai jarak rata-rata

antar semua pasangan objek, dimana tiap-tiap pasangan

dibentuk dari satu objek dari masing-masing kelompok.

Gambar 2.11 Average Linkage Clustering

Page 38: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

45

2.3.2 Partitional Clustering

Berbeda dengan hierarchical clustering, pada metode pengelompokkan

parsional ini, pembagian data ke dalam kelompok-kelompok tertentu justru

dilakukan dalam satu langkah. Partitional Clustering (Kaski, 1997), pada sisi

lain, berusaha secara langsung untuk mendekomposisikan set data ke dalam

sebuah set cluster yang terputus-putus. Fungsi standar yang diusahakan untuk

diminimalisasi oleh algoritma pengelompokkan mungkin menekankan pada

struktur lokal dari data, dengan menugaskan cluster untuk mencapai

puncaknya dalam fungsi kepadatan kemungkinan, atau struktur global. Secara

khusus, kriteria global menyangkut meminimalkan beberapa ukuran

ketidakcocokan dalam sampel pada tiap cluster, saat memaksimalkan

ketidakcocokan pada cluster yang berbeda.

Beberapa teknik pengelompokkan partisional yang sering digunakan

antara lain :

• K-Means Clustering

K-means (MacQueen,1967) adalah salah satu algoritma

unsupervised learning paling sederhana yang menyelesaikan

masalah pengelompokan yang umum dikenal. Prosedurnya

mengikuti cara yang sederhana dan mudah untuk

mengklasifikasikan set data yang diberikan melalui sejumlah

tertentu cluster (diasumsikan k cluster) menentukan prioritas.

Gagasan utamanya adalah untuk menetapkan k centroid,

satu untuk masing-masing cluster. Centroid ini seharusnya

Page 39: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

46

ditempatkan dalam cara yang cerdik karena lokasi yang berbeda

menyebabkan hasil yang berbeda pula. Jadi, pilihan terbaik

untuk menempatkannya sejauh mungkin satu sama lain.

Langkah selanjutnya adalah menjadikan tiap point masuk dalam

set data yang diberikan dan mengasosiasikannya ke centroid

terdekat. Ketika tidak ada point yang pending, langkah pertama

sempurna dan groupage awal selesai. Pada titik ini kita perlu

mengkalkulasi ulang k centroid baru sebagai barycenter dari

cluster yang didapat dari tahap sebelumnya. Setelah kita

mendapatkan k centroid baru ini, ikatan baru harus dilakukan

antara data set point yang sama dan centroid baru terdekat.

Perulangan dilakukan. Dari hasil perulangan ini kita mungkin

memperhatikan bahwa k centroid mengubah lokasinya langkah

demi langkah hingga akhirnya tidak ada lagi perubahan yang

bisa dilakukan. Dengan kata lain centroid tidak bergerak lagi.

Algoritma ini bertujuan pada peminimalan sebuah

fungsi objektif, dalam hal ini fungsi error kuadrat. Fungsi

objektifnya :

dimana adalah ukuran jarak yang dipilih antara data

point dan pusat cluster , adalah sebuah indikator jarak

pada n data point dari pusat cluster.

Page 40: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

47

Adapun algoritmanya terdiri dari langkah-langkah

sebagai berikut :

1. Tempatkan k point kedalam ruang yang

direpresentasikan oleh objek-objek yang

dikelompokkan. Point ini menerangkan centroid grup

awal.

2. Arahkan tiap objek ke grup yang memiliki centroid

terdekat.

3. Ketika semua objek telah diarahkan, hitung ulang posisi

dari k centroid.

4. Ulangi langkah 2 dan 3 sampai centroid tidak lagi

bergerak. Hal ini menciptakan pemisahan objek ke

dalam grup yang manakah matriks yang diminimalkan

dapat dihitung.

• QT Clustering Algorithm

QT (Quality Threshold) Clustering (Heyer et al,1999)

adalah suatu metode alternatif dalam pemisahan data,

diciptakan untuk pengelompokan gen. Hal ini memerlukan

penetapan banyaknya cluster awal, dan selalu menghasilkan

hasil yang sama ketika dijalankan berkali – kali.

2.3.3 Fuzzy Clustering

Fuzzy Clustering merupakan bagian dari ruang lingkup logika fuzzy.

Fuzzy Clustering merupakan salah satu teknik untuk menentukan cluster

Page 41: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

48

optimal dalam suatu ruang vektor yang sangat berguna bagi pemodelan fuzzy

terutama dalam mengidentifikasi aturan-aturan fuzzy.

Dalam Fuzzy Clustering, elemen data dapat berada dalam satu atau

lebih cluster, dan asosiasi dengan tiap elemen adalah serangkaian level

keanggotaan. Hal ini mengindikasikan kekuatan asosiasi antara elemen data

dan cluster tertentu. Fuzzy Clustering adalah sebuah proses menetapkan level

keanggotaan ini, dan kemudian menggunakannya untuk menetapkan elemen

data ke satu atau lebih cluster (http://en.wikipedia.org/wiki/Fuzzy_clustering).

Metode fuzzy clustering yang sering digunakan adalah :

• Subtractive Clustering

Subtractive clustering didasarkan atas ukuran densitas (potensi)

titik–titik data dalam suatu ruang (variabel). Konsep dasar dari

subtractive clustering adalah menentukan daerah–daerah dalam

suatu variabel yang memiliki densitas tinggi terhadap titik–titik

di sekitarnya. Titik dengan jumlah tetangga terbanyak akan

dipilih sebagai pusat cluster. Titik yang sudah terpilih sebagai

pusat cluster ini kemudian akan dikurangi densitasnya.

Kemudian algoritma akan memilih titik lain yang memiliki

tetangga terbanyak untuk dijadikan pusat cluster yang lain. Hal

ini akan dilakukan berulang–ulang hingga semua titik diuji.

• Fuzzy C-Means (FCM)

Fuzzy C–Means adalah suatu teknik clustering data

dimana keberadaan tiap-tiap titik data dalam suatu cluster

Page 42: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

49

ditentukan oleh derajat keanggotaan. Teknik ini pertama kali

diperkenalkan oleh Jim Bezdek pada tahun 1981 (Jantzen,

1998).

Fuzzy C–Means (FCM) adalah algoritma

pengelompokkan yang terawasi, sebab pada FCM kita perlu

tahu terlebih dahulu jumlah cluster yang akan dibentuk.

Algoritma FCM mencoba untuk membagi kumpulan

elemen X={ , , ... , } kedalam koleksi c fuzzy cluster

berkenaan dengan criteria yang diberikan. Diberikan set data

yang terbatas, algoritma mengembalikan pusat c cluster V

dimana V = , i =1, 2, ... , c dan matriks partisi U : U = , i =1,

..., c, j =1,..., n dimana adalah nilai numerik dalam [0,1] yang

memberitahukan tingkatan kemana masuk ke dalam cluster

ke-i.

Algoritma FCM menurut Sri Kusuma Dewi dan Hari

Purnomo (2004,p84-85) diberikan sebagai berikut :

1. Input data yang akan di-cluster X, berupa

matriks yang berukuran n x m (n = jumlah

sample data , m = atribut setiap data). Xij = data

sample ke -i (i = 1,2, ... , n), atribut ke -j (j = 1,2,

... , m).

2. Tentukan jumlah cluster (c), pangkat (w),

maksimum iterasi (MaxIter), error terkecil yang

Page 43: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

50

diharapkan (ξ), fungsi objektif awal (P0 = 0), dan

iterasi awal (t = 1).

3. Bangkitkan bilangan random μik, i = 1,2, … , n; k

= 1,2, … , c; sebagai elemen – elemen matriks

partisi awal U. Hitung jumlah setiap kolom

(atribut) :

dengan j= 1,2,…,m. Hitung :

4. Hitung pusat cluster ke-k : Vkj, dengan k=1,2,…c

dan j=1,2,…m dengan

5. Hitung fungsi objektif pada iterasi ke-t, Pt :

6. Hitung perubahan matrix partisi :

dengan i=1,2,…n dan k=1,2,…c

7. Cek kondisi berhenti :

Page 44: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

51

• Jika ( | Pt – Pt-1| < ξ ) atau (t > jumlah

iterasi maksimum) maka berhenti

• Jika tidak maka t=t+1 dan ulangi

perhitungan dimulai dari menghitung

pusat cluster.

2.4 Computer-Assisted Instruction

Komputer telah digunakan dalam dunia pendidikan sejak 25 tahun yang

lalu. Pengembangan awal ke depan memperkenalkan program perangkat lunak

sebagai alat bantu dalam proses pembelajaran yang diformulasikan ke dalam

bentuk Computer-Assisted Instruction (CAI).

Menurut Freedman (1996, p11), CAI adalah suatu sistem pengajaran

yang menggunakan komputer sebagai alat bantu dalam menyampaikan materi-

materi yang diajarkan.

CAI dikenal dengan berbagai istilah, misalnya di Amerika Serikat CAI

lebih dikenal dengan nama Computer-Assisted Learning (CAL), di Inggris

lebih mengenal CAI sebagai Computer-Based Training (CBT), dan juga

dikenal istilah-istilah lainnya seperti Computer-Based Instruction (CBI),

Computer-Based Education (CBE), Interactive Multimedia Instruction (IMI),

dan Computer-Managed Instruction (CMI). Istilah-istilah ini dapat digunakan

untuk menunjukkan kegunaan teknologi komputer dalam penulisan materi,

manajemen proses pendidikan, pelatihan, instruksi, dan pengajaran. Perbedaan

istilah-istilah tersebut mencerminkan bagian dari dukungan komputer dan

Page 45: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

52

aktivitas tradisional manusia dalam pendidikan dan spesifikasi dari proses-

proses berbasiskan komputer.

2.4.1 CAI Tradisional

CAI dirancang untuk meningkatkan pembelajaran melalui interaksi

dengan komputer yang menampilkan permasalahan-permasalahan kepada

pelajar secara interaktif dengan tujuan supaya proses belajar menjadi lebih

efisien, konsisten, dan meningkatkan motivasi pemelajar, disertai dengan

umpan balik yang cepat dan bersifat individualized.

Walaupun CAI telah menjadi penyedia pembelajaran individu selama

25 tahun, sistem tersebut sangat pasif, di mana sistem ini hanya menampilkan

teks dari halaman satu ke halaman lainnya yang menggunakan sebuah decision

tree untuk memandu pemelajar berdasarkan jawaban dan tanggapan dari si

pemelajar (Urban-Lurain, 1996). CAI gagal meningkatkan tingkat pengetahuan

pemelajar, karena CAI tidak mampu untuk membedakan pemelajar dari segi

kebutuhan maupun latar belakang pemelajar. Dan tentu saja sistem ini tidak

memiliki kemampuan sebagai pengajar sesungguhnya yang dapat mengetahui

kapan harus membantu pemelajar ketika menghadapi kesulitan terhadap suatu

subjek atau kapan akan melanjutkan pemberian topik baru ketika pemelajar

sudah mengalami peningkatan.

2.4.2 Intelligent Tutoring System

Dengan adanya kemajuan dalam bidang intelegensia semu dan

pengetahuan kognitif, para peneliti dalam bidang teknologi informasi melihat

adanya kebutuhan intelegensia semu pada sistem CAI. Maka dikombinasikan

Page 46: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

53

dengan kemampuan dalam proses komputer terutama dalam bidang pengajaran

secara prosedural dan strategi untuk memecahkan masalah, teknik intelegensia

semu dipakai untuk mengevaluasi status pengetahuan yang dimiliki oleh

pemelajar. Tanpa pengetahuan yang cukup tentang “apa yang diketahui” dan

“tidak diketahui” oleh pemelajar akan masalah yang sedang diberikan, sistem

tersebut tidak dapat memberikan pengajaran yang bersifat adaptif terhadap

pemelajar. Oleh karena telah hadir sebuah bidang baru hasil integrasi antara

intelegensia semu dengan CAI yang disebut Intelligent Tutoring System (ITS)

untuk mengatasi kekurangan-kekurangan CAI.

Berdasarkan definisinya, ITS adalah sistem intelegensia yang

menyediakan pembelajaran kepada pemelajar dan memiliki kemampuan untuk

membandingkan pemahaman pengetahuan belajar oleh model pakar. Oleh

karena itu, tidak seperti CAI yang pasif menunggu pemelajar untuk

melanjutkan subjeknya, ITS secara nyata mendorong keingintahuan pemelajar

dengan secara aktif memantau kemampuan pemelajar dan memberikan

bantuan ketika diminta. ITS mengacu pada sistem instruksional komputerisasi

tingkat lanjut, di mana:

• Menyediakan interaktivitas yang tinggi, penyampaian

pembelajaran dan pelatihan berbasiskan komputer.

• Menyesuaikan pembelajaran dengan kekuatan dan kelemahan

pemelajar

• Menyediakan pelatihan dengan pengajar intelegensia semu

• Memperbesar metode pembelajaran secara lebih mendalam

Page 47: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

54

ITS dapat membentuk suatu model yang merepresentasikan

pengetahuan yang dimiliki pemelajar. Model dibentuk berdasarkan jawaban

dan tanggapan pemelajar.

2.4.3 Pembelajaran Adaptif Berbasis Web

Beberapa tahun lalu, peneliti bidang teknologi pembelajaran mulai

berpikir bahwa untuk menghasilkan hasil pembelajaran jarak jauh yang

optimal, seharusnya sistem e-learning mampu berperan sebagai pengajar yang

dapat mengakomodasikan segala kebutuhan pemelajar. Kebutuhan ini

dipengaruhi oleh karakteristik setiap pemelajar. Akhirnya muncul konsep

penggabungan antara sistem pembelajaran adaptif, sistem manajemen

pembelajaran dan sistem manajemen konten berbasis web yang menghasilkan

sebuah konsep sistem pembelajaran adaptif berbasis web (Adaptive Web Based

Learning).

Sistem pembelajaran adaptif mampu mengakomodasikan perbedaan

karakteristik diantara siswa atau grup siswa karena setiap individu atau grup

memiliki metode belajar yang berbeda. Kemampuan ini mengadaptasi cara

mengajar guru atau dosen dimana ia dapat melewati suatu topik ajar atau

sebuah bab tertentu jika dianggap tidak sesuai dengan kebutuhan peserta

didiknya. Dengan demikian sistem pembelajaran yang adaptif semestinya juga

memiliki kemampuan dalam pemilihan materi ajar yang sesuai dengan

kebutuhan pemelajar. Sistem adaptif (disebut juga agen cerdas) dalam bidang

pembelajaran seharusnya dapat melakukan :

Page 48: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

55

a. Inisialisasi model dari karakteristik pemelajar (Student Model).

Biasanya pada tahap ini terjadi peningkatan masalah kesalahan

pengertian, kesalahan konsep atau kesalahan kalibrasi.

b. Inisialisasi materi pembelajaran serta mampu memprediksi

materi apa yang dilewati, materi yang sedang dipelajari dan

materi apa yang diminta (Current Model).

c. Menyediakan materi pembelajaran dan merevisi current model.

d. Pengulangan materi sampai semua bahan ajar dipahami oleh

siswa dan sistem memiliki sebuah model siswa yang baik untuk

pembelajaran berikutnya (student’s profile).

Berikut adalah arsitektur dari sistem adaptive web-based learning :

Gambar 2.12 Arsitektur Sistem Pembelajaran Adaptif Berbasis Web

Page 49: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

56

2.4.3.1 Model Pemelajar

Model Pemelajar (Student Model) merupakan salah satu komponen

penting dalam penyediaan keadaptifan dalam lingkungan pembelajaran yang

cerdas. Dengan kata lain, student model bertujuan untuk mencapai keadaptifan

dalam adaptive WBL. Teknik student modelling tidak hanya menyediakan

panduan individualis tetapi juga dukungan pembelajaran adaptif. Student

Modelling mencakup pembuatan model individual untuk tiap pemelajar yang

mengidentifikasi pengetahuan terkini dari pemelajar dan menyesuaikannya

dengan susunan kurikulum serta membantu pemelajar dalam pengarahan untuk

menyelesaikan rangkaian pelajaran.

Student modelling, sebagai model dari pemelajar, merepresentasikan

tingkat kepercayaan sistem komputer terhadap pengetahuan pemelajar. Secara

umum student modelling digunakan aspek yang berhubungan dengan aplikasi

sistem pengajaran berbasis komputer. Alberta Research Council's Student

Modeling study (1995), menyatakan bahwa untuk dapat memungkinkan

pengajaran dirancang secara individual, sangat penting untuk pertama-tama

menangkap pemahaman pemelajar terhadap pelajaran. Dengan informasi ini,

tingkat kesulitan materi pembelajaran dan perbaikan-perbaikan penting lainnya

dapat diawasi dalam sistem pengajaran.

Berdasarkan arsitektur sistem diatas, student model mencakup 3 bagian

antara lain (Vassileva,1995) :

• Pengetahuan pemelajar (Knowledge)

Page 50: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

57

Lembaran probabilistik dengan konsep dan relasi yang

diajarkan

• Sejarah (History)

Tugas atau metode pengajaran dan materi ajar yang digunakan.

• Sifat dan Preferensi pribadi pemelajar (Personal traits and

Preference)

Terdiri dari 2 daftar variabel dengan nilainya :

o Menunjukkan sifat-sifat psikologis seperti kepercayaan

diri, motivasi, konsentrasi, perhatian, kecerdasan, dsb.

o Menunjukkan tipe-tipe media yang dipilih

Membangun sebuah student model mencakup penetapan beberapa point

berikut :

• ”Who”, menyangkut tingkat spesialisasi dalam menetapkan

siapa yang dimodelkan dan apa sejarah pemelajar.

• ”What”, menyangkut tujuan, rencana, tindakan, kemampuan,

pengetahuan dan kepercayaan pemelajar.

• ”How”, menyangkut masalah bagaimana model tersebut

diperoleh dan dipelihara.

• ”Why”, menyangkut apakah memperoleh informasi dari

pemelajar, memberikan bantuan kepada pemelajar,

menyediakan umpan balik kepada pemelajar atau menafsirkan

tingkah laku pemelajar.

Page 51: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

58

Dalam mempertahankan sebuah student model, ada beberapa faktor

yang perlu dipertimbangkan meliputi fakta bahwa pemelajar tidak

menunjukkan performa yang konsisten, melupakan informasi secara acak dan

kemudian menampilkan langkah-langkah besar dalam pemahaman.

2.4.3.2 Course Generator

Course Generator adalah komponen yang membuat materi

pembelajaran, mengadakan interaksi dengan pemelajar dan memelihara student

model (Vassileva,1995).

Course Generator terdiri atas 2 komponen utama yaitu :

• Course Planner

merupakan program perencanaan graph AND-OR yang

memiliki 2 tujuan utama antara lain :

o Menghasilkan rencana mengenai konsep-konsep

pelajaran untuk mencapai tujuan pembelajaran yang

telah ditetapkan

o Merencanakan susunan tugas untuk pengajaran goal-

concept.

Planner dijalankan untuk membuat rencana pembelajaran

(course plan). Algoritma planning adalah modifikasi algoritma

AO* yaitu algoritma pencarian heuristik breadth-first

(Nilsson,1980). Hasil yang didapat berupa graph AND yang

dimulai dari konsep yang diketahui/dikuasai oleh pemelajar

Page 52: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

59

(mempunyai nilai probabilitas tinggi pada Student Model) dan

mengarah pada konsep target.

• The Executor

Executor menghasilkan pembelajaran yang didasarkan

pada rencana pembelajaran yang telah ditetapkan oleh course

planner dengan menyeleksi dan mempresentasikan materi

pembelajaran yang sesuai dan tepat. Selain itu, executor juga

bertugas memperbaharui student model, mengambil alih hasil

perhitungan tes pelajar yang dilakukan sebelumnya oleh student

model.

Selanjutnya, executor mengambil materi pembelajaran

yang sesuai untuk memberikan penjelasan dan perbaikan

terhadap kesalahan-kesalahan yang dilakukan pelajar pada saat

tes. Langkah ini diambil sebagai aksi umpan balik terhadap

kesalahan pemelajar.

Meskipun student model di-update, jejak perubahan dari

student model tetap dipertahankan sehingga memungkinkan

course planner melakukan perubahan rencana atau membuat

strategi perencanaan yang baru, apabila tingkat pengetahuan

pemelajar tidak mengalami kemajuan yang memuaskan.

Page 53: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

60

2.4.3.3 Basis Data

Database merupakan tempat penyimpanan data, misalnya data

pemelajar atau pengetahuan subyek. Berdasarkan arsitektur sistem diatas

(Gambar 2.25) komponen database terdiri atas 2 bagian (Vassileva,1995) :

• Materi Pembelajaran (Teaching Materials)

Materi pembelajaran berisi unit presentasi dan pengujian yang

memungkinkan komunikasi dengan pemelajar. Materi

pembelajaran dapat disampaikan melalui media-media seperti

text, gambar grafis, animasi, video, suara, dsb. Materi

pembelajaran yang baik harus difokuskan pada konsep yang

diberikan secara tepat, disamping menggunakan bahasa

sederhana yang mudah dimengerti agar informasi pengetahuan

diterima dengan baik oleh pemelajar.

• Struktur Konsep (Concept Structure)

Struktur Konsep berisi struktur pengetahuan yang akan

diajarkan. Struktur konsep direpresentasikan sebagai graph

AND-OR dengan nodes yang berhubungan dengan elemen

pengetahuan (konsep) dan link yang berhubungan dengan

hubungan yang mungkin antar konsep-konsep tersebut. Struktur

konsep digunakan untuk membuat rencana mengenai isi

pembelajaran untuk mencapai tujuan pengajaran.

Page 54: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

61

2.4.3.4 Authoring Module

Authoring Module merupakan salah satu komponen arsitektur sistem

seperti terlihat pada Gambar 2.25 diatas, yang berfungsi sebagai editor. Dilihat

dari fungsinya, authoring module terdiri dari (Vassileva,1995) :

• Teaching Materials Editor

Merupakan tool yang memungkinkan adanya ”wrapping” ,

dimana sistem dapat menggunakan materi pembelajaran yang

dibuat oleh authoring tool apapun untuk menghasilkan material

multimedia. Tujuan dibentuknya komponen ini adalah untuk

memperluas bahan presentasi sebagai tambahan informasi

domain. Semua data faktual yang sering mengalami perubahan

diberi parameter untuk selanjutnya dihubungkan dengan

objek/konsep yang sesuai yang terdapat pada struktur konsep.

• Concept Structure Editor

Merupakan editor grafis yang memungkinkan pengembangan,

memperluas dan memodifikasi struktur konsep. Concept

structure editor ini mendukung pembuatan, penghapusan dan

pertukaran antar domain. Untuk domain yang terpilih, editor ini

memungkinkan adanya :

o Insert, delete-move, name-rename nodes pada layer

o Insert, delete dan connect link

o Menampilkan semantik link yang beragam dengan

warna yang berbeda-beda.

Page 55: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

62

o Melihat materi pembelajaran yang ada didalam database

dan mengasosiasikannya dengan nodes dan link dari

struktur konsep.

• Editor for Instructional Tasks and Methods

Editor ini serupa dengan editor struktur konsep diatas, dimana

editor ini memungkinkan pembuatan, penghapusan dan

pemodifikasian struktur tugas pembelajaran. Metode alternatif

dekomposisi tugas ditampilkan dengan menghubungkan task-

nodes dengan pancaran yang memiliki warna, ketebalan dan

pola yang berbeda.

2.5 Peta Konsep

Peta konsep (concept map) adalah diagram yang menunjukkan

hubungan antar konsep (http://en.wikipedia.org/wiki/Concept_map). Konsep-

konsep dihubungkan dengan panah yang diberi label dalam struktur hierarki

yang bercabang kebawah. Teknik pemetaan konsep (concept mapping)

dikembangkan oleh Joseph D.Novak dan tim-nya di Universitas Cornell pada

1970. Pengembangan ini didasarkan pada teori kognitif oleh David Ausubel

(Assimilation Theory), yang menekankan pentingnya pengetahuan awal untuk

mempelajari konsep baru. Selanjutnya Novak mengajarkan murid-muridnya

membuat peta konsep untuk menanggapi tiap pertanyaan.

Peta konsep digunakan untuk menstimulasi berbagai ide kompleks

yang muncul, sehingga pada akhirnya dapat berfungsi sebagai alat yang dapat

meningkatkan sistem pembelajaran yang bermakna. Penggunaan peta konsep

Page 56: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

63

juga dipercaya dapat meningkatkan daya kreativitas seseorang. Hal ini yang

menyebabkan peta konsep sering digunakan dalam perancangan berbagai

perangkat lunak.

2.6 Design Tools

2.6.1 State Transition Diagram

State Transition Diagram (STD) adalah suatu alat perancangan yang

menggambarkan perilaku dinamis dari objek dalam suatu sistem. State

Transition Diagram memperlihatkan urutan keadaan yang dilalui sebuah

objek, kejadian yang menyebabkan transisi antar keadaan, dan perlakuan yang

diakibatkan oleh perubahan keadaan dari sistem. (Maksimchuk & Naiburg,

2004)

Adapun beberapa simbol yang digunakan dalam diagram ini:

• Notasi Initial State

Merupakan simbol yang menggambarkan keadaan masuk ke

dalam sistem. Notasi Initial State digambarkan dengan bentuk

lingkaran hitam.

Gambar 2.13 Notasi Initial State

• Notasi Final State

Merupakan simbol yang menggambarkan keadaan keluar dari

sistem. Notasi Final State digambarkan dengan bentuk

lingkaran hitam yang dikelilingi oleh lingkaran lain.

Page 57: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

64

Gambar 2.14 Notasi Final State

• Notasi State

State didefinisikan sebagai kondisi atau interaksi dalam masa

hidup suatu objek dimana objek tersebut memenuhi kondisi

tertentu, melakukan aksi tertentu atau menunggu event tertentu.

State berbentuk kotak dengan ujung-ujung yang melengkung.

Gambar 2.15 Notasi state

• Notasi State Transition

Merupakan simbol yang digunakan untuk mewakili transisi

yang terjadi di antara dua keadaan karena adanya suatu

kondisi/aksi. State transition disimbolkan dengan anak panah

dan disertai keterangan tindakan yang dilakukan

Gambar 2.16 Notasi State Transition

• Notasi Kondisi dan Aksi

State dihubungkan dengan state transition dan deskripsi dari

transisi tersebut yang disebut aksi. Aksi bergantung pada suatu

kondisi. Notasi kondisi dan aksi digunakan untuk

menggambarkan hal ini dan terletak berdampingan dengan state

transition.

Page 58: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

65

Gambar 2.17 Notasi Kondisi dan Aksi

• Notasi Select Connective

Notasi yang bertujuan untuk menggantikan notasi state

transition dalam kasus dimana terdapat banyak notasi state

transition dengan kondisi dan aksi yang sejenis. Dalam

pemodelan web notasi ini dapat digunakan untuk melakukan

pengelompokan hyperlink.

Gambar 2.18 Notasi Select Connective

2.6.2 Entity Relationship Diagram

Entity Relationship Diagram adalah suatu alat pemodelan data

semantik yang digunakan untuk mencapai tujuan penggambaran dan

pendeskripsian data secara abstrak. Model Entity Relationship pertama

diperkenalkan oleh Dr.Peter Chen pada tahun 1976 dan menjadi dasar dari

berbagai model Entity Relationship yang berkembang selanjutnya. Salah satu

model Entity Relationship yang paling sering digunakan adalah model

Barker/Oracle yang diciptakan oleh Richard Baker dan kemudian diadopsi dan

dimodifikasi oleh perusahaan Oracle. (Bagui & Earp, 2003)

Adapun simbol yang digunakan pada model Barker/Oracle antara lain:

• Notasi Entity

Page 59: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

66

Merupakan simbol yang menggambarkan suatu entity dalam

database. Nama dari entity dituliskan pada bagian atas. Primary

key ditandai dengan simbol “#” atau “PK” dan Foreign key

ditandai dengan simbol “*” atau “FK”. Atribut-atribut yang

wajib diisi ditandai dengan tulisan yang ditebalkan atau

diberikan tanda “not null” pada kanan atribut.

Gambar 2.19 Notasi Entity

• Notasi Mandatory Relationship

Notasi mandatory relationship menggambarkan hubungan

antara dua entity dimana partisipasinya bersifat wajib.

Gambar 2.20 Notasi Mandatory Relationship

• Notasi Optional Relationship

Notasi optional relationship menggambarkan hubungan antara

dua entity dimana partisipasinya bersifat opsional.

Gambar 2.21 Notasi Optional Relationship

• Notasi Cardinality

Notasi cardinality mendeskripsikan banyaknya satu tipe record

berkaitan dengan record lain. Notasi cardinality terdiri atas tiga

Page 60: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

67

notasi yaitu “Nol”, “Satu” dan notasi “Banyak/Lebih”. Notasi

cardinality dapat berpasangan untuk membentuk notasi “Nol

atau Lebih”, “Satu atau Lebih”, “Nol atau Satu”, dan “Tepat

Satu”. Notasi “Nol” tidak dapat berdiri sendiri.

Gambar 2.22 Notasi Cardinality

2.6.3 Pseudocode

Secara harafiah, pseudocode diartikan sebagai rancangan program atau

program “tiruan” yang biasanya pertama kali ditulis oleh seorang pemrogram

komputer sebelum menulis program yang sebenarnya. Pseudocode merupakan

salah satu cara untuk mendefinisikan spesifikasi proses, yakni penjelasan dari

proses-proses yang terjadi di dalam sistem, yang mana keberadaanya harus

mudah dimengerti baik oleh pemakai maupun pembuat sistem. Sebagai salah

satu cara pendefinisian spesifikasi proses, pseudocode dapat menjadi pedoman

bagi pembuat program dalam membuat kode program maupun dokumentasi.

Adapun beberapa karakteristik dari pseudocode dapat dijabarkan sebagai

berikut:

• Statement/perintah ditulis dalam Bahasa Inggris / Indonesia

sederhana

• Setiap perintah ditulis dalam baris terpisah

Page 61: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

68

• Keyword digunakan untuk menjelaskan control structure

tertentu

• Setiap set/bagian instruksi memiliki awal dan akhir

• Pengelompokkan statement bisa membentuk satu model yang

mempunyai nama

2.7 Development Tools

2.7.1 Java Applet

Java applet adalah sebuah program kecil yang ditulis dengan

menggunakan bahasa pemrograman Java, yang diakses melalui halaman Web

dan dapat di-download ke dalam mesin klien yang kemudian menjalankannya

di dalam jendela penjelajah web. Java applet dapat secara dinamis

menambahkan beberapa fungsi kepada halaman-halaman Web yang bersifat

statis. Akan tetapi, untuk menjalankannya sebuah komputer harus memiliki

program penjelajah web yang dapat menjalankan Java, seperti Microsoft

Internet Explorer 4.0 ke atas, Netscape Navigator, Mozilla Firefox, dan Opera

(Deitel&Deitel, 2005, pg.958).

Ketika sebuah Java applet dibuat, semua pernyataan Java yang

terkandung di dalam kode sumbernya akan dikompilasi menjadi Java

bytecode, yakni sebuah bahasa mesin semu (virtual engine/machine language)

yang dibentuk oleh Java. Berkas yang berisi Java bytecode ini akan disimpan

sebagai sebuah berkas kelas Java (Java class file) di dalam sebuah Web server,

seperti halnya Apache HTTP Server atau Microsoft Internet Information

Services (IIS). Sebuah halaman Web yang hendak menggunakan applet

Page 62: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

69

tersebut harus menggunakan tag <APPLET>...</APPLET> di dalam kode

sumber-nya. Ketika sebuah penjelajah Web milik klien melakukan request

kepada halaman Web tersebut dan menemukan bahwa di dalamnya terdapat

tag <APPLET>...</APPLET>, bytecode di dalam Java class file akan dieksekusi

oleh mesin semu di dalam jendela penjelajah Web, yang dapat berupa

Microsoft Java Virtual Machine atau Java Runtime Engine dari Sun

Microsystems.

2.7.2 Bahasa Pemrograman PHP

PHP (Personal Home Page) adalah bahasa pemrograman komputer

untuk menghasilkan halaman web dinamis (Castagnetto, 1999). PHP pertama

kali dibuat oleh Rasmus Lerdorf pada tahun 1994. Pada waktu itu PHP masih

bernama FI (Form Interpreted), yang wujudnya berupa sekumpulan script

yang digunakan untuk mengolah data form dari web. Selanjutnya Rasmus

merilis kode sumber tersebut untuk umum dan menamakannya PHP/FI,

kependekan dari Personal Home Page/Form Interpreter. Dengan perilisan

kode sumber ini menjadi open source, maka banyak programmer yang tertarik

untuk ikut mengembangkan PHP.

Berikut beberapa keunggulan PHP antara lain :

• Bahasa pemrograman PHP adalah sebuah bahasa script yang

tidak melakukan kompilasi dalam penggunaannya.

• Web Server yang mendukung PHP dapat ditemukan dimana -

mana dari mulai IIS sampai dengan apache, dengan konfigurasi

yang relatif mudah.

Page 63: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

70

• Dalam sisi pengembangan lebih mudah, karena banyaknya

milis-milis dan developer yang siap membantu dalam

pengembangan.

• Dalam sisi pemahamanan, PHP adalah bahasa scripting yang

paling mudah karena referensi yang banyak.

• PHP adalah bahasa open source yang dapat digunakan di

berbagai mesin (linux, unix, windows) dan dapat dijalankan

secara runtime melalui console serta juga dapat menjalankan

perintah-perintah sistem.

2.7.3 Basis Data

Basis data (database) adalah kumpulan informasi yang disimpan di

dalam komputer secara sistematik sehingga dapat diperiksa menggunakan

suatu program komputer untuk memperoleh informasi dari basis data tersebut

(http://id.wikipedia.org/wiki/Basis_data). Perangkat lunak yang digunakan

untuk mengelola dan memanggil query basis data disebut sistem manajemen

basis data (database management system, DBMS). Sistem basis data dipelajari

dalam ilmu informasi.

Konsep dasar dari basis data adalah kumpulan dari catatan-catatan, atau

potongan dari pengetahuan. Sebuah basis data memiliki penjelasan terstruktur

dari jenis fakta yang tersimpan di dalamnya: penjelasan ini disebut skema.

Skema menggambarkan objek yang diwakili suatu basis data, dan hubungan di

antara objek tersebut. Ada banyak cara untuk mengorganisasi skema, atau

memodelkan struktur basis data: ini dikenal sebagai model basis data atau

Page 64: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

71

model data. Model yang umum digunakan sekarang adalah model relasional,

yang menurut istilah layman mewakili semua informasi dalam bentuk tabel-

tabel yang saling berhubungan dimana setiap tabel terdiri dari baris dan kolom

(definisi yang sebenarnya menggunakan terminologi matematika). Dalam

model ini, hubungan antar tabel diwakili denga menggunakan nilai yang sama

antar tabel. Model yang lain seperti model hierarkis dan model jaringan

menggunakan cara yang lebih eksplisit untuk mewakili hubungan antar tabel.

Selain kedua istilah di atas, key juga menjadi salah satu istilah penting

dalam penggunaan basis data. Ada tiga macam key yang dapat diterapkan pada

suatu tabel, yaitu :

• Primary key

Primary key merupakan field yang digunakan untuk

menghubungkan tabel dengan tabel lainnya. Primary key dapat

terdiri dari sebuah atau beberapa field yang harus unik.

• Foreign key

Foreign key merupakan key tujuan, yaitu berupa field yang

digunakan sebagai field tujuan yang dihubungkan dengan

primary key sebagai key asal.

• Candidate key

Candidate key adalah field yang dapat menjadi primary key

pada suatu tabel.

Perangkat lunak basis data yang banyak digunakan dalam

pemrograman dan merupakan perangkat basis data high level antara lain: DB2,

Page 65: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

72

Microsoft SQL Server, Oracle, Sybase, Interbase, XBase, Firebird, MySQL,

PostgreSQL, Microsoft Access, FoxPro dan sebagainya. Selain perangkat

lunak tersebut, terdapat juga perangkat lunak pemrograman basis data aras

rendah (low level), diantaranya Btrieve dan Tsunami Record Manager.

2.7.3.1 Structured Query Language (SQL)

SQL (Structured Query Language) adalah sebuah bahasa yang

dipergunakan untuk mengakses data dalam basis data relasional. Bahasa ini

secara de facto merupakan bahasa standar yang digunakan dalam manajemen

basis data relasional. Saat ini hampir semua server basis data yang ada

mendukung bahasa ini untuk melakukan manajemen datanya

(http://id.wikipedia.org/wiki/SQL).

Secara umum, SQL terdiri dari tiga bahasa, yaitu Data Definition

Language (DDL), Data Manipulation Language (DML) dan Data Control

Language (DCL). Implementasi DDL, DML dan DCL berbeda untuk tiap

sistem manajemen basis data (SMBD), namun secara umum implementasi tiap

bahasa ini memiliki bentuk standar yang ditetapkan ANSI.

• Data Definition Language

DDL digunakan untuk mendefinisikan, mengubah, serta

menghapus basis data dan objek-objek yang diperlukan dalam

basis data, misalnya tabel, view, user, dan sebagainya. Secara

umum, DDL yang digunakan adalah CREATE untuk membuat

objek baru, USE untuk menggunakan objek, ALTER untuk

mengubah objek yang sudah ada, dan DROP untuk menghapus

Page 66: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

73

objek. DDL biasanya digunakan oleh administrator basis data

dalam pembuatan sebuah aplikasi basis data.

Beberapa contoh bentuk perintah yang termasuk dalam

DDL antara lain: CREATE TABLE, CREATE INDEX,

ALTER TABLE, DROP TABLE, dan sebagainya.

• Data Manipulation Language

DML digunakan untuk memanipulasi data yang ada

dalam suatu tabel. Perintah yang umum dilakukan adalah:

o SELECT untuk menampilkan data

o INSERT untuk menambahkan data baru

o UPDATE untuk mengubah data yang sudah ada

o DELETE untuk menghapus data

• Data Control Language

DCL adalah kelompok perintah yang dipakai untuk

melakukan otorisasi terhadap pengaksesan data dan

pengalokasian ruang. Termasuk dalam kategori DCL yaitu

pernyataan-pernyataan seperti GRANT, REVOKE, COMMIT,

dan ROLLBACK.

2.7.3.2 MySQL

MySQL adalah salah satu jenis aplikasi basis data yang bersifat

compatible dengan bahasa pemrograman PHP. MySQL saat ini digunakan

dalam mayoritas aplikasi yang menggunakan PHP sebagai bahasa

Page 67: BAB 2 LANDASAN TEORI 2.1. Kecerdasan Buatanlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00111-IF Bab 2.pdf · Pada Jaringan Saraf Tiruan, setiap neuron menerima satu input, setiap

74

pemrogramannya. Hal ini dikarenakan MySQL mempunyai beberapa

keuntungan seperti:

• Bersifat free sehingga mengurangi biaya perancangan

• Open source

• Memiliki performa yang cepat

• Mudah digunakan karena menggunakan sintaks SQL

• Dengan menggunakan sintaks PHP ataupun tools lain seperti

phpMyAdmin, data yang disimpan pada MySQL dapat

dimanipulasi dengan mudah dan praktis