Rabu, 30 November 2011

RESUME PERTEMUAN 7

Sistem Fuzzy

Fuzzy system adalah suatu sistem yang menggunakan himpunan fuzzy untuk memetakan suatu inputan menjadi

ouput tertentu (black box). Misalnya, jika anda mengetahui seberapa layanan pada restaurant tersebut, anda

dapat menentukan berapa jumlah tip yang layak diberikan kepada pelayan. Perhatikan gambar di bawah ini:






Variabel Linguistik (Linguistic Variable)

 

Dalam sistem pakar fuzzy (fuzzy expert system), variabel linguistik digunakan pada aturan-aturan fuzzy (fuzzy rules). Perhatikan contoh di bawah ini:

R1 IF Kelajuan rendah

THEN Buat akselerasi menjadi tinggi

R2 IF Suhu udara rendah

AND Tekanan cukup

THEN Buat kelajuan menjadi rendah

Jangkauan (range) nilai yang mungkin dalam variabel linguistik disebutsebagai universe of discourse. Sebagai contoh "kelajuan" dalam R1dapat memiliki range antara 0 sampai 200 km/jam. Karena "kelajuan

rendah" menempati sebagian segmen dari universe of discourse.



Himpunan Fuzzy (Fuzzy Set)

Himpunan fuzzy berbeda dengan himpunan klasik. Himpunan klasik memiliki batasan yang jelas (crisp set), karena itu keanggotaan dari himpunan klasik dapat dinyatakan hanya dalam dua macam yaitu: menjadi
anggota himpunan atau tidak. Sedangkan pada himpunan fuzzy, keanggotaan suatu elemen pada suatu himpunan lebih lanjut dinyatakan dengan derajad keanggotaannya.

definisi akurat dari fuzzy set:



Fungsi Keanggotaan (Membership Function)
Membership Function (MF) adalah kurva yang memetakan setiap titik pada inputan (universe of discourse) ke sebuah nilai keanggotaan (atau derajad keanggotaan) yang memiliki nilai antara 0 dan 1 yang didefinisikan
secara matematis oleh persamaan:

μA(x) : X → [0, 1] (7.1)

Setiap elemen x dipetakan pada sebuah nilai keanggotaan oleh MF.

Nilai ini merupakan derajad keanggotaan dari x pada himpunan fuzzy

A.

μA(x) = Degree(x ∈ A) (7.2)

Dimana nilai keangotaan dari x dibatasi oleh:

0 ≤ μA(x) ≤ 1

Sebagai contoh pemetaan elemen dari x (dalam hal ini adalah ketinggian seseorang) oleh MF ke nilai keanggotaannya.


Operasi Himpunan Fuzzy

Operasi-operasi pada himpunan fuzzy pada dasarnya mirip dengan operasi pada himpunan klasik.
dimana operasi logika AND diganti dengan min sedangkan operasi logika OR diganti dengan max. Terlihat
bahwa himpunan fuzzy (yang hanya memiliki anggota 0 dan 1) memberikan hasil yang sama dengan operasi pada himpunan klasik.

RESUME PERTEMUAN 5

Semantic Networks dan Frame

Semantic Networks

• Semantic (associative) networks adalah salah satu bentuk representasi knowledge-base dalam bentuk diagram.

• Diagram tersebut terdiri atas node dan arc. Node merepresentasikan sebuah konsep, sedangkan arc  merepresentasikan sebuah relasi.

• Sebagai contoh perhatikan node di bawah ini:
 



Semantic Networks juga dapat digunakan untuk menggambarkansebuah hubungan/relasi tunggal dari beberapa konsep.


Frame
• Pada era 70 dan 80 an, semantic networks berubah bentuk menjadi model representasi frame.

• Sebuah frame memiliki seperangkat slot. Sebagai contoh perhatikan

diagram struktur keluarga di bawah ini:




Frame Adam:

sex: Laki-laki

teman-hidup: Ana

anak: (Jeremy Jordan Ellen)

Dalam frame tersebut, frame Adam memiliki 3 buah slot yaitu, sex, teman-hidup dan anak. Sedangkan slot anak memiliki tiga nilai, yaitu: Jeremy, Jordan dan Ellen. Seperti terlihat dalam gambar, kita juga dapat membuat frame lain yang merupakan sub-class dari Frame Adam. Setidaknya ada 7 frame sub-class yang menjelaskan masing-masing individu, yaitu: Adam, Ana, Jeremy, Jordan, Ellen, Laki-laki, and Perempuan.

• Frame Adam dapat dikonversi ke dalam bentuk predicate calculus menjadi:
sex(Adam,Laki-laki)

teman-hidup(Adam,Ana)
 
anak(Adam,Jeremy)
 
anak(Adam,Jordan)
 
anak(Adam,Ellen)

RESUME PERTEMUAN 4

Membangun KBS dengan Sistem Berbasis Aturan

Langkah-langkah Membangun KBS
LANGKAH 1: Isolasi area bagi KBS
Untuk membatasi permasalahan pada sistem pakar yang akan dibangun harus diberikan batasan organisasi 

dan juga layanan yang dapat diberikan oleh sistem. Sebagai contoh, untuk sistem HMO, batasan struktur 

organisasi dan layanan ditunjukkan

LANGKAH 2:Target Keputusan

Setelah permasalahn dibatsi, langkah selanjutnya adalah menentukan target keputusan bagi sistem pakar. 

Pasien pada umumnya membutuhkan bantuan untuk kasus penyakit yang baru diderita (new case)

atau penanganan berkelanjutan dari penyakit yang sudah lama diderita (follow-up case).




LANGKAH 3: Membuat Dependency Diagram (Diagram Ketergantungan)








LANGKAH 4: Membuat Tabel Keputusan
Tabel keputusan diturunkan dari dependency diagram




kemudian melakukan penyederhanaan tabel


LANGKAH 5: Menulis IF-THEN Rule

Selanjutnya, berdasarkan tabel keputusan yang telah direduksi dapat diturunkan sistem berbasis aturan seperti ditunjukkan di bawah ini:
 
 



RESUME PERTEMUAN 3

Sistem Berbasis Aturan
Pendahuluan
 
Sistem berbasis aturan (rule-based system) menggunakan Modus Ponens sebagai dasar untuk memanipulasi aturan, yaitu:

fakta A benar, dan

operasi A → B benar,

maka fakta B adalah benar


proses penyelesaian masalah pada sistem berbasis aturan adalah menciptakan sederet fakta-fakta baru yang 
merupakan hasil dari sederetan proses inferensi sehingga membentuk semacam jalur antara definisi
masalah menuju pada solusi masalah. Deretan proses inferensi tersebut
adalah inference chain.

Sebagai contoh, sebuah sistem peramal cuaca dibangun dengan sistem berbasis pengetahuan untuk mengetahui keadaan cuaca pada 12 sampai
24 jam ke depan.

RULE 1: IF suhu udara sekitar di atas 32o C

THEN cuaca adalah panas

RULE 2: IF kelembaban udara relatif di atas 65%

THEN udara sangat lembab

RULE 3: IF cuaca panas dan udara sangat lembab

THEN sangat mungkin terjadi badai
 

• Jika hanya rule 1 (tanpa rule 2 dan rule 3), sistem berbasis pengetahuan tidak berarti apa2.

• Karena itu sebuah sistem berbasis pengetahuan harus terdiri ata sekelompok aturan yang membentuk rangakaian aturan rule chain.

• Fakta didefisinikan sebagai statemen yang dianggap benar. Contoh:

Suhu udara di sekitar adalah 35o C dan kelembaban udara relatif 70% adalah fakta.

• Maka proses inferensi melihat fakta-fakta dari premis pada Rule 1

dan Rule 2 sebagai dasar untuk menghasilkan fakta baru: Cuaca panas dan Udara lembab.

• Selanjutnya proses inferensi melihat bahwa kedua fakta ini sesuai dengan premis pada Rule 3, maka akan dihasilkan fakta baru lagi: Sangat mungkin terjadi badai.

Proses Reasoning

• Proses reasoning dari sebuah sistem berbasis aturan adalah tahapa proses mulai dari sekumpulan fakta menuju solusi, jawaban dan kesimpulan.

• Terdapat dua macam cara yang dapat digunakan untuk menghasilkan suatu kesimpulan, yaitu:

– Forward Chaining (data driven): kesimpulan dihasilkan dari seperangkat data yang diketahui.

– Backward Chaining (goal driven): memilih beberapa kesimpulan yang mungkin dan mencoba membuktikan kesimpulan tersebut dari bukti-bukti yang ada.

Forward Reasoning

Dalam forward reasoning, proses inferensi dimulai dari seperangkat data yang ada menuju ke kesimpulan. Pada proses ini akan dilakukan pengecekan terhadap setiap rule untuk melihat apakah data yang sedang diobservasi tersebut memenuhi premis dari rule tersebut. Apabila memenuhi, maka rule akan dieksekusi untuk menghasilkan fakta baru yang mungkin akan digunakan oleh rule yang lain. Proses pengecekan rule ini disebut
sebagai rule interpretation. Pada sistem berbasis pengetahuan, rule interpretation (interpretasi rule) dilakukan oleh inference engine.

Backward Reasoning

Mekanisme inferensi pada backward reasoning berbeda dengan forward
reasoning. Walaupun kedua proses melibatkan pengujian terhadap
masing-masing rule, backward reasoning mulai dari konklusi yang diharapkan
menuju fakta-fakta yang mendukung konklusi tersebut.

resume pertemuan 2

Propositional Logic

• Propositional logic merupakan salah satu bentuk (bahasa) representasi
logika yang paling tua dan paling sederhana.
• Dengan cara ini beberapa fakta dapat digambarkan dan dimanipulasi
dengan menggunakan aturan-aturan aljabar Boolean.
• Propositional logic membentuk statement sederhana atau statement
yang kompleks dengan menggunakan propositional connective, dimana mekanisme ini menentukan kebenaran dari sebuah
statement kompleks dari nilai kebenaran yang direpresentasikan
oleh statement lain yang lebih sederhana.

Arti Dari Operator Penghubung
Hubungan variabel dengan operator penghubung dalam propositional logic dapat diartikan seperti dalam .
Contoh 1:
Tentukan bentuk propositional logic dari kalimat ini: Jika Pluto mengitari
matahari, maka Pluto adalah planet, jika tidak demikian maka pluto
bukan planet.
pm . . . Pluto mengitari matahari
pp . . . Pluto adalah planet

Operator Arti
p ∧ q p dan q adalah sahih
p dan q keduanya sahih
p dan q adalah sahih pada saat bersamaan
p ∨ q p atau q adalah sahih
p dan/atau q adalah sahih
paling tidak satu dari p dan p adalah sahih
p → q q adalah sahih, jika p sahih
jika p sahih, demikian juga q adalah sahih
jika p sahih, maka q juga sahih
dari p mengikuti q
p adalah syarat cukup untuk q
q adalah syarat perlu untuk p
p ↔ q p sama dengan q
p benar-benar sahih jika q adalah sahih
p hanya sahih jika q adalah sahih
p adalah syarat cukup dan perlu untuk q
p adalah sahih jika dan hanya jika q sahih

Kalimat di atas dapat ditranslasikan ke dalam bentuk yang lain:
Hanya jika Pluto mengitari matahari, maka Pluto adalah planet. Sehingga
berdasarkan Tabel 2.3, kalimat tersebut dapat diubah ke dalam
bentuk propositional logic:
pm ↔ pp


Predicate Calculus

• Kalkulus predikat, disebut juga logika predikat memberi tambahan
kemampuan untuk merepresentasikan pengetahuan dengan lebih
cermat dan rinci.
• Istilah kalkulus disini berbeda dengan istilah kalkulus dalam bidang
matematika.
• Suatu proposisi atau premis dibagi menjadi dua bagian, yaitu ARGUMEN
(atau objek) dan PREDIKAT (keterangan).
• Argumen adalah individu atau objek yang membuat keterangan.
• Predikat adalah keterangan yang membuat argumen dan predikat.
• Dalam suatu kalimat, predikat bisa berupa kata kerja atau bagian
kata kerja.


Variabel
• Dalam predicate calculus huruf dapat digunakan untuk menggantikan
argumen.
• Simbol-simbol juga bisa digunakan untuk merancang beberapa objek
atau individu. Contoh: x = Jono, y = Rebeca, maka pernyataan
Jono menyukai Rebeca dapat ditulis dalam bentuk predicate
calculus: suka(x,y).
• Dalam beberapa hal variabel dibutuhkan agar pengetahuan dapat
diekspresikan dalam kalkulus predikat sehingga nantinya dapat dimanipulasi
dengan mudah dalam proses inferensi.


Fungsi

• Predicate calculus memperbolehkan penggunaan simbol untuk mewakili
fungsi-fungsi.
Contoh: ayah(Jono)=Santoso, ibu(Rebeca)=Rini.
• Fungsi juga dapat digunakan bersamaan dengan predikat.
Contoh:
teman(ayah(Jono),ibu(Rebeca)) = teman(Santoso,Rini)

Operator
Predicate calculus menggunakan operator yang sama seperti operatoroperator
yang berlaku pada propositional logic.

Quantifier
• Dalam bagian terdahulu, sebuah obyek atau argumen dapat diwakili
oleh sebuah variabel, akan tetapi variabel yag telah dibicarakan
hanya mewakili sebuah obyek atau individu atau argumen. Bagaimana
representasi dapat dilakukan apabila terdapat beberapa obyek?
Atau dengan kata lain, bagaimana kuantitas dari sebuh obyek dapat
dinyatakan?
• Variabel dapat dikuantitaskan dengan dua cara, yaitu:
– Ukuran kuantitas universal ∀, yang berarti untuk semua.
– Ukuran kuantitas eksistensial ∃, yang berarti ada beberapa.

Model-Model Inferensi
1. Modus Ponens
 melakukan inferensi dengan mengikuti aturan sebagai berikut:
Jika pernyataan p dan (p → q) adalah benar,

maka dapat ditarik kesimpulan bahwa q adalah benar.
2. Modus Tolens
Model inferensi yang lain disebut sebagai Modus Tolens yang dinyatakan
dengan rumusan:
Jika (p → q) adalah benar,
dan q tidak benar, maka p tidak benar.

Automated Reasoning:
Deduksi
Deduksi didefinisikan sebagai: reasoning dari fakta yang sudah diketahui
menuju fakta yang belum diketahui, dari hal-hal umum menuju ke hal-hal
spesifik, dari premis menuju ke kesimpulan logis

AbduksiAbduksi adalah metoda reasoning yang sering dipakai untuk memberikan/menghasilkan
penjelasan terhadap fakta. Berbeda dengan metoda deduksi, pada metoda ini tidak ada jaminan bahwa kesimpulan yang didapat selalu benar

Induksi
Induksi berarti proses reasoning dari fakta-fakta khusus atau kasus-kasus
individual menuju ke kesimpulan secara general

Selasa, 29 November 2011

resume pertemuan 1

Sistem Pakar adalah sebuah program komputer yang mencoba meniru atau mensimulasikan pengetahuan (knowledge) dan ketrampilan (skill) dari seorang pakar pada area tertentu. Selanjutnya sistem ini akan mencoba
memecahkan suatu permasalahan sesuai dengan kepakarannya

Sistem Berbasis Aturan
Sistem berbasis aturan (rule-based system) adalah sebuah program yang menggunakan aturan IF-THEN. Model ini berbeda dengan pemrograman konvensional, misalnya rule tidak harus berada pada urutan tertentu.
Contoh dari sistem berbasis aturan adalah sbb:

IF Sabtu OR Minggu THEN Nonton bioskop
IF NOT (Sabtu OR Minggu) THEN Bekerja
IF Nonton bioskop THEN Pergi keluar
IF Bekerja THEN Pergi keluar
IF NOT ( Bisa pergi keluar) THEN Tiggal di rumah
IF Cuaca baik THEN Bisa pergi keluar
IF Hujan THEN Bawa Payung
IF Hujan AND Bawa Payung THEN Bisa pergi keluar

Perbedaan Sistem Konvensional dan Sistem Pakar: 
 Perbandingan Sistem Konvensional dan Sistem Pakar

Sistem Konvensional :              Sistem Pakar:
Fokus pada solusi                    Fokus pada problem
Programmer bekerja sendiri     Team-work
Sequencial                                iterative

Data, Informasi dan Pengetahuan (knowledge)Note:
• Data merupakan hasil pengukuran atau catatan (record) tentang sebuah kejadian (mis. suhu, waktu, harga dsb). data dapat berupa angka, huruf, gambar, suara dsb.

• Informasi merupakan hasil olahan dari data sedemikian rupa sehingga karakteristik dari data tersebut dapat diuji, misalnya ratarata, varian, distribusi dsb.

• Pengetahuan merupakan informasi yang diletakkan pada konteks/lingkungan tertentu, misalnya peta jawa, distribusi minyak di Indonesia, dsb.

• Data, informasi dan pengetahuaan dapat dikelompokkan ke dalam level abstraksi seperti ditunjukkan dalam Gambar 1.2 di bawah ini:

Figure 1.2: Diagram Data, Information dan Knowledge.

1.7 Struktur Sistem Pakar

• Secara umum struktur sebuah sistem pakar terdiri atas 3 komponen utama, yaitu: knowledge base, working memory, dan inference engine. 

• Knowledge base (basis pengetahuan) adalah bagian dari sebuah sistem pakar yang mengandung/menyimpan pengetahuan (domain knowledge). Knowledge base yang dikandung oleh sebuah sistem
pakar berbeda antara satu dengan yang lain tergantung pada bidang
kepakaran dari sistem yang dibangun. Misalnya, medical expert system akan memiliki basis pengetahuan tentang hal-hal yang berkaitan dengan medis. Knowledge base direpresentasikan dalam berbagai
macam bentuk, salah satunya adalah dalam bentuk sistem berbasis aturan (ruled-based system).

• Working memory mengandung/menyimpan fakta-fakta yang ditemukan selama proses konsultasi dengan sistem pakar. Selama proses konsultasi, user memasukkan fakta-fakta yang dibutuhkan. Kemudian
sistem akan mencari padanan tentang fakta tersebut dengan informasi yang ada dalam knowledge base untuk menghasilkan fakta baru. Sistem akan memasukkan fakta baru ini ke dalam working
memory. Jadi working memory menyimpan informasi tentang fakta-fakta yang dimasukkan oleh user ataupun fakta baru hasilkesimpulan dari sistem.

• Inference engine bertugas mencari padanan antara fakta yang ada di dalam working memory dengan fakta-fakta tentang domain knowledge tertentu yang ada di dalam knowledge base, selanjutnya inference
engine akan menarik/mengambil kesimpulan dari problem yang diajukan kepada sistem.