Senin, 12 Oktober 2009

Kaidah Produksi

Menyediakan cara format untuk mempresenntasikan hal, rekomedasi, atau strategi. Ditulis
dalam bentuk system (jika-maka).
Struktur kaidah
- Jika premis(benar) maka konklusi
- Jika masukan maka keluaran
- jika kondisi maka tindakan
- jika andtisenden maka konsituen(situasi yang terjadi)
- jika data maka hasil
- jika aksi maka reaksi
- jika sebab maka akibat
- jika gejala maka diagnosa

contoh : 1.Jika tampilan layar monitor anda berwarna biru maka check pada kabel monitor anda
2. JIka nilai rata-rata kelas mahasiswa diatas 80 maka sebagian besar mahasiswa dinyatakan lulus

Sebelu meentukan kaidah produksi dapat dilakukan pembentukan
- tabel keputusan

Keuntungan kaidah produksi
- Mudah dimengerti dan disampaikan
- mudah diwujudka
- kaidah dapat saling independent atau terhubung sesuai kebutuhan

Kelemahan :
- Diperlukan banyak kaidah untuk menggambarkan pengetahuan

Contoh Forward Chaining dan Backward Chaining

Contoh Kasus
Sistem Pakar: Penasihat Keuangan
Kasus : Seorang user ingin berkonsultasi apakah tepat jika dia berinvestasi pada stock IBM?
Variabel-variabel yang digunakan:
A = memiliki uang $10.000 untuk investasi
B = berusia < 30 tahun
C = tingkat pendidikan pada level college
D = pendapatan minimum pertahun $40.000
E = investasi pada bidang Sekuritas (Asuransi)
F = investasi pada saham pertumbuhan (growth stock)
G = investasi pada saham IBM
Setiap variabel dapat bernilai TRUE atau FALSE

FAKTA YANG ADA:
§ Diasumsikan si user (investor) memiliki data:
o Memiliki uang $10.000 (A TRUE)
o Berusia 25 tahun (B TRUE)
§ Dia ingin meminta nasihat apakah tepat jika berinvestasi pada IBM stock?

RULES
R1 : IF seseorang memiliki uang $10.000 untuk berinvestasi AND dia berpendidikan pada level college THEN dia harus berinvestasi pada bidang sekuritas
R2 : IF seseorang memiliki pendapatan per tahun min $40.000 AND dia berpendidikan pada level college THEN dia harus berinvestasi pada saham pertumbuhan (growth stocks)
R3 : IF seseorang berusia < 30 tahun AND dia berinvestasi pada bidang sekuritas THEN dia sebaiknya berinvestasi pada saham pertumbuhan
R4 : IF seseorang berusia <> 22 tahun THEN dia berpendidikan college
R5 : IF seseorang ingin berinvestasi pada saham pertumbuhan THEN saham yang dipilih adalah saham IBM.

Rule simplification:
– R1: IF A and C, THEN E
– R2: IF D and C, THEN F
– R3: IF B and E, THEN F
– R4: IF B, THEN C
– R5: IF F, THEN G

Solusi dengan Forward Chaining :

Step I : IF A and C Then E = R1
Step II : IF B then C A,B,C -> True = R4
Step III : If A and C then E A,B,C -> True = R2
Step IV : If B ad E then F A,B,C,E,F -> true = R3
step V : if F then G. G->True
kesimpulan : Cocok untuk investasi saham IBM

Solusi dengan Backward Chaining :

Kebalikan dari Forward Chaining :

Script

Script (Schank & Abelson, Yale univ) merupakan representasi terstruktur yang menggambarkan urutan stereotip dari kejadian-kejadian dalam sebuah konteks khusus.
• Script mirip dengan frame, perbedaannya : Frame menggambarkan objek, sedangkan Script
menggambarkan urutan peristiwa.
• Dalam menggambarkan urutan peristiwa, script menggunakan serangkaian slot yang berisi
informasi tentang orang, objek dan tindakantindakan yang terjadi dalam suatu peristiwa.
• Elemen script yang tipikal :
– Kondisi masukan : menggambarkan situasi yang harus dipenuhi sebelum terjadi suatu peristiwa yang ada dalam script.
– Prop : mengacu kepada objek yang digunakan dalam urutan peristiwa yang terjadi.
– Role : mengacu kepada orang-orang yang terlibat dalam script.
– Hasil : kondisi yang ada sesudah peristiwa dalam script berlangsung.
– Track : mengacu kepada variasi yang mungkin terjadi dalam script tertentu.
– Scene : menggambarkan urutan peristiwa aktural yang terjadi.

Contoh : Script pergi ke restoran
SCRIPT Restoran

Jalur (track) : fast food restoran

Peran (roles) : tamu, pelayan
Pendukung (prop) : conter, baki, makanan, uang, serbet, garam, merica, kecap, sedotan, dll
Kondisi masukan : tamu lapar –tamu punya uang

Adegan (scene) 1 : Masuk
– Tamu parkir mobil
– Tamu masuk restoran
– Tamu antri
– Tamu baca menu di list menu dan mengambil keputusan tentang apa yang akan diminta.

Adegan (scene) 2 : Pesanan
– Tamu memberikan pesanan pada pelayan
– Pelayan mengambil pesanan dan meletakkan makanan di atas baki
– Tamu membayar

Adegan (scene) 3 : Makan
– Tamu mengambil serbet, sedotan, garam, dll
– Tamu makan dengan cepat

Adegan (scene) 4 : Pulang
– Tamu membersihkan meja
– Tamu membuang sampah
– Tamu meninggalkan restoran
– Tamu naik mobil dan pulang Hasil
– Tamu merasa kenyang
– Tamu senang
– Tamu kecewa
– Tamu sakit perut

Contoh : Script Pembuatan Program C
Track : Pembuatan program penjumlahan degan bahasa C
Prop : Software , PC, Keyboard, Mouse
Roles : Programmer, USer
Input : User merequest program penjumlahan, user ingin melakukan proses perhunbungan secara cepat

Scene 1 : Perancangan Algoritma
- Menentukan inputan yang diperlukan sistem
- Menentukan ekspresi aritmatika yang digunakan menentukan output

Scene 2 : Pengkodean
- Mengetikkan header program
- Mengetikkan perintah input data
- mengetikkan ekspresi aritmatika
- mengetikkan perintah output data

Scene 3 : Uji Program
- Uji Program/Testing
- Melakukan eksekusi program
- Menginputkan data
- mengevaluasi hasil keluaran

Scene 4 : Pemakaian software oleh user
- User menginputkan data
- User memperoleh hasil keluaran penjumlahan

Output : Reaksi User atas program
- User puas dengan program yang dirancang
- User tidak puas dengan program yang dirancang

Frame

Frame (Minsky, 1975) dipandang sebagai struktur data static yang digunakan untuk merepsentasi-kan situasi-situasi yang telah dipahami dan stereotype. Frame digunakan untuk merepresentasikan pengetahuan stereotype atau pengetahuan yang didasarkan kepada
karakteristik yang sudah dikenal yang merupakan pengalaman masa lalu. Frame berupa kumpulan slot-slot (representasi entitas sebagai struktru objek) yang merupakan atribut untuk mendeskripsikan pengetahuan berupa kejadian, lokasi, situasi ataupun elemenelemen lain. Frame digunakan untuk representasi pengetahuan deklaratif.

Contoh 1 :
FRAME POHON
Spesialisasi dari : Tumbuhan
Jumlah batang : integer (default 1)
Jenis kulit : halus
Model daun : jenis pohon jarum, berganti daun
Bentuk daun : sederhana, berlekuk, campuran

FRAME POHON PERDU
Spesialisasi dari : Pohon
Jumlah batang : 3
Jenis kulit : halus
Model daun : berganti daun
Bentuk daun : sederhana, berlekuk






















Setiap frame individual dapat dipandang sebagai struktur data yang mirip record, berisi informasi yang relevan dengan entitas-entitas stereotype. Slot-slot dalam frame dapat berisi :
– Informasi identifikasi frame
– Hubungan frame dengan frame lain
– Penggambaran persyaratan yang dibutuhkan frame
– Informasi procedural untuk menggunakan struktur yang digambarkan
– Informasi default frame
– Informasi terbaru.












Dari contoh 3, terdapat dua elemen dasar, yaitu Slot dan Subslot. Slot merupakan kumpulan atribut / property yang menjelaskan objek yang direpresentasikan oleh frame. Subslot menjelaskan pengetahuan atau prosedur dari atribut pada slot.
Subslot dapat berupa :
− Value : menjelaskan tentang nilai dari suatu atribut
− Default : nilai yang digunakan jika suatu slot kosong atau tidak dideskripsikan pada frame instansiasi
− Range : menandakan jenis dari inforamsi yang dapat muncul pada slot tersebut (missal 0 sampai 100)
− If Added : berisi informasi procedural yang berupa suatu tindakan yang akan dikerjakan jika nilai dari slot diisi (atau berubah)
− If Needed : subslot ini digunakan pada kasus dimana tidak ada value pada slot. Suatu prosedur akan dikerjakan untuk memperoleh atau menghitung sebuah value.
− Other : slot bisa berisi frame, rule, jaringan semantic ataupun tipe lain dari informasi.

Jaringan Semantik

Dibangun oleh M.R.Quillian, sebagai model memori manusia.
• Representasi grafis dari informasi Propositional.
• Proposisi adalah pernyataan yang dapat bernilai benar atau salah.
• Disajikan dalam bentuk graf berarah
• Node merepresentasikan konsep, objek atau situasi :
– Label ditunjukkan melalui penamaan
– Node dapat berupa objek tunggal atau kelas
• Links merepresentasikan suatu hubungan :
– Links adalah struktur dasar untuk pengorganisasian pengetahuan
– Contoh jaringan semantic.
•Disebut juga associative nets, krn node dihubungkan dg yang alin.
•Bentuk links IS-A, HAS-A,A-KIND-OF (AKO)
•IS-A menunjukkan hubungan kelas, pada gbr diatas menunjukkan “jarak dari”
•HAS-A digunakan untuk mengidentifikasi karakteristik atau atribut objek noda.
•AKO digunakan untuk menghubungkan satu jenis ke jenis yg lain
•Salah satu masalah pd jaringan semantik adalah tidak adanya standar definisi nama link

Representasi Pengetahuan



Pengetahuan : Fakta atau kondisi sesuatu atau keadaan yang timbul karena suatu pengalaman

Eptomology
:Studi yang membahas ilu pengetahuan khususnya sifat studu dan adal ilmu pengethuan.
Kategori Ilmu Pengetahuan menurut epistmologi

1. Priori Knowledge
- Berarti yang mendahului (pengetahuan datang sebelumnya dan bebas dari arti)
- Kebenaran yang universal dan tidak dapat disangkal tanpa kontradiksi
- Contoh : pernyataan logika, hukum matematika

2. Posteriori Knowledge
- Knowledge yang diturunkan dari akal pikiran yang sehat.
- Kebenaran atau kesalahan dapat dibuktikan dengan menggunakan pengalaman akal sehat.
- Contoh : bola mata seseorang berwarna biru, tetapi ketika orang tersebut mengganti contact lens-nya, bisa jadi bola matanya menjadi berwarna hijau.

3. Kategori Knowledge
Procedural Knowledge : Bagaimana melakukan sesuatu
Declarative Knowledge : Mengetahui sesuatu itu benar atau salah
Tacit Knowledge : Tidak dapat diungkapkan dengan bahasa


Ket gambar :
Meta Knowledge : Knowledge dan Keahlian
Knowledge : Informasi yang sangat khusus
iformasi : data yang telah diproses
data:hal yang palinh potensial
noise:data yang masih kabur

Beberapa Representasi Pengetahuan
- Jaringan Semantik
- Bingkai(Frame)
- Script
- Kaidah Produksi
- Logika Prdiksi

Sabtu, 03 Oktober 2009

FORWARD CHAINING

Forward chaining merupakan grup dari multipel inferensi yang melakukan pencarian dari suatu masalah kepada solusinya.
· Jika klausa premis sesuai dengan situasi (bernilai TRUE), maka proses akan meng-assert konklusi
· Forward Chaining adalah data driven karena inferensi dimulai dengan informasi yg tersedia dan baru konklusi diperoleh

• Beberapa Sifat forward chaining:
– Good for monitoring, planning, and control
– Looks from present to future.
– Works from antecedent to consequent.
– Is data-driven, bottom-up reasoning.
– Works forward to find what solutions follow from the facts.
– It facilitates a breadth-first search.
– The antecedents determine the search.
– It does not facilitate explanation.

• Jika suatu aplikasi menghasilkan tree yang lebar dan tidak dalam, maka gunakan forward chaining.

BACKWARD CHAINING

# Pendekatan goal-driven, dimulai dari ekspektasi apa yang diinginkan terjadi (hipotesis), kemudian mengecek pada sebab-sebab yang mendukung (ataupun kontradiktif) dari ekspektasi tersebut.
# Jika suatu aplikasi menghasilkan tree yang sempit dan cukup dalam, maka gunakan backward chaining.
# Beberapa sifat dari backward chaining:
– Good for Diagnosis.
– Looks from present to past.
– Works from consequent to antecedent.
– Is goal-driven, top-down reasoning.
– Works backward to find facts that support the hypothesis.
– It facilitates a depth-first search.
– The consequents determine the search.
– It does facilitate explanation.
# Pada komputer, program dimulai dengan tujuan (goal) yang diverifikasi
apakah bernilai TRUE atau FALSE
o Kemudian melihat pada suatu rule yang mempunyai GOAL
tersebut pada bagian konklusinya.
o Mengecek pada premis dari rule tersebut untuk menguji apakah
rule tersebut terpenuhi (bernilai TRUE)
o Pertama dicek apakah ada assertion-nya
     - Jika pencarian disitu gagal, maka ES akan mencari rule lain yang memiliki konklusi yang sama dengan rule pertama tadi
      - Tujuannya adalah membuat rule kedua terpenuhi (satisfy)
o Proses tersebut berlajut sampai semua kemungkinan yang ada
telah diperiksa atau sampai rule inisial yang diperiksa (dg GOAL)
telah terpenuhi
o Jika GOAL terbukti FALSE, maka GOAL berikut yang dicoba.

INFERENCING DENGAN RULES: FORWARD dan BACKWARD CHAINING

§ Inferensi dengan rules merupakan implementasi dari modus ponen, yang direfleksikan dalam mekanisme search (pencarian).
§ Firing a rule: Bilamana semua hipotesis pada rules (bagian “IF”) memberikan pernyataan BENAR
§ Dapat mengecek semua rule pada knowledge base dalam arah forward
maupun backward
§ Proses pencarian berlanjut sampai tidak ada rule yang dapat digunakan (fire), atau sampai sebuah tujuan (goal)tercapai.
§ Ada dua metode inferencing dengan rules, yaitu Forward Chaining atau Data-Driven dan Backward Chaining atau Goal-Driven.

Beberapa hukum dalam Inferensi dengan Logika


Reasoning dengan Logika

Modus Ponen
Definisi: Rule dari logika yang menyatakan bahwa jika kita tahu A adalah
benar dan A implies B adalah juga benar, maka kita dapat mengasumsikan
bahwa B benar.
[A AND (AàB)] à B IF A is True
AND A à B is True
THEN B is True
Contoh:
A = Udara Cerah
B = Kita akan pergi ke pantai
AàB = Jika udara cerah, maka kita pergi ke pantai
Dengan menggunakan Modus Ponen, kita bisa menarik kesimpulan bahwa “Kita
akan pergi ke Pantai”

Resolusi
Definisi: Strategi inferensi yang digunakan pada sistem logika untuk
menentukan kebenaran dari suatu assertion (penegasan)
§ Metoda Resolusi mencoba untuk membuktikan bahwa beberapa
teorema atau ekspresi sebagai proposisi P adalah TRUE, dengan
memberikan sejumlah aksioma dari masalah tersebut.
§ Proof by Refutation, suatu teknik yang ingin membuktikan bahwa ØP
tidak dapat menjadi TRUE.
§ Resolvent : ekspresi baru yang muncul dari metode resolusi yang
merupakan gabungan (union) dari aksioma yang ada dengan teorema
negasi.
Misalnya:
Ada 2 aksioma:
A V B (A is True OR B is True) dan ØB V C (B is Not True OR C is True).
(A V B) Ù (ØB V C ) = A Ú C
Resolvent tersebut kemudian ditambahkan pada list dari aksioma dan akan
menghasilkan resolvent baru. Proses ini berulang sampai menghasilkan
kontradiksi.

Nonresolusi
§ Pada resolusi, tidak ada pembedaan antara goals (tujuan), premises
maupun rules. Semua dianggap sebagai aksioma dan diproses dengan
rule resolusi untuk inferensi.
§ Cara tersebut dapat menyebabkan kebingungan karena menjadi tidak
jelas apa yang ingin dibuktikan
§ Teknik Nonresolusi atau natural-deduction mencoba mengatasi hal
tersebut dengan menyediakan beberapa statement sebagai goal-nya
Untuk membuktikan [H Ù (A à B) à C]:
If (B à C), then membuktikan (H à A)
§ Untuk menjelaskan pendekatan ini, perhatikan contoh kasus berikut:
Misalkan kita ingin membuktikan apakah Jack suka tim sepakbola
Arema-Malang. Asumsinya adalah bahwa semua orang yang tinggal di
Malang menyukai Arema. Karenanya, jika kita bisa mengetahui bahwa
Jack tinggal di Malang, maka kita bisa membuktikan tujuan kita.
Kasus tadi dapat direpresentasi menjadi:
Antecedents:
[Lives-Malang(Jack) Ù (Lives-Malang(X) à Likes-Arema(X))
Goals:
à Likes-Arema(Jack)]:
Pada contoh tersebut, kita bisa membuktikan goal-nya jika (Lives-
Malang(X) à Likes-Arema(X)), dan (Lives-Malang(Jack)) adalah
BENAR.

REASONING

Definisi : Proses bekerja dengan pengetahuan, fakta dan strategi pemecahan
masalah, untuk mengambil suatu kesimpulan. (Berpikir dan mengambil
kesimpulan)


Metode Reasoning
a. Deductive Reasoning
o Kita menggunakan reasoning deduktif untuk mendeduksi informasi baru
dari hubungan logika pada informasi yang telah diketahui.
Contoh:
Implikasi : Saya akan basah kuyup jika berdiri ditengah-tengah hujan deras
Aksioma : Saya berdiri ditengah-tengah hujan deras
Konklusi : Saya akan basah kuyup
IF A is True AND IF A IMPLIES B is True, Then B is True


b. Inductive Reasoning
o Kita menggunakan reasoning induktif untuk mengambil kesimpulan
umum dari sejumlah fakta khusus tertentu.
Contoh:
Premis : Monyet di Kebun Binatang Ragunan makan pisang
Premis : Monyet di Kebun Raya Bogor makan pisang
Konklusi : Semua monyet makan pisang


c. Abductive Reasoning
o Merupakan bentuk dari proses deduksi yang mengijinkan inferensi plausible. Plausible berarti bahwa konklusi mungkin bisa mengikuti informasi yang tersedia, tetapi juga bisa salah.
Contoh:
Implikasi : Tanah menjadi basah jika terjadi hujan
Aksioma : Tanah menjadi basah
Konklusi : Apakah terjadi hujan?
IF B is True AND A implies B is true, Then A is True?


d. Analogical Reasoning

§ Kita mengunakan pemodelan analogi untuk membantu kita memahami
situasi baru atau objek baru.
§ Kita menggambar analogi antara 2 objek/situasi, kemudian melihat
persamaan dan perbedaan untuk memandu proses reasoning.

d. Common Sense Reasoning
§ Melalui pengalaman, manusia belajar untk memecahkan masalahnya
secara efisien. Dengan menggunakan common sense untuk secara cepat
memperoleh suatu solusi.
§ Dalam sistem pakar, dapat dikategorikan sebagai Heuristic.
§ Proses heuristic search atau best first search digunakan pada aplikasi
yang membutuhkan solusi yang cepat

TEKNIK INFERENSI

§ Definisi Inferensi: Proses yang digunakan dalam Sistem Pakar untuk
menghasilkan informasi baru dari informasi yang telah diketahui
§ Dalam sistem pakar proses inferensi dilakukan dalam suatu modul yang
disebut Inference Engine (Mesin inferensi)
§ Ketika representasi pengetahuan (RP) pada bagian knowledge base telah
lengkap, atau paling tidak telah berada pada level yang cukup akurat,
maka RP tersebut telah siap digunakan.
§ Inference engine merupakan modul yang berisi program tentang bagaimana
mengendalikan proses reasoning.

Kamis, 01 Oktober 2009

APLIKASI SISTEM PAKAR


















































Manufactering/Engineering
Utilities and Telecommunication
Desain produk Konfigurasi
Analisis disain Real-time monitoring
Perencanaan proses Analisis alarm
Manajemen perakitan Diagnosis
Kontrol proses Analisis Jaringan
Diagnosa dan perbaikan Analisis Pemasaran
Schedulling Marketing suppport
Rostering Operasi back-office
Simulasi Schedulling
Estimasi biaya Billing operation
konfigurasi Perlengkapan ( provisioning)

Perbedaan utama antara pemrograman konvensional dengan pengembangan Sistem Pakar

Pemrograman konvensional
Fokus pada Solusi
Programmer bekerja sendirian
Sequential

Pengembangan Sistem Pakar
Fokus pada masalah
Hasil Kerja Team
Hasil Kerja Team

3 Pemain utama dalam suatu proyek sistem pakar

1.Domain expert
§ Definisi : orang yang memiliki ketrampilan ( skill) dan pengetahuan (knowledge) untuk menyelesaikan masalah khusus dengan cara-cara yang superior dibanding orang kebanyakan.
§ Memiliki pengetahuan kepakaran
§ Memiliki ketrampilan problem-solving yang efisien
§ Dapat mengkomunikasikan pengetahuan
§ Dapat menyediakan waktu
§ Dapat bekerja sama
2.Knowledge Engineer
§ Definisi : orang yang melakukan proses disain, mengembangkan dan menguji suatu sistem pakar
§ Memiliki ketrampilan rekayasa pengetahuan (knowledge engineering)
§ Memiliki ketrampilan komunikasi yang baik
§ Dapat menyesuaikan masalah kepada software
§ Memiliki ketrampilan pemrograman sistem pakar
End-User
§ Dapat membantu mendefinisikan spesifikasi interface
§ Dapat membantu proses akuisisi pengetahuan
§ Dapat membantu proses pengembangan sistem

Kategori Problema Sistem Pakar secara umum

1. Interpretasi – membuat kesimpulan atau deskripsi dari sekumpulan
data mentah.
2. Prediksi – memproyeksikan akibat-akibat yang dimungkinkan dari
situasi-situasi tertentu
3. Diagnosis – menentukan sebab malfungsi dalam situasi kompleks yang
didsarkan pada gejala-gejala yang teramati
4. Desain – menentukan konfigurasi komponen-komponen sistem yang
cocok dengan tujuan-tujuan kinerja tertentu yang memnuhi kendala -
kendala tertentu
5. Perencanaan – merencanakan serangkaian tindakan yang akan dapat
mencapai sejumlah tujuan dengan kondisi awal tertentu
6. Debugging dan Repair – menentukan dan menginterpretasikan cara-cara
untuk mengatasi malfungsi.
7. Instruksi – mendeteksi dan mengoreksi defisiensi dalam pemahaman
domain subyek
8. Pengendalian – mengatur tingkah laku suatu environment yang
kompleks
9. Selection – mengidentifikasi pilihan terbaik dari sekumpulan (list)
kemungkinan
10. Simulation – pemodelan interaksi antara komponen-komponen sistem
11. Monitoring – membandingkan hasil pengamatan dengan kondisi yang
diharapkan

STRUKTUR DETAIL SISTEM PAKAR

Terdiri atas 2 bagian :
· Development Environment (Lingkungan Pengembangan)
· Consultation Environment (Lingkungan Konsultasi)
Bagian-bagian yang secara umum ada pada struktur detail sistem pakar
· Knowledge Aqcuisision System
· Knowledge Base
· Inference engine
· User Interface
· User
· Workplace (Blackboard)
· Explanation Subsystem
· Knowledge refining system

KNOWLEDGE AQCUISISTION
Meliputi proses pengumpulan, pemindahan, dan perubahan dari
kemampuan pemecahan masalah seorang pakar atau sumber
pengetahuan terdokumentasi (buku, dll) ke program komputer, yang
bertujuan untuk memperbaiki dan atau mengembangkan basis
pengetahuan (knowledge-base)
KNOWLEDGE ENGINEERING
Definisi : Proses pengembangan suatu sistem pakar Orang yang mengembangkan suatu sistem pakar disebut: Knowledge Engineer
Fase pengembangan sistem pakar
1. Assessment
2. Knowledge Aqcuisition
3. Design
4. Test
5. Documentation
6. Maintenance

STRUKTUR DASAR SISTEM PAKAR

KNOWLEDGE BASE
· Definisi : Bagian dari sistem pakar yang berisi domain pengetahuan
· Berisi pengetahuan yang dibutuhkan untuk memahami, merumuskan dan menyelesaikan masalah.
· Terdiri dari 2 elemen dasar:
o Fakta, situasi masalah dan teori yang terkait
o Heuristik khus us atau rules, yang langsung menggunakan pengetahuan untuk menyelesaikan masalah khusus.
WORKING MEMORY
· Definisi : bagian dari sistem pakar yang berisi fakta-fakta masalah
yang ditemukan dalam suatu sesi
· Berisi fakta-fakta tentang suatu masalah yang ditemukan dalam proses
konsultasi
INFERENCE ENGINE
· Definisi : Processor pada sistem pakar yang mencocokan fakta-fakta
yang ada pada working memori dengan domain pengetahuan yang
terdapat pada knowledge base, untuk menarik kesimpulan dari
masalah yang dihadapi.
· Proses berpikir pada manusia dimodelkan dalam sistem pakar pada
modul yang disebut Inference Engine.

PEMINDAHAN KEPAKARAN

Tujuan dari sebuah sistem pakar adalah untuk mentransfer kepakaran yang
dimiliki seorang pakar kedalam komputer, dan kemudian kepada orang lain
(nonexpert).
Aktifitas yang dilakukan untuk memindahkan kepakaran:
1. Knowledge Acquisition (dari pakar atau sumber lainnya)
2. Knowledge Representation (ke dalam komputer)
3. Knowledge Inferencing
4. Knowledge Transfering

Perbandingan Sistem Konvensional dan Sistem Pakar

Sistem Konvensional
Informasi dan pemrosesan umumnya digabung dlm satu program sequential
Program tidak pernah salah (kecuali programer-nya yang salah)
Tidak menjelaskan mengapa input dibutuhkan atau bagaimana hasil diperoleh
Membutuhkan semua input data
Perubahan pada program merepotkan
Sistem bekerja jika sudah lengkap
Eksekusi secara algoritmik (step-by-step)
Manipulasi efektif pada database yang besar
Efisiensi adalah tujuan utama
Data kuantitatif
Representasi data dalam numerik
Menangkap, menambah dan mendistribusi data numerik atau informasi

Sistem Pakar
Knowledge base terpisah dari mekanisme pemrosesan (inference)
Program bisa saja melakukan kesalahan
Penjelasan (explanation) merupakan bagian dari ES
Tidak harus mambutuhkan semua input data atau fakta
Perubahan pada rules dapat dilakukan dengan mudah
Sistem dapat bekerja hanya dengan rules yang sedikit
Eksekusi dilakukan secara heuristic dan logik
Manipulasi efektif pada knowledge-base yang besar
Efektifitas adalah tujuan utama
Data kualitatif
Reperesentasi pengetahuan dalam simbol
data numerik atau informasi
Menangkap, menambah dan mendistribusi pertimbangan (judgment) dan pengetahuan

Alasan mendasar mengapa ES dikembangkan untuk menggantikan seorang pakar

· Dapat menyediakan kepakaran setiap waktu dan diberbagai lokasi
· Secara otomatis mengerjakan tugas-tugas rutin yang membutuhkan
seorang pakar.
· Seorang Pakar akan pensiun atau pergi
· Seorang Pakar adalah mahal
· Kepakaran dibutuhkan juga pada lingkungan yang tidak bersahabat
(hostile environtment)

APA ITU KEPAKARAN/KEAHLIAN (EXPERTISE) ?

1. Pemahaman yang luas dari tugas atau pengetahuan spesifik yang diperoleh dari pelatihan, membaca dan pengalaman.
2. Jenis-jenis pengetahuan yang dimiliki dalam kepakaran:
o Teori-teori dari permasalahan
o Aturan dan prosedur yang mengacu pada area permasalahan
o Aturan (heuristik) yang harus dikerj akan pada situasi yang terjadi
o Strategi global untuk menyelesaikan berbagai jenis masalah
o Meta-knowledge (pengetahuan tentang pengetahuan)
o Fakta-fakta

APA ITU PAKAR/AHLI (EXPERT) ?

Seorang pakar/ahli (human expert) adalah seorang individu yang
memiliki kemampuan pemahaman yang superior dari suatu masalah.
Misalnya: seorang dokter, penasehat keuangan, pakar mesin mobil, dll.
· Kemampuan kepakaran:
o Dapat mengenali (recognizing) dan merumuskan masalah
o Menyelesaikan masalah dengan cepat dan tepat
o Menjelaskan solusi
o Belajar dari pengalaman
o Restrukturisasi pengetahuan
o Menentukan relevansi/hubungan
o Memahami batas kemampuan

DEFINISI SISTEM PAKAR (EXPERT SYSTEM)

Sistem pakar (expert system) adalah sistem yang berusaha mengapdosi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah seperti yang biasa dilakukan oleh para ahli. Sistem pakar yang baik dirancang agar dapat menyelesaikan suatu permasalahan tertentu dengan menirukerja dari para ahli.

Martin dan Otman 1998
Sistem berbasis pakar yang menggunakan pengetahuan, fakta, dan teknik penalaran dlm memecahkan masalah yang biasanya dapat dipecah

Glarratan dan Riley
sistem pakar yang bisa meniru kemampuan pakar

Durkin

Program komputer yang dirancang untuk memodelkan kemampuan penyelesaian yang dilakukan oleh pakar

ciri-ciri :
- Terbatas pada domain tertentu
- Dapat membeli penalaran atas data-data yang tidak pasti
- Keluaran bersifat anjuran
- Berdasarkan kaidah terbaru
- Sistem dapat mengaktifkan kaidah yang sesuai
- dapat mengguakan ragkaian alasan
- pengetahuan dan referensi terpisah

MANFAAT SISTEM PAKAR :
1. Memungkinkan orang awam bisa mengerjakan pekerjaan para ahli
2. Bisa melakukan proses secara berulang secara otomatis
3. Menyimpan pengetahuan dan keahlian para pakar
4. Mampu mengambil dan melestarikan keahlian para pakar (terutama yang termasuk keahlian langka)
5. Mampu beroperasi dalam lingkungan yang berbahaya
6. Memiliki kemampuan untuk bekerja dengan informasi yang tidak lengkap dan mengandung ketidakpastian. Pengguna bisa merespon dengan jawaban ’tidak tahu’ atau ’tidak yakin’ pada satu atau lebih pertanyaan selama konsultasi dan sistem pakar tetap akan memberikan jawaban.
7. Tidak memerlukan biaya saat tidak digunakan, sedangkan pada pakar manusia memerlukan
biaya sehari-hari.
8. Dapat digandakan (diperbanyak) sesuai kebutuhan dengan waktu yang minimal dan sedikit biaya
9. Dapat memecahkan masalah lebih cepat daripada kemampuan manusia dengan catatan
menggunakan data yang sama.
10. Menghemat waktu dalam pengambilan keputusan
11. Meningkatkan kualitas dan produktivitas karena dapat memberi nasehat yang konsisten dan
mengurangi kesalahan
12. Meningkatkan kapabilitas sistem terkomputerisasi yang lain. Integrasi Sistem Pakar dengan
sistem komputer lain membuat lebih efektif, dan bisa mencakup lebih banyak aplikasi .
13. Mampu menyediakan pelatihan. Pengguna pemula yang bekerja dengan sistem pakar akan
menjadi lebih berpengalaman. Fasilitas penjelas dapat berfungsi sebagai guru.

KELEMAHAN SISTEM PAKAR
1. Biaya yang diperlukan untuk membuat, memelihara, dan mengembangkannya sangat mahal
2. Sulit dikembangkan, hal ini erat kaitannya dengan ketersediaan pakar di bidangnya dan
kepakaran sangat sulit diekstrak dari manusia karena sangat sulit bagi seorang pakar untuk
menjelaskan langkah mereka dalam menangani masalah.
3. Sistem pakar tidak 100% benar karena seseorang yang terlibat dalam pembuatan sistem pakar
tidak selalu benar. Oleh karena itu perlu diuji ulang secara teliti sebelum digunakan.
4. Pendekatan oleh setiap pakar untuk suatu situasi atau problem bisa berbeda-beda, meskipun
sama-sama benar.
5. Transfer pengetahuan dapat bersifat subjektif dan bias
6. Kurangnya rasa percaya pengguna dapat menghalangi pemakaian sistem pakar.

KONSEP DASAR SISTEM PAKAR
Konsep dasar sistem pakar mengandung keahlian, ahli/pakar, pengalihan keahlian, mengambil keputusan, aturan, kemampuan menjelaskan.

Keahlian
Keahlian bersifat luas dan merupakan penguasaan pengetahuan dalam bidang khusus yang diperoleh dari pelatihan, membaca atau pengalaman. Contoh bentuk pengetahuan yang termasuk keahlian :
- Teori, fakta, aturan-aturan pada lingkup permasalahan tertentu
- Strategi global untuk menyelesaikan masalah

Ahli / Pakar
Seorang ahli adalah seseorang yang mampu menjelaskan suatu tanggapan, mempelajari hal-hal baru seputar topik permasalahan, menyusun kembali pengetahuan jika dipandang perlu, memecahkan masalah dengan cepat dan tepat

Pengalihan keahlian
Tujuan dari sistem pakar adalah untuk mentransfer keahlian dari seorang pakar ke dalam komputer kemudian ke masyarakat. Proses ini meliputi 4 kegiatan, yaitu perolehan pengetahuan (dari para ahli atau sumber-sumber lainnya), representasi pengetahuan ke komputer, kesimpulan dari pengetahuan dan pengalihan pengetahuan ke pengguna.

Mengambil keputusan
Hal yang unik dari sistem pakar adalah kemampuan untuk menjelaskan dimana keahlian tersimpan dalam basis pengetahuan. Kemampuan komputer untuk mengambil kesimpulan dilakukan oleh komponen yang dikenal dengan mesin inferensi yaitu meliputi prosedur tentang pemecahan masalah.

Aturan
Sistem pakar yang dibuat merupakan sistem yang berdasarkan pada aturan – aturan dimana program disimpan dalam bentuk aturan-aturan sebagai prosedur pemecahan masalah. Aturan tersebut biasanya berbentuk IF – THEN.

Kemampuan menjelaskan
Keunikan lain dari sistem pakar adalah kemampuan dalam menjelaskan atau memberi
saran/rekomendasi serta juga menjelaskan mengapa beberapa tindakan/saran tidak direkomendasikan.

ELEMEN MANUSIA YANG TERKAIT DALAM PENGGUNAAN DAN PENGEMBANGAN SISTEM PAKAR
1. Pakar
Pakar adalah orang yang memiliki pengetahuan khusus, pendapat, pengalaman dan metode, serta kemampuan untuk mengaplikasikan keahliannya tersebut guna menyelesaikan masalah.
2. Perekayasa pengetahuan
Perekayasa pengetahuan adalah orang yang membantu pakar dalam menyusun area
permasalahan dengan menginterpretasikan dan mengintegrasikan jawaban-jawaban pakar atas
pertanyaan yang diajukan, menggambarkan analogi, mengajukan counter example dan
menerangkan kesulitan-kesulitan konseptual.
3. Pemakai
- Pemakai awam : dalam hal ini sistem pakar bertindak sebagai konsultan untuk memberikan saran dan solusi kepada pemakai
- Pelajar yang ingin belajar : sistem pakar bertindak sebagai instruktur
- Pembuat sistem pakar : sistem pakar sebagai partner dalam pengembangan basis pengetahuan.
- Pakar : sistem pakar bertindak sebagai mitra kerja/asisten

AREA PERMASALAHAN APLIKASI SISTEM PAKAR
1. Interpretasi
Yaitu pengambilan keputusan dari hasil observasi, diantaranya : pengawasan, pengenalan
ucapan, analisis citra, interpretasi sinyal, dan beberapa analisis kecerdasan
2. Prediksi
Memprediksi akibat-akibat yang dimungkinkan dari situasi-situasi tertentu, diantaranya :
peramalan, prediksi demografis, peralaman ekonomi, prediksi lalulintas, estimasi hasil, militer,
pemasaran, atau peramalan keuangan.
3. Diagnosis
Menentukan sebab malfungsi dalam situasi kompleks yang didasarkan pada gejala-gejala yang
teramati, diantaranya : medis, elektronis, mekanis, dan diagnosis perangkat lunak
4. Desain
Menentukan konfigurasi komponen-komponen sistem yang cocok dengan tujuan-tujuan kinerja
tertentu dan kendala-kendala tertentu, diantaranya : layout sirkuit, perancangan bangunan
5. Perencanaan
Merencanakan serangkaian tindakan yang akan dapat mencapai sejumlah tujuan dengan kondisi
awal tertentu, diantaranya : perencanaan keuangan, komunikasi, militer, pengembangan politik,
routing dan manajemen proyek.
6. Monitoring
Membandingkan tingkah laku suatu sistem yang teramati dengan tingkah laku yang diharapkan
darinya, diantaranya : Computer Aided Monitoring System
7. Debugging dan repair
Menentukan dan mengimplementasikan cara-cara untuk mengatasi malfungsi, diantaranya
memberikan resep obat terhadap suatu kegagalan.
8. Instruksi
Melakukan instruksi untuk diagnosis, debugging dan perbaikan kinerja.
9. Kontrol
Mengatur tingkah laku suatu environment yang kompleks seperti kontrol terhadap interpretasiinterpretasi, prediksi, perbaikan, dan monitoring kelakuan sistem
10. Seleksi
Mengidentifikasi pilihan terbaik dari sekumpulan (list) kemungkinan.
11. Simulasi
Pemodelan interaksi antara komponen-komponen sistem.

BENTUK / TIPE SISTEM PAKAR
1. Mandiri : sistem pakar yang murni berdiri sendiri, tidak digabung dengan software lain, bisa
dijalankan pada komputer pribadi, mainframe.
2. Terkait/Tergabung : dalam bentuk ini sistem pakar hanya merupakan bagian dari program yang
lebih besar. Program tersebut biasanya menggunakan teknik algoritma konvensional tapi bisa
mengakses sistem pakar yang ditempatkan sebagai subrutin, yang bisa dimanfaatkan setiap kali
dibutuhkan.
3. Terhubung : merupakan sistem pakar yang berhubungan dengan software lain, misal :
spreadsheet, DBMS, program grafik. Pada saat proses inferensi, sistem pakar bisa mengakses
data dalam spreadsheet atau DBMS atau program grafik bisa dipanggil untuk menayangkan
output visual.
4. Sistem Mengabdi
Merupakan bagian dari komputer khusus yang diabdikan kepada fungsi tunggal. Sistem tersebut
bisa membantu analisa data radar dalam pesawat tempur atau membuat keputusan intelejen
tentang bagaimana memodifikasi pembangunan kimiawi, dll.

STRUKTUR SISTEM PAKAR
2 bagian utama sistem pakar :
- lingkungan pengembangan (development environment) :
digunakan untuk memasukkan pengetahuan pakar ke dalam lingkungan sistem pakar
- lingkungan konsultasi (consultation environment)
digunakan oleh pengguna yang bukan pakar untuk memperoleh pengetahuan pakar


Komponen-komponen yang terdapat dalam arsitektur/struktur sistem pakar :
1. Antarmuka Pengguna (User Interface)
Merupakan mekanisme yang digunakan oleh pengguna dan sistem pakar untuk berkomunikasi.
Antarmuka menerima informasi dari pemakai dan mengubahnya ke dalam bentuk yang dapat
diterima oleh sistem. Selain itu antarmuka menerima dari sistem dan menyajikannya ke dalam
bentuk yang dapat dimengerti oleh pemakai.
2. Basis Pengetahuan
Basis pengetahuan mengandung pengetahuan untuk pemahaman, formulasi, dan penyelesaian
masalah. Komponen sistem pakar ini disusun atas 2 elemen dasar, yaitu :
- fakta : informasi tentang obyek dalam area permasalahan tertentu
- aturan : informasi tentang cara bagaimana memperoleh fakta baru dari fakta yang telah diketahui.
3. Akuisisi Pengetahuan (Knowledge Acquisition)
Akuisisi pengetahuan adalah akumulasi, transfer, dan transformasi keahlian dalam menyelesaikan masalah dari sumber pengetahuan ke dalam program komputer. Dalam tahap ini knowledge engineer berusaha menyerap pengetahuan untuk selanjutnya ditransfer ke dalam basis pengetahuan. Pengetahuan diperoleh dari pakar, dilengkapi dengan buku, basis data, laporan penelitian dan pengalaman pemakai.
Metode akuisisi pengetahuan :
• Wawancara
Metode yang paling banyak digunakan, yang melibatkan pembicaraan dengan pakar secara
langsung dalam suatu wawancara
• Analisis protokol
Dalam metode ini pakar diminta untuk melakukan suatu pekerjaan dan mengungkapkan proses
pemikirannya dengan menggunakan kata-kata. Pekerjaan tersebut direkam, dituliskan, dan
dianalisis.
• Observasi pada pekerjaan pakar
Pekerjaan dalam bidang tertentu yang dilakukan pakar direkam dan diobservasi
• Induksi aturan dari contoh
Induksi adalah suatu proses penalaran dari khusus ke umum. Suatu sistem induksi aturan diberi
contoh-contoh dari suatu masalah yang hasilnya telah diketahui. Setelah diberikan beberapa
contoh, sistem induksi aturan tersebut dapat membuat aturan yang benar untuk kasus-kasus
contoh. Selanjutnya aturan dapat digunakan untuk menilai kasus lain yang hasilnya tidak
diketahui.
4. Mesin/Motor Inferensi (inference engine)
Komponen ini mengandung mekanisme pola pikir dan penalaran yang digunakan oleh pakar dalam menyelesaikan suatu masalah. Mesin inferensi adalah program komputer yang memberikan metodologi untuk penalaran tentang informasi yang ada dalam basis pengetahuan dan dalam workplace, dan untuk memformulasikan kesimpulan.
5. Workplace / Blackboard
Workplace merupakan area dari sekumpulan memori kerja (working memory), digunakan untuk
merekam kejadian yang sedang berlangsung termasuk keputusan sementara. Ada 3 keputusan yang dapat direkam :
- Rencana : bagaimana menghadapi masalah
- Agenda : aksi-aksi yang potensial yang sedang menunggu untuk dieksekusi
- Solusi : calon aksi yang akan dibangkitkan
6. Fasilitas Penjelasan
Adalah komponen tambahan yang akan meningkatkan kemampuan sistem pakar. Digunakan untuk melacak respon dan memberikan penjelasan tentang kelakuan sistem pakar secara interaktif melalui pertanyaan :
- mengapa suatu pertanyaan ditanyakan oleh sistem pakar ?
- bagaimana konklusi dicapai ?
- mengapa ada alternatif yang dibatalkan ?
- rencana apa yang digunakan untuk mendapatkan solusi ?
7. Perbaikan Pengetahuan
Pakar memiliki kemampuan untuk menganalisis dan meningkatkan kinerjanya serta kemampuan untuk belajar dari kinerjanya. Kemampuan tersebut adalah penting dalam pembelajaran terkomputerisasi, sehingga program akan mampu menganalisis penyebab kesuksesan dan kegagalan yang dialaminya dan juga mengevaluasi apakah pengetahuan-pengetahuan yang ada masih cocok untuk digunakan di masa mendatang

LANGKAH-LANGKAH PEMBUATAN SISTEM PAKAR
1. Mengidentifikasi masalah dan kebutuhan
2. Menentukan problema yang cocok
3. mempertimbangkan alternatif
4. menghitung pengembalian investasi
5. memilih alat pengembangan
6. merekayasa pengetahuan
7. merancang sistem
8. melengkapi pengembangan
9. menguji dan mencari kesalahan sistem
10. memelihara sistem

Breadth-First Search (BFS)

Pencarian dilakukan pada semua node dalam setiap level secara berurutan dari kiri ke
kanan. Jika pada satu level belum ditemukan solusi, maka pencarian dilanjutkan pada
level berikutnya. Demikian seterusnya sampai ditemukan solusi. Dengan strategi ini,
maka dapat dijamin bahwa solusi yang ditemukan adalah yang paling baik (Optimal).
Tetapi BFS harus menyimpan semua node yang pernah dibangkitkan. Hal ini harus
dilakukan untuk penelusuran balik jika solusi sudah ditemukan. Gambar 2.4
mengilustrasikan pembangkitan pohon BFS untuk masalah Water Jug. Pembangkitan
suksesor dari suatu node bergantung pada urutan dari Aturan Produksi yang dibuat (lihat
gambar 2.3). Jika urutan dari aturan 4 ditukar dengan aturan 5, maka pohon BFS yang
dibangkitkan juga akan berubah.

Depth-First Search (DFS)

Pencarian dilakukan pada satu node dalam setiap level dari yang paling kiri. Jika pada
level yang paling dalam, solusi belum ditemukan, maka pencarian dilanjutkan pada node
sebelah kanan. Node yang kiri dapat dihapus dari memori. Jika pada level yang paling
dalam tidak ditemukan solusi, maka pencarian dilanjutkan pada level sebelumnya.
Demikian seterusnya sampai ditemukan solusi. Jika solusi ditemukan maka tidak
diperlukan proses backtracking (penelusuran balik untuk mendapatkan jalur yang
dinginkan).

Kelebihan DFS adalah:
• Pemakain memori hanya sedikit, berbeda jauh dengan BFS yang harus
menyimpan semua node yang pernah dibangkitkan.
• Jika solusi yang dicari berada pada level yang dalam dan paling kiri, maka DFS
akan menemukannya secara cepat.

Kelemahan DFS adalah:
• Jika pohon yang dibangkitkan mempunyai level yang dalam (tak terhingga), maka
tidak ada jaminan untuk menemukan solusi (Tidak Complete).
• Jika terdapat lebih dari satu solusi yang sama tetapi berada pada level yang
berbeda, maka pada DFS tidak ada jaminan untuk menemukan solusi yang paling
baik (Tidak Optimal).

Strategi Pencarian

Terdapat empat kriteria dalam strategi pencarian, yaitu:

• Completeness: Apakah strategi tersebut menjamin penemuan solusi jika
solusinya memang ada?
• Time complexity: Berapa lama waktu yang diperlukan?
• Space complexity: Berapa banyak memori yang diperlukan?
• Optimality: Apakah strategi tersebut menemukan solusi yang paling baik jika
terdapat beberapa solusi berbeda pada permasalahan yang ada?

Strategi Kontrol

Syarat-syarat strategi kontrol:
• cause motion. Perhatikan kembali water jug problem. Jika kita
mengimplementasikan strategi kontrol sederhana dengan selalu memilih aturan
pertama pada daftar 12 aturan yang telah dibuat, maka kita tidak akan pernah
memecahkan masalah. Strategi kontrol yang tidak menyebabkan motion tidak
akan pernah mencapai solusi.
• Systematic. Strategi kontrol sederhana yang lain untuk water jug problem: pada
setiap siklus, pilih secara random aturan-aturan yang dapat diaplikasikan. Strategi
ini lebih baik dari yang pertama, karena menyebabkan motion. Pada akhirnya
strategi tersebut akan mencapai solusi. Tetapi mungkin kita akan mengunjungi
beberapa state yang sama selama proses tersebut dan mungkin menggunakan
lebih banyak langkah dari jumlah langkah yang diperlukan. Hal ini disebabkan
strategi kontrol tersebut tidak sistematik. Beberapa strategi kontrol yang
sistematik telah diusulkan, yang biasa disebut sebagai metoda-metoda dalam
teknik searching. Di bab ini, akan dibahas enam metoda, yaitu Breadth First
Search, Uniform Cost Search, Depth First Search, Depth-Limited Search,
Iterative-Deepening Depth-First Search, dan Bi-directional search. Masingmasing
metoda tersebut mempunyai karakteristik yang berbeda.

Sistem Produksi

Sistem produksi terdiri dari:

Himpunan aturan, masing-masing terdiri dari sisi kiri (pola) yang menentukan
kemampuan aplikasi dari aturan tersebut dan sisi kanan yang menggambarkan
operasi yang dilalukan jika aturan dilaksanakan.
• Satu atau lebih pengetahuan atau basis data yang berisi informasi apapun untuk
tugas tertentu. Beberapa bagian basis data bisa permanen, dan bagian yang lain
bisa hanya merupakan solusi untuk masalah saat ini. Informasi dalam basis data
ini disusun secara tepat.
Strategi kontrol yang menspesifikasikan urutan dimana aturan akan
dibandingkan dengan basis data dan menspesifikasikan cara pemecahan masalah
yang timbul ketika beberapa aturan sesuai sekaligus pada waktu yang sama.
A rule applier (pengaplikasi aturan).

Karakteristik Masalah Dalam AI

• Apakah masalahnya dapat didekomposisi menjadi himpunan sub masalah yang (hampir) independen lebih kecil atau lebih mudah ?
• Dapatkah langkah penyelesaian diacuhkan paling tidak dibatalkan ketika dapat
dibuktikan hal tersebut tidak bijaksana ?
• Apakah universe masalahnya dapat diprediksi ?
• Apakah solusi yang baik dari masalah tertentu jelas tanpa membandingkan
dengan seluruh solusi lain yang mungkin ?
• Apakah solusi yang diinginkan sebuah keadaaan dari dunia atau sebuah jalur dari
keadaan ?
• Apa peran dari pengetahuan ?
• Apakah pekerjaan memerlukan interakasi dengan manusia ?

Penyelesaian Masalah berdasarkan teknik AI

Empat hal untuk membangun sistem atau memecahkan masalah tertentu :
1. Definisikan masalah dengan jelas
2. Analisis masalah
3. Kumpulkan dan representasikan knowledge
4. Pilih teknik pemecah masalah terbaik dan gunakan untuk masalah tertentu

Mendefinisikan Masalah sebagai “State Space Search” (SSS)
Misalnya permainan catur , maka SSS nya adalah :
Menspesifikasikan posisi awal dari papan catur
Peraturan (rules) yang mendefinisikan langkah-langkah yang legal
Posisi papan yang merepresentasikan pemenang dari satu sisi atau sisi lainnya.
Tujuan (Goal) dari permainan adalah : memenangkan permainan.


Penyelesaian Masalah berdasarkan teknik AI

Empat hal untuk membangun sistem atau memecahkan masalah tertentu :
1. Definisikan masalah dengan jelas
2. Analisis masalah
3. Kumpulkan dan representasikan knowledge
4. Pilih teknik pemecah masalah terbaik dan gunakan untuk masalah tertentu

Mendefinisikan Masalah sebagai “State Space Search” (SSS)
Misalnya permainan catur , maka SSS nya adalah :
Menspesifikasikan posisi awal dari papan catur
Peraturan (rules) yang mendefinisikan langkah-langkah yang legal
Posisi papan yang merepresentasikan pemenang dari satu sisi atau sisi lainnya.
Tujuan (Goal) dari permainan adalah : memenangkan permainan.


Rabu, 30 September 2009

Perbandingan AI dengan Pemrograman Konvensional

Dimensi Artificial Intelligence Pemrogramankonvensional
Processing simbolik (AI) Algoritmik(PK)
input Tidak harus lengkap
(AI) Harus lengkap(PK)
Search heuristic(AI) Algoritmik(PK)
explanation tersedia(AI) Tidak tersedia Major(PK)
interest knowledge Data(AI) dan informasi(PK)
struktur Terpisah antara kontrol dan knowledge(AI) Kontrol terintegrasi dengandata (PK)
output Tidak harus lengkap(AI) Harus tepat(PK)
Maintenance dan update Mudah karena menggunakan modul-modul(AI) Umumnya susah dilakukan(PK)

hardware Workstation
(AI) dan PC Semua tipe(PK)
Kemampuan Terbatas tetapi dapat(AI) Tidak ada(PK)
pemikiran ditingkatkan(AI)


1. 5 Perbedaan Komputasi AI dengan Proses Komputasi Konvensional

Proses yang dikerjakan
Kalkulasi
mengerjakan operasi-operasi matematis: tambah, kurang, bagi, kali, atau mencari akar. Menyelesaikan rumus/persamaan.
Logika Penyimpanan
mengerjakan operasi logika: “and”, “or”, atau “invert”penyimpanan menyimpan data dan gambar pada file
retrieve
mengakses data yang disimpan pada file translate mengkonversi data dari satu bentuk ke bentuk yang lain
Sort
memeriksa data dan menampilkan dalam urutan yang diinginkan Edit melakukan perubahan, penambahan, penghapusan pada data monitor mengamati event external dan internal dan melakukan tindakan jika kondisi tertentu tercapai kontrol Memberikan perintah atau mengendalikan peralatan diluar
Edit
melakukan perubahan, penambahan, penghapusan pada data
monitor
mengamati event external dan internal dan melakukan tindakan jika kondisi tertentu tercapai kontrol Memberikan perintah atau mengendalikan peralatan diluar
monitor mengamati event external dan internal dan melakukan
tindakan jika kondisi tertentu tercapai
kontrol
Memberikan perintah atau mengendalikan peralatan diluar

1. 4 Perbandingan Kecerdasan Buatan dengan Kecerdasan Alamiah

Keuntungan Kecerdasan Buatan dibanding kecerdasan alamiah:
· lebih permanen
· memberikan kemudahan dalam duplikasi dan penyebaran
· relatif lebih murah dari kecerdasan alamiah
· Konsisten dan teliti
· Dapat didokumentasi
· Dapat mengerjakan beberapa task dengan lebih cepat dan lebih baik
dibanding manusia
Keuntungan Kecerdasan Alamiah dibanding kecerdasan buatan
· Bersifat lebih kreatif
· Dapat melakukan proses pembelajaran secara langsung, sementara AI
harus mendapatkan masukan berupa simbol dan representasirepresentasi

· Fokus yang luas sebagai referensi untuk pengambilan keputusan
sebaliknya AI menggunakan fokus yang sempit
Komputer dapat digunakan untuk mengumpulkan informasi tentang obyek,
kegiatan (events), proses dan dapat memproses sejumlah besar
informasi dengan lebih efisien dari yang dapat dikerjakan manusia, tetapi
disisi lain manusia –dengan menggunakan insting- dapat melakukan hal yang
sulit untuk diprogram pada komputer, yaitu: manusia dapat mengenali
(recognize) hubungan antara hal-hal tersebut, menilai kualitas dan
menemukan pola yang menjelaskan hubungan tersebut.

1.3 KONSEP DAN DEFINISI DALAM KECERDASAN BUATAN

TURING TEST – Metode Pengujian Kecerdasan
· Turing Test merupakan sebuah metode pengujian kecerdasan yang
dibuat oleh Alan Turing.
· Proses uji ini melibatkan seorang penanya (manusia) dan dua obyek
yang ditanyai. Yang satu adalah seorang manusia dan satunya adalah
sebuah mesin yang akan diuji.
· Penanya tidak bisa melihat langsung kepada obyek yg ditanyai
· Penanya diminta untuk membedakan mana jawaban komputer dan
mana jawaban manusia berdasarkan jawaban kedua obyek tersebut.
· Jika penanya tidak dapat membedakan mana jawaban mesin dan mana
jawaban manusia maka Turing berpendapat bahwa mesin yang diuji
tersebut dapat diasumsikan CERDAS.

PEMROSESAN SIMBOLIK
· Komputer semula didisain untuk memproses bilangan/angka-angka
(pemrosesan numerik).
· Sementara manusia dalam berpikir dan menyelesaikan masalah lebih
bersifat simbolik, tidak didasarkan kepada sejumlah rumus atau
melakukan komputasi matematis.
· Sifat penting dari AI adalah bahwa AI merupakan bagian dari ilmu
komputer yang melukan proses secara simbolik dan non-algoritmik
dalam penyelesaian masalah

HEURISTIC
· Istilah Heuristic diambil dari bahasa Yunani yang berarti menemukan
· Heuristic merupakan suatu strategi untuk melakukan proses pencarian
(search) ruang problema secara selektif, yang memandu proses
pencarian yang kita lakukan disepanjang jalur yang memiliki
kemungkinan sukses paling besar.
PENARIKAN KESIMPULAN (INFERENCING)
· AI mecoba membuat mesin memiliki kemampuan berpikir atau
mempertimbangkan (reasoning)
· Kemampuan berpikir (reasoning) termasuk didalamnya proses penarikan
kesimpulan (inferencing) berdasarkan fakta-fakta dan aturan dengan
menggunakan metode heuristik atau metode pencarian lainnya.
PENCOCOKAN POLA (PATTERN MATCHING)
· AI bekerja dengan metode pencocokan pola (pattern matching) yang
berusaha untuk menjelaskan obyek, kejadian (events) atau proses,
dalam hubungan logik atau komputasional.
1.2 DOMAIN PENELITIAN DALAM KECERDASAN BUATAN
· Formal tasks (matematika, games)
· Mundane task (perception, robotics, natural language, common sense,
reasoning)
· Expert tasks (financial analysis, medical diagnostics, engineering,
scientific analysis, dll)
PERMAINAN (Game)
· Kebanyakan permainan dilakukan dengan menggunakan sekumpulan
aturan.
· Dalam permainan digunakan apa yang disebut dengan pencarian ruang.
· Teknik untuk menentukan alternatif dalam menyimak problema ruang
merupakan sesuatu yang rumit.
· Teknik tersebut disebut dengan HEURISTIC.
· Permainan merupakan bidang yang menarik dalam studi heuristic
NATURAL LANGUAGE
Suatu teknologi yang memberikan kemampuan kepada komputer untuk
memahami bahasa manusia sehingga pengguna komputer dapat berkomunikasi
dengan komputer dengan menggunakan bahasa sehari -hari.
ROBOTIK DAN SISTEM SENSOR
Sistem sensor, seperti sistem vision, sistem tactile, dan sistem pemrosesan
sinyal jika dikombinasikan dengan AI, dapat dikategorikan kedalam suatu
sistem yang luas yang disebut sistem robotik.
EXPERT SYSTEM
Sistem pakar (Expert System) adalah program penasehat berbasis komputer
yang mencoba meniru proses berpikir dan pengetahuan dari seorang pakar
dalam menyelesaikan masalah-masalah spesifik.
Tujuan dari kecerdasan buatan menurut Winston dan Prendergast [1984]:
1. Membuat mesin menjadi lebih pintar (tujuan utama)
2. Memahami apa itu kecerdasan (tujuan ilmiah)
3. Membuat mesin lebih bermanfaat (tujuan entrepreneurial)
AI dapat dipandang dalam berbagai perspektif.
· Dari perspektif Kecerdasan (Intelligence)
AI adalah bagaimana membuat mesin yang “cerdas” dan dapat
melakukan hal-hal yang sebelumnya dapat dilakukan oleh manusia
· Dari perspektif bisnis, AI adalah sekelompok alat bantu (tools) yang
berdaya guna, dan metodologi yang menggunakan tool-tool tersebut
guna menyelesaikan masalah-masalah bisnis.
· Dari perspektif pemrograman (Programming), AI termasuk didalamnya
adalah studi tentang pemrograman simbolik, pemecahan masalah,
proses pencarian (search)

o Umumnya program AI lebih fokus pada simbol-simbol daripada
pemrosesan numerik (huruf, kata, angka untuk
merepresentasikan obyek, proses dan hubungannya).
o Pemecahan masalah -> pencapaian tujuan
o Search -> jarang mengarah langsung ke solusi. Proses search
menggunakan beberapa teknik.
o Bahasa pemrograman AI :
§ LISP, dikembangkan awal tahun 1950-an, bahasa
pemrograman pertama yang diasosiasikan dengan AI.
§ PROLOG, dikembangkan pada tahun 1970-an.
§ Bahasa pemrograman berorientasi obyek (Object
Oriented Programming (Objective C, C++, Smalltalk,
Java)
· Dari perspektif penelitian (research)
o Riset tentang AI dimulai pada awal tahun 1960-an, percobaan
pertama adalah membuat program permainan (game) catur,
membuktikan teori, dan general problem solving (untuk tugastugas
sederhana)
o “Artificial intelligence” adalah nama pada akar dari studi area.

Selasa, 29 September 2009

Pengantar Kecerdasan Buatan

1.1 DEFINISI KECERDASAN BUATAN

· H. A. Simon [1987] :
“ Kecerdasan buatan (artificial intelligence) merupakan kawasan
penelitian, aplikasi dan instruksi yang terkait dengan pemrograman
komputer untuk melakukan sesuatu hal yang -dalam pandangan
manusia adalah- cerdas”
· Rich and Knight [1991]:
“Kecerdasan Buatan (AI) merupakan sebuah studi tentang bagaimana
membuat komputer melakukan hal-hal yang pada saat ini dapat
dilakukan lebih baik oleh manusia.”
· Encyclopedia Britannica:
“Kecerdasan Buatan (AI) merupakan cabang dari ilmu komputer yang
dalam merepresentasi pengetahuan lebih banyak menggunakan bentuk
simbol-simbol daripada bilangan, dan memproses informasi berdasarkan
metode heuristic atau dengan berdasarkan sejumlah aturan”