Bab 1 Introduction to Artificial Intelligence 1.1 Pendahuluan Optimasi (Optimization) adalah aktivitas untuk mendapatkan hasil terbaik di bawah keadaan yang diberikan. Tujuan akhir dari semua aktivitas tersebut adalah meminimumkan effort (usaha) atau memaksimumkan manfaat yang diinginkan. Karena usaha yang diperlukan atau manfaat yang diinginkan dapat dinyatakan sebagai fungsi dari variable keputusan, optimasi dapat didefinisikan sebagai proses untuk menemukan kondisi yang memberikan nilai minimum atau maksimum dari sebuah fungsi. f(x) x*, Minimum dari f(x) x* x*, Maksimum dari – f(x) - f(x) Gambar 1 Optimasi tanpa kendala Dapat dilihat pada Gambar 1 bahwa jika titik x* bersesuaian dengan nilai minimum dari f(x), maka titik yang sama juga bersesuaian dengan nilai maksimum dari - f(x). Dengan demikian, tanpa mengurangi keberlakuan secara umum, optimasi dapat diartikan sebagai minimasi karena maksimum suatu fungsi dapat didapatkan dengan mencari minimum dari negatif fungsi yang sama. Tidak ada metode tunggal yang dapat dipakai untuk menyelesaiakn semua masalah optimasi secara efisien. Banyak metode optimasi telah dikembangkan untuk menyelesaikan tipe optimasi yang berbeda-beda. Masalah optimasi tanpa kendala dan dinyatakan sebagai: x1 x2 Cari X yang meminimumkan f(X). ... x n Masalah optimasi seperti itu dinamakan masalah optimasi tanpa kendala. Metode pencarian titik optimum juga dikenal sebagai teknik pemrograman matematik dan menjadi bagian dari operations research. Operations research adalah suatu cabang matematika yang menekankan kepada aplikasi teknik dan metode saintifik untuk masalah-masalah pengambilan keputusan dan pencarian solusi terbaik atau optimal. Teknik pemrograman matematikal sangat berguna dalam pencarian nilai optimum suatu fungsi dengan beberapa variabel dengan dibatasi oleh kendala yang ada. Teknik proses stokastik dapat digunakan untuk menganalisis masalah yang didiskripsikan dengan sekumpulan variable acak dimana distribusi probabilitasnya diketahui. Metode statistikal dapat digunakan untuk menganalisis data eksperimen dan untuk membangun model secara empirik untuk memperoleh representasi yang lebih akurat mengenai situasi fisikal. Klasifikasi selengkapnya mengenai metode operations research diberikan pada Tabel 1 berikut. Tabel 1.1 Metode Operations Research Teknik Pemrograman Matematikal Metode kalkulus Pemrograman geometrik Pemrograman nonlinier Pemrograman kuadratik Pemrograman linier Pemrograman dinamik Pemrograman integer Pemrograman stokastik Goal programming Pemrograman multiobjektif Metode jaringan: CPM & PERT Transportasi Teknik Proses Stokastik Teori keputusan statistical Proses Markov Teori antrian Renewal theory Simulation methods Reliability theory Teori Permainan Metode Statistikal Analisis regresi Analisis kluster, pattern recoqnition Rancangan eksperimen Analisis diskriminan Artificial Intelligence : Simulated annealing Genetic algorithm Neural networks Fuzzy Expert System Tabu Search 1.2 Optimasi dengan Kendala Suatu optimasi atau masalah pemrograman matematikal dapat dinyatakan sebagai berikut. x1 x2 Cari X yang meminimumkan f(X) ... x n dengan kendala g j (X ) 0, j 1, 2, ..., m (1) (2) l j (X ) 0, j 1, 2, ..., p dimana X adalah sebuah vektor berdimensi-n yang dinamakan vektor disain atau variabel keputusan, f(X) disebut fungsi obyektif, g j (X ) dan l j (X ) dikenal sebagai kendala ketaksamaan dan kendala kesamaan. Masalah optimasi tersebut dinamakan masalah optimasi terkendala. Masalah optimasi dengan kendala dapat diklasifikasikan sebagai masalah pemrograman linier, nonlinier, kuadatrik, integer, goal programming, multi objektif programming dan lain-lain. Masalah Pemrograman Linier Jika fungsi obyektif dan semua kendala semuanya adalah fungsi linier dari variabel keputusan, maka masalah pemrograman matematikal tersebut dinamakan masalah pemrograman linier (LP). Masalah pemrograman linier dapat dinyatakan dalam bentuk standar berikut: x1 x2 Cari X ... x n n yang meminimumkan f(X) = c x i i 1 i dengan kendala n a i 1 dimana c i , a ij , dan b j paramater). ij xi b j , j 1, 2, ..., m xi 0 , i 1, 2, ..., n adalah konstanta (yang selanjutnya dinamakan sebagai Contoh 1. Sebuah perusahaan manufaktur memproduksi dua produk, A dan B, dengan menggunakan dua sumber daya terbatas. Jumlah maksimum sumber daya 1 dan 2 yang tersedia per hari adalah 2000 dan 500 unit. Produksi 1 unit produk A memerlukan 1 unit sumber daya 1.5 dan 0.4 unit sumber daya 2, sedangkan produksi 1 unit produk B memerlukan 0.5 unit sumber daya 1 dan 0.8 unit sumber daya 2. Harga jual per unit produk A dan B adalah : pXA = 2000 pXB = 7500 dimana x A dan x B adalah banyaknya produk A dan B yang terjual. Formulasikan masalah. Jawaban Fungsi objektif : Maks keuntungan f(x) = pxA XA + pxB XB = 2000 XA + 7500 XB Terhadap : 1.5x A 0.5xB 2000 (sumber daya 1) 0.5x A 0.8xB 500 (sumber daya 2) x A 0 (batas bawah produksi produk A) x B 0 (batas bawah produksi produk B) 1.3. Teknik Kepintaran Buatan (Artificial Intelligence) Intelligence adalah kemampuan untuk berfikir dan memahami, memecahkan masalah dan mengambil keputusan. Definisi Artificial Intelligence : 1. 2. 3. 4. Suatu sistem yang berfikir seperti manusia Suatu sistem yang bertindak seperti manusia Suatu sistem yang berfikir secara rasional Suatu sistem yang bertindak secara rasional Sasaran dari Teknik Kepintaran Buatan adalah : Untuk membuat suatu machine atau sistem melakukan hal-hal yang memerlukan kepintaran seperti yang dilakukan oleh manusia. Kemampuan apa yang dimiliki manusia ? Belajar dan memahami (learn and understanding) Memecahkan masalah (solve the problem) Mengambil keputusan (decision making) Sejarah Artificial Intelligence : 1. Fase Kelahiran Artificial Intelligence (1943 – 56) Alan Turing merancang mesin komputasi otomatik (Turing imitation game) Warren Mc Culloch dan Walter Pitts di tahun 1943 membuat model jaringan syaraf tiruan (artificial neural network atau ANN) 2. Fase mulai dikenalnya Artificial Intelligence (1956 – akhir 60an) John McCarthy penemu istilah ’Artificial Intelligence’ Frank Rosenblatt menemukan salah satu algoritma pembelajaran dalam ANN yaitu perceptron Teknik General Problem Solver oleh Newell dan Simon (1961) Lotfi A Zadeh menemukan teori logika kabur (Fuzzy Logic) 3. Fase Expert system technology (teknologi sistem pakar) (1970 – pertengahan 1980) 4. Fase kelahiran kembali Artificial Neural Network (1980 – sekarang) Hopfield network Back propagation neural network 5. Fase evolutionary computation (1970 – sekarang) Berkembangnya teknik optimasi Algoritma Genetik 6. Fase era baru dari sistem pakar (1980an-sekarang) Berkembangnya teknik sistem pakar kabur (fuzzy expert system) 1.4. Intelligent Agents Suatu agen didefinisikan sebagai : Sesuatu yang dapat dianggap sebagai penerima (perceiving) respon dari lingkungan melalui sensor dan bertindak atau memberikan respon terhadap kondisi lingkungan tersebut melalui yang dinamakan pemberi balas (effector). aksi effector Lingkungan Agen sensor penerima Tujuan dari Artificial Intelligence adalah untuk : Merancang suatu program agen yang dapat memberikan respon yang baik (optimum) kepada lingkungan. Program agen : suatu fungsi yang dapat melakukan pemetaan agen dari penerimaan sampai kepada tindakan/respon. Jenis Agen Robot pengambil komponen Pengontrol proses Tujuan Menempatkan komponen di dalam wadah yang benar Memaksimumkan proses Penerima Intensitas Pixel warna dari komponen Pembaca temperatur, tekanan, dll. Aksi Pengambilan dan sortasi parts/komponen Lingkungan Conveyor belt dengan komponen Tutup/buka Mesin Proses katup (valve), pengaturan temperatur Sistem analis Mengkategorikan Intensitas Mencetak suatu Gambar dari gambar gambar dengan pixel kategori satelit yang satelit benar mengorbit Sensor Mengkategorikan Warna buah, Sortasi buah Mesin sortasi sortasi buah buah berdasarkan dimensi dengan grade/mutunya conveyor belt AI sebagai agen pemecahan masalah : Dalam pemecahan masalah untuk mencapai tujuan, dinamakan algoritma pencarian (searching). AI melakukan proses yang Mekanisme searching untuk memecahkan suatu masalah : 1. Kondisi awal (initial state) 2. Tujuan (goal) 3. Operator : suatu fungsi atau algoritma untuk mencapai suatu keadaan ke keadaan lain sampai dicapainya tujuan yang optimum 4. Path cost (fungsi biaya)