Sistem Pakar merupakan suatu program komputer yang mengandung pengetahuan dari satu atau lebih pakar manusia mengenai suatu bidang spesifik. Jenis program ini pertama kali dikembangkan oleh periset kecerdasan buatan pada dasawarsa 1960-an dan 1970-an dan diterapkan secara komersial selama 1980-an. Bentuk umum sistem pakar adalah suatu program yang dibuat berdasarkan suatu set aturan yang menganalisis informasi (biasanya diberikan oleh pengguna suatu sistem) mengenai suatu kelas masalah spesifik serta analisis matematis dari masalah tersebut. Tergantung dari desainnya, sistem pakar juga mampu merekomendasikan suatu rangkaian tindakan pengguna untuk dapat menerapkan koreksi. Sistem ini memanfaatkan kapabilitas penalaran untuk mencapai suatu simpulan.
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 meniru kerja dari para ahli. Jadi sistem pakar = kepakaran ditransfer dari seorang pakar (atau sumber kepakaran yang lain) ke komputer, pengetahuan yang ada disimpan dalam komputer, dan pengguna dapat berkonsultasi pada komputer itu untuk suatu nasehat, lalu komputer dapat mengambil inferensi (menyimpulkan, mendeduksi, dll.) seperti layaknya seorang pakar, kemudian menjelaskannya ke pengguna tersebut, bila perlu dengan alasan-alasannya. Sistem Pakar terkadang lebih baik unjuk kerjanya daripada seorang pakar manusia. Dengan sistem pakar, orang awam pun dapat menyelesaikan masalah yang cukup rumit yang sebenarnya hanya dapat diselesaikan dengan bantuan para ahli. Bagi para ahli, sistem pakar juga akan membantu aktivitasnya sebagai asisten yang sangat berpengalaman.
Ketika suatu sistem pakar akan dibangun, maka seorang pengembang software (software developer) bekerja bersama dengan seorang pakar, pengembang ini akan melakukan serangkaian tanya-jawab (knowledge acquisition) untuk mengumpulkan dasar-dasar pengetahuan (knowledge base) sang pakar. Dasar-dasar pengetahuan ini kemudian dialihkan menjadi basis-pengetahuan sistem pakar dalam bentuk fakta dan aturan. Kemudian pengembang membangun suatu mesin inferensi (inference engine) yang merupakan pembuat keputusan dalam sistem pakar, mengumpulkan informasi dari user melalui tanya jawab, dan membandingkan informasi ini dengan basis-pengetahuan, kemudian memutuskan apa yang harus di-informasikan ke pengguna berdasarkan data/informasi yang diberikannya.
Ketika seorang pengguna memerlukan informasi dari sistem pakar, maka mesin inferensi akan mengajukan serangkaian pertanyaan yang harus dijawab oleh pengguna melalui suatu user-interface (antarmuka pengguna). Jawaban yang dikumpulkan oleh mesin inferensi kemudian dipakai untuk menemukan informasi dari basis-pengetahuan, informasi ini kemudian diteruskan ke pengguna. Apabila pengguna ingin mengetahui lebih rinci tentang informasi yang diperolehnya maka dapat melakukan klarifikasi melalui fasilitas penjelas (explanation facility).
Contoh dialog sistem pakar dengan penggunanya adalah sebagai berikut:
Sistem : Halo, saya pakar buah, silahkan jawab pertanyaan saya, ya atau tidak.
Sistem : Apakah warnanya hijau?
User : TidakSistem : Apakah warnanya ungu kemerahan?
User : YaSistem : Apakah batangnya merambat?
User : YaSistem : Apakah bentuknya bulat kecil?
User : YaSistem : Buah yang anda maksud adalah ANGGUR
Agar tanya jawab ini bisa berlangsung dengan baik maka sistem pakar ini harus memiliki basis-pengetahuan sebagai berikut:
Apel : – warna kuning atau merah
- batangnya adalah pohon
- bentuknya bulat sedangAnggur : – warna ungu kemerahan
- batangnya merambat
- bentuknya bulat kecilJeruk : – warna oranye
- batangnya adalah pohon
- bentuknya bulat sedang
Ketika Sistem melakukan tanya jawab dengan User maka jawaban Ya akan dijadikan basis untuk memeriksa knowledge-base, misalnya pada contoh diatas data masukan adalah (ungu kemerahan, merambat, bulat kecil) dan data ini cocok dengan karakteristik dari Anggur, maka jawaban dari sistem adalah: ANGGUR.
Sistem Pakar
Sebuah sistem komputer yang bekerja berdasarkan  pengetahuan dan keahlian layaknya pakar dikenal dengan sebuah  sistem  pakar (expert system). Umumnya sebuah sistem pakar  dibentuk dengan  kumpulan aturan yang menganalisis informasi  mengenai permasalahan yang  ada dan merekomendasikan jalan  keluar bagi pengguna.
Sistem  pakar dapat diciptakan untuk membantu pekerjaan  dalam bidang akunting,  kedokteran, produksi, sumber daya  manusia, keuangan, dan lain  sebagainya.
Salah satu contoh sistem pakar yang telah lama diterapkan  adalah Mycin, yang ditulis dengan bahasa pemrograman Lisp.
Dari  namanya yang mengingatkan orang pada antibiotik (yang umumnya  berakhiran “mycin”), sistem ini memang didesain untuk mendiagnosis  penyakit infeksi darah dan merekomendasikan antibiotik dengan dosis yang  disesuaikan dengan berat badan pasien.
Sebagaimana pengetahuan  seorang pakar yang dapat berkembang, sistem pakar juga dirancang agar  dapat terus dikembangkan dengan menanamkan pengetahuan pada sistem   secara bertahap.
Sistem pakar sangat membantu untuk melakukan  hal-hal  yang tidak dapat dilakukan pakar sesungguhnya, misalnya  ketersediaan waktu selama 24 jam non  -stop, atau gabungan
pengetahuan para pakar dalam satu sistem, di mana pengguna seolah-olah sedang berkonsultasi dengan banyak pakar.
Tidak  seperti pakar sesungguhnya, sebuah sistem tentunya lebih mudah untuk  didistribusikan ke banyak tempat sekaligus. Hal ini juga menjadi sebuah  keuntungan yang ditawarkan sistem pakar.
Yang menjadi pertanyaan  besar adalah seberapa jauh sebuah sistem dapat menggantikan keahlian  seorang (atau lebih) pakar yang sesungguhnya?
Keterbatasan Masalah
Mungkinkah  di masa depan kecerdasan buatan sudah sedemikian maju sehingga dapat  menggantikan semua tugas manusia? Ternyata tidak semudah itu, otak  manusia memiliki kemampuan luar biasa yang cara kerjanya bisa jadi tidak  dapat ditiru persis 100% oleh mesin hingga saat ini.
Contohnya,  beberapa permasalahan dipecahkan oleh manusia secara intuisi. Bagaimana  memprogram intuisi pada kecerdasan buatan? Mungkin belum terbayangkan  hingga saat ini, karena berbicara mengenai intuisi, akan lebih  mengarahkan cara kerja pengetahuan bawah sadar otak manusia.
Sementara kecerdasan buatan memetakan pemikiran yang dilakukan otak manusia secara logis dan sistematis.
Permasalahan  lainnya adalah asumsi yang timbul pada otak manusia bisa jadi sangat  luas dan tidak dapat dicapai oleh kecerdasan buatan, misalnya pada saat  kata “burung” muncul pada sebuah percakapan, otak manusia dapat  menggambarkan burung adalah seekor binatang kecil, bernyanyi, dan  terbang.
Asumsi yang tampaknya sederhana bagi otak manusia ini  tidak dengan mudah ditemukan oleh kecerdasan buatan saat menangkap kata  “burung”. Karena tidak satupun asumsi di atasbenar untuk mendefi  nisikan  burung secara umum. Mengapa?
Karena kecerdasan buatan tidak akan  diberikan aturan bahwa burung adalah binatang kecil (ada burung yang  besar), atau burung bisa bernyanyi (ada burung yang tidak bernyanyi),  maupun burung bisa terbang (ada burung yang tidak dapat terbang seperti  burung unta dan penguin).
Otak manusia juga memiliki informasi di atas, tetapi hal tersebut tidak membatasi asumsi yang dapat timbul dalam otak manusia.
Algoritma Pencarian
Salah  satu unsur penting kecerdasan buatan adalah menyangkut algoritma  pencariannya. Beberapa algoritma pencarian yang dikenal, antara lain:
1.      Naive.
Contoh  algoritma pencarian ini dapat dilihat pada Breadth First Search (BFS),  yang dapat Anda bayangkan sebagai sebuah pohon node seperti pada Gambar  1.
Node teratas (node nomor 1) akan mulai mencari pada node  terdekat (node nomor 2, 3, dan 4), proses pencarian berulang dengan cara  yang sama pada masing-masing node tersebut, dan dilakukan hingga  ditemukannya tujuan pencarian.
Algoritma pencarian naive yang  lain adalah Depth First Search dan Best First Search (yang merupakan  kombinasi dari Breadth First Search dan Depth First Search).
2.      Heuristic.
Proses  pencarian heuristic bekerja untuk menemukan jawaban yang paling cocok,  ditujukan untuk mendapatkan performa pencarian yang baik dan mudah,  dengan konsekuensi tingkat akurasi yang tidak terjamin.
Algoritma heuristic mencoba untuk meniru otak manusia saat menebak, dengan alasan yang masuk akal.
Heuristic umumnya digunakan saat menghadapi masalah yang kompleks atau memiliki informasi yang kurang memadai.
Misalnya  pada saat dihadapkan pada pilihan untuk menentukan minuman yang paling  enak di antara beberapa jenis minuman, sementara informasi yang adalah  harga minuman,maka dapat diciptakan sebuah rule agar secara heuristic  akan dipilih minuman dengan harga termahal sebagai minuman yang paling  enak.
Tentu saja hal tersebut tidak menjamin bahwa pilihan itu  benar, tetapi pilihan tersebut adalah pilihan yang paling masuk akal dan  sederhana oleh otak manusia dengan keterbatasan informasi yang tersedia  pada kasus tersebut.
3.      Local.
Pencarian lokal berusaha untuk melakukan optimasi, misalnya dengan teknik Hill Climbing.
Teknik  Hill Climbing dapat digunakan untuk memecahkan persoalan yang memiliki  banyak alternatif solusi untuk kemudian memilih solusi yang terbaik.  Cara kerjanya dimulai dengan memilih solusi acak, kemudian dilakukan  perubahan sedikit demi sedikit, setiap perubahan menghasilkan solusi  yang lebih baik.
Saat perubahan yang dilakukan tidak lagi  mendapatkan solusi yang lebih baik, algoritma Hill Climbing akan  berhenti mencari dan menentukan solusi terakhir sebagai solusi yang  optimal.
Contoh penggunaan Hill Climbing pada kecerdasan buatan adalah pencarian rute terbaik, dari berbagai kemungkinan rute yang ada.
Contoh lain dari pencarian local adalah teknik pencarian Beam (Beam Search) dan Simulated Annealing (SA).
4.      Genetic.
Pencarian  dengan algoritma genetic meniru proses seleksi alam atau proses evolusi  seperti inheritance, mutasi, seleksi, dan kombinasi ulang (crossover).
Dengan  algoritma genetic, diharapkan mesin dapat menghasilkan kreativitas, hal  ini  melahirkan cabang kecerdasanbuatan yang dinamakan kreativitas  buatan (Artifi  cial Creativity). Aplikasinya bisa jadi mengarahkan mesin  untuk dapat menciptakan musik, desain, dan lain sebagainya.
Walaupun  pada dasarnya bahasa pemrograman yang umum digunakan seperti Visual  Basic, C++, Delphi, FoxPro, dan sebagainya memungkinkan untuk  menciptakan sebuah aplikasi kecerdasan buatan, tetapi para pengembang  kecerdasan buatan telah membuat bahasa pemrograman yang khusus untuk  keperluan tersebut.
Beberapa bahasa pemrograman untuk kecerdasan buatan yang dikenal adalah IPL, Lisp, Prolog, STRIPS, dan Planner.
Aplikasi Kecerdasan Buatan
Kecerdasan  buatan juga telah digunakan dalam bidang bisnis, bahkan pada sebuah  kompetisi trading fi  nansial  tahun 2001, robot bernama Bots ciptaan IBM  telah dapat mengalahkan team manusia dengan mengumpulkan keuntungan 7%  lebih banyak.
Walaupun tidak diikuti oleh trader profesional,  hasil kompetisi tersebut membuat aplikasi kecerdasan buatan semakin  diperhitungkan penggunaannya di dalam pasar finansial.
Penggunaan  robot telah menjadi hal yang umum pada saat ini pada berbagai industri,  terutama untuk menggantikan pekerjaan yang dapat berbahaya bagi manusia.  Juga terbukti bahwa robot dapat melakukan pekerjaan yang memerlukan  pengulangan dengan lebih efektif dan mengurangi human error.
Perusahaan  General Motor menggunakan sekitar 16.000 robot untuk tugas mengecat,  las, dan perakitan produknya. Jepang merupakan  leader dalam menggunakan  dan memproduksi robot.
Kecerdasan buatan juga telah  diaplikasikan pada mainan elektronik, misalnya Furby, robot berbentuk  burung hantu yang dapat berbicara. Furby tergolong dalam kategori robot  otonomi, yaitu robot yang dapat melakukan suatu tindakan didalam sebuah  lingkungan tanpa pengarahan dari manusia.
Akankah Ciptaan Menjajah Pencipta?
Kecerdasan  buatan merupakan salah satu topik yang disukai penggemar  science-fiction, pada film Terminator digambarkan perang manusia melawan  mesin, bahkan dalam novel berjudul With Folded Hands karangan Jack  Williamson, digambarkan bangsa Humanoids (robot mesin ciptaan manusia)  menjajah bangsa manusia dan menggantikan semua peranan manusia.
Walaupun  masih merupakan khayalan, tetapi kontroversi apakah hal tersebut dapat  terjadi merupakan hal yang menarik untuk diperdebatkan. Apakah ratusan  atau ribuan tahun mendatang mesin dapat mencapai kemampuan untuk  menguasai manusia, ataukah sampai di satu titik saat kecerdasan buatan  tidak dapat menjadi lebih cerdas lagi?
Satu hal yang jelas,  kecerdasan buatan tentunya diarahkan untuk membantu manusia. Kecerdasan  buatan dapat membantu memberikan diagnosis, prediksi, rekomendasi,  simulasi, dan lain sebagainya, tetapi keputusan akhir tetaplah pada  pengontrolan manusia.
LEBIH LANJUT
http://en.wikipedia.org/wiki/Artificial_intelligence
http://en.wikipedia.org/wiki/Hill_climbing
Sumber : majalah PC Media





0 komentar:
Posting Komentar