Lopxmfehf!Fohjoffsjoh!
1
Pengetahuan (Knowledge) Kunci utama dari Expert System (sistem pakar) Analogi Algoritma + Struktur Data = Program Pengetahuan + Inferensi = Sistem Pakar
2
1
Knowledge-Based Agents
Domain independent algorithms
ASK
Inference engine
TELL
Knowledge Base
Domain specific content
Agen memerlukan pengetahuan (knowledge) untuk mendapatkan keputusan terbaik dalam usaha mencapai tujuan. Knowledge : representasi dari fakta, prosedur, aturan dan lain-lain, yang berasal dari lingkungan Agen. Knowledge berada pada agen berbentuk sentences menggunakan bahasa knowledge representation language dan tersimpan dalam knowledge base. Harus ada cara untuk menambah/mengisi KB (TELL) dan harus ada cara untuk melakukan query/seleksi aksi yang harus dikerjakan (ASK). Agen dapat melakukan penalaran (inference) untuk menyimpulkan fakta baru berdasarkan fakta yang diberikan.
3
Knowledge-Based Agents
Level Pengetahuan : - Shallow Knowledge ; Representasi pengetahuan secara dangkal/permukaan. Misalnya, Jika tangki bahan bakar kosong maka mobil tidak bisa di hidupkan representasi menggunakan If-Then rule (input-output relation) - Deep Knowledge ; Representasi pengetahuan secara mendalam, kompleks, dan menggunakan struktur sebab akibat. representasi menggunakan jaringan semantik dan frame. contoh : Has a
Car
Starts Starter Has Brushes
Gas Tank
Stores
Connected to Gas Pump
Pump Gas to a
Gasoline Flow via pipe Carburetor
Has a
Filter
Flows Air 4
2
Knowledge Engineering
Knowledge Engineering : Proses mengintegrasikan pengetahuan ke dalam sistem komputer untuk memecahkan suatu permasalahan yang rumit, dimana secara normal memerlukan keahlian manusia tingkat tinggi. Orang yang melakukan proses ini disebut Knowledge Engineer. Knowledge Engineering Vs Programming : Knowledge Engineering Choosing a logic Building knowledge base Implementing proof theory Inferring new facts
Programming Choosing programming language Writing program Choosing/writing compiler Running program
Skill for Knowledge Engineer : computer skills (h/, s/, programming), toleran, mampu berkomunikasi secara efektif, berpendidikan cukup, cerdas, mampu berpikir berdasar logika, percaya diri, dll 5
Knowledge Engineering
Knowledge Engineering Process : Knowledge Acquisition Knowledge Representation Knowledge Knowledge Validation Validation Inference Explanation and Justification Knowledge Base
Source of Knowledge Knowledge Acquisition
Encoding
Knowledge Representation
Explanation, Justification
Inferencing 6
3
Knowledge Engineering
Knowledge Engineering Process : Knowledge Acquisition Proses pengumpulan (ekstraksi dan formulasi) pengetahuan dari : pakar, buku, dokumen, sensor, file komputer dll. Knowledge Representation Proses untuk mengorganisir pengetahuan yang terkumpul, termasuk didalamnya proses knowledge map dan encoding pada knowledge base. Knowledge Validation Proses validasi dan verifikasi pengetahuan yang terdapat dalam knowledge base Inference Proses desain software agar komputer dapat melakukan penarikan kesimpulan berdasarkan knowledge base. Explanation and Justification Proses desain software dan programming agar komputer mempunyai kemampuan eksplanasi (menjelaskan) atau menjawab pertanyaan. Misalnya, komputer dapat menjelaskan pertanyaan seperti : why ? how ? 7
Sources of Knowledge
Sumber Pengetahuan : - Pengetahuan dapat diperoleh dari berbagai sumber Misal dari buku, film, file database, gambar, peta, cerita, observasi, pakar, pengalaman, lagu, diagram alir, dan sebagainya. - Sumber pengetahuan dapat dibedakan menjadi 2 (dua) : terdokumentasi dan tidak terdokumentasi. - Pengetahuan dapat diidentifikasi dan dikumpulkan oleh manusia atau mesin.
8
4
Stages of Knowledge Acquisition Identification
• Knowledge Acquisition (KA) Proses ekstraksi dan formulasi pengetahuan yang diperoleh dari berbagai sumber Conceptualitation (khususnya pakar) • Kesulitan dalam KA - Mengekspresikan pengetahuan - Transfer ke mesin (komputer) Formalization - Banyaknya partisipan : pakar, Knowledge Engineer, System Designer, User - Struktur Pengetahuan Implementation - dll • Tahapan Kegiatan dalam KA
Identify problem characteristics
requirements Find concepts to represents knowledge
concepts Design structure to organize knowledge
structure Formulate rules to embody knowledge
rules Testing
Validate rules that organize knowledge
9
Knowledge Acquisition
Tahapan Proses Akuisisi Pengetahuan : • Identification ; tahap identifikasi problem dan karakteristiknya. Knowledge engineer mempelajari situasi untuk tujuan desain aplikasi AI. • Conceptualization ; tahap menentukan pengetahuan yang relevan. Informasi mana yang akan digunakan dan bagaimana cara merepresentasikan dalam knowledge base ? Apakah rule sudah cukup baik direpresentasikan ? • Formulation ; Knowledge di representasikan dalam knowledge base, sehingga perlu di formulasikan sesuai metode akuisisinya. Misal untuk sistem berbasis aturan, knowledge diformulasikan mengikuti format aturan (misal If..Then rule) • Implementation ; tahapan ini terkait dengan tahapan programming dimana pengetahuan dapat diakses oleh komputer untuk pengambilan keputusan. • Testing ; knowledge engineer menguji sistem menggunakan contoh-2 khusus.
10
5
Methods of Knowledge Acquisition
Manual - Interview : terstruktur, tidak terstruktur - Tracking methods Semiautomatic - support the expert - support the knowledge engineer Automatic - rule induction - machine learning 11
Knowledge Representation
Knowledge Representation : Cara merepresentasikan pengetahuan (fakta dan rule) Knowledge Representation dapat menggunakan : • Logic (Logika) • Semantic Network (Jaringan Semantik) • Scripts (Naskah) • Tables (Tabel) • Tree (Pohon) • Production Rule (Aturan Produksi) • Frame (Kerangka)
12
6
Knowledge Representation: Logic
• Logika (Logic) Logika : bentuk representasi yang paling tua proses membentuk kesimpulan atau menarik suatu inferensi berdasarkan fakta yang sudah ada Input Fakta atau Premis
Output Konklusi atau Inferensi
Proses Logika
2 bentuk dasar logika : 1. Logika Proposisi 2. Logika Predikat
13
Knowledge Representation: Logic • Logika Proposisi Logika Proposisi : Pernyataan logika yang hanya bernilai Benar (True) atau Salah (False) Dua atau lebih proposisi dapat digabungkan dengan menggunakan operator : NOT (), AND (), OR (), IMPLIKASI (), BIIMPLIKASI () Tabel Kebenaran :
NOT A T F
A F T
A
: Hari ini hujan
A : Hari ini tidak hujan
(Negasi) AND A T T F F
B T F T F
AB T F F F
A B AB
: Mobil itu merknya Honda : Mobil itu warnanya hitam : Mobil itu merknya Honda DAN warnanya hitam
(Konjungsi) 14
7
Knowledge Representation: Logic OR A T T F F
B T F T F
AB T T T F
A B AB
: Mobil itu merknya Honda : Mobil itu warnanya hitam : Mobil itu merknya Honda ATAU warnanya hitam
(Disjungi) IMPLIKASI A T T F F
B T F T F
A B T F T T
A : Saya sering terlambat makan B : Saya sakit maag A B : JIKA saya terlambat makan MAKA saya sakit maag
(If..Then) BIIMPLIKASI A T T F F
B T F T F
AB T F F T
A : Saya sakit maag B : Saya terlambat makan A B : Saya sakit maag JIKA DAN HANYA JIKA saya terlambat makan maka
(If and only if)
15
• Ekwivalensi Berdasarkan tabel kebenaran, pernyataan A ekwivalen disebut dengan pernyataan B bila mempunyai nilai kebenaran yang sama.
• ABBA komutatif konjungsi • ABBA komutatif disjungsi • (A B) C A (B C) asosiatif konjungsi • (A B) C A (B C) asosiatif disjungsi • (A) A dobel negasi • A B B A kontraposisi • A B A B eliminasi implikasi • A B (A B) (B A) eliminasi bikondisional/biiimplikasi • (A B) A B de Morgan • (A B) A B de Morgan • A (B C) (A B) (A C) distribusi konjungsi atas disjungsi • A (B C) (A B) (A C) distribusi disjungsi atas konjungsi • Validitas Suatu pernyataan disebut valid jika bernilai benar untuk semua model/sentence. Disebut juga Tautologi. Contoh : A A 16
8
Knowledge Representation: Logic • Inferensi pada logika proposisi dapat dilakukan dengan resolusi. • Resulosi : aturan inferensi dengan menggunakan bentuk CNF (Conjunctive Normal Form) dengan ciri-ciri : - Setiap kalimat merupakan disjungsi literal - Semua kalimat terkonjungsi secara implisit Kalimat yang ditulis dengan menggunakan logika proposisi dapat dikonversi ke bentuk CNF. Hilangkan implikasi dan biimplikasi o x y menjadi x y o x y menjadi (x y) (y x) Kurangi kalang negasi menjadi bentuk negasi tunggal o ( x) menjadi x o (x y) menjadi (x y) o (x y) menjadi (x y) Gunakan aturan asosiatif dan distributif untuk konversi menjadi conjuction of disjunction o Asosiatif : (x y) z = x (y z) o Distributif: (x y) z = (x z) (y z) Buat satu kalimat terpisah untuk tiap-tiap konjungsi. • Resulosi digunakan juga untuk membuktikan suatu kebenaran proposisi (uji validitas).
17
Knowledge Representation: Logic Prosedur untuk membuktikan proposisi P dengan beberapa aksioma F yang sudah diketahui : 1. Konversi semua proposisi F ke bentuk CNF 2. Negasikan P dan konversikan hasil negasi ke bentuk klausa (bentuk standar). Tambahkan ke himpunan klausa yang telah ada pada langkah 1 3. Kerjakan hingga terjadi kontradiksi atau proses tidak mengalami kemajuan a. Seleksi 2 klausa sebagai klausa parent b. Bandingkan (resolve) secara bersama-sama. Klausa hasil resolve disebut resolvent. Jika ada pasangan literal L dan L, eliminir dari resolvent. c. Jika resolvent berupa klausa kosong, temukan kontradiksi. Jika tidak, tambahkan ke himpunan klausa yang telah ada.
18
9
Knowledge Representation: Logic Diketahui basis pengetahuan (fakta-2 bernilai benar) sebagai berikut : 1. P 2. (PQ) R 3. (ST) Q 4. T Buktikan kebenaran dari R. P Q R R 1. 2. 3.
Konversi ke CNF P menjadi P (PQ) R menjadi P Q R (ST) Q menjadi (S Q) dan (T Q) 4. T menjadi T Tambahkan kontradiksi R, yaitu R. Sehingga fakta-2 nya menjadi : 1. P 2. PQ R 3. S Q 4. T Q 5. T 6. R
2
6 P Q
P
1 T Q
Q
4 T
T
5
19
Contoh Resolusi
20
10
Contoh Resolusi
21
Knowledge Representation: Logic • Logika Predikat (Predikat Kalkulus) Logika proposisi mempunyai keterbatasan : - Hanya bernilai T atau F (faktanya tidak selalu demikian) - Menggunakan struktur pernyataan secara lengkap (tidak efisien) It is not very useful in AI Logika Predikat : pernyataan logika dinyatakan sebagai fungsi atas variabel (simbolik) atau dalam bentuk predikat dan argumen Operator yang digunakan : NOT (), AND (), OR (), IMPLIKASI (), EKUIVALENSI (), KUANTOR : UNIVERSAL (, dibaca ‘Untuk Setiap’), EKSISTENSIAL (, dibaca ‘Terdapat’) Contoh : Logika Proposisi : Logika Predikat : Ayam suatu saat akan mati : P mati(x) Gajah suatu saat akan mati : Q x = hewan Macan suatu saat akan mati : R (ayam, gajah, macan, ikan) Ikan suatu saat akan mati :S
22
11
Knowledge Representation: Logic •
Logika Predikat (Predikat Kalkulus)
1. 2. 3.
Andi adalah seorang mahasiswa Andi masuk jurusan elektro Setiap mahasiswa elektro pasti mahasiswa fakultas teknik Kalkulus adalah mata kuliah yang sulit Setiap mahasiswa fakultas teknik pasti akan suka kalkulus atau akan membencinya
4. 5.
6. 7.
8.
1. mahasiswa(Andi) 2. elektro(Andi) 3. x:elektro(x) teknik(x) 4. sulit(kalkulus) 5. x:teknik(x) suka(x,kalkulus) benci(x,kalkulus)
Setiap mahasiswa pasti akan suka terhadap suatu mata kuliah Mahasiswa yang tidak pernah hadir pada mata kuliah sulit maka mereka pasti tidak suka dengan mata kuliah tersebut Andi tidak pernah hadir kuliah matakuliah kalkulus Misal ditanyakan : “Apakah Andi suka Kalkulus ?”
6. x: y : suka(x,y) 7. x:y: mahasiswa(x) sulit(y) hadir(x,y) suka(x,y) 8. hadir(Andi, kalkulus)
Note : “Untuk setiap” ; : “Terdapat” 23
1. mahasiswa(Andi) 2. elektro(Andi) 3. x:elektro(x) teknik(x) 4. sulit(kalkulus) 5. x:teknik(x) suka(x,kalkulus) benci(x,kalkulus) 6. x: y : suka(x,y) 7. x:y: mahasiswa(x) sulit(y) hadir(x,y) suka(x,y) 8. hadir(Andi,kalkulus) Misal ditanyakan : suka(Andi,kalkulus) ? hadir(Andi,kalkulus)
8 hadir(Andi,kalkulus) sulit(kalkulus)
8
4
hadir(Andi,kalkulus) sulit(kalkulus) mahasiswa(Andi)
8
4
1
8
4
1
hadir(Andi,kalkulus) sulit(kalkulus) mahasiswa(Andi) suka (Andi, Kalkulus)
7 24
12
Knowledge Representation: Semantic Network • Jaringan Semantik merupakan gambaran pengetahuan secara grafis yang menunjukkan hubungan antar berbagai obyek. • Obyek (benda, peristiwa) dinyatakan dengan node, sedangkan hubungannya dinyatakan dengan arc (busur) • Kelebihan : dapat memperlihatkan sifat bawaan (inheritence, mewariskan), sehingga memungkinkan untuk melakukan deduksi berdasarkan informasi yang diketahui
25
Knowledge Representation: Semantic Network
• Kelebihan - Fleksibel untuk penambahan node dan hubungan baru - Presentasi mudah dimengerti - Efisien, karena adanya sifat inheritence pada node - Mirip dengan gaya penyimpanan dalam pikiran manusia - Dimungkinkan melakukan deduksi untuk node yang tidak terhubung berdasaran sifat inheritence dari node lain • Kekurangan - Tidak ada standar baku dalam mendefinisikan node dan hubungan - Sifat heritence bisa jadi malah memberikan persepsi yang menyulitkan - Pengetahuan prosedural sulit dilakukan dengan jaringan semantik karena urutan dan waktu peristiwa tidak secara eksplisit bisa diwakilkan - Persepsi situasi yang berasal dari pakar terkadang ditempatkan pada titik yang tidak tepat
26
13
Knowledge Representation: Scripts
Skrip Ujian Tertulis Mata Kuliah • Scripts merupakan representasi pengetahuan dalam bentuk skrip (naskah). • Elemen-elemen skrip : - Kondisi Input ; kondisi awal yang harus dipenuhi - Track ; jalur yang mungkin terjadi dalam skrip - Prop ; obyek-2 pendukung yang digunakan - Role ; peran utama dalam skrip - Scene ; adegan yang dimainkan (bag. dari role) - Hasil ; kondisi setelah skrip selesai
Track : Ujian MK Kecerdasan Buatan Role : Mahasiswa (M), Pengawas (P) Prop : Lembar soal, lembar jawab, daftar hadir, alat tulis dll Input : Mahasiswa sudah terdaftar sbg peserta ujian (bebas adm) Scene 1 : Persiapan Pengawas - Menyiapkan lembar soal - Menyiapkan lembar jawab - Menyiapkan daftar hadir Scene 2 : Mahasiswa Masuk Ruangan - Pengawas mempersilahkan mahasiswa memasuki ruangan - Pengawas membagi lembar soal - Pengawas membagi lembar jawab - Pengawas memimpin doa Secane 3 : ………………………… Hasil : - Mahasiswa puas - Mahasiswa kecewa - Mahasiswa bersyukur - Mahasiswa pusing dll 27
Knowledge Representation: Tables • Decision Tables (Tabel Keputusan) - Pengetahuan direpresentasikan dalam bentuk tabel baris dan kolom - Pertama, susun daftar atribut (pada kolom) - Kedua, susun konklusi/kesimpulan (pada baris) - Ketiga, beri nilai/tanda pada pasangan (atribut, konklusi) yang cocok bujur
bujur
bujur
bujur
Buah apa yang bentuknya bulat, baunya asam, warnanya oranye, Rasannya manis dan kulitnya kasar ? jeruk
28
14
Knowledge Representation: Tree • Decision Tree (Pohon Keputusan) - pengetahuan direpresentasikan dalam bentuk pohon Oranye ? Warna ? Bulat ?
Buahnya masam
Bentuk ?
masam
Hijau ?
Jeruk Anggur Hijau
Merah ?
Anggur
Oval ?
Mungkin limau, jeruk limun dll Diperlukan informasi lain
Bau ? Tidak masam
Buahnya Tidak masam
Jika baunya masam, bentuknya bulat, Warnanya oranye maka buah tsb JERUK 29
Knowledge Representation: Production Rules • Production Rules (Aturan Produksi) - disebut juga Production System (Sistem Produksi) - Terdiri atas : .:: Ruang Keadaan ; berisi keadaan awal, tujuan dan kumpulan aturan .:: Strategi Kontrol ; untuk proses pencarian dan mengendalikan eksplorasi Keadaan Awal
Aturan
Tujuan
Strategi Kontrol - Representasi sistem produksi pada dasarnya berupa aplikasi aturan (rule) yang tersusun atas : 1. Anteseden ; mengekspresikan situasi/fakta atau premis 2. Konsekuen ; mengekspresikan tindakan atau konklusi bila anteseden benar Bentuk : If <premis> then
30
15
Knowledge Representation: Production Rules Variasi dan Contoh Bentuk IF..THEN • IF <premis> THEN IF tenggorokan saya meradang THEN saya tidak merokok • IF <premis> Saya tidak merokok IF tenggorokan saya meradang • IF<premis> THEN ELSE IF tenggorokan saya meradang THEN saya tidak merokok ELSE saya tetap merokok Premis dapat berisikan gabungan dari beberapa premis yang dihubungkan dengan operator logika (NOT, OR, AND, dll)
31
Knowledge Representation: Frame Automobile Frame • Frame (Kerangka) - struktur data yang memuat pengetahuan atas suatu obyek - setiap frame mendeskripsikan satu obyek - merupakan dasar aplikasi AI dan Expert System berbasis obyek (OOP) - Contoh : Frame automobil
Class of : Transportation Name of manufacturer : Audi Origin of manufacturer : Germany Model : 5000 Turbo Type of car : Sedan Weight : 3300 lb Wheelbase : 105.8 inches Number of doors : 4 Transmission : 3-speed automatic Number of wheels : 4 Engine : - Type : In-line, overhead cam - Number of cylinders : 5 Acceleration : - 0-60 : 10.4 seconds - Quarter mile : 17.1 seconds, 85 mph Gas mileage : 22 mpg average
Engine Frame Cylinder bore : 3.19 inches Cylinder strtoke : 3.4 inches Compression ratio : 7.8 to 1 Fuel system : Injection with turbocharger Horsepower : 140 hp Torque : 160 ft/LB
32
16
Knowledge Representation: Frame Hirarki Frame Frame suatu obyek (parent frame) dapat terdiri beberapa kumpulan frame (child frame), dan dinyatakan secara hirarki.
Vehicle Frame
Boat Frame
Train Frame
Passenger Car Frame
Car Frame
Truck Frame
Compact Car Frame
Midsize Car Frame
Bob’s Car
Jan’s Car
Airplane Frame
Submarine Frame
Bus Frame
33
Knowledge Representation: Frame Vehicle Frame
Train Frame
Boat Frame
Passenger Car Frame
Car Frame
Airplane Frame
Truck Frame
Submarine Frame
Bus Frame
Parent frame
Name : Compact Car Compact Car Frame
Bob’s Car
Midsize Car Frame
Jan’s Car
Slots
Facets
Owner Color No. of cylinders Range If needed Make Range If needed Model
Check registration list List, per manufacturer
Vintage (year) Range If needed
4 or 6 Ask owner List of all manufacturer Ask owner Use frame corresponding to make 1950-1992 Ask owner
Child frame Name : Jan’s Car Instance of : compact car frame Slots
Facets
Owner Color No. of cylinders Make Model Vintage (year)
Jan Blue 6 Honda Accord 1992
34
17
Inference
• Once the knowledge base is completed, it is ready for use. • We need : computer program to access the knowledge for : - making inferences - making decisions to problem solving • This program is an algorithm that controls some reasoning process (penalaran) and it is usually referred to as the inference engine or the control program. • In rule-bsed systems it is also referred to as the rule interpreter. • The most popular control programs are forward and backward chaining • Before we examine the specific inferencing techniques used in AI, we will discuss about the reasoning Keadaan Awal
Aturan
Tujuan
Strategi Kontrol
35
Categories of Reasoning
Kategori Penalaran - Penalaran Deduktif Penalaran berdasarkan premis umum untuk mendapatkan konklusi khusus Contoh : Premis Mayor : Jika saya lulus dengan IPK > 3.5 maka saya akan gundul Premis Minor : Saya lulus dengan IPK = 3.65 Konklusi : Saya akan gundul - Penalaran Induksi Penalaran berdasarkan fakta/premis khusus untuk mendapatkan konklusi umum Contoh : Premis 1 : Kalkulus adalah pelajaran yang sulit Premis 2 : Geometri adalah pelajaran yang sulit Premis 3 : Statistika adalah pelajaran yang sulit Konklusi : Matematika adalah pelajaran yang sulit Pada penalaran induktif, munculnya premis baru dapat menjadikan konklusi gugur. Misal, pada contoh tsb ditambah Premis 4 : Anatomi adalah pelajaran yang sulit maka konklusi tsb menjadi tidak berlaku. Pada penalaran induktif sangat dimungkinkan terjadinya ‘ketidakpastian (uncertainty)’. 36
18
Categories of Reasoning
- Penalaran Analogi Penalaran berdasarkan analogi (menarik kesamaan) Contoh : Misal komputer sudah mengetahui bahwa kurikulum di Teknik Informatika S1 didesain untuk 8 semester. Misal Aris kuliah di Teknik Informatika S1. Ketika ditanya : “Berapa tahun Aris akan lulus ?”. Jawabnya : Aris akan lulus 4 tahun. - Penalaran Formal Penalaran menggunakan manipulasi sintaksis struktur data (simbolik). Contoh : inferensi yang menggunakan predikat kalkulus, logika matematika dll. - Penalaran Numerik Prosedural Penalaran yang menggunakan model matematika atau simulasi Contoh :Sistem NASA yang dikembangkan oleh Kennedy Space Center for trouble shooting (diagnosing failure). Sistem berbasis aturan tidak efektif digunakan karena pada sistem sudah terdapat informasi yang berasal dari sensor. - Generalisasi Penalaran menggunakan logika dan jaringan semantik. Contoh : Misal semua perusahaan pasti mempunyai pimpinan. Misal semua staff bekerja untuk perusahaan. Maka dapat disimpulkan bahwa staff pasti mempunyai pimpinan. 37
Methods of Reasoning: with Logic Penalaran Menggunakan Logika - Modus Ponens Jika diketahui : A B A ---------Konklusi B
Jika cuaca cerah maka kita pergi melaut Cuaca hari ini cerah --------------------------------------------------------Kita pergi melaut
- Modus Tollens : A B B ---------Konklusi A
Jika cuaca cerah maka kita pergi melaut Kita tidak pergi melaut --------------------------------------------------------Cuaca hari ini mendung tebal
38
19
Methods of Reasoning: with Rules Backward Chaining Penalaran Menggunakan Aturan (Rules) - Backward Chaining Disebut juga pendekatan goal-driven. Inferensi diawali dari tujuan atau hipotesis (bagian THEN), kemudian dicocokkan dengan fakta-fakta yang ada (keadaan yang diketahui). Contoh : Keputusan Berinvestasi. Variabel-2 : A = $10,000 D = Pendapatan minimal $40,000 B = Umur kurang dari 30 tahun E = Investasi di sekuritas C = Pendidikan Sarjana F = Investasi di bursa saham G = Investasi di saham IBM Setiap variabel bernilai True (Yes) atau False (No) Fakta : Diasumsikan, seorang investor memiliki dana $10,000 (A True) dan dia berumur 25 tahun (B true). Dia membutuhkan petunjuk apakah dia akan menginvestasikan dananya di saham IBM ? (Yes atau No sebagai tujuan) 39
Methods of Reasoning: with Rules Backward Chaining Rules : Diasumsikan, kita mempunyai knowledge base yang berisi 5 rule : R1 : Jika seseorang mempunyai dana $10,000 dan dia sarjana maka orang tsb akan berinvestasi di sekuritas R2 : Jika seseorang mempunyai pendapatan minimal $40,000 dan dia sarjana maka orang tersebut akan berinvestasi di bursa saham R3 : Jika seseorang berumur kurang dari 30 tahun dan jika dia berinvestasi di sekuritas maka orang tersebut akan berinvestasi di bursa saham R4 : Jika seseorang berumur kurang dari 30 tahun maka dia berpendidikan sarjana R5 : Jika seseorang ingin berinvestasi di bursa saham maka saham tersebut adalah saham IBM Dapat ditulis sebagai : Fakta : A True Rules : R1 : IF A and C THEN E B True R2 : IF D and C THEN F R3 : IF B and E THEN F R4 : IF B THEN C R5 : IF F THEN G
Goal : Accept or Reject G
40
20
Methods of Reasoning: with Rules Backward Chaining • Starting point : Backward chaining dimulai dari mengecek rule yang memuat goal (G) pada konklusinya. Karena hanya rule R5 yang memuat konklusi G maka inferensi dimulai dari R5. • Step 1 : Accept or reject G ? No conclusion, we have A true and B true. • Step 2 : R5 : IF F THEN G Tidak diketahui apakah F True atau False. F adalah premis dari R5, tetapi F konklusi dari R2 dan R3. Maka test nilai F dilakukan pada R2 atau R3. • Step 3 : R2 : IF D and C THEN F Jika D dan C keduanya True maka F bernilai True. Masalahnya, D bukan fakta dan juga bukan konklusi. Proses buntu, beralih ke R3 (backtracking) • Step 4 : R3 : IF B and E THEN F B True (fakta). Untuk test E, menuju ke R1 dimana E sebagai konklusi. • Step 5 : R1 : IF A and C THEN E A True (fakta). Untuk test C, menuju ke R4 dimana C sebagai konklusi. • Step 6 : R4 : IF B THEN C Karena B True (fakta) maka C bernilai True. Ambil C sebagai fakta baru. • Step 7 : Jika C True maka E True (R1), sehingga dari R3 maka F True dan akhirnya G True
Jadi orang tersebut dapat menginvestasikan modalnya di saham IBM
41
Methods of Reasoning: with Rules Backward Chaining Step 5
True R1 : IF A
And
C THEN E
R2 : IF D
And
C THEN F
True R3 : IF B And
bactracking E
THEN G Step 3
Step 6 Step 4 R4 : IF B THEN C True (akibat) R5 : IF F
THEN G Step 2
Start (Step 1)
42
21
• Backward Chaining (Contoh Sederhana) 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 Fakta : dolar turun Tujuan : Beli obligasi atau tidak ? beli obligasi
harga obligasi turun
R6
R2
suku bunga naik
R5
dolar turun
Karena sesuai dengan fakta, maka keputusannya adalah membeli obligasi.
43
Methods of Reasoning: with Rules Forward Chaining
- Forward Chaining (Penalaran Maju) Pendekatan data-driven. Inferensi diawali dari fakta-2 yang ada/keadaan awal (bagian IF), kemudian mencoba melakukan konklusi menggunakan aturan. Komputer menganalisis masalah dengan melihat fakta-fakta yang cocok dengan aturan (rules). Contoh : Keputusan Berinvestasi. Persoalan, fakta dan tujuan sama dengan sebelumnya. Fakta : A True B True
Rules : R1 : IF A and C THEN E R2 : IF D and C THEN F R3 : IF B and E THEN F R4 : IF B THEN C R5 : IF F THEN G
Goal : Accept or Reject G
44
22
Methods of Reasoning: with Rules Forward Chaining • Starting point : Diketahui A dan B True. Inferensi dapat dimulai dari salah satu fakta, misal A. Cari rule yang mengandung A pada anteseden (premis). Hanya R1 yang dijumpai. • Step 1 : R1 : IF A and C THEN E Sistem melakukan verifikasi E, tetapi diperlukan informasi nilai C. Sistem akan mencari rule yang mengandung konklusi C, yaitu R4. • Step 2 : R4 : IF B THEN C Karena B True (fakta) maka C bernilai True. • Step 3 : R1 : IF A and C THEN E Karena A dan C True maka E True. Proses menuju R3 dimana E sebagai premis. • Step 4 : R3 : IF B and E THEN F B True (fakta) dan E True maka F True. Proses menuju ke R5 dimana F sebagai premis. • Step 5 : R5 : IF F THEN G Karena F True maka G True.
Sistem AI merekomendasikan orang tersebut untuk menginvestasikan modalnya di saham IBM
45
• Forward Chaining (Contoh Sederhana) 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 Fakta : dolar turun Tujuan : Beli obligasi atau tidak ? dolar turun
suku bunga naik
R5
R2
harga obligasi turun
R6
beli obligasi
Karena fakta yang ada membawa ke tercapainya tujuan, maka keputusannya adalah membeli obligasi.
46
23
Methods of Reasoning: with Rules Forward Chaining
• Faktor-faktor yang mempengaruhi pemilihan backward/forward chaining - Banyaknya keadaan awal dan tujuan. Jika jumlah keadaan awal lebih kecil dari tujuan lebih baik gunakan forward. Sebailknya, jika jumlah keadaan awal lebih besar dari tujuan maka lebih baik gunakan backward. - Bentuk kejadian yang memicu penyelesaian masalah. Jika kejadian berupa fakta baru, lebih baik digunakan forward. Sebaliknya, jika kejadian berupa query, lebih baik digunakan backward.
47
Explanation
• Explanation : proses atau usaha untuk memperjelas (memberi penjelasan) atas suatu informasi/paparan, rekomendasi atau keputusan. • Terdapat 2 (dua) bentuk : - Eksplanasi Why Bentuk penjelasan dari adanya pertanyaan Why (Mengapa) ? Contoh : Dialog tentang keputusan investasi Computer : What is your annual income ? Client : Why ? (Why do you need to know ?) Computer : In checking R2, I need to know if your income is above $40,000. If this is true, I will conclude that because you have a college degree, you should invest in growth stocks.
- Eksplanasi How Bentuk penjelasan dari adanya pertanyaan How (Bagaimana) ? Contoh : Dialog tentang keputusan investasi Computer : Invest in IBM stocks. Client : How ? (How was the conclusion reached ?) Computer : Givens that you have $10,000 to invest and you are younger than thirty, then according to rule 4 you have a college degree. If this is case, then according to R1 you should invest in securities. For a young investor like you, according to R3 ……… dst……. 48
24
Referensi Aris Marjuni, Materi Ajar: Artificial Intelligence, 2005
49
25