100% menganggap dokumen ini bermanfaat (2 suara)
1K tayangan

Basic Machine Learning Using Prolog

Dokumen tersebut berisi penjelasan mengenai tugas membuat knowledge base (basis pengetahuan) tentang silsilah keluarga menggunakan bahasa Prolog. Terdapat penjelasan mengenai fakta-fakta dan rule-rule yang dibuat untuk mewakili hubungan antar anggota keluarga seperti ibu, ayah, anak, kakek, nenek dan lainnya.

Diunggah oleh

Sinta Anjelina
Hak Cipta
© © All Rights Reserved
100% menganggap dokumen ini bermanfaat (2 suara)
1K tayangan

Basic Machine Learning Using Prolog

Dokumen tersebut berisi penjelasan mengenai tugas membuat knowledge base (basis pengetahuan) tentang silsilah keluarga menggunakan bahasa Prolog. Terdapat penjelasan mengenai fakta-fakta dan rule-rule yang dibuat untuk mewakili hubungan antar anggota keluarga seperti ibu, ayah, anak, kakek, nenek dan lainnya.

Diunggah oleh

Sinta Anjelina
Hak Cipta
© © All Rights Reserved
Anda di halaman 1/ 10

SINTA ANJELINA A2(161402100)

TUGAS 1 LABORATORIUM
Artificial Intelligence (AI)
Menjawab persoalan dari Bab 1 buku pegangan Lab

SOAL + JAWABAN
1. Tentukan Makna, jenis klausa, relasi , argument , dan jenis argument dari klausa itu !
a)
Klausa Beli(X,Y) :- harga(X, N) , N < 50000 , Y < 5.

Makna X dibeli sebanyak Y jika X harganya sebesar N dan N lebih kecil


dari 50000 dan Y kurang dari 5 banyaknya.
 jika beli X kurang dari 5 harganya kurang dari 50000
Jenis Rule (Aturan)
Klausa
Relasi Beli
Argumen X, Y, N
Jenis X-> symbol
Argument Y-> symbol
N-> symbol

b)
Klausa Punya(tuti, sepeda)
Makna Tuti punya Sepeda
Jenis Fact / Fakta
Klausa
Relasi Punya
Argumen tuti, sepeda
Jenis tuti -> symbol
Argument Sepeda -> symbol
c)
Klausa Orang (, ‘Susanto’ , tanggal_lahir(21,3,1986), bekerja (‘PT. Maju
Sejahtera’ 4500000)).

Makna Harry Susanto lahir pada 21-3-1989 dan bekerja di PT. Maju
Sejahtera dengan gaji 4500000.
Jenis fakta / fact
Klausa
Relasi orang , tanggal_lahir, bekerja
Argumen ‘Harry’ , ‘Susanto’, 21,3,1986, ‘PT. Maju Sejahtera’ 4500000

Argumen Jenis Argumen


‘Harry’ harusnya string, tapi penulisan di buku typo menunjukkan
char(tanda ‘ ‘)
‘Susanto’ harusnya string, tapi penulisan di buku typo menunjukkan
char(tanda ‘ ‘)
21 Integer
3 Integer
1986 Integer
‘PT. Maju harusnya string, tapi penulisan di buku typo menunjukkan
Sejahtera’ char(tanda ‘ ‘)

4500000 Integer

d)
Klausa ?- orang(A, B, C, D).

Makna Error / tidak ada. belum bisa dipastikan karena tidak disertai fakta-
fakta yang jelas dan hanya diberitahukan nama variable A, B, C, D
, tidak diketahui relasi antar variable nya itu apa. Jadi
kemungkinan mesin error dan tidak tau mau menjawab apa.

Jika disertai fakta :


manusia(andi) . manusia(aldi). manusia (yani). manusia(dina).
orang
orang(A,B,C,D):- manusia(A), manusia(B), manusia(C),
manusia(D).
Baru Bisa maknanya -> Apakah A , B , C, D adalah orang ?
Atau ada fakta yang dibuat terlebih dahulu untuk :
orang( A, B, C, D)
% yang menyatakan bahwa A, B, C, D benar adalah orang

Baru bisa juga maknanya -> Apakah A, B, C, D adalah orang?


Bernilai true maupun false

Jenis Klausa Query


Relasi orang
Argumen A, B, C ,D
Jenis A -> symbol
Argument B -> symbol
C -> symbol
D -> symbol

2. Buat knowledge base(representasi pengetahuan untuk mesin/ fakta) dengan


wanita, pria , dan anak dari pohon yang disediakan !
Nama file : silsilah.pl

% representasi fakta anak


anak(heri,joko).
anak(tini,joko).
anak(heri,merry).
anak(tini,merry).
anak(budi,harry).
anak(tina,harry).
anak(toni,harry).
anak(budi,ani).
anak(tina,ani).
anak(toni,ani).
anak(yeni,joni).
anak(yeni,susi).
anak(dini,tini).
anak(dwi,tini).
anak(dini,budi).
anak(dwi,budi).
anak(wahyu,toni).
anak(wahyu,yeni).
% representasi fakta pria
pria(joko).
pria(harry).
pria(joni).
pria(heri).
pria(budi).
pria(toni).
pria(dwi).
pria(wahyu).

% representasi fakta wanita


wanita(merry).
wanita(ani).
wanita(susi).
wanita(tini).
wanita(tina).
wanita(yeni).
wanita(dini).

3. Lengkapi rule yang diminta dari nomor 2 !


Tambahkan rule di file: silsilah.pl tadi ke bagian bawahnya.
a. ibu(X, Y) :- anak(Y,X) , wanita(X).
Cara baca : X adalah ibu Y jika Y adalah anak X dan X adalah wanita
Fakta1 Fakta2 Fakta3
 Logikanya : X itu ibunya Y jika Y itu anaknya si X dan X wanita
Cara Pembuktian : Untuk menampilkan semua nama ibu disertai nama
anaknya , tinggal panggil rulenya .
b. ayah(X,Y) :- anak(Y,X) , pria(X).
cara baca : X adalah ayah Y jika Y adalah anak X dan X adalah pria
FAKTA1 FAKTA2 FAKTA3
 Logikanya : X itu ayahnya Y jika Y itu anaknya si X dan X pria
Cara pembuktian rules nya : tinggal panggil rules untuk menampilkan semua
nama ayah disertai nama anaknya.

c. seorang_ibu(X):-ibu(X,Y).
kita bisa memanggil rules lain (yang berisi fakta-fakta lain) didalam suatu rules
untuk mempersingkat dan mempermudah penyusunan logika rules tersebut.
Cara baca : X adalah seorang_ibu jika X adalah ibu Y
FAKTA1 RULES1
 Logikanya : X itu seorang_ibu jika X itu ibu si Y
Cara pembuktian rules nya : tinggal panggil rules untuk menampilkan semua
nama ibu, kali ini tidak disertai nama anaknya.
d. seorang_ayah(X):-ayah(X,Y).
kita bisa memanggil rules lain (yang berisi fakta-fakta lain) didalam suatu rules
untuk mempersingkat dan mempermudah penyusunan logika rules tersebut.
Cara baca : X adalah seorang_ayah jika X adalah ayah Y
FAKTA1 RULES1
 Logikanya : X itu seorang_ayah jika X itu ayah si Y (atau siapa aja)
Cara pembuktian rules nya : tinggal panggil rules untuk menampilkan semua
nama ayah , kali ini tidak disertai nama anaknya.

e. seorang_anaklelaki(X) :-pria(X), anak(X,Y).


Cara baca :
X adalah seorang_anaklelaki jika X adalah pria dan X adalah anak dari Y
FAKTA1 FAKTA2 FAKTA3
Cara pembuktian : menampilkan semua nama anak lelaki
 Logikanya : X itu seorang_anaklelaki jika X itu anak si Y dan X pria
f. seorang_anakperempuan(X) :- wanita(X), anak(X,Y).
Cara baca :
X adalah seorang_anakperempuan jika X adalah wanita dan X adalah anak
dari Y
FAKTA1 FAKTA2 FAKTA3
 Logikanya : X itu seorang_anakperempuan jika X itu anak si Y dan X wanita
Cara pembuktian : menampilkan semua nama anak perempuan

g. adik_perempuan(X,Y) :- wanita(X),ibu(I,X),ibu(I,Y),ayah(A,X),ayah(A,Y),\+X==Y.
Cara baca :
X adalah adik_perempuan Y jika X adalah wanita dan I adalah ibu dari X dan I
adalah ibu dari Y dan A adalah Ayah dari X dan A adalah ayah dari Y
 X adalah adik perempuan Y jika X dan Y satu orangtua (baik ayah + ibu) dan
X itu wanita

Cara pembuktian : menampilkan semua nama adik perempuan


h. abang(X,Y) :- pria(X),ibu(I,X),ibu(I,Y),ayah(A,X),ayah(A,Y),\+X==Y.
Cara baca :
X adalah abang Y jika X adalah pria dan I adalah ibu dari X dan I adalah ibu
dari Y dan A adalah Ayah dari X dan A adalah ayah dari Y
 X adalah abang Y jika X dan Y satu orangtua (baik ayah + ibu) dan X adalah
pria

Cara pembuktian : menampilkan semua nama abang

i. kakek(X,Y) :- pria(X), anak(Y,Z), anak(Z,X).


Cara baca:
X adalah kakek dari Y jika X adalah pria dan Y adalah anak dari Z dan Z
adalah anak dari X .
 X adalah kakek Y jika anaknya X adalah orangtua dari Y dan X adalah pria

Cara pembuktian : menampilkan semua nama kakek


j. nenek(X,Y) :- wanita(X), anak(Y,Z), anak(Z,X).
Cara baca:
X adalah nenek dari Y jika X adalah wanita dan Y adalah anak dari Z dan Z
adalah anak dari X .
 X adalah nenek Y jika anaknya X adalah orangtua dari Y dan X adalah wanita

Cara pembuktian : menampilkan semua nama nenek

saudara(X,Y):- ibu(I,X),ibu(I,Y),ayah(A,X),ayah(A,Y),\+X==Y.
k. sepupu(X,Y):- ayah(A1,X),ayah(A2,Y),saudara(A1,A2).
sepupu(X,Y):- ayah(A1,X),ibu(I2,Y),saudara(A1,I2).
sepupu(X,Y):- ibu(I1,X),ayah(A2,Y),saudara(I1,A2).
sepupu(X,Y):- ibu(I1,X),ibu(A2,Y),saudara(I1,A2).

Cara baca: sama seperti diatas , konsep pola membacanya.


 Logikanya : X dan Y sepupuan jika ayah nya saudaraan atau ibunya saudaraan.
l. ipar_perempuan(X,Y) :-wanita(X), saudara(Y,Z), anak(A,X),
anak(A,Z),not(saudara(X,Y)).
Cara baca: sama seperti diatas _ konsep pola membacanya.
 Logikanya : X adalah ipar perempuannya Y jika X itu nikah sama saudara
kandungnya si Y dan X itu wanita

m. bibi(X,Y) :-wanita(X), saudara(X,Z),anak(Y,Z),not(ibu(X,Y)).


Cara baca: sama seperti diatas _ konsep pola membacanya.
 Logikanya : X adalah bibinya Y jika X itu anak dari saudaranya si Y.

Anda mungkin juga menyukai