Pengantar Kecerdasan Buatan
Knowledge Representation
Prodi Sistem Komputer
Universitas Komputer Indonesia
Taufiq Nuzwir Nizar
Basis Pengetahuan
Langkah pertama untuk membangun
Kecerdasan Buatan adalah bagaimana
membangun sebuah knowledge base
Selanjutnya kita akan bisa
menggunakan mesin inference untuk
memproses menjadi output
Basis Pengetahuan
ARTIFICIAL
INTELLIGENCE
Input: Output:
MASALAH SOLUSI
Knowledge Inference
Base Engine
Basis Pengetahuan
Knowledge engineering: process of
collecting and organizing the knowledge
Knowledge representation: process
of how knowledge is represented to
form a knowledge base
Representasi Pengetahuan
Bagaimana merepresentasikan pengetahuan ke dalam basis
pengetahuan dan menguji kebenaran penalaran
• Cara-cara lama:
– List, digunakan pada LISP
– Predicate Calculus, digunakan pada Prolog
– Tree, untuk heuristic search
Karakteristik RP:
– Dapat diprogramkan
– Dapat dimanfaatkan untuk penalaran, menggambarkan
kesimpulan sebagai fungsi kecerdasan
Representasi Pengetahuan (2)
Harus terdiri dari struktur data dan prosedur untuk
penafsiran
Hal yang berhubungan dengan RP:
Object pengetahuan itu sendiri
Event: kejadian-kejadian dalam dunia nyata dan hubungannya
Performa: bagaimana melakukan suatu tugas tertentu
Meta knowledge: pengetahuan tentang pengetahuan yang
direpresentasikan
Penggunaan Pengetahuan
Acuisition: mengintegrasikan informasi baru kedalam pengetahuan
sistem.
Terdapat dua level:
Menyusun fakta ke dalam database
Pembuatan fungsi untuk mengintegrasikannya dengan cara “belajar dan
mengadaptasikannya” terlebih dahulu
Retrieval: mengingat kembali, menyusun ulang
pengetahuan berdasarkan hubungan pengetahuan terhadap masalah
• Linking: mengekstrak informasi baru tersebut
• Lumping: mengelompokkan hasil ekstraksi pengetahuan baru tersebut
kedalam struktur yang lebih besar seperti yang dibutuhkan dalam
menyelesaikan masalah
Penggunaan Pengetahuan
Reasoning: pengetahuan digunakan untuk menalar
suatu permasalahan
Formal reasoning: menggunakan logika proporsional
Procedural reasoning: menggunakan aturan produksi
( IF-THEN)
Analogical reasoning: sangat sulit
Jika suatu permasalahan
dideskripsikan dengan menggunakan
representasi yang tepat, maka dapat
dipastikan bahwa permasalahan
tersebut dapat diselesaikan.
Klasifikasi Kategori RP
Menurut Mylopoulus dan Levesque: (declarative)
Representasi Logika: menggunakan logika formal. Digunakan pada
PROLOG
Representasi Prosedural: menggambarkan prosedur sebagai
kumpulan instruksi untuk memecahkan masalah. Digunakan dalam
pemrograman: IF-THEN
Representasi Network: menggambarkan pengetahuan sebagai Graph
dan Tree
Representasi Terstruktur: memperluas konsep Representsi Network
dengan membuat node-nodenya menjadi struktur data yang kompleks.
Contoh: script, frame, dan object
LOGIKA
Adalah representasi pengetahuan yang paling tua.
Proses menarik kesimpulan dari fakta yang sudah ada
Input: premis-premis dan Ouput: kesimpulan
Terdiri dari: sintaks (simbol), semantik (fakta), dan proses
pengambilan keputusan (inferensi)
Proses penalaran:
– Deduktif (umum-khusus)
– Induktif (khusus-umum)
Logika:
– Logika Preposisi: and, or, not, implikasi, dan ekuivalensi
– Logika Predikat: representasi fakta dalam bentuk well formed formula
Ilustrasi Representasi Pengetahuan
secara logik (Representasi Logika)
Contoh sederhana fakta adalah sebagai
berikut:
helder adalah anjing
Fakta tersebut dapat direpresentasikan
secara logika, yaitu:
anjing(helder)
Kita juga dapat merepresentasikan secara logik fakta
lain, yaitu bahwa semua anjing mempunyai ekor
Ɐx : anjing(x) mempunyai_ekor(x)
Kemudian secara deduktif dari mekanisme logik ini kita
bisa mendapatkan representasi baru:
mempunyai_ekor(anjing)
Dengan menggunakan fungsi mapping secara
backward, kita dapat men-generate suatu kalimat yang
berbunyi
helder mempunyai ekor
Contoh kasus Representasi
Pengetahuan
Cobalah representasi pengetahuan dari
silsilah keluarga berikut ini
Hasil Representasi
anaklaki(hari, agus). dibaca sebagai anak
laki-laki dari hari adalah agus
anaklaki(agus, budi).
anakperempuan(agus, ani).
anakperempuan(budi, ria).
anakperempuan(budi, ita).
anaklaki(ani, rudi).
Catatan
Kita dapat menggunakan kalimat apapun
sebagai predikat
Ide dasar untuk membuat notasi adalah
predicate (argument, argument ).
Simple Query
on Knowledge Database
Adalah bagaimana mencari suatu pengetahuan dari
representasi yang ada
Contoh:
anakperempuan(agus,P).
hasilnya adalah P = ani yang menandakan
bahwa ani adalah anak perempuan dari agus
Contoh lain:
anaklaki(OT,AL).
Hasil : OT=hari AL=agus
OT=agus AL=budi
OT=ani AL=rudi
Contoh lain:
anaklaki(P,budi), anakperempuan(P,D).
untuk menanyakan saudara perempuan dari
budi
Hasil : P=agus D=ani
Meng-extend hubungan antara
knowledge
Kita dapat menambahkan hubungan antara
knowledge, misalnya antara anak laki dan anak
perempuan diextend menjadi hubungan orangtua
orangtua(C,P):-anaklaki(P,C).
orangtua(C,P):-anakperempuan(P,C)
Recursive description
of relationship
Jika ingin mencari turunan, berikut cara
merepresentasikannya:
turunan(OT,TR):-orangtua(TR, OT). anak
turunan(OT,TR):-orangtua(TR, P), orangtua(P, OT). cucu
turunan(OT,TR):- orangtua(TR, P), orangtua(P,GP),orangtua(GP, OT).
cicit
Fakta di atas dapat diekspresikan dengan proses
rekursif sbb:
turunan(OT,TR):-orangtua(TR,OT). anak
turunan(OT,TR):- orangtua(TR,P),turunan(OT,P).