diktat sistem cerdas

44
Daftar Isi BAB 1 ................................................................................................................................... 1 Kecerdasan Buatan.............................................................................................................. 1 A. Pendahuluan ............................................................................................................ 1 1. Sejarah Kecerdasan Buatan................................................................................. 1 2. Definisi Kecerdasan Buatan ................................................................................ 2 3. Perbandingan AI dengan Program Komputer Konvensional .............................. 3 B. Bidang Aplikasi Kecerdasan Buatan....................................................................... 4 BAB 2 ................................................................................................................................. 7 Sistem Pakar........................................................................................................................ 7 A. Pendahuluan ............................................................................................................ 7 B. Manfaat dan Keterbatasan Sistem Pakar................................................................ 7 C. Komponen Sistem Pakar ......................................................................................... 9 D. Perbedaan Sistem Konvensional Dengan Sistem Pakar........................................ 10 E. Elemen Manusia yang Terkait dalam Penggunaan dan Pengembangan Sistem Pakar ............................................................................................................................. 10 F. Area Permasalahan Aplikasi Sistem Pakar ........................................................... 11 G. Struktur Sistem Pakar ........................................................................................... 12 H. Basis Pengetahuan (Knowledge Base) .................................................................. 15 I. Mesin Inferensi (Inference Engine) ...................................................................... 16 J. Langkah-Langkah Pembuatan Sistem Pakar ......................................................... 17 BAB 3 ............................................................................................................................... 21 Pencarian........................................................................................................................... 21 A. Pendahuluan .......................................................................................................... 21 B. Teknik Pencarian ................................................................................................... 21 C. Pencarian Buta (Blind Search) ............................................................................... 21 1. Breadth First Search ....................................................................................... 21 2. Depth First Search ......................................................................................... 22 D. Pencarian Terbimbing (Heuristic Search).............................................................. 23 1. Hill Climbing ...................................................................................................... 26 2. Best First Search................................................................................................ 28 BAB 4 ................................................................................................................................. 31

Upload: atika-anggraini

Post on 27-Jan-2016

63 views

Category:

Documents


4 download

DESCRIPTION

Sistem Cerdas

TRANSCRIPT

Page 1: Diktat Sistem Cerdas

Daftar Isi BAB 1 ................................................................................................................................... 1

Kecerdasan Buatan .............................................................................................................. 1

A. Pendahuluan ............................................................................................................ 1

1. Sejarah Kecerdasan Buatan ................................................................................. 1

2. Definisi Kecerdasan Buatan ................................................................................ 2

3. Perbandingan AI dengan Program Komputer Konvensional .............................. 3

B. Bidang Aplikasi Kecerdasan Buatan ....................................................................... 4

BAB 2 ................................................................................................................................. 7

Sistem Pakar ........................................................................................................................ 7

A. Pendahuluan ............................................................................................................ 7

B. Manfaat dan Keterbatasan Sistem Pakar................................................................ 7

C. Komponen Sistem Pakar ......................................................................................... 9

D. Perbedaan Sistem Konvensional Dengan Sistem Pakar ........................................ 10

E. Elemen Manusia yang Terkait dalam Penggunaan dan Pengembangan Sistem

Pakar ............................................................................................................................. 10

F. Area Permasalahan Aplikasi Sistem Pakar ........................................................... 11

G. Struktur Sistem Pakar ........................................................................................... 12

H. Basis Pengetahuan (Knowledge Base) .................................................................. 15

I. Mesin Inferensi (Inference Engine) ...................................................................... 16

J. Langkah-Langkah Pembuatan Sistem Pakar ......................................................... 17

BAB 3 ............................................................................................................................... 21

Pencarian ........................................................................................................................... 21

A. Pendahuluan .......................................................................................................... 21

B. Teknik Pencarian ................................................................................................... 21

C. Pencarian Buta (Blind Search) ............................................................................... 21

1. Breadth – First Search ....................................................................................... 21

2. Depth – First Search ......................................................................................... 22

D. Pencarian Terbimbing (Heuristic Search) .............................................................. 23

1. Hill Climbing ...................................................................................................... 26

2. Best First Search ................................................................................................ 28

BAB 4 ................................................................................................................................. 31

Page 2: Diktat Sistem Cerdas

2

Representasi Pengetahuan ............................................................................................... 31

A. Pendahuluan .......................................................................................................... 31

B. Logika ................................................................................................................... 31

1. Logika Proposisi ................................................................................................ 32

2. Logika Predikat ................................................................................................. 36

C. List dan Tree ........................................................................................................ 36

1. List ..................................................................................................................... 37

2. Tree ................................................................................................................... 37

BAB 5................................................................................................................................ 39

Logika Fuzzy ..................................................................................................................... 39

A. Pendahuluan .......................................................................................................... 39

B. Konsep Dasar Logika Fuzzy ................................................................................. 40

1. Himpunan Tegas .................................................................................................... 40

2. Himpunan Fuzzy .................................................................................................... 41

Page 3: Diktat Sistem Cerdas

1

BAB 1

Kecerdasan Buatan

A. Pendahuluan

Kecerdasan Buatan atau Sistem Cerdas atau Intelegensi Buatan atau

Artificial Inteligent (AI) merupakan cabang terpenting dalam komputer.

Komputer tidah hanya alat untuk menghitung, tetapi diharapkan dapat

diberdayakan untuk mengerjakan segala sesuatu yang bisa dikerjakan oleh

manusia. Manusia mempunyai pengetahuan, pengalaman dan kemampuan

penalaran dengan baik, untuk itu komputer bisa bertindak seperti dan sebaik

manusia, maka komputer juga harus dibekali pengetahuan dan mempunyai

kemampuan untuk menalar.

1. Sejarah Kecerdasan Buatan

Kecerdasan Buatan termasuk bidang ilmu yang relatif muda. Di awal abad

20, seorang penemu Spanyol, Torres Y Quevedo, membuat sebuah mesin yang

dapat men’skak-mat’ raja lawannya dengan sebuah ratu dan raja. Perkembangan

secara sistematis kemudian dimulai segera setelah ditemukannya komputer

digital. Pada tahun 1950-an para ilmuwan dan peneliti mulai memikirkan

bagaimana caranya agar mesin dapat melakukan pekerjaannya seperti yang bisa

dikerjakan oleh manusia. Seorang matematikawan Inggris, Alan Turing pertama

kali mengusulkan adanya tes untuk melihat bisa tidaknya sebuah mesin dikatakan

cerdas. Hasil tes tersebut kemudian dikenal dengan Turing test, dimana mesin

tersebut menyamar seolah-olah sebagai seseorang di dalam suatu permainan yang

mampu memberikan respon terhadap serangkaian pertanyaan yang diajukan.

Turning beranggapan bahwa, jika mesin dapat membuat seseorang percaya bahwa

dirinya mampu berkomunikasi dengan orang lain, maka dapat dikatakan bahwa

mesin tersebut cerdas layaknya manusia.

Istilah Kecerdasan Buatan dimunculkan pertama kali oleh pofesor dari

Massachusetts Institute of Technology (MIT) yang bernama John McCarthy pada

tahun 1956 di Dartmouth Conference yang dihadiri oleh para peneliti AI. Pada

Konferensi tersebut juga didefinisikan tujuan utama dari Kecerdasan Buatan, yaitu

Page 4: Diktat Sistem Cerdas

2

: mekanisme berfikir manusia dapat secara tepat dimodelkan dan disimulasikan

pada komputer digital. Beberapa program AI yang antara lain:

a. Logic Theorist diperkenalkan pada Dartmouth Cobference. Program ini

dapat membuktikan teorema-teorema matematika

b. ELIZA , deprogram oleh Joseph Weinzenbaum (1967). Program ini

mampu melakukan terapi terhadap pasien dengan memberikan beberapa

pertanyaan.

c. Sad Sam, deprogram oleh Robert K. Lindsay (1960), program ini dapat

mengetahui kalimat-kalimat sederhana yang ditulis dalam bahasa Inggris

dan mampu memberikan jawaban dari fakta-fakta yang didengar dalam

sebuah percakapan.

2. Definisi Kecerdasan Buatan

Banyak pakar mendifinisikan Kecerdasan Buatan, diantaranya adalah:

a. Kecerdasan Buatan adalah ilmu rekayasa yang membuat suatu mesin

mempunyai intelegensi tertentu khususnya program komputer yang

“cerdas” (John McCarthy, 1956)

b. Kecerdasan Buatan merupakan sebuah studi tentang bagaimana membuat

komputer melakukan hal-hal yang pada saat ini dapat dilakukan lebih baik

oleh manusia. (Rich and Knight, 1991)

c. Kecerdasan buatan (AI) merupakan cabang dari ilmu komputer yang

dalam mempresentasi pengetahuan lebih banyak menggunakan bentuk

symbol-simbol daripada bilangan, dan memproses informasi berdasarkan

metode heuristic (Metode Heuristik adalah teknik yang dirancang untuk

memecahkan masalah yang mengabaikan apakah solusi dapat dibuktikan

benar, tapi yang biasanya menghasilkan solusi yang baik atau

memecahkan masalah yang lebih sederhana yang mengandung atau

memotong dengan pemecahan masalah yang lebih kompleks.) atau dengan

berdasarkan sejumlah aturan. (Encyclopedia Britannica)

d. Kecerdasan adalah kemampuan untuk belajar atau mengerti dari

pengalaman. Memahami pesan yang kontradiktif dan ambigu, menanggapi

dengan cepat dan baik atas situasi yang baru, menggunakan penalaran

Page 5: Diktat Sistem Cerdas

3

dalam memecahkan masalah dan menyelesaikannya secara efektif

(Winston dan Pendergast, 1994)

Kebanyakan ahli setuju bahwa Kecerdasan Buatan berhubungan dengan 2

ide dasar. Pertama, menyangkut studi proses berfikir manusia, dan kedua

berhubungan dengan merepresentasikan proses tersebut melalui mesin (komputer,

robot, dll).

Kemampuan untuk problem solving adalah salah satu cara untuk

mengukur kecerdasan dalam berbagai konteks. Terlihat di sini bahwa mesin

cerdas akan diragukan untuk dapat melayani keperluan khusus jika tidak mampu

menangani permasalahan remeh/kecil yang biasa dikerjakan orang secara rutin.

Terdapat beberapa alasan untuk memodelkan performa manusia dalam hal ini:

a. Untuk menguji teori psikologis dari performa manusia

b. Untuk membuat komputer dapat memahami penalaran (reasoning)

manusia

c. Untuk membuat manusia dapat memahami penalaran komputer

d. Untuk mengeksploitasi pengetahuan apa yang dapat diambil dari manusia.

Menurut Winston dan Prendergast (1984), tujuan dari Kecerdasan Buatan

adalah:

a. Membuat mesin menjadi lebih pintar.

b. Memahami apakah kecerdasan (intelligence) itu.

c. Membuat mesin menjadi lebih berguna.

3. Perbandingan AI dengan Program Komputer Konvensional

Program komputer konvensional prosesnya berbasis algoritma, yakni

formula matematis atau prosedur sekuensial yang mengarah kepada suatu solusi.

Algoritma tersebut dikonversi ke program komputer yang memberitahu komputer

secara pasti instruksi apa yang harus dikerjakan. Algoritma yang dipakai

kemudian menggunakan data seperti angka, huruf, atau kata untuk menyelesaikan

masalah.

Perangkat lunak AI berbasis representasi serta manipulasi simbolik. Di sini

simbol tersebut berupa huruf, kata, atau angka yang merepresentasikan obyek,

proses dan hubungan keduanya. Sebuah obyek bisa jadi seorang manusia, benda,

pikiran, konsep, kejadian, atau pernyataan suatu fakta. Menggunakan simbol, kita

Page 6: Diktat Sistem Cerdas

4

dapat menciptakan basis pengetahuan yang berisi fakta, konsep, dan hubungan di

antara keduanya. Kemudian beberapa proses dapat digunakan untuk

memanipulasi simbol tersebut untuk menghasilkan nasehat atau rekomendasi

untuk penyelesaian suatu masalah. Perbedaan dasar antara AI dengan program

komputer konvensional diberikan dalam Tabel 1-1.

Tabel 1.1 Perbandingan antara AI dan Program Konvensional

Aspek AI Program Konvensional

Pemrosesan Sebagian besar simbolik Algoritmik

Input Tidak harus lengkap Harus lengkap

Pendekatan Pencarian Sebagian besar heuristik Algoritma

Penjelasan/Eksplansi Tersedia Biasanya tidak tersedia

Fokus Pengetahuan Data

Pemeliharaan & Peningkatan Relatif mudah Biasanya sulit

Berfikir Secara Logis Ada Tidak ada

B. Bidang Aplikasi Kecerdasan Buatan

Penerapan Kecerdasan Buatan meliputi berbagai bidang seperti

ditunjukkan pada bagian akar pohon AI dalam Gambar 1, antara lain:

Bahasa/linguistik, Psikologi, Filsafat, Teknik Elektro, Ilmu Komputer, dan Ilmu

Manajemen. Sedangkan sistem cerdas yang banyak dikembangkan saat ini adalah:

Sistem Pakar (Expert System), yaitu program konsultasi (advisory) yang

mencoba menirukan proses penalaran seorang pakar/ahli dalam memecahkan

masalah yang rumit. Sistem Pakar merupakan aplikasi AI yang paling banyak.

Lebih detil tentang Sistem Pakar akan diberikan dalam bab berikutnya.

Pemrosesan Bahasa Alami (Natural Language Processing), yang

memberi kemampuan pengguna komputer untuk berkomunikasi dengan

komputer dalam bahasa mereka sendiri (bahasa manusia). Sehingga komunikasi

dapat dilakukan dengan cara percakapan alih-alih menggunakan perintah yang

biasa digunakan dalam bahasa komputer biasa. Bidang ini dibagi 2 lagi:

a. Pemahaman bahasa alami, yang mempelajari metode yang

memungkinkan komputer mengerti perintah yang diberikan dalam

bahasa manusia biasa. Dengan kata lain, komputer dapat memahami

manusia.

Page 7: Diktat Sistem Cerdas

5

b. Pembangkitan bahasa alami, sering disebut juga sintesa suara, yang

membuat komputer dapat membangkitkan bahasa manusia biasa

sehingga manusia dapat memahami komputer secara mudah.

Gambar 1. Pohon Kecerdasan Buatan dan Apliksi Utamanya

Pemahaman Ucapan/Suara (Speech/Voice Understanding), adalah

teknik agar komputer dapat mengenali dan memahami bahasa ucapan. Proses ini

mengijinkan seseorang berkomunikasi dengan komputer dengan cara berbicara

kepadanya. Istilah “pengenalan suara” mengandung arti bahwa tujuan utamanya

adalah mengenai kata yang diucapkan tanpa harus tahu artinya, di mana bagian itu

merupakan tugas “pemahaman suara”. Secara umum prosesnya adalah usaha

untuk menerjemahkan apa yang diucapkan seorang manusia menjadi kata-kata

atau kalimat yang dapat dimengerti oleh komputer.

Sistem Sensor dan Robotika. Sistem sensor, seperti sistem visi dan

pencitraan, serta sistem pengolahan sinyal, merupakan bagian dari robotika.

Sebuah robot, yaitu perangkat elektromekanik yang diprogram untuk melakukan

Page 8: Diktat Sistem Cerdas

6

tugas manual, tidak semuanya merupakan bagian dari AI. Robot yang hanya

melakukan aksi yang telah diprogramkan dikatakan sebagai robot bodoh yang

tidak lebih pintar dari lift. Robot yang cerdas biasanya mempunyai perangkat

sensor, seperti kamera, yang mengumpulkan informasi mengenai operasi dan

lingkungannya. Kemudian bagian AI robot tersebut menerjemahkan informasi

tadi dan merespon serta beradaptasi jika terjadi perubahan lingkungan.

Komputer Visi, merupakan kombinasi dari pencitraan, pengolahan citra,

pengenalan pola serta proses pengambilan keputusan. Tujuan utama dari

komputer visi adalah untuk menerjemahkan suatu pemandangan. Komputer visi

banyak dipakai dalam kendali kualitas produk industri.

Intelligent Tutoring/Intelligent Computer-Aided Instruction, adalah

komputer yang mengajari manusia. Belajar melalui komputer sudah lama

digunakan, namun dengan menambahkan aspek kecerdasan di dalamnya, dapat

tercipta komputer “guru” yang dapat mengatur teknik pengajarannya untuk

menyesuaikan dengan kebutuhan “murid” secara individiual. Sistem ini juga

mendukung pembelajaran bagi orang yang mempunyai kekurangan fisik atau

kelemahan belajar.

Mesin Belajar (Machine Learning), yang berhubungan dengan

sekumpulan metode untuk mencoba mengajari/melatih komputer untuk

memecahkan masalah atau mendukung usaha pemecahan masalah dengan

menganalisa kasus-kasus yang telah terjadi. Dua metode mesin belajar yang

paling populer adalah Komputasi Neural dan Logika Samar (Fuzzy) yang akan

dipelajari lebih dalam di bab-bab berikutnya. Aplikasi lain dari AI misalnya untuk

merangkum berita, pemrograman komputer secara otomatis, atau menerjemahkan

dari suatu bahasa ke bahasa yang lain, serta aplikasi dalam permainan (Ingat

pertandingan catur antara Grand Master Anatoly Karpov dengan komputer Deep

Thought dari IBM).

Page 9: Diktat Sistem Cerdas

7

BAB 2

Sistem Pakar A. Pendahuluan

Sistem Pakar (expert system) merupakan usaha untuk menirukan seorang

pakar. Biasanya Sistem Pakar berupa perangkat lunak pengambil keputusan yang

mampu mencapai tingkat performa yang sebanding seorang pakar dalam bidang

problem yang khusus dan sempit. Ide dasarnya adalah: kepakaran ditransfer dari

seorang pakar (atau sumber kepakaran yang lain) ke komputer, pengetahuan yang

ada disimpan dalam komputer, dan pengguna dapat berkonsultasi pada komputer

itu untuk suatu nasehat, lalu komputer dapat mengambil inferensi (menyimpulkan,

mendeduksi, dll.) seperti layaknya seorang pakar, kemudian menjelaskannya ke

pengguna tersebut, bila perlu dengan alasan-alasannya. Sistem Pakar malahan

terkadang lebih baik unjuk kerjanya daripada seorang pakar manusia!

Kepakaran (expertise) adalah pengetahuan yang ekstensif (meluas) dan

spesifik yang diperoleh melalui rangkaian pelatihan, membaca, dan pengalaman.

Pengetahuan membuat pakar dapat mengambil keputusan secara lebih baik dan

lebih cepat daripada non-pakar dalam memecahkan problem yang kompleks.

Kepakaran mempunyai sifat berjenjang, pakar top memiliki pengetahuan lebih

banyak daripada pakar yunior. Tujuan Sistem Pakar adalah untuk mentransfer

kepakaran dari seorang pakar ke komputer, kemudian ke orang lain (yang bukan

pakar).

B. Manfaat dan Keterbatasan Sistem Pakar

A. Manfaat Sistem Pakar

Mengapa Sistem Pakar sangat populer? Hal ini disebabkan karena

banyaknya kemampuan dan manfaat yang diberikan oleh Sistem Pakar, di

antaranya:

a. Meningkatkan output dan produktivitas, karena Sistem Pakar dapat

bekerja lebih cepat dari manusia.

b. Meningkatkan kualitas, dengan memberi nasehat yang konsisten dan

mengurangi kesalahan.

Page 10: Diktat Sistem Cerdas

8

c. Mampu menangkap kepakaran yang sangat terbatas.

d. Dapat beroperasi di lingkungan yang berbahaya.

e. Memudahkan akses ke pengetahuan.

f. Handal. Sistem Pakar tidak pernah menjadi bosan dan kelelahan atau

sakit. Sistem Pakar juga secara konsisten melihat semua detil dan tidak

akan melewatkan informasi yang relevan dan solusi yang potensial.

g. Meningkatkan kapabilitas sistem terkomputerisasi yang lain. Integrasi

Sistem Pakar dengan sistem komputer lain membuat lebih efektif, dan

mencakup lebih banyak aplikasi .

h. Mampu bekerja dengan informasi yang tidak lengkap atau tidak pasti.

Berbeda dengan sistem komputer konvensional, Sistem Pakar dapat

bekerja dengan informasi yang tidak lengkap. Pengguna dapat merespon

dengan: “tidak tahu” atau “tidak yakin” pada satu atau lebih pertanyaan

selama konsultasi, dan Sistem Pakar tetap akan memberikan jawabannya.

i. Mampu menyediakan pelatihan. Pengguna pemula yang bekerja dengan

Sistem Pakar akan menjadi lebih berpengalaman. Fasilitas penjelas dapat

berfungsi sebagai guru.

j. Meningkatkan kemampuan problem solving, karena mengambil sumber

pengetahuan dari banyak pakar.

k. Meniadakan kebutuhan perangkat yang mahal.

l. Fleksibel.

B. Keterbatasan Sistem Pakar

Metodologi Sistem Pakar yang ada tidak selalu mudah, sederhana dan

efektif. Berikut adalah keterbatasan yang menghambat perkembangan Sistem

Pakar:

a. Pengetahuan yang hendak diambil tidak selalu tersedia.

b. Kepakaran sangat sulit diekstrak dari manusia.

c. Pendekatan oleh setiap pakar untuk suatu situasi atau problem bisa

berbeda-beda, meskipun sama-sama benar.

d. Adalah sangat sulit bagi seorang pakar untuk mengabstraksi atau

menjelaskan langkah mereka dalam menangani masalah

Page 11: Diktat Sistem Cerdas

9

e. Pengguna Sistem Pakar mempunyai batas kognitif alami, sehingga

mungkin tidak bisa memanfaatkan sistem secara maksimal.

f. Sistem Pakar bekerja baik untuk suatu bidang yang sempit.

g. Banyak pakar yang tidak mempunyai jalan untuk mencek apakah

kesimpulan mereka benar dan masuk akal.

h. Istilah dan jargon yang dipakai oleh pakar dalam mengekspresikan fakta

seringkali terbatas dan tidak mudah dimengerti oleh orang lain.

i. Pengembangan Sistem Pakar seringkali membutuhkan perekayasa

pengetahuan (knowledge engineer) yang langka dan mahal.

j. Kurangnya rasa percaya pengguna menghalangi pemakaian Sistem Pakar.

k. Transfer pengetahuan dapat bersifat subyektif dan bias.

C. Komponen Sistem Pakar

Konsep dasar sistem pakar terdiri atas keahlian, ahli/pakar, pengalihan

keahlian, mengambil keputusan, aturan, kemampuan menjelaskan.

Keahlian

Keahlian bersifat luas dan merupakan penguasaan pengetahuan dalam bidang

khusus yang diperoleh dari pelatihan, membaca atau pengalaman. Contoh bentuk

pengetahuan yang termasuk keahlian :

- Teori, fakta, aturan-aturan pada lingkup permasalahan tertentu

- Strategi global untuk menyelesaikan masalah

Ahli / Pakar

Seorang ahli adalah seseorang yang mampu menjelaskan suatu tanggapan,

mempelajari hal-hal baru seputar topik permasalahan, menyusun kembali

pengetahuan jika dipandang perlu, memecahkan masalah dengan cepat dan tepat

Pengalihan keahlian

Tujuan dari sistem pakar adalah untuk mentransfer keahlian dari seorang pakar ke

dalam komputer kemudian ke masyarakat. Proses ini meliputi 4 kegiatan, yaitu

perolehan pengetahuan (dari para ahli atau sumber-sumber lainnya), representasi

pengetahuan ke komputer, kesimpulan dari pengetahuan dan pengalihan

pengetahuan ke pengguna.

Page 12: Diktat Sistem Cerdas

10

Mengambil keputusan

Hal yang unik dari sistem pakar adalah kemampuan untuk menjelaskan dimana

keahlian tersimpan dalam basis pengetahuan. Kemampuan komputer untuk

mengambil kesimpulan dilakukan oleh komponen yang dikenal dengan mesin

inferensi yaitu meliputi prosedur tentang pemecahan masalah.

Aturan

Sistem pakar yang dibuat merupakan sistem yang berdasarkan pada aturan –

aturan dimana program disimpan dalam bentuk aturan-aturan sebagai prosedur

pemecahan masalah. Aturan tersebut biasanya berbentuk IF – THEN.

Kemampuan menjelaskan

Keunikan lain dari sistem pakar adalah kemampuan dalam menjelaskan atau

memberi saran/rekomendasi serta juga menjelaskan mengapa beberapa

tindakan/saran tidak direkomendasikan.

D. Perbedaan Sistem Konvensional Dengan Sistem Pakar

Sistm Konvensional Sistem Pakar

Informasi dan pemrosesannya biasanya

jadi satu dengan program

Basis pengetahuan merupakan bagian

terpisah dari mekanisme inferensi

Program tidak pernah salah (keculai

pemrogramnya yang salah)

Program bisa saja salah

Biasanya tidak bisa menjelaskan

mengapa suatu input data itu

dibutuhkan atau bagaimana output itu

diperoleh

Penjelasan adalah bagian terpenting

dari sistem pakar

Pengubahan program cukup sulit dan

merepotkan

Pengubahan pada aturan / kaidah dapat

dilakukan dengan mudah

Sistem hanya akan bekerja jika sistem

tersebut sudah lengkap

Sistem dapat bekerja hanya dengan

beberapa aturan

Eksekusi dilakukan langkah demi

langkah secara algoritmik

Eksekusi dilakukan pada keseluruhan

basispengetahuan secara heuristik dan

logis

Menggunakan data Menggunakan pengetahuan

Tujuan utamanya adalah efisiensi Tujuan utamanya adalah efektivitas

E. Elemen Manusia yang Terkait dalam Penggunaan dan Pengembangan

Sistem Pakar

a) Pakar

Page 13: Diktat Sistem Cerdas

11

Pakar adalah orang yang memiliki pengetahuan khusus, pendapat,

pengalaman dan metode, serta kemampuan untuk mengaplikasikan

keahliannya tersebut guna menyelesaikan masalah.

b) Perekayasa Pengetahuan

Perekayasa pengetahuan adalah orang yang membantu pakar dalam

menyusun area permasalahan dengan menginterpretasikan dan

mengintegrasikan jawaban-jawaban pakar atas pertanyaan yang diajukan,

menggambarkan analogi, mengajukan counter example dan menerangkan

kesulitan-kesulitan konseptual.

c) Pemakai

Pemakai awam: dalam hal ini sistem pakar bertindak sebagai konsultan

untuk memberikan saran dan solusi kepada pemakai

Pelajar yang ingin belajar: sistem pakar bertindak sebagai instruktur

Pembuat sistem pakar: sistem pakar sebagai partner dalam pengembangan

basis pengetahuan.

Pakar: sistem pakar bertindak sebagai mitra kerja/asisten

F. Area Permasalahan Aplikasi Sistem Pakar

1. Interpretasi

Yaitu pengambilan keputusan dari hasil observasi, diantaranya: pengawasan,

pengenalan ucapan, analisis citra, interpretasi sinyal, dan beberapa analisis

kecerdasan

2. Prediksi

Memprediksi akibat-akibat yang dimungkinkan dari situasi-situasi tertentu,

diantaranya : peramalan, prediksi demografis, peralaman ekonomi, prediksi

lalulintas, estimasi hasil, militer, pemasaran, atau peramalan keuangan.

3. Diagnosis

Menentukan sebab malfungsi dalam situasi kompleks yang didasarkan pada

gejala-gejala yang teramati, diantaranya : medis, elektronis, mekanis, dan

diagnosis perangkat lunak

4. Desain

Page 14: Diktat Sistem Cerdas

12

Menentukan konfigurasi komponen-komponen sistem yang cocok dengan

tujuan-tujuan kinerja tertentu dan kendala-kendala tertentu, diantaranya :

layout sirkuit, perancangan bangunan

5. Perencanaan

Merencanakan serangkaian tindakan yang akan dapat mencapai sejumlah

tujuan dengan kondisi awal tertentu, diantaranya: perencanaan keuangan,

komunikasi, militer, pengembangan politik, routing dan manajemen proyek.

6. Monitoring

Membandingkan tingkah laku suatu sistem yang teramati dengan tingkah laku

yang diharapkan darinya, diantaranya: Computer Aided Monitoring System

7. Debugging dan repair

Menentukan dan mengimplementasikan cara-cara untuk mengatasi malfungsi,

diantaranya memberikan resep obat terhadap suatu kegagalan.

8. Instruksi

Melakukan instruksi untuk diagnosis, debugging dan perbaikan kinerja.

9. Kontrol

Mengatur tingkah laku suatu environment yang kompleks seperti kontrol

terhadap interpretasi-interpretasi, prediksi, perbaikan, dan monitoring

kelakuan sistem

10. Seleksi

Mengidentifikasi pilihan terbaik dari sekumpulan (list) kemungkinan.

11. Simulasi

Pemodelan interaksi antara komponen-komponen sistem.

G. Struktur Sistem Pakar

Dua bagian utama sistem pakar :

Lingkungan pengembangan (development environment) :

digunakan untuk memasukkan pengetahuan pakar ke dalam lingkungan

sistem pakar

Lingkungan konsultasi (consultation environment)

digunakan oleh pengguna yang bukan pakar untuk memperoleh

pengetahuan pakar.

Page 15: Diktat Sistem Cerdas

13

Arsitektur Sistem Pakar

Gambar 2. Struktur Skematis Sistem Pakar

Komponen-komponen yang terdapat dalam arsitektur atau struktur sistem pakar:

1. Antarmuka Pengguna (User Interface)

Merupakan mekanisme yang digunakan oleh pengguna dan sistem pakar

untuk berkomunikasi. Antarmuka menerima informasi dari pemakai dan

mengubahnya ke dalam bentuk yang dapat diterima oleh sistem. Selain itu

antarmuka menerima dari sistem dan menyajikannya ke dalam bentuk yang

dapat dimengerti oleh pemakai.

2. Basis Pengetahuan

Basis pengetahuan mengandung pengetahuan untuk pemahaman, formulasi,

dan penyelesaian masalah. Komponen sistem pakar ini disusun atas 2 elemen

dasar, yaitu :

- fakta : informasi tentang obyek dalam area permasalahan tertentu

- aturan : informasi tentang cara bagaimana memperoleh fakta baru dari

fakta yang telah diketahui.

Akuisisi Pengetahuan (Knowladge Acquistion)

Akuisisi pengetahuan adalah akumulasi, transfer, dan transformasi keahlian

dalam menyelesaikan masalah dari sumber pengetahuan ke dalam program

komputer. Dalam tahap ini knowledge engineer berusaha menyerap

pengetahuan untuk selanjutnya ditransfer ke dalam basis pengetahuan.

Page 16: Diktat Sistem Cerdas

14

Pengetahuan diperoleh dari pakar, dilengkapi dengan buku, basis data,

laporan penelitian dan pengalaman pemakai.

Metode akuisisi pengetahuan :

Wawancara

Metode yang paling banyak digunakan, yang melibatkan pembicaraan

dengan pakar secara langsung dalam suatu wawancara

Analisis Protokol

Dalam metode ini pakar diminta untuk melakukan suatu pekerjaan dan

mengungkapkan proses pemikirannya dengan menggunakan kata-kata.

Pekerjaan tersebut direkam, dituliskan, dan dianalisis.

Observasi pada pekerjaan pakar

Pekerjaan dalam bidang tertentu yang dilakukan pakar direkam dan

diobservasi.

Induksi aturan dari contoh

Induksi adalah suatu proses penalaran dari khusus ke umum. Suatu

sistem induksi aturan diberi contoh-contoh dari suatu masalah yang

hasilnya telah diketahui. Setelah diberikan beberapa contoh, sistem

induksi aturan tersebut dapat membuat aturan yang benar untuk kasus-

kasuscontoh. Selanjutnya aturan dapat digunakan untuk menilai kasus

lain yang hasilnya tidakdiketahui.

3. Mesin

Komponen ini mengandung mekanisme pola pikir dan penalaran yang

digunakan oleh pakar dalam menyelesaikan suatu masalah. Mesin inferensi

adalah program komputer yang memberikan metodologi untuk penalaran

tentang informasi yang ada dalam basis pengetahuan dan dalam workplace,

dan untuk memformulasikan kesimpulan.

4. Workplace/papan tulis

Workplace merupakan area dari sekumpulan memori kerja (working memory),

digunakan untuk merekam kejadian yang sedang berlangsung termasuk

keputusan sementara. Ada 3 keputusan yang dapat direkam :

- Rencana : bagaimana menghadapi masalah

- Agenda : aksi-aksi yang potensial yang sedang menunggu untuk dieksekusi

Page 17: Diktat Sistem Cerdas

15

- Solusi : calon aksi yang akan dibangkitkan

5. Fasilitas Penjelasan

Adalah komponen tambahan yang akan meningkatkan kemampuan sistem

pakar. Digunakan untuk melacak respon dan memberikan penjelasan tentang

kelakuan sistem pakar secara interaktif melalui pertanyaan :

- mengapa suatu pertanyaan ditanyakan oleh sistem pakar ?

- bagaimana konklusi dicapai ?

- mengapa ada alternatif yang dibatalkan ?

- rencana apa yang digunakan untuk mendapatkan solusi ?

6. Perbaikan Pengetahuan

Pakar memiliki kemampuan untuk menganalisis dan meningkatkan kinerjanya

serta kemampuan untuk belajar dari kinerjanya. Kemampuan tersebut adalah

penting dalam pembelajaran terkomputerisasi, sehingga program akan

mampu menganalisis penyebab kesuksesan dan kegagalan yang dialaminya

dan juga mengevaluasi apakah pengetahuan-pengetahuan yang ada masih

cocok untuk digunakan di masa mendatang

H. Basis Pengetahuan (Knowledge Base)

Basis pengetahuan berisi pengetahuan-pengetahuan dalam penyelesaian masalah.

Ada 2 bentuk pendekatan basis pengetahuan :

a. Penalaran berbasis aturan (rule-based reasoning)

Pada penalaran berbasis aturan, pengetahuan direpresentasikan dengan

menggunakan aturan berbentuk IF-THEN. Bentuk ini digunakan apabila kita

memiliki sejumlah pengetahuan pakar pada suatu permasalahan tertentu, dan

si pakar dapat menyelesaikan masalah tersebut secara berurutan. Disamping

itu, bentuk ini juga digunakan apabila dibutuhkan penjelasan tentang jejak

(langkah-langkah) pencapaian solusi.

Contoh : aturan identifikasi hewan

Rule 1 : IF hewan berambut dan menyusui THEN hewan mamalia

Rule 2 : IF hewan mempunyai sayap dan bertelur THEN hewan jenis burung

Rule 3 : IF hewan mamalia dan memakan daging THEN hewan karnivora

Dst...

Page 18: Diktat Sistem Cerdas

16

b. Penalaran berbasis kasus (case-based reasoning)

Pada penalaran berbasis kasus, basis pengetahuan akan berisi solusi-solusi

yang telah dicapai sebelumnya, kemudian akan diturunkan suatu solusi untuk

keadaan yang terjadi sekarang (fakta yang ada). Bentuk ini digunakan apabila

user menginginkan untuk tahu lebih banyak lagi pada kasus-kasus yang

hampir sama (mirip). Selain itu bentuk ini juga digunakan bila kita telah

memiliki sejumlah situasi atau kasus tertentu dalam basis pengetahuan.

I. Mesin Inferensi (Inference Engine)

Ada 2 cara penalaran yang dapat dikerjakan dalam melakukan inferensi :

1. Forward Chaining

Pencocokan fakta atau pernyataan dimulai dari bagian sebelah kiri dulu (IF dulu).

Dengan kata lain penalaran dimulai dari fakta terlebih dahulu untuk menguji

kebenaran hipotesis.

2. Backward Chaining

Pencocokan fakta atau pernyataan dimulai dari bagian sebelah kanan (THEN

dulu). Dengan kata lain penalaran dimulai dari hipotesis terlebih dahulu, dan

untuk menguji kebenaran hipotesis tersebut harus dicari fakta-fakta yang ada

dalam basis pengetahuan.

Contoh :

R1 : IF suku bunga turun THEN harga obligasi naik

R2 : IF suku bunga naik THEN harga obligasi turun

R3 : IF suku bunga tidak berubah THEN harga obligasi tidak berubah

R4 : IF dolar naik THEN suku bunga turun

R5 : IF dolar turun THEN suku bunga naik

R6 : IF harga obligasi turun THEN beli obligasi

Apabila diketahui bahwa dolar turun, maka untuk memutuskan apakah akan

membeli obligasi atau tidak dapat ditunjukkan sebagai berikut :

Forward Chaining

Dari fakta dolar turun, berdasarkan Rule 5, diperoleh konklusi suku bunga naik.

Dari Rule 2 suku bunga naik menyebabkan harga obligasi turun. Dengan Rule 6,

jika harga obligasi turun, maka kesimpulan yang diambil adalah membeli obligasi.

Page 19: Diktat Sistem Cerdas

17

Backward Chaining

Dari solusi yaitu membeli obligasi, dengan menggunakan Rule 6 diperoleh

anteseden harga obligasi turun. Dari Rule 2 dibuktikan harga obligasi turun

bernilai benar jika suku bunga naik bernilai benar. Dari Rule 5 suku bunga naik

bernilai memang bernilai benar karena diketahui fakta dolar turun.

J. Langkah-Langkah Pembuatan Sistem Pakar

1. Mengidentifikasi masalah dan kebutuhan

2. Menentukan problema yang cocok

3. Mempertimbangkan alternatif

4. Menghitung pengembalian investasi

5. Memilih alat pengembangan

6. Merekayasa pengetahuan

7. Merancang sistem

8. Melengkapi pengembangan

9. Menguji dan mencari kesalahan sistem

10. Memelihara sistem

Page 20: Diktat Sistem Cerdas

18

CONTOH REPRESENTASI PENGETAHUAN DARI KNOWLEDGE BASE BERBASIS ATURAN/RULE SISTEM PAKAR

DETEKSI KERUSAKAN KOMPUTER

Page 21: Diktat Sistem Cerdas

19

JENIS KERUSAKAN

A1 = Monitor Rusak

A2 = Memori Rusak

A3 = HDD Rusak

A4 = VGA Rusak

A5 = Sound Card Rusak

A6 = OS Bermasalah

A7 = Aplikasi Rusak

A8 = PSU Rusak

A9 = Prosesor Rusak

A10 = Memory Kurang (Perlu Upgrade Memory)

A11 = Memory VGA Kurang (Perlu Upgrade VGA)

A12 = Clock Prosor Kurang Tinggi (Perlu Upgrade Prosesor)

A13 = Kabel Ide Rusak

A14 = Kurang Daya Pada Psu (Perlu Upgrade Psu)

A15 = Perangkat USB Rusak

A16 = Keyboard Rusak

A17 = Mouse Rusak

Page 22: Diktat Sistem Cerdas

20

Page 23: Diktat Sistem Cerdas

21

BAB 3

Pencarian

A. Pendahuluan

Hal penting dalam menentukan keberhasilan sistem cerdas adalah

kesuksesan dalam pencarian. Pencarian adalah suatu proses mencari solusi dari

suatu permasalahan melalui sekumpulan, kemungkinan ruang keadaan (state

space). Ruang keadaan merupakan suatu ruang yang berisi semua keadaan yang

mungkin.

Untuk mengukur perfomansi metode pencarian, terdapat empat kriteria

yang dapat digunakan :

Completeness : apakah metode tersebut menjamin penemuan solusi jika

solusinya memang ada?

Time complexity berapa lama waktu yang diperlukan?

Space complexity berapa banyak memori yang diperlukan

Optimality : apakah metode tersebut menjamin menemukan solusi yang

terbaik jika terdapat beberapa solusi berbeda?

B. Teknik Pencarian Teknik pencarian dapat dibagi menjadi dua:

1. Pencarian buta (blind search) : tidak ada informasi awal yang digunakan

dalam proses pencarian

Pencarian melebar pertama (Breadth – First Search)

Pencarian mendalam pertama (Depth – First Search)

2. Pencarian terbimbing (heuristic search) : adanya informasi awal yang

digunakan dalam proses pencarian

Pendakian Bukit (Hill Climbing)

Pencarian Terbaik Pertama (Best First Search)

C. Pencarian Buta (Blind Search)

1. Breadth – First Search

Semua node pada level n akan dikunjungi terlebih dahulu sebelum

mengunjungi node-node pada level n+1. Pencarian dimulai dari node akar terus ke

Page 24: Diktat Sistem Cerdas

22

level 1 dari kiri ke kanan, kemudian berpindah ke level berikutnya dari kiri ke

kanan hingga solusi ditemukan.

Keuntungan :

Tidak akan menemui jalan buntu, menjamin ditemukannya solusi (jika

solusinya memang ada) dan solusi yang ditemukan pasti yang paling baik

Jika ada 1 solusi, maka breadth – first search akan menemukannya,jika

ada lebih dari 1 solusi, maka solusi minimum akan ditemukan.

Kesimpulan : complete dan optimal

Kelemahan :

Membutuhkan memori yang banyak, karena harus menyimpan semua

simpul yang pernah

Dibangkitkan. Hal ini harus dilakukan agar BFS dapat melakukan

penelusuran simpul-simpul sampai di level bawah

Membutuhkan waktu yang cukup lama

2. Depth – First Search

Pencarian dilakukan pada suatu simpul dalam setiap level dari yang paling

kiri. Jika pada level yang paling dalam tidak ditemukan solusi, maka pencarian

dilanjutkan pada simpul sebelah kanan dan simpul yang kiri dapat dihapus dari

memori.Jika pada level yang paling dalam tidak ditemukan solusi, maka pencarian

dilanjutkan pada level sebelumnya. Demikian seterusnya sampai ditemukan

solusi.

Page 25: Diktat Sistem Cerdas

23

Keuntungan :

membutuhkan memori relatif kecil, karena hanya node-node pada lintasan

yang aktif saja yang disimpan

Secara kebetulan, akan menemukan solusi tanpa harus menguji lebih

banyak lagi dalam ruang keadaan, jadi jika solusi yang dicari berada pada

level yang dalam dan paling kiri, maka DFS akan menemukannya dengan

cepat sehingga waktu cepat.

Kelemahan :

Memungkinkan tidak ditemukannya tujuan yang diharapkan, karena jika

pohon yang dibangkitkan mempunyai level yang sangat dalam (tak

terhingga) sehingga tidak complete karena tidak ada jaminan menemukan

solusi

Hanya mendapat 1 solusi pada setiap pencarian, karena jika terdapat lebih

dari satu solusi yang sama tetapi berada pada level yang berbeda, maka

DFS tidak menjamin untuk menemukan solusi yang paling baik sehingga

tidak optimal.

D. Pencarian Terbimbing (Heuristic Search)

Pencarian buta tidak selalu dapat diterapkan dengan baik, hal ini

disebabkan waktu aksesnya yang cukup lama & besarnya memori yang

diperlukan. Untuk masalah dengan ruang masalah yang besar, teknik pencarian

buta bukan metode yang baik karena keterbatasan kecepatan komputer dan

memori.

Metode heuristic search diharapkan bisa menyelesaikan permasalahan

yang lebih besar. Metode heuristic search menggunakan suatu fungsi yang

menghitung biaya perkiraan (estimasi) dari suatu simpul tertentu menuju ke

simpul tujuan disebut fungsi heuristic. Aplikasi yang menggunakan fungsi

heuristic : Google, Deep Blue Chess Machine.

Contoh:

Misal kasus 8-puzzle. Ada 4 operator yang dapat digunakan untuk menggerakkan

dari satu keadaan ke keadaan yang baru

1. Ubin kosong digeser ke kiri

2. Ubin kosong digeser ke kanan

Page 26: Diktat Sistem Cerdas

24

3. Ubin kosong digeser ke bawah

4. Ubin kosong digeser ke atas

Langkah Awal:

Pada pencarian heuristik perlu diberikan informasi khusus, yaitu :

Untuk jumlah ubin yang menempati posisi yang benar

Jumlah yang lebih tinggi adalah yang lebih diharapkan (lebih baik)

Page 27: Diktat Sistem Cerdas

25

Untuk jumlah ubin yang menempati posisi yang salah

Jumlah yang lebih kecil adalah yang diharapkan (lebih baik)

Menghitung total gerakan yang diperlukan untuk mencapai tujuan

Jumlah yang lebih kecil adalah yang diharapkan (lebih baik)

Page 28: Diktat Sistem Cerdas

26

1. Hill Climbing

Contoh : Traveling Salesman Problem (TSP)

Seorang salesman ingin mengunjungi n kota. Jarak antara tiap-tiap kota sudah

diketahui. Kita ingin mengetahui rute terpendek dimana setiap kota hanya boleh

dikunjungi tepat 1 kali. Misal ada 4 kota dengan jarak antara tiap-tiap kota seperti

berikut ini :

Solusi – solusi yang mungkin dengan menyusun kota-kota dalam urutan abjad,

misal :

A – B – C – D : dengan panjang lintasan (=19)

A – B – D – C : (=18)

A – C – B – D : (=12)

A – C – D – B : (=13)

Dan seterusnya

a. Metode Simple Hill Climbing

Ruang keadaan berisi semua kemungkinan lintasan yang mungkin.

Operator digunakan untuk menukar posisi kota-kota yang bersebelahan. Fungsi

heuristik yang digunakan adalah panjang lintasan yang terjadi.

Operator yang akan digunakan adalah menukar urutan posisi 2 kota dalam

1 lintasan. Bila ada n kota, dan ingin mencari kombinasi lintasan dengan menukar

posisi urutan 2 kota, maka akan didapat sebanyak :

𝑛!

2! 𝑛 − 2 =

4!

2! 4 − 2 != 6 𝑘𝑜𝑚𝑏𝑖𝑛𝑎𝑠𝑖

Keenam kompbinasi ini akan dipakai semuanya sebagai operator, yaitu :

Tukar 1,2 = menukar urutan posisi kota ke – 1 dengan kota ke – 2

Tukar 2,3 = menukar urutan posisi kota ke – 2 dengan kota ke – 3

Tukar 3,4 = menukar urutan posisi kota ke – 3 dengan kota ke – 4

Tukar 4,1 = menukar urutan posisi kota ke – 4 dengan kota ke – 1

Tukar 2,4 = menukar urutan posisi kota ke – 2 dengan kota ke – 4

Tukar 1,3 = menukar urutan posisi kota ke – 1 dengan kota ke – 3

Page 29: Diktat Sistem Cerdas

27

Keadaan awal, lintasan ABCD (=19).

Level pertama, hill climbing mengunjungi BACD (=17), BACD (=17) < ABCD

(=19), sehingga BACD menjadi pilihan selanjutnya dengan operator Tukar

1,2

Level kedua, mengunjungi ABCD, karena operator Tukar 1,2 sudah dipakai

BACD, maka pilih node lain yaitu BCAD (=15), BCAD (=15) < BACD

(=17)

Level ketiga, mengunjungi CBAD (=20), CBAD (=20) > BCAD (=15), maka

pilih node lain yaitu BCDA (=18), pilih node lain yaitu DCAB (=17),

pilih node lain yaitu BDAC (=14), BDAC (=14) < BCAD (=15)

Level keempat, mengunjungi DBAC (=15), DBAC(=15) > BDAC (=14), maka

pilih node lain yaitu BADC (=21), pilih node lain yaitu BDCA (=13),

BDCA (=13) < BDAC (=14)

Level kelima, mengunjungi DBCA (=12), DBCA (=12) < BDCA (=13)

Page 30: Diktat Sistem Cerdas

28

Level keenam, mengunjungi BDCA, karena operator Tukar 1,2 sudah dipakai

DBCA, maka pilih node lain yaitu DCBA, pilih DBAC, pilih ABCD, pilih

DACB, pilih CBDA

Karena sudah tidak ada node yang memiliki nilai heuristik yang lebih kecil

dibanding nilai heuristik

DBCA, maka node DBCA (=12) adalah lintasan terpendek (SOLUSI)

b. Metode steepest – ascent hill climbing

Steepest – ascent hill climbing hampir sama dengan simple – ascent hill

climbing, hanya saja gerakan pencarian tidak dimulai dari kiri, tetapi berdasarkan

nilai heuristik terbaik.

Keadaan awal, lintasan ABCD (=19).

Level pertama, hill climbing memilih nilai heuristik terbaik yaitu ACBD (=12)

sehingga ACBD menjadi pilihan selanjutnya.

Level kedua, hill climbing memilih nilai heuristik terbaik, karena nilai heuristik

lebih besar dibanding ACBD, maka hasil yang diperoleh lintasannya tetap

ACBD (=12)

2. Best First Search

Metode best first search merupakan kombinasi dari metode depth first

search dan breadth first search dengan mengambil kelebihan dari kedua metode

tersebut. Hill climbing tidak diperbolehkan untuk kembali ke node pada lebih

rendah meskipun node tersebut memiliki nilai heuristik lebih baik. Pada best first

search, pencarian diperbolehkan mengunjungi node di lebih rendah, jika ternyata

node di level lebih tinggi memiliki nilai heuristik lebih buruk. Untuk

mengimplementasikan metode ini, dibutuhkan 2 antrian yang berisi node-node,

yaitu :

Page 31: Diktat Sistem Cerdas

29

OPEN: berisi node-node yang sudah dibangkitkan, sudah memiliki fungsi

heuristik namun belum diuji. Umumnya berupa antrian berprioritas yang berisi

elemen-elemen dengan nilai heuristik tertinggi.

CLOSED : berisi node-node yang sudah diuji.

Diasumsikan node dengan nilai yang lebihbesar memiliki nilai evaluasi yang lebih

baik. Pada keadaan awal, antrian berisi A. Pengujian dilakukan di level pertama,

node D memiliki nilai terbaik, sehingga menempati antrian pertama, disusul

dengan C dan B. Node D memiliki cabang E dan F yang masing-masing bernilai 2

& 4 Dengan demikian C merupakan pilihan terbaik dengan menempati antrian

pertama. Dan demikian seterusnya.

Page 32: Diktat Sistem Cerdas

30

Page 33: Diktat Sistem Cerdas

31

BAB 4

Representasi Pengetahuan

A. Pendahuluan

Dua bagian dasar sistem kecerdasan buatan (menurut Turban) :

Basis pengetahuan :

Berisi fakta tentang objek-objek dalam domain yang dipilih dan hubungan

diantara domain-domain tersebut

Inference Engine :

Merupakan sekumpulan prosedur yang digunakan untuk menguji basis

pengetahuan dalam menjawab suatu pertanyaan,menyelesaikan masalah, atau

membuat keputusan

Basis pengetahuan berisi struktur data yang dapat dimanipulasi oleh suatu

sistem inferensi yang menggunakan pencarian dan teknik pencocokan pola pada

basis pengetahuan yang bermanfaat untuk menjawab pertanyaan, menggambarkan

kesimpulan atau bentuk lainnya sebagai suatu fungsi kecerdasan. Karakteristik

representasi pengetahuan:

Dapat diprogram dengan bahasa komputer dan disimpan dalam memori

Fakta dan pengetahuan lain yang terkandung didalamnya dapat digunakan

untuk melakukan penalaran

Dalam menyelesaikan masalah harus dibutuhkan pengetahuan yang cukup

dan sistem juga harus memiliki kemampuan untuk menalar. Basis pengetahuan

dan kemampuan untuk melakukan penalaran merupakan bagian terpenting dari

sistem yang menggunakan kecerdasan buatan.

B. Logika

Logika adalah bentuk representasi pengetahuan yang paling tua. Proses

logika adalah proses membentuk kesimpulan atau menarik suatu inferensi

berdasarkan fakta yang telah ada. Input dari proses logika berupa premis atau

fakta-fakta yang diakui kebenarannya sehingga dengan melakukan penalaran pada

proses logika dapat dibentuk suatu inferensi atau kesimpulan yang benar juga.

Page 34: Diktat Sistem Cerdas

32

Ada 2 penalaran yang dapat dilakukan untuk mendapat konklusi :

1. Penalaran deduktif : dimulai dari prinsip umum untuk mendapatkan konklusi

yang lebih khusus.

Contoh :

Premis mayor : Jika hujan turun saya tidak akan berangkat kuliah

Premis minor : Hari ini hujan turun

Konklusi : Hari ini saya tidak akan berangkat kuliah

2. Penalaran induktif : dimulai dari fakta-fakta khusus untuk mendapatkan

kesimpulan umum.

Contoh :

Premis -1 : Aljabar adalah pelajaran yang sulit

Premis -2 : Geometri adalah pelajaran yang sulit

Premis -3 : Kalkulus adalah pelajaran yang sulit

Konklusi : Matematika adalah pelajaran yang sulit

Munculnya premis baru bisa mengakibatkan gugurnya konklusi yang

sudah diperoleh, misal :

Premis -4 : Kinematika adalah pelajaran yang sulit

Premis tersebut menyebabkan konklusi : “Matematika adalah pelajaran

yang sulit”, menjadi salah, karena Kinematika bukan merupakan bagian

dari Matematika, sehingga bila menggunakan penalaran induktif sangat

dimungkinkan adanya ketidakpastian.

1. Logika Proposisi

Proposisi adalah suatu pernyataan yang dapat bernilai Benar atau Salah.

Simbol-simbol seperti P dan Q menunjukkan proposisi. Dua atau lebih proposisi

dapat digabungkan dengan menggunakan operator logika :

a. Konjungsi : ∧ (and)

b. Disjungsi : ∨ (or)

c. Negasi : ¬ (not)

d. Implikasi : Æ (if then)

e. Ekuivalensi : ↔ (if and only if)

Page 35: Diktat Sistem Cerdas

33

Untuk melakukan inferensi pada logika proposisi dapat dilakukan dengan

menggunakan resolusi. Resolusi adalah suatu aturan untuk melakukan inferensi

yang dapat berjalan secara efisien dalam suatu bentuk khusus yaitu conjunctive

normal form (CNF), ciri – cirinya :

setiap kalimat merupakan disjungsi literal

semua kalimat terkonjungsi secara implicit

Langkah-langkah untuk mengubah suatu kalimat (konversi) ke bentuk CNF :

Hilangkan implikasi dan ekuivalensi

• x y menjadi ¬ x ∨ y

• x ↔ y menjadi (¬ x ∨ y) ∧ (¬ y ∨ x)

Kurangi lingkup semua negasi menjadi satu negasi saja

• ¬ (¬ x) menjadi x

• ¬ (x ∨ y) menjadi (¬ x ∧ ¬ y)

• ¬ (x ∧ y) menjadi (¬ x ∨ ¬ y)

Gunakan aturan assosiatif dan distributif untuk mengkonversi menjadi

conjuction of disjunction

• Assosiatif : (A∨ B)∨ C menjadi A∨ (B∨ C)

• Distributif : (A ∧ B)∨ C menjadi (A∨ C) ∧ (B ∨ C)

Buat satu kalimat terpisah untuk tiap-tiap konjungsi

Contoh:

Diketahui basis pengetahuan (fakta-fakta yang bernilai benar) sebagai berikut :

1. P

2. (P ∧ Q) Æ R

3. (S ∨ T) Æ Q

4. T

Tentukan kebenaran R.

Untuk membuktikan kebenaran R dengan menggunakan resolusi,maka ubah dulu

menjadi bentuk CNF.

Page 36: Diktat Sistem Cerdas

34

Kemudian kita tambahkan kontradiksi pada tujuannya, R menjadi ¬ R

sehingga fakta-fakta (dalam bentuk CNF) dapat disusun menjadi :

1. P

2. ¬ P ∨ ¬ Q ∨ R

3. ¬ S ∨ Q

4. ¬ T∨ Q

5. T

6. ¬ R

Sehingga resolusi dapat dilakukan untuk membuktikan kebenaran R, sebagai

berikut :

Contoh bila diterapkan dalam kalimat :

P : Ani anak yang cerdas

Q : Ani rajin belajar

Page 37: Diktat Sistem Cerdas

35

R : Ani akan menjadi juara kelas

S : Ani makannya banyak

T : Ani istirahatnya cukup

Kalimat yang terbentuk :

• Ani anak yang cerdas

• Jika ani anak yang cerdas dan ani rajin belajar, maka ani akan menjadi

juara kelas

• Jika ani makannya banyak atau ani istirahatnya cukup, maka ani rajin

belajar

• Ani istirahatnya cukup

Setelah dilakukan konversi ke bentuk CNF, didapat :

Fakta ke-2 : Ani tidak cerdas atau ani tidak rajin belajar atau ani akan menjadi

juara kelas

Fakta ke-3 : Ani tidak makan banyak atau ani rajin belajar Fakta ke-4 : Ani tidak

cukup istirahat atau ani rajin belajar

Page 38: Diktat Sistem Cerdas

36

2. Logika Predikat

Representasi Fakta Sederhana

Misal diketahui fakta-fakta sebagai berikut :

Andi adalah seorang laki-laki : A

Ali adalah seorang laki-laki : B

Amir adalah seorang laki-laki : C

Anto adalah seorang laki-laki : D

Agus adalah seorang laki-laki : E

Jika kelima fakta tersebut dinyatakan dengan menggunakan proposisi,

maka akan terjadi pemborosan, dimana beberapa pernyataan dengan predikat yang

sama akan dibuat dalam proposisi yang berbeda.

Logika predikat digunakan untuk merepresentasikan hal-hal yang tidak

dapat direpresentasikan dengan menggunakan logika proposisi. Pada logika

predikat kita dapat merepresentasikan fakta-fakta sebagai suatu pernyataan yang

disebut dengan wff (well – formed formula). Logika predikat merupakan dasar

bagi bahasa AI seperti bahasa pemrograman PROLOG

Pada contoh diatas, dapat dituliskan :

laki-laki(x)

dimana x adalah variabel yang disubstitusikan dengan Andi, Ali, Amir, Anto,

Agus, dan laki-laki yang lain.

Dalam logika predikat, suatu proposisi atau premis dibagi menjadi 2

bagian, yaitu argumen (objek) dan predikat (keterangan). Argumen adalah

individu atau objek yang membuat keterangan. Predikat adalah keterangan yang

membuat argumen dan predikat.

Contoh :

1. Jika besok tidak hujan, Tommy pergi ke gunung

¬ cuaca(hujan,besok) pergi(tommy, gunung)

2. Diana adalah nenek dari ibu Amir

nenek(Diana,ibu(Amir))

C. List dan Tree

List dan Tree merupakan struktur sederhana yang digunakan dalam

representasi hirarki pengetahuan.

Page 39: Diktat Sistem Cerdas

37

1. List

List adalah daftar dari rangkaian materi yang terkait. Hal ini bisa

merupakan suatu daftar (list) nama orang yang anda kenal, barang-barang yang

akan dibeli dari toko Serba Ada, hal-hal yang akan dikerjakan minggu ini, atau

produk-produk berbagai jenis barang dalam katalog, dll.

List biasanya digunakan untuk merepresentasikan hirarki pengetahuan

dimana objek dikelompokkan,dikategorikan atau digabungkan sesuai dengan

urutan atau hubungannya. Objek dibagi dalam kelompok atau jenis yang sama.

Kemudian hubungan ditampilkan dengan menghubungkan satu sama lain.

2. Tree

Struktur pohon adalah struktur grafik hirarki. Struktur ini merupakan cara

yang sederhana untuk menggambarkan list dan hirarki pengetahuan lainnya.

Page 40: Diktat Sistem Cerdas

38

Page 41: Diktat Sistem Cerdas

39

BAB 5

Logika Fuzzy

A. Pendahuluan

Logika fuzzy adalah suatu cara untuk memetakan suatu ruang input ke

dalam suatu ruang output. Skema logika fuzzy :

Antara input dan output terdapat suatu kotak hitam yang harus memetakan input

ke output yang sesuai. Misal :

Alasan menggunakan fuzzy adalah sebagai berikut:

Konsep logika fuzzy mudah dimengerti

Logika fuzzy sangat fleksibel

Memiliki toleransi terhadap data-data yang tidak tepat

Dapat membangun dan mengaplikasikan pengalaman-pengalaman para

pakar secara langsung

tanpa harus melalui proses pelatihan

Logika fuzzy didasarkan pada bahasa alami

Aplikasi Logika Fuzzy:

Tahun 1990 pertama kali mesin cuci dengan logika fuzzy di Jepang

(Matsushita Electric Industrial Company). Sistem fuzzy digunakan untuk

menentukan putaran yang tepat secara otomatis berdasarkan jenis dan

banyaknya kotoran serta jumlah yang akan dicuci. Input yang digunakan :

Page 42: Diktat Sistem Cerdas

40

seberapa kotor, jenis kotoran, banyaknya yang dicuci. Mesin ini

menggunakan sensor optik, mengeluarkan cahaya ke air dan mengukur

bagaimana cahaya tersebut sampai ke ujung lainnya. Makin kotor, maka

sinar yang sampai makin redup. Sistem juga mampu menentukan jenis

kotoran tersebut daki/minyak.

Transmisi otomatis pada mobil Nissan,menghemat bensin 12 – 17 %

Kereta bawah tanah Sendai mengontrol pemberhentian otomatis pada area

tertentu

Ilmu kedokteran dan biologi, seperti sistem diagnosis kanker

Manajemen dan pengambilan keputusan, misal tata letak pabrik

berdasarkan logika fuzzy,

pembuatan games berdasarkan logika fuzzy,dll

Ilmu lingkungan, misal kendali kualitas air, prediksi cuaca

Teknik,misal perancangan jaringan komputer, prediksi adanya gempa

bumi, dll

B. Konsep Dasar Logika Fuzzy

1. Himpunan Tegas nilai keanggotaan suatu item x dalam suatu himpunan A, yang sering

ditulis dengan µA[x], memiliki 2 kemungkinan, yaitu :

1, yang berarti bahwa item tersebut (x) anggota himpunan A

0, yang berarti bahwa item tersebut (x) bukan anggota himpunan A

contoh 1:

S = [1,2,3,4,5,6] adalah semesta pembicaraan

A = [1,2,3]

B = [3,4,5]

Jadi :

nilai keanggotaan 2 pada himpunan A µA[2] = 1 , karena 2 ∈ A

nilai keanggotaan 3 pada himpunan A µA[3] = 1 , karena 3 ∈ A

nilai keanggotaan 4 pada himpunan A µA[4] = 0 , karena 4 ∉ A

Page 43: Diktat Sistem Cerdas

41

nilai keanggotaan 2 pada himpunan B µB[2] = 0 , karena 2 ∉ B

nilai keanggotaan 3 pada himpunan B µB[3] = 1 , karena 3 ∈ A

Contoh 2:

misal variabel umur dibagi menjadi 3 kategori, yaitu :

MUDA umur < 35 tahun

PAROBAYA 35 ≤ umur ≤ 55 tahun

TUA umur > 55 tahun

Nilai keanggotaan secara grafis, himpunan MUDA, PAROBAYA, TUA :

usia 34 tahun maka dikatakan MUDA µMUDA[34] = 1

usia 35 tahun maka dikatakan TIDAKMUDA µMUDA[35] = 0

usia 35 tahun maka dikatakan PAROBAYA µPAROBAYA[35] = 1

usia 34 tahun maka dikatakan TIDAKPAROBAYA µPAROBAYA[34] = 0

usia 35 tahun kurang 1 hari maka dikatakan TIDAKPAROBAYA

µPAROBAYA[35 th – 1 hari] = 0

usia 35 tahun lebih 1 hari maka dikatakan TIDAKMUDA µMUDA[35 th + 1

hari] = 0

Himpunan crisp untuk menyatakan umur bisa tidak adil karena adanya perubahan

kecil saja pada suatu nilai mengakibatkan perbedaan kategori yang cukup

signifikan.

2. Himpunan Fuzzy Himpunan fuzzy digunakan untuk mengantisipasi hal tersebut diatas.

Seseorang dapat masuk dalam 2 himpunan yang berbeda, MUDA dan

Page 44: Diktat Sistem Cerdas

42

PAROBAYA, PAROBAYA dan TUA, dsb. Seberapa besar eksistensinya dalam

himpunan tersebut dapat dilihat pada nilai/derajat keanggotaannya.

Himpunan fuzzy untuk variabel UMUR :

usia 40 tahun termasuk dalam himpunan MUDA dengan µMUDA[40] = 0,25

termasuk juga dalam himpunan PAROBAYA dengan µ PAROBAYA

[40] = 0,5

usia 50 tahun termasuk dalam himpunan TUA dengan µTUA[50] = 0,25

termasuk juga dalam himpunan PAROBAYA dengan µ PAROBAYA

[50] = 0,5

Himpunan crisp, nilai keanggotaan hanya 0 dan 1.

Himpunan fuzzy, derajat/nilai keanggotaan terletak pada rentang 0 sampai 1

sehingga :

Bila x memiliki derajat keanggotaan fuzzy µ A [x] = 0 x bukan

anggota himpunan A

Bila x memiliki derajat keanggotaan fuzzy µ A [x] = 1 x anggota

penuh himpunan A