KECERDASAN BUATAN (ARTIFICIAL INTELLIGENCE)
Kuliah
Oleh :
Sukma Puspitorini, ST; Rusdi Effendi, ST, M.Kom
PROGRAM STUDI TEKNIK INFORMATIKA STMIK NH JAMBI TAHUN AJARAN 2008/2009
MATERI
BAB 1 : PENDAHULUAN
1.1 Kecerdasan Buatan Dengan Kecerdasan Alami
1.2 Komputasi Kecerdasan Buatan Dan Komputasi Konvensional 1.3 Sejarah Kecerdasan Buatan
1.4 Lingkup Kecerdasan Buatan Pada Aplikasi Komersial 1.5 Apakah Soft Computing Itu?
1.6 Pemrograman AI
1.7 Kecerdasan Buatan Dengan Kecerdasan Alami
BAB 2 : MASALAH, RUANG KEADAAN DAN PENCARIAN 2.1 Mendefinisikan Masalah Sebagai Suatu Ruang Keadaan 2.2 Representasi Ruang Keadaan
2.3 Metode Pencarian Dan Pelacakan 2.3.1 Pencarian Buta (Blind Search)
2.3.1.1 Pencarian Melebar Pertama (Breadth-First Search) 2.3.1.2 Pencarian Mendalam Pertama (Depth-First Search) 2.3.2 Pencarian Heuristik (Heuristic Search)
2.3.2.1 Generate And Test
2.3.2.2 Pendakian Bukit (Hill Climbing) BAB 3 : REPRESENTASI PENGETAHUAN
3.1 Logika
3.1.1 Logika Predikat 3.1.2 Logika Proposisi 3.2 Pohon
3.3 Jaringan Semantik 3.4 Frame
3.5 Naskah (Script) 3.6 Sistem Produksi
BAB 4 : KETIDAKPASTIAN (UNCERTAINTY) 4.1 Probabilitas Dan Teorema Bayes
4.2 Faktor Kepastian (Certainty Factor) 4.3 Teori Dempster-Shafer
BAB 5 : LOGIKA FUZZY 5.1 Pendahuluan
5.2 Alasan Digunakannya Logika Fuzzy 5.3 Aplikasi Logika Fuzzy
5.4 Himpunan Crisp Vs Himpunan Fuzzy 5.4.1 Himpunan Crisp
5.5 Fungsi Keanggotaan
5.6 Operator Dasar Zadeh Untuk Operasi Himpunan Fuzzy
5.7 Penalaran Monoton
5.8 Fungsi Implikasi
5.9 Sistem Inferensi Fuzzy 5.9.1 Metode Tsukamoto 5.9.2 Metode Mamdani 5.9.3 Metode Sugeno BAB 6 : SISTEM PAKAR
6.1 Definisi
6.2 Keuntungan Sistem Pakar
6.3 Kelemahan Sistem Pakar
6.4 Konsep Dasar Sistem Pakar
6.5 Bentuk Sistem Pakar
6.6 Struktur Sistem Pakar
6.7 Basis Pengetahuan (Knowledge Base)
6.8 Motor Inferensi (Inference Engine)
6.9 Permasalahan Yang Disentuh Oleh Sistem Pakar
6.10 Mengembangkan Sistem Pakar BAB 7 : JARINGAN SYARAF TIRUAN
7.1 Otak Manusia
7.2 Sejarah
7.3 Komponen Jaringan Syaraf
7.4 Arsitektur Jaringan Syaraf Tiruan
7.5 Fungsi Aktivasi
7.6 Proses Pembelajaran
7.7 7.7.1 Hebb Rule 7.7.2 Perceptron 7.7.3 Delta Rule
BAB 8 : ALGORITMA GENETIK BAB 9 : GAME PLAYING
Referensi
a. Artificial Intelligence, Sri Kusumadewi, Graha Ilmu Yogyakarta, 2003.
b. Artificial Intelligence, Sandi Setiawan, Andi Offset Yogyakarta, 1993.
c. Mengenal Artificial Intelligence, Suparman, Andi Offset Yogyakarta, 1991.
d. Internet
1.1 DEFINISI KECERDASAN BUATAN
Kecerdasan buatan atau artificial intelligence merupakan salah satu bagian ilmu komputer yang membuat agar mesin (komputer) dapat melakukan pekerjaan seperti dan sebaik yang dilakukan oleh manusia (Buku Sri Kusumadewi).
Didefinisikan sebagai kecerdasan yang ditunjukkan oleh suatu entitas buatan. Sistem seperti ini umumnya dianggap komputer. Kecerdasan diciptakan dan dimasukkan ke dalam suatu mesin (komputer) agar dapat melakukan pekerjaan seperti yang dapat dilakukan manusia (In.Wikipedia).
Artificial Intelligence (Inteligensi/Kecerdasan Buatan) merupakan salah satu bidang dari ilmu komputer yang membahas tentang kemungkinan komputer untuk dapat berlaku secara intelligen seperti halnya manusia (Blog Herianto).
Artificial Intelligence (AI) merupakan sub bidang pengetahuan computer yang khusus ditujukan untuk membuat software dan hardware yang sepenuhnya bias menirukan beberapa fungsi otak manusia (Buku Suparman).
Lebih detilnya, pengertian kecerdasan buatan dapat dipandang dari berbagai sudut pandang, antara lain:
1. Sudut pandang kecerdasan.
Kecerdasan Buatan akan membuat mesin menjadi ‘cerdas’ (mampu berbuat seperti apa yang dilakukan oleh manusia). 2. Sudut pandang penelitian.
Kecerdasan Buatan adalah suatu studi bagaimana membuat agar komputer dapat melakukan sesuatu sebaik yang dikerjakan oleh manusia.
Domain yang sering dibahas oleh para peneliti meliputi: a. Mundane task
Persepsi (vision & speech).
Bahasa alami (understanding, generation & translation).
Pemikiran yang bersifat commonsense.
Robot control. b. Formal task
Permainan/games.
Matematika (geometri, logika, kalkulus integral, pembuktian).
c. Expert task
Analisis finansial.
Analisis medikal.
Analisis ilmu pengetahuan.
3. Sudut pandang bisnis.
Kecerdasan buatan adalah kumpulan peralatan yang sangat powerful dan metodologis dalam menyelesaikan masalah-masalah bisnis.
4. Sudut pandang pemrograman.
Kecerdasan buatan meliputi studi tentang pemrograman simbolik, penyelesaian masalah (problem solving) dan pencarian (searching).
Untuk melakukan aplikasi kecerdasan buatan ada 2 bagian utama yang sangat dibutuhkan (Gambar 1.1), yaitu:
1. Basis Pengetahuan (Knowledge Base), berisi fakta-fakta, teori, pemikiran dan hubungan antara satu dengan lainnya.
2. Motor Inferensi (Inference Engine), yaitu kemampuan menarik kesimpulan berdasarkan pengalaman.
Gambar 1.1 Penerapan Konsep Kecerdasan Buatan di Komputer.
1.2 KECERDASAN BUATAN DENGAN KECERDASAN ALAMI
Kecerdasan Alami : kecerdasan yang dimiliki oleh manusia. Keuntungan kecerdasan buatan secara komersil :
1. Kecerdasan buatan lebih bersifat permanen. Kecerdasan alami akan cepat mengalami perubahan. Hal ini dimungkinkan karena sifat manusia yang pelupa. Kecerdasan buatan tidak akan berubah sepanjang sistem komputer & program tidak mengubahnya.
2. Kecerdasan buatan lebih mudah diduplikasi & disebarkan. Mentransfer pengetahuan manusia dari satu orang ke orang lain membutuhkan proses yang sangat lama; dan juga suatu keahlian itu tidak akan pernah dapat diduplikasi dengan lengkap. Oleh karena itu, jika pengetahuan terletak pada suatu sistem komputer, pengetahuan tersebut dapat disalin dari komputer tersebut dan dapat dipindahkan dengan mudah ke komputer yang lain.
3. Kecerdasan buatan lebih murah dibanding dengan kecerdasan alami. Menyediakan layanan komputer akan lebih mudah & lebih murah dibandingkan dengan harus mendatangkan seseorang untuk mengerjakan sejumlah pekerjaan dalam jangka waktu yang sangat lama.
Basis Pengetahuan
Motor Inferensi Input:
masalah, pertanyaan,
dll
Output: jawaban,
4. Kecerdasan buatan bersifat konsisten. Hal ini disebabkan karena kecerdasan buatan adalah bagian dari teknologi komputer. Sedangkan kecerdasan alami akan senantiasa berubah-ubah.
5. Kecerdasan buatan dapat didokumentasi. Keputusan yang dibuat oleh komputer dapat didokumentasi dengan mudah dengan cara melacak setiap aktivitas dari sistem tersebut. Kecerdasan alami sangat sulit untuk direproduksi.
6. Kecerdasan buatan dapat mengerjakan pekerjaan lebih cepat dibanding dengan kecerdasan alami.
7. Kecerdasan buatan dapat mengerjakan pekerjaan lebih baik dibanding dengan kecerdasan alami.
Keuntungan kecerdasan alami :
1. Kreatif. Kemampuan untuk menambah ataupun memenuhi pengetahuan itu sangat melekat pada jiwa manusia. Pada kecerdasan buatan, untuk menambah pengetahuan harus dilakukan melalui sistem yang dibangun.
2. Kecerdasan alami memungkinkan orang untuk menggunakan pengalaman secara langsung. Sedangkan pada kecerdasan buatan harus bekerja dengan input-input simbolik.
3. Pemikiran manusia dapat digunakan secara luas, sedangkan kecerdasan buatan sangat terbatas.
1.3 KOMPUTASI KECERDASAN BUATAN dan KOMPUTASI KONVENSIONAL
Kompoutasi konvensional : computer hanya diperuntukkan sebagai alat hitung.
Perbedaan komputasi kecerdasan kuatan dengan komputasi konvensional terlihat pada Tabel 1.1.
Tabel 1.1 Kecerdasan Buatan Vs. Pemrograman Konvensional.
Dimensi KecerdasanBuatan PemrogramanKonvensional
PEMROSESAN Mengandung
konsep-konsep simbolik
Algoritmik
Sifat Input Bisa tidak lengkap Harus lengkap
Pencarian Kebanyakan
bersifat heuristik Biasanya didasarkan pada algoritma
Keterangan Disediakan Biasanya tidak
disediakan
Struktur Kontrol dipisahkan
dari pengetahuan Kontrol terintegrasidengan informasi (data)
Sifat output Kuantitatif Kualitatif
Pemeliharaan &
update Relatif mudah Sulit
Kemampuan
menalar Ya Tidak
1.4 SEJARAH KECERDASAN BUATAN
Uji Turing (Turing Test) oleh Alan Turing tahun 1950-an : Turing beranggapan bahwa, jika mesin dapat membuat seseorang percaya bahwa dirinya mampu berkomunikasi dengan orang lain, maka dapat dikatakan bahwa mesin tersebut cerdas (seperti layaknya manusia).
Seorang profesor dari Massachusetts Institute of Technology yang bernama John McCarthy pada tahun 1956 pada Dartmouth Conference yang dihadiri oleh para peneliti AI. Pada koferensi tersebut juga didefinisikan tujuan utama dari kecerdasan buatan, yaitu: mengetahui dan memodelkan proses-proses berfikir manusia dan mendesain mesin agar dapat menirukan kelakuan manusia tersebut.
Beberapa program AI yang mulai dibuat pada tahun 1956-1966, antara lain:
1. Logic Theorist, diperkenalkan pada Dartmouth Conference, program ini dapat membuktikan teorema-teorema matematika.
2. Sad Sam, diprogram oleh Robert K. Lindsay (1960). Program ini dapat mengetahui kalimat-kalimat sederhana yang ditulis dalam bahasa Inggris dan mampu memberikan jawaban dari fakta-fakta yang didengar dalam sebuah percakapan.
3. ELIZA, diprogram oleh Joseph Weizenbaum (1967). Program ini mampu melakukan terapi terhadap pasien dengan memberikan beberapa pertanyaan.
1.5 LINGKUP KECERDASAN BUATAN PADA APLIKASI KOMERSIAL
Lingkup utama dalam kecerdasan buatan adalah: 1. Sistem Pakar (Expert System). Disini komputer digunakan
sebagai sarana untuk menyimpan pengetahuan para pakar. Dengan demikian komputer akan memiliki keahlian untuk menyelesaikan permasalahan dengan meniru keahlian yang dimiliki oleh pakar.
dapat berkomunikasi dengan komputer dengan menggunakan bahasa sehari-hari.
3. Pengenalan Ucapan (Speech Recognition). Melalui pengenalan ucapan diharapkan manusia dapat berkomunikasi dengan komputer dengan menggunakan suara.
4. Robotika & Sistem Sensor (Robotics & Sensory Systems). 5. Computer Vision, mencoba untuk dapat
menginterpretasikan gambar atau obyek-obyek tampak melalui komputer.
6. Intelligent Computer-aided Instruction. Komputer dapat digunakan sebagai tutor yang dapat melatih dan mengajar. 7. Game Playing.
1.6 APAKAH SOFT COMPUTING ITU?
Soft computing adalah koleksi dari beberapa metodologi yang bertujuan untuk mengeksploitasi adanya toleransi terhadap ketidaktepatan, ketidakpastian, dan kebenaran parsial untuk dapat diselesaikan dengan mudah, robustness, dan biaya penyelesaiannya murah. Definisi ini pertama kali diungkapkan oleh Prof. Lotfi A. Zadeh pada tahun 1992.
Unsur Pokok dalam Soft Computing : 1. Sistem Fuzzy (mengakomodasi ketidaktepatan); 2. Jaringan Syaraf (menggunakan pembelajaran);
3. Probabilistic Reasoning (mengakomodasi ketidakpastian); 4. Evolutionary Computing (optimasi).
Keempat unsur tesebut bukan merupakan pesaing antara satu dengan lainnya, namun diantaranya bisa saling melengkapi. Sehingga, Zadeh juga mendefinisikan bahwa soft computing itu merupakan hubungan antara logika fuzzy, neuro-computing, probabilistic reasoning, dan algoritma genetik. Tabel 1.2 menunjukkan hubungan antara fuzzy/probabilistic-reasoning, jaringan syaraf tiruan dan AI konvensional.
Tabel 1.2 Fuzzy/probabilistic reasoning, Jaringan syaraf tiruan, sistem evolusioner dan AI konvensional.
Pembelaja ran
Ekstraksi Pengetah
uan
Opera si real-time
Representasi
Pengetahuan Optimasi
Fuzzy/probabili
stic reasoning Tidak Ya Ya simbolik/numerik tidak
Jaringan Syaraf
Tiruan Ya Tidak Ya numerik Tidak
Evolusioner Sistem AI
konvensional Tidak Ya Tidak simbolik/numerik Tidak
Karakteristik Soft Computing :
1. Soft computing memerlukan keahlian manusia, apabila direpresentasikan dalam bentuk aturan (IF – THEN).
2. Model komputasinya diilhami oleh proses biologis.
3. Soft computing merupakan teknik optimasi baru.
4. Soft computing menggunakan komputasi numeris.
5. Soft computing memiliki toleransi kegagalan (meskipun kualitasnya berangsur-angsur memburuk).
1.7 PEMROGRAMAN AI
Newel dan Simon mengemukakan aktivitas/mesin cerdas (intelligence) dapat dicapai melalui :
1. Pola-pola simbol untuk merepresentasikan problem
2. Operasi-operasi untuk menghasilkan berbagai solusi yang mungkin
3. Proses pencarian (searching) untuk memilih solusi terbaik
Dasar Teknik Pemrograman AI :
1. Algoritma à Searching : Logika/Logika formal/predikat kalkulus dan backtracking.
2. Data à Representasi Pengetahuan : -List/Graf, Database, dll.
Ciri khas terpenting Pemrograman (Software) AI : 1. Pemrograman simbolik
2. Memecahkan masalah non algoritmik
3. Memanipulasi sifat/type kualitatif ketimbang kuantitatif/Numerik
4. Solusi (pemecahan) tidak mesti eksak
5. Menggunakan pengetahuan untuk memecahkan masalah
6. Setiap bagian program dapat bersifat Independen