Kamis, 12 Januari 2017

ARTIFICIAL INTELLIGENCE ( KECERDASAN BUATAN)
Image result for ARTIFICIAL INTELLIGENCE ( KECERDASAN BUATAN)
Definisi Kecerdasan Buatan :
“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” (H. A. Simon [1987] )
“Kecerdasan Buatan (AI) merupakan sebuah studi tentang bagaimana membuat komputer melakukan hal-hal yang pada saat ini dapat dilakukan lebih baik oleh manusia.” (Rich and Knight [1991])
“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” (Encyclopedia Britannica).
1. 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
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
Gambar 1 Task Domain of Artificial Intelligence
BEDA KECERDASAN BUATAN & PROGRAM KONVENSIONAL
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.
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
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.
POHON PELACAKAN / PENCARIAN
Struktur pohon digunakan untuk menggambarkan keadaan secara hirarkis. Node yg terletak pada levelo 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.
Contoh 1 :
Masalah EMBER Ada 2 ember masing-masing berkapasitas 4 galon (ember A) dan 3 galon (ember B). Ada pompa air yg akan digunakan untuk mengisi air pada ember tersebut. Bagaimana dapat mengisi tepat 2 galon air ke dalam ember berkapasitas 4 galon?
Penyelesaian :
1. Identifikasi ruang keadaan (state space) Permasalahan ini dapat digambarkan sebagai himpunan pasangan bilangan bulat : x = jumlah air yg diisikan ke ember 4 galon (ember A) y = jumlah air yg diisikan ke ember 3 galon (ember B) Ruang keadaan = (x,y) sedemikian hingga x  {0,1,2,3,4} dan y {0,1,2,3}
2. Keadaan awal & tujuan Keadaan awal : kedua ember kosong = (0,0) Tujuan : ember 4 galon berisi 2 galon air = (2,n) dengan sembarang n
3. Keadaan ember Keadaan ember bisa digambarkan sebagai berikut :
4. Aturan-aturan Diasumsikan kita dapat mengisi ember air itu dari pompa air, membuang air dari ember ke luar, menuangkan air dari ember yang satu ke ember yang lain. Kita buat beberapa aturan-aturan yang dapat digambarkan sebagai berikut :


5. Representasi ruang keadaan dengan pohon pelacakan Pencarian suatu solusi dapat dilukiskan dengan menggunakan pohon. Tiap-tiap node menunjukkan satu keadaan. Jalur dari parent ke child ,menunjukkan 1 operasi. Tiap node memiliki node child yg menunjukkan keadaan yg dapat dicapai oleh parent.
Contoh 2 :
Masalah PETANI,KAMBING,SERIGALA,SAYURAN,PERAHU Seorang petani akan menyeberangkan seekor kambing,seekor serigala,sayuran dengan sebuah perahu yg melalui sungai. Perahu hanya bisa memuat petani & satu penumpang yg lain (kambing, serigala, atau sayuran). Jika ditinggalkan petani tersebut, maka sayuran dimakan kambing dan kambing akan dimakan serigala. Penyelesaian :
1.      Identifikasi ruang keadaan Permasalahan ini dapat dilambangkan dengan (jumlah kambing,jumlah serigala,jumlah sayuran,jumlah perahu).
Contoh : daerah asal (0,1,1,1) = daerah asal tidak ada kambing,ada serigala, ada sayuran,ada perahu
2.      Keadaan awal & tujuan Keadaan awal, pada kedua daerah : daerah asal = (1,1,1,1) daerah seberang = (0,0,0,0) Keadaan tujuan, pada kedua daerah : daerah asal = (0,0,0,0) daerah seberang = (1,1,1,1) 3. Aturan-aturan
METODE PELACAKAN/PENCARIAN
Hal penting dalam menentukan keberhasilan sistem cerdas adalah kesuksesan dalam pencarian. Teknik pencarian :
A. Pencarian buta (blind search) :
  1. Pencarian melebar pertama (Breadth – First Search)
  2. Pencarian mendalam pertama (Depth – First Search)
B. Pencarian terbimbing (heuristic search) :
  1. Pendakian Bukit (Hill Climbing)
  2. Pencarian Terbaik Pertama (Best First Search)
    A. Pencarian Buta (blind search)
        1. Breadth – First Search Semua node pada level n akan dikunjungi terlebih dahulu sebelum  mengunjungi node-node pada level n+1. pencarian dimulai dari node akar terus ke level 1 dari kiri ke kanan, kemudian berpindah ke level berikutnya dari kiri ke kanan hingga solusi ditemukan.
Keuntungan : S A B C D E F H G - tidak akan menemui jalan buntu - jika ada 1 solusi, maka breadth – first search akan menemukannya,jika ada lebih dari 1 solusi, maka solusi minimum akan ditemukan.
Kelemahan : - membutuhkan memori yang cukup banyak - membutuhkan waktu yang cukup lama
Kecerdasan Buatan dikelompokkan menjadi 4 macam, yaitu :
1.                  Systems that think like humans.
2.                  Systems that act like humans.
3.                  Systems that think rationally.
4.                  Systems that act rationally.
Detail Kecerdasan Buatan :
1.      Sudut Pandang Kecerdasan : Kecerdasan buatan mampu membuat mesin menjadi cerdas(berbuat seperti yang dilakukan manusia)
2.      Sudut Pandang Penelitian : Kecerdasan buatan adalah studi bagaimana membuat computer dapat melakukan sesuatu sebaik yang dilakukan manusia.
3.      Sudut Pandang Bisnis : Kecerdasan buatan adalah kumpulan peralatan yang sangat powerful dan metodologis dalam menyelesaikan masalah bisnis.
4.      Sudut Pandang Pemrograman : Kecerdasan buatan meliputi studi tentang pemrograman simbolik, problem solving, dan pencarian (searching).



Tujuan Kecerdasan Buatan :
1.Membuat komputer lebih cerdas
2.Membuat mesin lebih berguna

Jenis-Jenis Kecerdasan Buatan
Dalam perkembangannya kecerdasan buatan dapat dikelompokkan sebagai berikut :

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, dan sebagainya.
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.
8.      Soft Computing
METODE PENGUJIAN KECERDASAN SISTEM
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 kemung kinan 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.

Peng.Teknologi Sistem Cerdas