loading...
Saturday, March 07, 2009

March 07, 2009
I. KECERDASAN BUATAN 


DEFINISI
Kecerdasan buatan (Artificial Intelligence) :
Bagian dari ilmu komputer yang mempelajari bagaimana membuat mesin (komputer) dapat melakukan pekerjaan seperti dan sebaik yang dilakukan oleh manusia bahkan bisa lebih baik daripada yang dilakukan manusia.
Menurut John McCarthy, 1956, AI :
Untuk mengetahui dan memodelkan proses – proses berpikir manusia dan mendesain mesin agar dapat menirukan perilaku manusia.


Cerdas = memiliki pengetahuan + pengalaman, penalaran (bagaimana membuat keputusan &
  mengambil tindakan), moral yang baik


Manusia cerdas (pandai) dalam menyelesaikan permasalahan karena manusia mempunyai pengetahuan
& pengalaman. Pengetahuan diperoleh dari belajar. Semakin banyak bekal pengetahuan yang dimiliki tentu akan lebih mampu menyelesaikan permasalahan. Tapi bekal pengetahuan saja tidak cukup, manusia juga diberi akal untuk melakukan penalaran,mengambil kesimpulan berdasarkan pengetahuan
& pengalaman yang dimiliki. Tanpa memiliki kemampuan untuk menalar dengan baik, manusia dengan segudang pengalaman dan pengetahuan tidak akan dapat menyelesaikan masalah dengan baik. Demikian juga dengan kemampuan menalar yang sangat baik,namun tanpa bekal pengetahuan dan pengalaman yang memadai,manusia juga tidak akan bisa menyelesaikan masalah dengan baik.


Agar mesin bisa cerdas (bertindak seperti & sebaik manusia) maka harus diberi bekal pengetahuan &
mempunyai kemampuan untuk menalar.


2 bagian utama yg dibutuhkan untuk aplikasi kecerdasan buatan :
a. basis pengetahuan (knowledge base): berisi fakta-fakta, teori, pemikiran & hubungan antara satu dengan lainnya.
b. motor inferensi (inference engine) : kemampuan menarik kesimpulan berdasarkan pengalaman
 


Input, masalah, pertanyaan, dll
 



Basis
Pengetahuan
 



Motor
Inferensi
 


Output, jawaban,solusi
 



BEDA KECERDASAN BUATAN & KECERDASAN ALAMI
Kelebihan kecerdasan buatan :
1. Lebih bersifat permanen. Kecerdasan alami bisa berubah karena sifat manusia pelupa. Kecerdasan buatan tidak berubah selama sistem komputer & program tidak mengubahnya.
2. Lebih mudah diduplikasi & disebarkan. Mentransfer pengetahuan manusia dari 1 orang ke orang lain membutuhkan proses yang sangat lama & keahlian tidak akan pernah dapat diduplikasi dengan lengkap.Jadi jika pengetahuan terletak pada suatu sistem komputer, pengetahuan tersebut dapat disalin dari komputer tersebut & dapat dipindahkan dengan mudah ke komputer yang lain.
3. Lebih murah. Menyediakan layanan komputer akan lebih mudah & murah dibandingkan mendatangkan seseorang untuk mengerjakan sejumlah pekerjaan dalam jangka waktu yang sangat lama.
4. Bersifat konsisten karena kecerdasan buatan adalah bagian dari teknologi komputer sedangkan kecerdasan alami senantiasa berubah-ubah
5. Dapat didokumentasi.Keputusan yang dibuat komputer dapat didokumentasi dengan mudah dengan cara melacak setiap aktivitas dari sistem tersebut. Kecerdasan alami sangat sulit untuk direproduksi.
6. Lebih cepat
7. Lebih baik

Kelebihan kecerdasan alami :
1. Kreatif : manusia memiliki kemampuan untuk menambah pengetahuan, sedangkan pada kecerdasan buatan untuk menambah pengetahuan harus dilakukan melalui sistem yang dibangun.
 
2. 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.


BEDA KECERDASAN BUATAN & PROGRAM KONVENSIONAL


Kecerdasan buatan Program konvensional
 
Fokus pemrosesan Konsep simbolik / numerik
(pengetahuan)
 
Data & informasi

 
Pencarian Heuristik Algoritma
Sifat input Bisa tidak lengkap Harus lengkap
Keterangan Disediakan Biasanya tidak disediakan
 
Struktur Kontrol dipisahkan dari pengetahuan
 
Kontrol terintegrasi dengan informasi (data)
 
Sifat output Kuantitatif Kualitatif
Kemampuan menalar Ya Tidak

Program kecerdasan buatan dapat ditulis dalam semua bahasa komputer, baik dalam bahasa C, Pascal, Basic, dan bahasa pemrograman lainnya. Tetapi dalam perkembangan selanjutnya, dikembangkan bahasa pemrograman yang khusus untuk aplikasi kecerdasan buatan yaitu LISP dan PROLOG.


SEJARAH KECERDASAN BUATAN
Tahun 1950 – an Alan Turing, seorang pionir AI dan ahli matematika Inggris melakukan percobaan Turing (Turing Test) yaitu sebuah komputer melalui terminalnya ditempatkan pada jarak jauh. Di ujung yang satu ada terminal dengan software AI dan diujung lain ada sebuah terminal dengan seorang operator. Operator itu tidak mengetahui kalau di ujung terminal lain dipasang software AI. Mereka berkomunikasi dimana terminal di ujung memberikan respon terhadap serangkaian pertanyaan yang diajukan oleh operator. Dan sang operator itu mengira bahwa ia sedang berkomunikasi dengan
operator lainnya yang berada pada terminal lain.
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).


KECERDASAN BUATAN PADA APLIKASI KOMERSIAL
Lingkup utama kecerdasan buatan :
1. Sistem pakar (expert system) : komputer sebagai sarana untuk menyimpan pengetahuan para pakar sehingga komputer memiliki keahlian menyelesaikan permasalahan dengan meniru keahlian yang dimiliki pakar.
2. Pengolahan bahasa alami (natural language processing) : user dapat berkomunikasi dengan komputer menggunakan bahasa sehari-hari, misal bahasa inggris, bahasa indonesia, bahasa jawa, dll
3. Pengenalan ucapan (speech recognition) : manusia dapat berkomunikasi dengan komputer menggunakan suara.
4. Robotika & sistem sensor
5. Computer vision : menginterpretasikan gambar atau objek-objek tampak melalui komputer
6. Intelligent computer-aided instruction : komputer dapat digunakan sebagai tutor yang dapat melatih & mengajar
7. Game playing


SOFT Computing
Soft computing merupakan inovasi baru dalam membangun sistem cerdas yaitu sistem yang memiliki keahlian seperti manusia pada domain tertentu, mampu beradaptasi dan belajar agar dapat bekerja lebih baik jika terjadi perubahan lingkungan. Soft computing mengeksploitasi adanya toleransi terhadap ketidaktepatan, ketidakpastian, dan kebenaran parsial untuk dapat diselesaikan dan dikendalikan dengan mudah agar sesuai dengan realita (Prof. Lotfi A Zadeh, 1992).
Metodologi-metodologi yang digunakan dalam Soft computing adalah :
1. Sistem Fuzzy (mengakomodasi ketidaktepatan)  Logika Fuzzy (fuzzy logic)
2. Jaringan Syaraf (menggunakan pembelajaran)  Jaringan Syaraf Tiruan (neurall network)
3. Probabilistic Reasoning (mengakomodasi ketidakpastian)
4. Evolutionary Computing (optimasi)  Algoritma Genetika
 
II. MASALAH DAN METODE PEMECAHAN MASALAH

Sistem yang menggunakan kecerdasan buatan akan memberikan output berupa solusi dari suatu masalah berdasarkan kumpulan pengetahuan yang ada.
 




Input, masalah, pertanyaan, dll
 




Basis
Pengetahuan
 




Motor
Inferensi
 




Output, jawaban,solusi
 



Gambar sistem yang menggunakan kecerdasan buatan

Pada gambar, input yg diberikan pada sistem yg menggunakan kecerdasan buatan adalah berupa masalah. Sistem harus dilengkapi dengan sekumpulan pengetahuan yang ada pada basis pengetahuan. Sistem harus memiliki motor inferensi agar mampu mengambil kesimpulan berdasarkan fakta atau pengetahuan. Output yang diberikan berupa solusi masalah sebagai hasil dari inferensi.

Secara umum, untuk membangun suatu sistem yang mampu menyelesaikan masalah, perlu dipertimbangkan 4 hal :
1. Mendefinisikan masalah dengan tepat.
Pendefinisian ini mencakup spesifikasi yang tepat mengenai keadaan awal dan solusi yang diharapkan.
2. Menganalisis masalah tersebut serta mencari beberapa teknik penyelesaian masalah yang sesuai.
3. Merepresentasikan pengetahuan yang perlu untuk menyelesaikan masalah tersebut.
4. Memilih teknik penyelesaian masalah yang terbaik


MENDEFINISIKAN MASALAH SEBAGAI SUATU RUANG KEADAAN
Misalkan permasalahan yang dihadapi adalah permainan catur, maka harus ditentukan :
1. posisi awal pada papan catur
posisi awal setiap permainan catur selalu sama, yaitu semua bidak diletakkan di atas papan catur dalam 2 sisi, yaitu kubu putih dan kubu hitam.
2. aturan – aturan untuk melakukan gerakan
aturan – aturan ini sangat berguna untuk menentukan gerakan suatu bidak, yaitu melangkah dari satu keadaan ke keadaan lain. Misalkan untuk mempermudah menunjukkan posisi bidak, setiap kotak ditunjukkan dalam huruf (a,b,c,d,e,f,g,h) pada arah horisontal dan angka (1,2,3,4,5,6,7,8) pada arah vertikal. Suatu aturan untuk menggerakkan bidak dari posisi (e,2) ke (e,4) dapat ditunjukkan dengan aturan :
if bidak putih pada kotak(e,2),
  and kotak(e,3) kosong, and kotak(e,4) kosong
then gerakkan bidak dari (e,2) ke (e,4)
3. tujuan (goal)
tujuan yang ingin dicapai adalah posisi pada papan catur yang menunjukkan kemenangan seseorang terhadap lawannya. Kemenangan ini ditandai dengan posisi raja yang sudah tidak dapat bergerak lagi.

Contoh tersebut menunjukkan representasi masalah dalam Ruang Keadaan (State Space), yaitu suatu ruang yang berisi semua keadaan yang mungkin. Kita dapat memulai bermain catur dengan menempatkan diri pada keadaan awal, kemudian bergerak dari satu keadaan ke keadaan yang lain sesuai dengan aturan yang ada, dan mengakhiri permainan jika salah satu telah mencapai tujuan.


Jadi untuk mendeskripsikan masalah dengan baik harus :
1. Mendefinisikan suatu ruang keadaan (state space)
2. Menetapkan satu atau lebih keadaan awal (initial state)
3. Menetapkan satu atau lebih tujuan (goal state)
4. Menetapkan kumpulan aturan
 
Ada beberapa cara untuk merepresentasikan Ruang Keadaan, antara lain :
GRAPH KEADAAN
Graph terdiri dari node-node yang menunjukkan keadaan yaitu keadaan awal dan keadaan baru yang akan dicapai dengan menggunakan operator. Node-node dalam graph keadaan saling dihubungkan dengan menggunakan arc (busur) yang diberi panah untuk menunjukkan arah dari suatu keadaan ke keadaan berikutnya.

A 3
4 B 2 3F
E6 G
5M
1 7
35 C T
8 H
5
D 3

I J

2
Graph keadaan dengan node M menunjukkan keadaan awal, node T adalah tujuan. Ada 4 lintasan dari
M ke T :
M-A-B-C-E-T
M-A-B-C-E-H-T M-D-C-E-T
M-D-C-E-H-T
Lintasan buntu atau lintasan yang tidak sampai ke tujuan : M-A-B-C-E-F-G
M-A-B-C-E-I-J M-D-C-E-F-G M-D-C-E-I-J
M-D-I-J
POHON PELACAKAN / PENCARIAN
Struktur pohon digunakan untuk menggambarkan keadaan secara hirarkis. Node yg terletak pada level- o disebut ’akar’.
Node akar : menunjukkan keadaan awal & memiliki beberapa percabangan yang terdiri atas beberapa node yg disebut ’anak’ .
Node-node yg tidak memiliki anak disebut ’daun’ menunjukkan akhir dari suatu pencarian, dapat berupa tujuan yang diharapkan (goal) atau jalan buntu (dead end).
Gambar berikut menunjukkan pohon pencarian untuk graph keadaan dengan 6 level.

M Level-0

DA Level-1
 



IB C



JC E

 



  Level-2



  Level-3
 

Buntu

E

 



F I H T

 



  Level-4
 



IF H T

 



G J T

 

Tujuan

  Level-5
 



JG T

 

Tujuan


 

Buntu



 

Buntu


 

Tujuan


 



Level-6
 

Buntu
 

Buntu
 

Tujuan




0 comments:

Post a Comment