• Tidak ada hasil yang ditemukan

Bab 6 First Order Logic

N/A
N/A
Protected

Academic year: 2021

Membagikan "Bab 6 First Order Logic"

Copied!
11
0
0

Teks penuh

(1)

BAB 6

BAB 6

FIRST ORDER LOGIC

FIRST ORDER LOGIC

6.1

6.1 Tujuan

Tujuan

1.

1. Praktikan mampu memahami konsepPraktikan mampu memahami konsep  first order logic first order logic 2.

2. Praktikan mampu memahami komponen-komponen yang ada padaPraktikan mampu memahami komponen-komponen yang ada pada  first order logic first order logic 3.

3. Praktikan mampu menerapkanPraktikan mampu menerapkan first order logic first order logic pada pemecahan masalah pada pemecahan masalah

6.2

6.2 Ringkasan Materi

Ringkasan Materi

A.

A. PendahuluanPendahuluan

Proses reasoning untuk menyelesaikan masalah dengan merepresentasikan masalah Proses reasoning untuk menyelesaikan masalah dengan merepresentasikan masalah kedalam logic sudah dilakukan oleh propositional logic. Propositional logic dalam kedalam logic sudah dilakukan oleh propositional logic. Propositional logic dalam menyelesaikan permasalahan dengan menggunakan fakta-fakta yang diproses menggunakan menyelesaikan permasalahan dengan menggunakan fakta-fakta yang diproses menggunakan logika-logika sederhana saja. Sedangkan pada first order logic permasalahan diselesaikan logika-logika sederhana saja. Sedangkan pada first order logic permasalahan diselesaikan dengan sentence yang merepresentasikan fakta dan term yang merepresentasikan objek. dengan sentence yang merepresentasikan fakta dan term yang merepresentasikan objek. Komponen-kompo

Komponen-komponen penting yang ada pada fnen penting yang ada pada first order logic irst order logic yaitu :yaitu :

Objects

Objects  : merupakan sesuatu yang dikenai logika-logika yang memiliki identitas untuk  : merupakan sesuatu yang dikenai logika-logika yang memiliki identitas untuk masing-masing individual (komputer, rumah, mobil, ...).

masing-masing individual (komputer, rumah, mobil, ...). a.

a. PropertiesProperties  : sifat yang dimiliki oleh objek dan merupakan pembeda dengan objek  : sifat yang dimiliki oleh objek dan merupakan pembeda dengan objek lainnya (merah, besar, lingkaran, ...).

lainnya (merah, besar, lingkaran, ...).  b.

 b. RelationsRelations : aksi atau aktifitas yang menjadi penghubung antar objek dalam berelasi: aksi atau aktifitas yang menjadi penghubung antar objek dalam berelasi (saudara dari, lebih tinggi dari, bagian dari).

(saudara dari, lebih tinggi dari, bagian dari). c.

c. FunctionsFunctions : merupakan relation yang memiliki satu nila : merupakan relation yang memiliki satu nilai (ayah dari, teman baik,...).i (ayah dari, teman baik,...). Komponen-komponen yang sudah dijelaskan diatas disebut sebagai ontological Komponen-komponen yang sudah dijelaskan diatas disebut sebagai ontological commitment atau hal-hal apa saja yang diketahui dan dijelaskan di dalam logic yang commitment atau hal-hal apa saja yang diketahui dan dijelaskan di dalam logic yang digunakan dalam menyelesaikan permasalahan. Selanjutnya akan ditunjukkan beberapa digunakan dalam menyelesaikan permasalahan. Selanjutnya akan ditunjukkan beberapa  jenis

 jenis logic logic lain lain yang yang memiliki memiliki ontological ontological commitment commitment dan dan epistemological epistemological commitmentcommitment (kebenaran apa yang dapat dinyatakan tentang sebuah sentence). Contoh beberapa logic (kebenaran apa yang dapat dinyatakan tentang sebuah sentence). Contoh beberapa logic lain adalah sebagai berikut :

(2)

Logic Ontologi Epistemological

Propositiona l logic Facts True/false/unk nown

First-order logic Facts, objects, relations True/false/unk nown

Temporal logic Facts, objects, relations, times True/false/unk nown

Probability theory Facts Degree of believe 0...1 Fuzzy logic Degree of truth Degree of believe 0...1

Elemen-elemen dasar terkecil yang dimiliki oleh first order logic adalah sebagai berikut :

 Constants

Dituliskan dalam huruf besar seperti A, X, NAMA. Pada simbol konstanta ini, setiap simbol harus menyatakan secara spesifik objek yang dimaksud. Tetapi, mungkin saja satu simbol mengacu pada beberapa nama berbeda. Misalnya, MOBIL bisa mengacu pada MOBIL SEDAN, MOBIL JEEP, dan sebagainya. Oleh karena itu penulisan simbol konstanta harus dilakukan secara hati-hati agar tidak terjadi kerancuan atau ambiguitas.

 Predicates

Menyatakan relasi khusus dalam suatu model yang menghubungkan antar objek yang memiliki hubungan. Misalkan Berwarna adalah suatu predicate yang memiliki beberapa nilai. Contoh : Berwarna(Mobil, Biru), Berwarna(Mobil, Merah), dan sebagainya.

 Functions

Menyatakan relasi yang hanya membutuhkan satu nilai. Karena setiap orang hanya memiliki satu ayah, maka Ayah merupakan suatu function. Misalkan Ayah(Boediono, Zaki).

 Variables

Dituliskan dalam huruf kecil seperti a, x, s dan sebagainya. Variable ini menyatakan simbol yang dapat digantikan oleh konstanta apapun dan bersifat dinamis.

(3)

Merupakan logika yang menghubungkan di dalam suatu kalimat kompleks seperti : ∧∨ ¬

⇒⇔

 Equality

Merupakan logika yang membandingkan kesamaan antara dua atau lebih kalimat yang memiliki kesamaan nilai logika. Equality disimbolkan dengan tanda =

 Quantifiers

Terdapat dua quantifier secara umum yaitu Universal quantifier ( ) yang menyatakan sesuatu yang bersifat umumdan Existential quantifier (

menyatakan sesuatu yang berlaku sebagian saja.

B. Sintaks First Order Logic

Tata bahasa pada first order logic meliputi :

 Terms

Merupakan ekspresi logika yang mengacu pada sebuah objek. Terms bisa berupa constant, variable, atau function. Penulisan term dapat dilihat pada contoh di bawah ini :

 Atomic sentences

Merupakan komponen yang dapat terbentuk dari Predicate(Term, ...) atau Term=Term. Atomic sentence merupakan kalimat paling sederhana dan belum memiliki komponen logika lainnya. Bentuk penulisan atomic sentences adalah sebagai berikut : function(term1,....,termn) atau constant atau variable ) yang

(4)

Contoh penggunaan adalah sebagai berikut :

Sepatu(Budi), Saudara(Ahmad, Anton), Memberi(Andi,Budi,KueCoklat), Saudara(Andi)=Budi, dan sebagainya.

 Complex sentences

Merupakan kalimat kompleks yang tersusun dari beberapa atomic sentence yang saling terhubung berdasarkan logika dengan menggunakan connective. Bentuk  penulisan dari complex sentences adalah sebagai berikut :

Complex

Contoh penggunaan dari complex sentence adalah sebagai berikut:

o Belajar(Andi) Pintar(Andi)

o ¬S,S1∧S2,S1∨S2,S1 S2,S1 S2

o Saudara(Ahmad,Andi) Saudara(Andi,Ahmad) o >(1, 2) ∨

≤ (1, 2)

o >(1, 2) ∧ ¬ > (1, 2)

o Belajar(x, SC) Mengerti(x, AI)

C. Semantik First Order Logic

Pada first order logic sama halnya dengan propositional logic sebuah kalimat first order logic dikatakan true terhadap sebuah model, artinya kalimat first order logic memiliki nilai kebenaran tertentu sehingga dianggap true atau false. Satu kalimat dalam first order logic dapat diinterpretasikan banyak cara dalam sebuah model. Model dalam first order logic terdiri dari :

o Objects : elemen-elemen yang nyata ada pada permasalahan (domain elements) o Relations : hubungan antara elemen-elemen / objek-objek tertentu

 predicate(term1,....,termn) atau

term1 = term2

(5)

Sebuah interpretasi mendefinisikan referent (yang dipetakan) sebagai berikut : 

o Constant symbols : objects o Predicate symbols : relations

o Functions symbols : functional relations

Kalimat first order logic memiliki maksud kalimat atomik predicate(term1,...,term2) dikatakan bernilai true dalam model m di bawah unterpretasi i jika dan hanya jika object yang di-refer (term1, ... , term2) di bawah i terhubung oleh relation yang di refer oleh predicate dalam m.

Ilustrasi pada gambar diatas menggambarkan komponen-komponen yang ada pada first order logic. Pada ilustrasi digambarkan bahwa terdapat orang dan raja. Hubungan keduanya adalah sebagai saudara satu dengan lainnya. Dari gambar tersebut dapat dilihat masing-masing komponen adalah sebagai berikut :

 Object

Ilustrasi menggambarkan ada seorang raja dan orang biasa, dapat kita ambil contoh objek yang ada adalah orang, raja, kaki raja dan kaki orang. Objek memiliki identitas tertentu yang nantinya akan melalui proses logika.

 Function

function merupakan hubungan yang hanya membutuhkan satu nilai untuk satu objek, contoh pada ilustrasi adalah kaki digunakan oleh orang untuk berjalan.

(6)

 Relation

menyatakan hubungan antar objek yang memiliki relasi tertentu, pada gambar ilustrasi terdapat relasi saudara antara orang dan raja.

2.4 Quantifiers

 Universal quantifiers

Universal menyatakan logika yang digunakan untuk menunjuk sesuatu yang bersif at umum. Simbol

 yang memiliki makna "untuk semua atau setiap" atau "for all"

terhadap sebuah variabel x yang disimbolkan dengan

x berarti bahwa kalimat tersebut  berlaku untuk setiap objek x. Contoh permasalahan pada first order logic yang

menggunakan Universal Quantifiers adalah sebagai berikut : Misalkan ada kalimat "Ikhsan adalah anak kecil", kalimat ini akan dinyatakan sebagai AnakKecil(Ikhsan), dan ada kalimat "Andi suka permen" dinyatakan sebagai Suka(Andi,Permen). Jika kita ingin membuat kalimat "Untuk setiap objek x, jika x adalah anak kecil maka x suka  permen". Maka kalimat dapat kita tuliskan pada bentuk first order logic sebagai:

x AnakKecil(x)

Suka(x,Permen) kalimat tersebut akan bernilai benar jika dan hanya  jika semua kalimat di bawah ini benar.

AnakKecil(Budi)

Suka(Budi,Permen)∧

AnakKecil(Rahmad)

Suka(Rahmad,Permen)∧ AnakKecil(Anton)

Suka(Anton,Permen)∧

Hal-hal yang harus dihindari pada penggunaan Quantifier Universal adalah penggunaan logika∧ pada kalimat utama karena akan menimbulkan pengertian yang ambigu.

 Existential quantifiers

Existential menyatakan logika yang digunakan untuk menunjuk sesuatu yang bersif at khusus. Artinya hanya beberapa bagian atau sebagian saja dari keseluruhan himpunan.

(7)

Logika ini merupakan kebalikan dari logika Universal. Logika ini disimbolkan dengan

 yang memiliki makna "There Exist" atau (ada satu atau beberapa). Kita dapat menyatakan kalimat "Ada objek x, jika x adalah anak kecil maka x suka permen" menjadi first order logic sebagai berikut:

x AnakKecil(x)∧ SukaPermen(x).

Hal-hal yang harus dihindari pada penggunaan Quantifier Universal adalah penggunaan logika

 pada kalimat utama karena akan menimbulkan pengertian yang ambigu.

2.5Equality

Equality merupakan pembandingan terhadap dua kalimat atau term yang memiliki nilai logika true atau false. Kedua kalimat dianggap sama jika memiliki nilai logika yang sama. Term1 =Term2 akan diinterpretasikan benar jika dan hanya jika memiliki nilai yang sama. Contoh bentuk dari equality adalah sebagai berikut :

Equality

x,ySaudara(x,y) [¬ (x = y)∧

m,f ¬ (m = f) ∧ OrangTua(m,x)∧ OrangTua(f,x) ∧ OrangTua (m,y) ∧ OrangTua (f,y)]

2.6 Inferensi pada First Order Logic

Proses Inferensi pada First Order Logic menggunakan 7 aturan inferensi yang digunakan pada Propositional Logic, dengan ditambah aturan yang lebih kompleks sehubungan dengan quantifiers, sebagai berikut :

1. Inference Rules Involving Quantifiers

SUBST(Ѳ,α

): untuk menotasikan hasil dari pen

gaplikasian operasi subsitusi Ѳ

terhadap sentence α

.

SUBST({x/Andi, y/Budi}, Saudara(x,y)) = Saudara(Andi, Budi). 2. UniversalElimination:

(8)

g :

∀v α

({},α

Dari

x Suka(x, Membaca), dapat digunakan substitusi {x/Andi} dan melakukan inferensi bahwa Suka(Andi, Membaca)

3. Existential Elimination:

untuk setiap sentence

, variabel v, dan simbol konstanta k yang tidak tampak dimanapun di dalam basis pengetahuan:

∃ 

,)

Dari

x Membunuh(x, Korban), kita dapat menyimpulkan Membunuh{Penjahat, Korban}, selama Penjahat tidak tidak tampak dimanapun di dalam basis

 pengetahuan.

4. Existential Introduction:

untuk setiap sentence

, variabel v yang tidak terjadi pada

, dan ground term g yang terjadi pada

:

∃ ,)

(9)

6.3 Percobaan/ Review / Contoh Kode Program (Jika memang ada) terdapat pernyataan-pernyataan sebagai berikut :

- Andi adalah seorang mahasiswa - Andi masuk Jurusan elektro

- Setiap mahasiswa elektro pasti mahasiswa Teknik - Kalkulus adalah matakuliah yang sulit

- Setiap mahasiswa Teknik pasti akan suka kalkulus atau akan membencinya - Setiap mahasiswa pasti akan suka terhadap suatu matakuliah

- Mahasiswa yang tidak pernah hadir pada kuliah matakuliah sulit, maka mereka pasti tidak suka terhadap matakuliah tersebut.

- Andi tidak pernah hadir kuliah matakuliah kalkulus

• Kedelapan pernyataan di atas dapat dibawa ke bentuk logika predikat :

a. mahasiswa(Andi)  b. Elektro(Andi)

c.

x: Elektro(x) ->Teknik(x) d. sulit(Kalkulus)

e.

x: Teknik(x) -> suka(x, Kalkulus) ∨ benci(x, Kalkulus)

f.

x:

y : suka(x,y)

g.

x:

y: mahasiswa(x) ∧sulit(y)∧~hadir(x,y) ->~suka(x,y)

h. ~hadir(Andi, Kalkulus)

• Kemudian dibuat dalam bentuk klausa :

1. mahasiswa(Andi) 2. Elektro(Andi)

3. ~Elektro(x1)∨ Teknik(x1)

4. sulit(Kalkulus)

5. ~Teknik(x2) ∨suka(x2, Kalkulus) ∨ benci(x2, Kalkulus)

(10)

7. ~mahasiswa(x4)∨~sulit(y1)∨hadir(x4,y1)∨~suka(x4,y1)

8. ~hadir(Andi,Kalkulus)

• Akan dibuktikan apakah “Andi benci kalkulus”

 atau dapat ditulis benci(Andi,Kalkulus)

Pohon resolusi pada first order logic (logika predikat 1) untuk contohdi atas adalah :

6.4 Tugas Praktikum

1. Ubahlah kalimat dibawah ini menjadi bentuk FOL (Poin 30)

-  Nilai terbaik pada kelas A selalu lebih tinggi daripada nilai terbaik pada kelas B - Hanya satu mahasiswa yang mengambil semester pendek pada tahun 2011

- Setiap mahasiswa yang mengambil mata kuliah Kecerdasan Buatan berhasil lulus 2.

Representasikan permainan “Wumpus World” dengan menggunakan First Order

(11)

3. Pak Toni adalah seorang programmer. Semua sistem analis adalah manusia. Pak Johan adalah seorang sistem analis. Sistem analis adalah programmer. Semua  programmer adalah temannya sistem analis atau tidak kenal sama sekali (bukan teman). Setiap orang adalah teman dari seseorang. Orang-orang hanya mengkritik orang yang bukan temannya. Pak Toni mengkritik Pak Johan. Apakah Pak Johan  bukan teman Pak Toni? (Buktikan dengan representasi FOL)! (Poin 35)

Gambar

Ilustrasi pada gambar diatas menggambarkan komponen-komponen yang ada pada first order logic

Referensi

Dokumen terkait