You are on page 1of 8

LAPORAN KECERDASAN BUATAN

PERTEMUAN KE 3
Disusun Oleh :
Nama : Mohamad Hanaf
Nim : !"#$$3#
%u&usan : TEKN'K 'N(ORMAT'KA
LABOROTAR'UM TERPADU
SEKOLAH T'N))' MANA%EMEN 'N(ORMAT'KA DAN KOMPUTER
AKAKOM
*O)*AKARTA
+$
PRO)RAM ,'SUAL PROLO)
A- PEMBAHASAN
Tu.uan un/u0 meme1ela.a&i a2a& da1a/
men2e&/i dan mene&a10an se3/ion4se3/ion dasa& 5an2 ada di 6isual 1&olo2
se1e&/i PRED'CATES7 DOMA'NS7 CLAUSES7 dan )OAL-
Men2e/ahiu se3/ion4se3/ion lainn5a 5an2 ada di ,isual P&olo2 se1e&/i (ACTS7
CONSTANT7 )LOBAL-
Men2e&/i /en/an2 Com1ile& Di&e3/i6es-
Men2e&/i dan da1a/ mene&a10an a&i/as .ama0 8mul/i1le a&i/59 1ada ,isual
P&olo2-
Men2e&/i 0onse1 a/u&an 8&ule9 1ada P&olo2 dan 1e&:edaan5a den2an :ahasa
lain-
Men2e&/i men2enai 0on6e&si /i1e o/oma/is 8au/oma/i3 /51e 3on6e&sion9-
1. Section dasar Visual prolog
Se3a&a umum7 1&o2&am 6isual 1&olo2 /e&di&i da&i em1a/ se3/ion dasa&7
5ai/u se3/ion 3lauses7 se3/ion 1&edi3a/es7 se3/ion domains7 dan /e&a0hi&
se3/ion 2oal- Be&i0u/ a0an de.elas0an se3a&a sin20a/ masin24masin2
se3/ion /e&se:u/-
Section Clauses
Se3/ion 3lauses me&u1a0an se3/ion 5an2 1alin2 1en/in2 1ada 1&o2&am
,isual 1&olo2- Pada se3/ion inilah 0i/a mele/a00an ;a0/a dan a/u&an- Ke/i0a
men3a&i .a<a:an7 ,isual P&olo2 a0an men3a&i da&i :a2ian 1alin2 a/as daa&i
se3/ion 3lauses7 meliha/ se/ia1 ;a0/a dan a/u&an un/u0 menda1a/ .a<a:an
:ena&7 hin22a 0e :a2ian 1alin2 :a<ah da&i se3/ion ini-
Section Predicates
Se:elum mendefnisi0an 1&edi0a/ di se3/ion 3lauses7 ma0a 1&edi0a/
/e&se:u/ ha&us dide0la&asi0an /e&le:ih dahulu di se3/ion 1&edi3a/es- Kalau
/ida07 ,isual P&olo2 /ida0 a0an men2enal 1&edi0a/ 5an2 0i/a /ulis0an
/e&se:u/-
De0la&asi P&edi0a/
De0la&asi 1&edi0a/ dimulai den2an nama 1&edi0a/ dii0u/i /anda 0u&un2
:u0a7 0emudian dii0u/i nol a/au le:ih a&2umen da&i 1&edi0a/ 8se/ia1
a&2umen di1isah den2an /anda 0oma9 0emudian di/u/u1 den2an /anda
0u&un2 /u/u17 se1e&/i :e&i0u/ ini :
P&edi3a/Name8/i1e=a&2umen $7 /i1e=a&2umen +7----/i1e=a&2umenN9
A/au le:ih de/ailn5a lan2sun2 den2an 3on/ohn5a sa.a :e&i0u/ lan2sun2
da&i 3on/ohn5a :
Orang(nama, jender, umur)
Dan /ida0 se1e&/i se3/ion 3lauses7 de0la&asi 1&edi0a/i /ida0 1e&lu dia0hi&i
/anda /i/i0-
Argumen predikat
A&2umen 1&edi0a/ ha&us 5an2 sudah di0enal oleh domain ,isual P&olo2-
Sua/u domain :isa me&u1a0an domain s/anda& a/au :isa .u2a domain 5an2
sudah dide0la&asi0an 1ada se3/ion domains- Con/ohn5a7 .i0a
dide0la&asi0an sua/u 1&edi0a/ predikat_ku(symbol, integer) 1ada
se3/ion predicates se1e&/i ini :
PREDICAE!
Predikat_ku(symbol, integer)
Section Domains
Se3/ion domains meme1un5ai + man;aa/ u/ama7 5ai/u 1e&/ama7 0i/a da1a/
mem:e&i0an nama 5an2 :e&a&/i un/u0 domain7 <alau1un se3a&a in/e&nal
domain /e&se:u/ sama /i1en5a den2an domain 5an2 /elah ada> 5an2
0edua7 0i/a da1a/ mende0la&asi domains 0husus 5an2 di2una0an un/u0
mende0la&asi0an s/&u0/u& da/a 5an2 /ida0 dide0la&asi0an oleh s/anda&
domain- Den2an mende0la&asi0an domain .u2a da1a/ men3e2ah 0esalahan
lo2i0a 1ada 1&o2&am-3on/oh :
DO"AI#!
#ama, jender $ symbol
%mur $ integer
PREDICAE!
Orang(nama, jender, umur)
S/anda& Domain ,isual P&olo2
,isual 1&olo2 mem1un5ai s/anda& domain built-in. Ki/a da1a/
men22una0an S/anda& domain 0e/i0a mende0la&asi0an /i1e da&i a&2umen
sua/u 1&edi0a/- S/anda& domain sudah di0enal ,isual P&olo2 dan /ida0 1e&lu
didefnisi0an la2i 1ada se3/ion domains.
Section Goal
Se3a&a esensial7 se3/ion goal sama den2an body da&i se:uah a/u&an
8&ule97 5ai/u sede&e/an su:4su: 2oal- Pe&:edaan an/a&a se3/ion goal
den2an sua/u a/u&an adalah se/elah 0a/a 0un3i goal /ida0 di0u/i /anda :4
dan ,isual P&olo2 se3a&a o/oma/is men2e0se0usi 2oal 0e/i0a 1&o2&am
di.alan0an-
2. Section Program Lainnya.
Ada :e:e&a1a se3/ion lainn5a 5an2 di2una0an di ,isual P&olo2 5ai/u
se3/ion facts, se3/ion constants, dan se3/ion global. Kali ini a0an
di:ahas se3a&a sin20a/ 0ei2a se3/ion /e&se:u/ se:a2ai 1e&0enalan- Se3/ion
facts a0an Di:ahas le:ih mendalam 1ada modul 5an2 lain-
Section Facts
P&o2&am 6isual 1&olo2 me&u1a0an sua/u 0ole0si da&i se0um1ulan ;a0/a dan
a/u&an- Kadan2 0e/i0a 1&o2&am sedan2 :e&.alan7 0i/a in2in men24u1da/e
8me&u:ah7 menam:ah7 a/au men2ha1us9 :e:e&a1a ;a0/a da&i 1&o2&am-
Pada 0asus ini ;a0/a men.adi sua/u da/a:ase 5an2 dinamis a/au da/a:ase
in/e&nal7 dan ;a0/a /e&se:u/ da1a/ :e&u:ah 0e/i0a 1&o2&am sedan2
:e&.alan-
Section Constants
Kons/an/a sim:olis da1a/ di2una0an di 1&o2&am ,isual P&olo2- Un/u0 i/u
se:elumn5a ha&us dide0la&asi0an /e&le:ih dahulu- De0la&asi 0ons/an/a
dila0u0an 1ada se3/ion constants, dii0u/i den2an de0la&asi men22una0an
sin/a0 :
&id' $ &"a(ro_de)intion'
&id'adalah nma da&i 0ons/an/a sim:olis dan ?Ma3&o=defn/ion@ adalah
a1a 5an2 a0an diisi0an 8assi2n9 0edalam 0ons/an/a- Se/ia1
?Ma3&o=defni/ion@ dia0hi&i den2an :a&is :a&u- Den2an demi0ian han5a
ada sa/u de0la&asi 0ons/an/a 1ada /ia1 :a&isn5a- Con/oh:
CO#!A#
#ol $ *
!atu $ +
Dua $ ,
Ratus $ (+*-(+*.+)/+*)
Pi $ 01+,+23,420
Section Global
,isual P&olo2 meme1e&:oleh0an un/u0 mende0la&asi0an :e:e&a1a domain7
1&edi0a/ dan 0lausa men.adi 2lo:al 8da&i1ada han5a lo0al9- Ca&an5a
den2an mense/ se3a&a /e&1isah se3/ion global domains, global
predicates, dan global facts 1ada :a2ian 1alin2 a/as da&i 1&o2&am-
Modul ini :u0an /em1a/n5a un/u0 mem:ahas se3a&a de/ail men2enai
se3/ion global.
3. Compiler Drectives
,isual 1&olo2 mendu0un2 3om1ile& di&e3/i6es 5an2 da1a/ di/am:ah0an 0e
:adan 1&o2&am un/u0 mem:e&i/ahu0an 0e 0om1u/e& :a2aimana se3a&a
s1esif0 mem1e&la0u0an 0ode40ode <a0/u di 3om1ile- Un/u0 mense/
3om1ile& di&e3/i6es7 namun a0an meme1e&0enal0an salah sa/u dian/a&an5a
5ai/u in3lude di&e3/i6e-
51 Aritas ama! "multiple arity#
A&i/as 8a&i/59 sua/u 1&edi0a/ adalah .umlah a&2umen 5an2 ada 1ada
1&edi0a/ /e&se:u/- ,isual P&olo2 mem1e&:oleh0an 0i/a mem1un5ai + a/au
le:ih 1&edi0a/ den2an nama 5an2 sama namun den2an a&i/as 5an2
:e&:eda- A&i/as 5an2 :e&:eda da&i nama 1&edi0a/ 5an2 sama ha&us
di0elom1o00an :esama :ai0 1ada se3/ion predicates mau1un 1ada
se3/ion clauses. Pe&:edaan a&i/as oleh ,isual P&olo2 a0an di1e&la0u0an
se3a&a :e&:eda 1ula- Con/oh :
DO"AI#!
Orang $ symbol
PREDICAE!
aya6(orang) 7orang ini adala6 seorang aya6
aya6(orang, orang) 7orang + adala6 aya6 bagi yang
ke. ,
C8A%!E!
aya6(!eseorang) 9.
aya6(!eseorang, _)1
aya6(er:in, diena)1
aya6(er:in, lati)a6)1
5. Sinta! Aturan "$ule Synta%#
Rule 1ada P&olo2 adalah 0e/i0a 0e:ena&an se:uah ;a0/a /e&2an/un2 1ada
0esu0sesan 80e:ena&an9 da&i sa/u a/au le:ih ;a0/a 5an2 lain- Se1e&/i 5an2
/elah di.elas0an 1ada modul se:elumn5a a/u&an /e&di&i da&i + :a2ian 5ai/u
head dan :od5- Be&i0u/ ini me&u1a0an a/u&an2ene&i0 1enulisan sin/a0 &ule
1ada ,isual P&olo2:
;EAD9. &subgoal', &subgoal', 111&subgoal'1
Ba2ian :od5 da&i &ule /e&di&i da&i sa/u a/au le:ih su:2oal- Se/ia1 su:2oal
di1isah0an oleh 0oma7 mens1esif0asi0an 0on.un2si7 dan su:2oal /e&a0hi&
dai0hi&i den2an /anda /i/i0-
6. &onversi 'ipe (tomatis "Automatic 'ype Conversions#
Ke/i0a ,isual P&olo2 men3o3o00an + 6a&ia:el7 0eduan5a /ida0 selalu :e&asal
da&i domain 5an2 sama- %u2a 0adan2 6a&ia:le dii0a/ 8:ound9 men.adi
0ons/an da&i domain lain- Pe&3am1u&an domain ini di1e&:oleh0an 0e&ena
,isual P&olo2 mela0u0an 0on6e&si /i1e o/oma/is den2an s5a&a/ 0on6e&si :isa
/e&.adi :ila:
An/a&a strings dan symbols.
An/a&a semua domain integer dan.u2a real. Ke/i0a sua/u 0a&a0/e&
8c)ar# di0on6e&si0an 0e nilai nume&is7 an20a nilai ASC'' da&i 0a&a0/e&
/e&se:u/ 5an2 di2una0an-
Dalam 1en2e&/ian 1&a0/i0um 0ema&en adalah se:a2ai :e&i0u/ :
DO"AI#!
kali,jumla6,bagi,kurang $ integer
Dalam 1en2e&/ian Kali7 %umlah7 :a2i7 Ku&an2 se:a2ai in/e2e& 0a&ena dalam
1&o2&am )OALn5a adalah an20a ada1un 0alau de0la&asin5a S5m:ol
a/au1un S/&in2 ma0a dalam 1&o2&am 5an2 ada dalam )OAL adalah
in1u/an5a se:a2ai hu&u; a/au :isa .u2a 0a&a0/e&- Dalam 0ali7 %umlah7 :a2i7
0u&an2 i/u un/u0 dide0la&asi0an dalam 1&o2&am 5an2 a0an di0ali0an7
di/am:ah0an7 di:a2i0an7 dan di0u&an20an-

PREDICAE!
tamba6kan(jumla6,jumla6,jumla6)
kalikan(kali,kali,kali)
bagikan(bagi,bagi,bagi)
kurangkan(kurang,kurang,kurang)
Dalam 1&o2&am ini 5an2 dide0la&asi0an dalam DOMA'NS /adi /e&us 0ena1a
dalam de0la&asi /e&se:u/ di/ulis se:an5a0 3 0ali 0a&ena un/u0
dide0la&asi0an 0edalam )OAL-

C8A%!E!
tamba6kan(<,=,>umla6)9.
>umla6$</=1
kalikan(<,=,?ali)9.
?ali$<-=1
bagikan(<,=,@agi)9.
@agi$<A=1
kurangkan(<,=,?urang)9.
?urang$<.=1
Dalam de0la&asi dia/as un/u0 mende0la&asi0an an20a 5an2 ada dalam
in1u/an 1&a2&am )OAL su1a5a an20a 5an2 mana 5an2 didahulu0an un/u0
dihi/un2 dalam 1&o2&am )OAL-
BOA8
kalikan(+0, ,2, ?ali),
tamba6kan(+0, ,2, >umla6),
bagikan(0*, 2, @agi),
kurangkan(,+, +2, ?urang)1
Dalam )OAL /e&se:u/ disini 5an2 dide0la&asi0an didalam 1&o2&am C8A%!E!
un/u0 mem:a3a an20a mana 5an2 dihi/un2 1e&/ama 0ali- Disinalah hasil
ou/1u/n5a 5an2 sesuai den2an an20a 5an2 diin1u/0an dalam 1&o2&am )OAl
/e&se:u/ se1e&/i hasil ou/1u/ di:a<ah ini :
Dalam 1&a0/e0 5an2 0edua adalah se:a2ai :e&i0u/ :
DO"AI#!
merek,:arna $ symbol
usia $ byte
6arga, kilometer $ ulong
Dalam de0la&asi S5m:ol di2una0an un/u0 hu&u; a/au 0a&a0/e&7 dalam :5/e
di2una0an un/u0 an20a dan dalam ulon2 di2una0an an20a 5an2 an20a
/e&se:u/ 0a1asi/asn5a di2una0an le:ih :esa& 0alau dalam 1&o2&am .a6a
di2una0an LON)-
PREDICAE!
nondeterm mobil(merek,kilometer,usia,:arna,6arga)C
P&o2&am dia/as di2una0an un/u0 mende0la&asi dalam 1&o2&am CLAUSES
dimana dalam CLAUSES /e&se:u/ diisi den2an a1a 5an2 di2una0an dalam
de0la&asi a2a& saa/ di1an22l dalam )OAL de0la&asi /e&se:u/ ada-

C8A%!E!
mobil(atoD,+0****,0,mera6,+,*******)1
mobil(karimun,3****,5,silEer,+********)1
mobil((eria,F***,+,6itam,G2******)1
Disinilah de0la&asi dalam 1&edi0a/ /e&se:u/ diisi un/u0 di1an22il dalam
P&o2&am )OAL -

BOA8
mobil(karimun,3****,5, silEer,+********)1
A1a:ila dalam P&o2&am )OAL /e&se:u/ 5an2 di1an22il dalam isi 1&o2&am
CLAUSES /ida0 sama ma0a )OAL /e&se:u/ /ida0 a0an mem:a3a a1a 5an2 ada
dalam isi 1&o2&am CLAUSES se1e&/i 1ada hasil ou/1u/ 5an2 ada di:a<ah ini :
Dalam )OAL /e&se:u/ diisi0an se:a2ai :e&i0u/ :
BOA8
mobil(karimun,3****,2, silEer,+********)1
Ta1i dalam )OAL di/ulis0an a1a 5an2 ada dalam 1&o2&am CLAUSES ma0a
dalam hasil ou/1u/ /e&se:u/ a0an di:a3a se1e&/i 1ada hasil ou/1u/ di:a<ah
ini :
Dalam )OAL /e&se:u/ di/ulis0an se:a2ai :e&i0u/ :
BOA8
mobil(karimun,3****,5, silEer,+********)1

Dalam 1&a0/i0um 5an2 0e43 adalah se:a2ai :e&i0u/ :
PREDICAE!
nondeterm suka(symbol,symbol)
De0la&asi dia/as adalah di2una0an un/u0 men2isi isi 1&o2&am 5an2 ada dalam
P&o2&am CLAUSES dimana dalam P&o2&am dia/as di2una0an S5m:ol se:an5a0
+ 0ali 0a&ena 5an2 a0an diisi dalam P&o2&am CLAUSES se:an5a0 + 0a/a7 dalam
de0la&asi s5m:ol di2una0an un/u0 men2si hu&u; dan 0a&a0/e& :eda sama
den2an 0a&a0/e& 0alau 0a&a0/e& /ida0 :isa diisi hu&u;A0a/a ma0a 0alau diisi
P&o2&am a0an /e&.adi )ALLAT8e&&o&9-

C8A%!E!
suka(asep,memba(a)1
suka(asari,(omputers)1
suka(nunung,bulutangkis)1
suka(Eida,bulutangkis)1
suka(astana,renang)1
suka(astana,memba(a)1
Disinilah isi dala P&o2&am PRED'CATES /e&se:u/ diisi un/u0 di1an22il dalam
1&o2&am 5an2 /e&0hi& a/au 0i/a 0enal dalam P&o2&am )OAL-
BOA8
suka(Eida, bulutangkis),
suka(astana, (omputer)1
Disinilah P&o2&am 5an2 ada dalam CLAUSES di1an22il a1a:ila dalam 1&o2&am
5an2 diisi0an dalam P&o2&am CLAUSES naman5a sama /a1i 0a/a 0e.an5a
:e&:eda ma0a dalam hasil ou/1u/ /e&se:u/ a0an men2hasil0an naman5a $
0a&ena dalam nama 5an2 sama /e&se:u/ men5u0ai 5an2 sama .u2a ma0a da&i
i/u 5an2 mun3ul 0e/i0a di 3om1ile han5a nama $ sa.a se1e&/i 1ada hasil ou/1u/
5an2 ada di:a<ah ini :
B- KES'MPULAN
P&o2&am 6isual 1&olo2 mem1u5ai :an5a0 a/u&an 5an2 dian/a&an5a
mem1un5ai ;a0/a dan a/u&an selain i/u 6isual 1&olo2 mem1un5ai PRED'CATES7
DOMA'NS7 DAN )OAL 0e/i2a de0la&asi /e&se:u/ san2a/lah :e&0ai/an den2an
sa/u dan lainn5a-

You might also like