1. Pengenalan logika orde pertama
First order logic adalah sebuah bahasa formal yang digunakan di ilmu matematika, philosophy, bahasa dan ilmu computer. Disebut juga kalkulus predikat, merupakan logika yang digunakan untuk merepresentasikan masalah yang tidak dapat direpresentasikan dengan menggunakan proposisi. Logika predikat dapat memberikan representasi fakat-fakta sebagai suatu pernyataan yang mapan (well form). Kalkulus predikat bisa menganalisakan kalimat-kalimat ke dalam subjek dan argumen dalam berbagai cara yang berbeda-beda, yang pada akhirnya kalkulus predikat bisa digunakan untuk memecahkan problem of multiple generality (masalah dalam berbagai keadaan umum) yang telah membingungkan sebagian besar ahli-ahli logika abad pertengahan. Dengan menggunakan logika predikat ini, untuk pertama kalinya, para ahli-ahli logika bisa memberikan quantifier yang cukup umum untuk merepresentasikan semua argumen yang terdapat padanatural language.
2. Sintak dan semantik logika orde
pertama
1. simbol dan interpretasi
Interpretasi atau penafsiran adalah proses komunikasi melalui lisan atau gerakan antara dua atau lebih pembicara yang tak dapat menggunakan simbol-simbol yang sama, baik secara simultan (dikenal sebagai interpretasi simultan) atau berurutan (dikenal sebagai interpretasi berurutan). Menurut definisi, interpretasi hanya digunakan sebagai suatu metode jika dibutuhkan. Jika suatu objek (karya seni, ujaran, dll) cukup jelas maknanya, objek tersebut tidak akan mengundang suatu interpretasi. Istilah interpretasi sendiri dapat merujuk pada proses penafsiran yang sedang berlangsung atau hasilnya. Suatu interpretasi dapat merupakan bagian dari suatu presentasi atau penggambaran informasi yang diubah untuk menyesuaikan dengan suatu kumpulan simbol spesifik. Informasi itu dapat berupa lisan, tulisan, gambar, matematika, atau berbagai bentuk bahasa lainnya. Makna yang kompleks dapat timbul sewaktu penafsir baik secara sadar ataupun tidak melakukan rujukan silang terhadap suatu objek dengan menempatkannya pada kerangka pengalaman dan pengetahuan yang lebih luas.
b. Tujuan dan Penjelasan Interpretasi
Tujuan interpretasi biasanya adalah untuk meningkatkan pengertian, tapi kadang, seperti pada propaganda atau cuci otak, tujuannya justru untuk mengacaukan pengertian dan membuat kebingungan.
2. Istilah, kalimat atomic
Proposisi atomik ~> proposisi yang hanya terdiri atas satu peryataan dan mengacu kepada nama diri atau juka menggunakan kata ganti, maka akan menggunakan penunjuk ini atau itu.
Contoh :
- Agus Sudrajat adalah mahasiswa Fisip
UNSIL.
- Orang ini adalah pencopet
3. Kalimat kompleks
Kalimat kompleks adalah kalimat yang memiliki lebih dari satu struktur dan satu verba utama karena di dalam kalimat ini terkandung lebih dari satu aksi (Predikat), peristiwa, atau keadaan.
Macam-macam kalimat kompleks:
- Kalimat Komplek Paratatik
- Kalimat Kompleks Hipotaktik
4. Quantifier
Quantifier adalah kata atau kelompok kata yang digunakan untuk menyatakan jumlah (how many atau how much).
Bentuk quantifier
mungkin simple, hanya terdiri dari satu kata (contoh: few, little, many), atau
complex, berupa frasa (contoh: a lot of, none of, a couple of).
Quantifier
umumnya digunakan sebagai determiner yang berfungsi membatasi noun. Posisinya
di depannoun membentuk noun phrase. Namun, quantifier dapat pula berdiri
sendiri sebagai pronoun, tepatnya indefinite pronoun.
3. Penggunaan logika orde pertama
1. assertion
dan query
Assertion adalah Domain constraint dan Referential integrity constraint. Assertion digunakan untuk mengekspresikan suatu kondisi basis data sesuai dengan yang kita inginkan. Seperti halnya prosedur, assertion diberikan nama tertentu sehingga bisa dibatalkan apabila ada kondisi tertentu yang menuntut perubahan struktur basis data. Pada beberapa basis data penggunaan kunci primer dan kunci tamu sudah cukup untuk menjaga integritas data. Tetapi pada beberapa kasus basis data diperlukan suatu constraint ataupun aturan yang lebih baik.
Query adalah
semacam kemampuan untuk menampilkan suatu data dari database dimana mengambil
dari table-tabel yang ada di database, namun tabel tersebut tidak semua
ditampilkan sesuai dengan yang kita inginkan. data apa yang ingin kita
tampilkan, misal : data peminjam dengan buku yang dipinjam, maka nanti akan
mengambil data dari table peminjam dan tabel buku.
4. Rekayasa pengetahuan pada logika orde pertama
Dalam akuisisi pengetahuan, perekayasa (engineer) bertindak sebagai jembatan antara pakar (expert) dengan basis pengetahuan. Perekayasa mendapatkan pengetahuan dari pakar, dan bersamanya menaruhnya pengetahuan tersebut dalam basis pengetahuan.
Ada beberapa
cara untuk melakukan akuisisi pengetahuan. Yang pertama adalah dengan cara
manual, di mana dalam cara ini perekayasa mendapatkan pengetahuan dari sumber,
dan lalu mengkodekannya ke dalam basis pengetahuan. Cara ini merupakan cara
yang mahal dan tidak efisien, serta juga kadangkala tidak akurat.
Cara yang kedua
adalah cara semi-otomatik. Di sini terdapat peran komputer untuk mendukung
pakar, di mana pakar diizinkan untuk membangun basis pengetahuan tanpa (atau
dengan sedikit) bantuan dari perekayasa. Komputer di sini juga berperan untuk
membantu perekayasa dalam kerjanya membangun basis pengetahuan.
Sementara yang
ketiga adalah cara otomatik. Di sini peran pakar, perekayasa, maupun pembangun
basis pengetahuan atau sistem (system builder) digabung. Contohnya
adalah metode induksi.
Kesulitan dalam
proses akuisisi pengetahuan adalah kesulitan pakar untuk mengkomunikasikan
pengetahuan-pengetahuan dasarnya. Ini berkaitan dengan sifat pengetahuan itu
sendiri (yang seperti telah dijelaskan di atas, adalah eksplisit sekaligus
terbatinkan). Seperti yang dikatakan oleh Waterman (1981): “… suatu pengetahuan
dasar diasumsikan dan dikombinasikan begitu cepatnya sehingga sulitlah baginya
(pakar) untuk mengambarkan prosesnya”[6]. Beberapa teknik canggih telah
dikembangkan untuk memfasilitasikan proses untuk mendapatkan dasar pengetahuan,
seperti AQUINAS, Boose dan Bradsaw 1987; dan NEXTRA dari Neuron Data, Rappaport
dan Gaines 1988.
5. Logika Proposisi vs Inferensi Logika
Orde Pertama
Contoh Permasalahan
Pembuktian
Logika Proposisi
Setiap hewan
pasti mati. Karena Kucing adalah Hewan, maka dia pasti mati.
Secara intuisi
kalimat tersebut bernilai Benar. Berdasarkan logika proposisi kalimat tersebut
dapat
disimbolkan
sebagai:
p : Setiap hewan
pasti mati
q : Kucing
adalah hewan
r : Kucing pasti
mati
Berdasarkan
kerangka berfikir Logika Proposisi bukanlah konsekuensi Logis dari pdan q.
Pernyataan
‘Setiap hewan
pasti mati’ mengandung pernyataan Himpunan, yaitu Himpunan ‘hewan’, dimana
individu yang
merupakan bagian dari himpunan hewan jumlahnya tidak terhingga. Sedangkan
pernyataan ‘Kucing
adalah hewan’ secara implisit menyatakan anggota dari himpunan ‘hewan’/
universal of
discourse.
Struktur
sepertidiatas tidak dikenali oleh Logika Proposisi, karena apabila ingin
membuktikan
kebenaran dari
pernyataan ‘Setiap hewan pasti masti’ maka harus dicari nilai kebenaran dari
seluruh
elemen himpunan hewan
yang jumlahnya tak terhingga. Ini tidak mungkin dilakukan.
Untuk mengatasi
permasalahan diatas diperlukan kerangka berfikir lain selain Logika Proposisi
yaitu
Logika
First-Order (Kalkulus Predikat). Maka dapat didefinisikan bahwa Logika
First-Order adalah
perluasan dari
konsep Logika Proposisi untuk mengatasi permasalahan yang tidak dapat
dipecahkan
melalui kerangka
berfikir Logika Proposisi dengan penambahan 3 komponen logika yaitu: Term
(suku),
Predicate dan Quantifier.
Pembuktian
pada Logika First-Order
Pembuktian Logika First-Order hampir sama dengan pembuktian pada Logika Proposisi. Hanya saja
pada Logika
First-Order pembuktian menggunakan Aturan Inferensi lebih mungkin untuk
dilakukan.
Contoh:
Buktikan bahwa
“Setiap hewan pasti mati. Kucing adalah hewan, Karenanya Kucing pasti mati.”
Jawab:
Misal
dideklarasikan predikat berikut:
ANM(x)
adalah hewan
MORTAL(x) pasti mati
Maka pernyataan
pada soal menjadi:
P1
:(x) (ANM(x) MORTAL(x))
P2
:ANM(Kucing)
Untuk
membuktikan bahwa kesimpulan “Kucing pasti mati”harus dibuktian bahwa MORTAL(Kucing)
adalah
konsekuensi logis dari P1dan P2. Maka;
Dilakukan
pembuktian langsung:
P1P2
: (x) (ANM(x) MORTAL(x)) ANM(Kucing)
Karena (ANM(x)
MORTAL(x)) bernilai Benar untuk semua x maka;
(ANM(Kucing)
MORTAL(Kucing)) juga Benar
(x) (ANM(x)MORTAL(x))
ANM(Kucing)
(ANM(Kucing)MORTAL(Kucing))
MORTAL(Kucing)
Premis P1
Premis P2
Langkah 1 dan 2
P1: x Kucing
6. Unifikasi
dan Lifting
Unifikasi
Unifikasi adalah usaha untuk mencoba membuat dua ekspresi menjadi identik (mempersatukan keduanya) dengan mencari substitusi-substitusi tertentu untuk mengikuti peubah-peubah dalam ekspresi mereka tersebut. Unifikasi merupakan suatu prosedur sistematik untuk memperoleh peubah-peubah instan dalam wffs. Ketika nilai kebenaran predikat adalah sebuah fungsi dari nilai-nilai yang diasumsikan dengan argumen mereka, keinstanan terkontrol dari nilai-nilai selanjutnya yang menyediakan cara memvalidasi nilai-nilai kebenaran pernyataan yang berisi predikat. Unifikasi merupakan dasar atas kebanyakan strategi inferensi dalam Kecerdasan Buatan. Sedangkan dasar dari unifikasi adalah substitusi.
Suatu substitusi (substitution)
adalah suatu himpunan penetapan istilah-istilah kepada peubah, tanpa ada peubah
yang ditetapkan lebih dari satu istilah. Sebagai pengetahuan jantung dari
eksekusi Prolog, adalah mekanisme unifikasi.
Aturan-aturan unifikasi :
1.
Dua atom (konstanta atau peubah) adalah identik.
2.
Dua daftar identik, atau ekspresi dikonversi ke dalam satu buah daftar.
3. Sebuah konstanta dan satu peubah terikat
dipersatukan, sehingga peubah menjadi terikat kepada konstanta.
4.
Sebuah peubah tak terikat diperssatukan dengan sebuah peubah terikat.
5.
Sebuah peubah terikat dipersatukan dengan sebuah konstanta jika pengikatan
pada peubah terikat dengan konstanta tidak ada konflik.
6.
Dua peubah tidak terikat disatukan. Jika peubah yang satu lainnya menjadi
terikat dalam upa-urutan langkah unifikasi, yang lainnya juga menjadi terikat
ke atom yang sama (peubah atau konstanta).
7. Dua peubah terikat disatukan jika keduanya
terikat (mungkin melalui pengikatan tengah) ke atom yang sama (peubah atau
konstanta).
7. Forward dan Backward Chaining
Metode forward chaining dan backward chaining merupakan dua teknik penalaran yang biasa digunakan dalam sistem pakar. Metode backward chaining adalah pelacakan kebelakang yang memulai penalarannya dari kesimpulan (goal), dengan mencari sekumpulan hipotesa-hipotesa yang mendukung menuju fakta-fakta yang mendukung sekumpulan hipotesa-hipotesa tersebut. Sedangkan metode forward chaining adalah pelacakan ke depan yang memulai dari sekumpulan fakta-fakta dengan mencari kaidah yang cocok dengan dugaan/hipotesa yang ada menuju kesimpulan.
8. Resolusi
Pendekatan resolusi menghasilkan klausa-klausa baru dari sebuah himpunan inisial. Implementasi resolusi mempunyai tujuan untuk mengembangkan suatu prosedur sistematis pada sebuah basis data, dimana wffs-nya tidak memuaaskan, dengan kata lain tidak ada interpretasi wffyang masuk akal. Untuk itu, hal pertama yang perlu dilakukan adalah mengonversi pernyataan dalam basis data logika dan hipotesis ke dalam bentuk klausa (clause) yang melibatkan disjungsi literal.
Resolusi diproses dengan menambahkan basis data dengan
negasi hipotesis yang diinginkan. Kemudian klausa diselesaikan dalam basis data
tambahan sampai kontradiksinya ditemukan. Jika tidak ditemukan, kita simpulkan
bahwa keadaannya konsisten, dan berarti hipotesisnya, pada kenyataannya salah
(false).
Sumber :
Tidak ada komentar:
Posting Komentar