Senin, 14 November 2016

GRAFIK KOMPUTER DAN PENGOLAHAN CITRA

Saya akan menjelaskan langkah - langkah membuat program menggunakan library OPEN GL, untuk lebiih lengkapnya silahkan di download file di bawah ini.

DOWNLOAD PDF >> DI SINI
DOWNLOAD FILE JAR/EXE >> DI SINI

Kamis, 03 November 2016

1. BLIND SEARCH

Blind Search merupakan pencarian asal ketemu. Jika solusi sudah ketemu, maka pencarian akan dihentikan. Jika dibuat skemanya, pencarian buta hanya mengenal tiga bagian, [masalah]-[pencarian]-[solusi]. Misalkan dalam kotak ada 3 kelereng warna merah, 3 biru, dan 3 kuning. Masalahnya adalah, ambillah satu kelereng yang berwarna merah. Solusi, setelah melakukan pencarian, kemudian didapat satu kelereng warna merah, nah, itulah solusinya.
model pencarian blind search yang tidak memiliki informasi awal, model pencarian ini memiliki tiga ciri – ciri utama yaitu:
1. Membangkitkan simpul berdasarkan urutan.
2. Kalau ada solusi maka solusi akan ditemukan.
3. Hanya memiliki informasi tentang node yang telah dibuka (node selanjutnya tidak diketahui). 
4. Variabel data pada Blind Search tidak mempunyai atribut / informasi tambahan.

      A.     Breadth First Search.
Breadth First Search yaitu model pencarian yang memakai metode melebar. Untuk mencari hasilnya, model Breadth First Search ini menggunakan teknik pencarian persoalannya dengan cara membuka node (titik) pada tiap levelnya. Algoritma yang melakukan pencarian secara melebar yang mengunjungi simpul secara preorder yaitu mengunjungi suatu simpul kemudian mengunjungi semua simpul yang bertetangga dengan simpul tersebut terlebih dahulu. Selanjutnya, simpul yang belum dikunjungi dan bertetangga dengan simpul-simpul yang tadi dikunjungi, demikian seterusnya. algoritma BFS menggunakan graf sebagai media representasi persoalan, tidak sulit untuk mengaplikasikan algoritma ini dalam persoalan-persoalan teori graf.

Contoh Algoritma Breadth First Search :
Dalam algoritma Breadth First Search, simpul anak yang telah dikunjungi disimpan dalam suatu antrian. Antrian ini digunakan untuk mengacu simpul-simpul yan bertetangga dengannya yang akan dikunjungi kemudian sesuai urutan pengantrian. Untuk memperjelas cara kerja algoritma Breadth First Search beserta antrian yang digunakannya, berikut langkah-langkah algoritma Breadth First Search:
1. Masukkan simpul ujung (akar) ke dalam antrian.
2. Ambil simpul dari awal antrian, lalu cek apakah simpul merupakan solusi. 
3. Jika simpul merupakan solusi, pencarian selesai dan hasil dikembalikan.
4. Jika simpul bukan solusi, masukkan seluruh simpul yang bertetangga dengan simpul tersebut (simpul anak) ke dalam antrian.
5. Jika antrian kosong dan setiap simpul sudah dicek, pencarian selesai dan mengembalikan hasil solusi tidak ditemukan.
6. Ulangi pencarian dari langkah kedua.



Keuntungan Breadth First Search  :
1. Tidak akan menemui jalan buntu.
2. Jika ada satu solusi, maka breadth-first search akan menemukannya. Dan, jika ada lebih dari satu solusi, maka solusi minimum akan ditemukan.

Kelemahan Breadth First Search :
1. Membutuhkan memori yang cukup banyak, karena menyimpan semua node dalam satu pohon.
2. Membutuhkan waktu yang cukup lama.

      B.    Depth First Search.
Pencarian dilakukan pada satu node dalam setiap level dari yang paling kiri. Jika pada level yang paling dalam, solusi belum ditemukan, maka pencarian dilanjutkan pada node sebelah kanan. Node yang kiri dapat dihapus dari memori. Jika pada level yang paling dalam tidak ditemukan solusi, maka pencarian dilanjutkan pada level sebelumnya. Demikian seterusnya sampai ditemukan solusi. Jika solusi  ditemukan maka tidak diperlukan proses backtracking (penelusuran balik untuk mendapatkan jalur yang dinginkan).

Kelebihan Depth First Search adalah:
1. Pemakain memori hanya sedikit, berbeda jauh dengan BFS yang harus menyimpan semua node yang pernah dibangkitkan.
2. Jika solusi yang dicari berada pada level yang dalam dan paling kiri, maka DFS akan menemukannya secara cepat.

Kelemahan Depth First Search adalah:

1. Jika pohon yang dibangkitkan mempunyai level yang dalam (tak terhingga), maka tidak ada jaminan untuk menemukan solusi (Tidak Complete).
2. Jika terdapat lebih dari satu solusi yang sama tetapi berada pada level yang berbeda, maka pada DFS tidak ada jaminan untuk menemukan solusi yang paling baik (Tidak Optimal).

Sumber :
http://www.elangsakti.com/2013/03/bahasan-fundamental-tentang-blind.html
http://www.churdhulz.byethost22.com/blogs/pengertian-breadth-first-search-bfs?i=1 
http://anthonilockheart.blogspot.co.id/2013/04/depth-first-search-dfs-breath-first.html


2. METODE PENCARIAN HEURISTIK


Heuristic Search adalah pencarian bersyarat (terbimbing). Artinya, solusi yang diperoleh adalah solusi yang terbaik, bukan solusi sekali ketemu. Bagian-bagiannya adalah [masalah]-[pencarian]-[syarat]-[solusi]. Misal contoh masalah pada kasus di atas, Ambillah kelereng merah yang tidak pecah dan tidak lonjong. Sehingga ketika ketemu kelereng merah dan ada pecahnya, itu masih bukan solusi karena tidak sesuai dengan syarat (tidak pecah dan tidak lonjong). 
Fungsi heuristik digunakan untuk mengevaluasi keadaan-keadaan problema individual dan menentukan seberapa jauh hal tersebut dapat digunakan untuk mendapatkan solusi yang diinginkan.

2.1.         Generate and Test / Pembangkit & Pengujian
Pembangkit & Pengujian : Pada prinsipnya metode ini merupakan penggabungan antara depth-first search dengan pelacakan mundur (backtracking), yaitu bergerak ke belakang menuju pada suatu keadaan awal. Terdapat kelemahan dalam metode ini :
·         Perlu membangkitkan semua kemungkinan sebelum dilakukan pengujian.
·         Membutuhkan waktu yang cukup lama dalam pencariannya

Algoritma :
1. Bangkitkan suatu kemungkinan solusi (membangkitkan suatu tititk tertentu atau lintasan tertentu dari keadaan awal).
2. Uji untuk melihat apakah node tersebut benar-benar merupakan solusinya dengan cara membandingkan node terebut atau node akhir dari suatu lintasan yang  dipilih dengan kumpulan tujuan yang diharapkan.
3. Jika solusi ditemukan, keluar. Jika tidak, ulangi kembali langkah pertama.
Contoh :
“Travelling Salesman Problem (TSP)” Seorang salesman ingin mengunjungi n kota. Jarak antara tiap-tiap kota sudah diketahui. Kita ingin mengetahui ruter terpendek dimana setaip kota hanya boleh dikkunjungi tepat  1 kal i. Misalkan ada 4 kota dengan jarak antara tiap-tiap kota seperti gambar di bawah ini: 

Penyelesaian dengan metode Generate and Test





2.2.         Hill Climbing
Hill Climbing adalah proses pengujian yang dilakukan dengan menggunakan fungsi heuristik. Pembangkitan keadaan berikutnya sangat  tergantung pada feedback dari prosedur pengetesan. Tes yang berupa fungsi heuristik ini akan menunjukkan seberapa baiknya nilai terkaan yang diambil terhadap keadaan-keadaan lainnya yang mungkin.

Algoritma Simple Hill Climbing :
1. Mulai dari keadaan awal, lakukan pengujian: jika merupakan tujuan, maka berhenti; dan jika tidak, lanjutkan dengan keadaan sekarang sebagai keadaan awal.
2. Kerjakan langkah-langkah berikut sampai solusinya ditemukan, atau sampai tidak ada operator baru yang akan diaplikasikan pada keadaan sekarang.
3. Cari operator yang belum pernah digunakan; gunakan operator ini untuk mendapatkan keadaan yang baru.
4. Evaluasi keadaan baru tersebut.
5. Jika keadaan baru merupakan tujuan, keluar.
6. Jika bukan tujuan, namun nilainya lebih baik daripada keadaan sekarang, maka jadikan keadaan baru tersebut menjadi keadaan sekarang.
7. Jika keadaan baru tidak lebih baik daripada keadaan sekarang, maka lanjutkan iterasi.

Contoh: TSP dengan Simple Hill Climbing.
Disini ruang keadaan berisi semua kemungkinan lintasan yang mungkin. Operator digunakan untuk menukar posisi kota-kota yang bersebelahan. Apabila ada n kota, dan kita ingin mencari kombinasi l intasan dengan menukar posisi urutan 2 kota, maka kita akan mendapatkan sebanyak: 
  
atau sebanyak 6 kombinasi (lihat gambar dibawah). Fungsi heuristic yang digunakan adalah panjang lintasan yang terjadi.


Algoritma Steepest Ascent Hill Climbing :
Steepest-ascent hill climbing sebenarnya hampir sama dengan simple hill climbing, hanya saja gerakan pencarian tidak dimulai dari posisi paling kiri. Gerakan selanjutnya dicari berdasarkan nilai heuristik terbaik. Dalam hal ini urutan penggunaan operator tidak menentukan penemuan solusi.

Sumber :
http://www.elangsakti.com/2013/03/bahasan-fundamental-tentang-blind.html
http://fryunfirst.blogspot.co.id/2015/06/pencarian-heuristik-heuristic-search.html



Senin, 03 Oktober 2016

fuzzy logic

Fuzzy Logic



Fuzzy Logic adalah metodologi pemecahan masalah  dengan beribu – ribu aplikasi dalam pengendali yang tersimpan dan pemrosesan informasi.Cocok untuk diimplementasikan pada sistem yang sederhana, kecil, tertanam pada mikro controller, PC multi-channel atau workstation berbasis akuisisi data dan control sistem. Fuzzy logic menyediakan cara sederhana untuk menggambarkan kesimpulan pasti dari informasi yang ambigu, samar -samar, atau tidak tepat. Sedikit banyak, fuzzy logic menyerupai pembuatan keputusan pada manusia dengan kemampuannya untuk bekerja dari data yang ditafsirkan dan mencari solusi yang tepat. Fuzzy logic pada dasarnya merupakan logika bernilai banyak (multivalued logic) yang dapat mendefinisikan nilai diantara keadaan konvensional seperti ya atau tidak, benar atau salah, hitam atau putih, dan sebagainya. Penalaran fuzzy menyediakan cara untuk memahami kinerja dari system dengan cara menilai input dan output system dari hasil pengamatan.

Secara umum, sistem fuzzy sangat cocok untuk penalaran pendekatan terutama untuk sistem yang menangani masalah-masalah yang sulit didefinisikan dengan menggunakan model matematis Misalkan, nilai masukan dan parameter sebuah sistem bersifat kurang akurat atau kurang jelas, sehingga sulit mendefinisikan model matematikanya.



Sistem fuzzy mempunyai beberapa keuntungan bila dibandingkan dengan sistem tradisional, misalkan pada jumlah aturan yang dipergunakan. Pemrosesan awal sejumlah besar nilai menjadi sebuah nilai derajat keanggotaan pada sistem fuzzy mengurangi jumlah nilai menjadi sebuah nilai derajat keanggotaan pada sistem fuzzy mengurangi jumlah nilai yang harus dipergunakan pengontrol untuk membuat suatu keputusan. Keuntungan lainnya adalah sistem fuzzy mempunyai kemampuan penalaran yang mirip dengan kemampuan penalaran manusia. Hal ini disebabkan karena sistem fuzzy mempunyai kemampuan untuk memberikan respon berdasarkan informasi yang bersifat kualitatif, tidak akurat, dan ambigu.


Fuzzy logic jika di dalam bahasa Indonesia logika Fuzzy adalah teknik/ metode yang dipakai untuk mengatasi hal yang tidak pasti pada masalah – masalah yang mempunyai banyak jawaban. Pada dasarnya Fuzzy logic merupakan logika bernilai banyak/ multivalued logic yang mampu mendefinisikan nilai diantara keadaan yang konvensional seperti benar atau salah, ya atau tidak, putih atau hitam dan lain-lain.



kepada sebuah system yang tidak jelas atau kabur atau remang-remang. Sebaliknya yang dimaksud dengan System Fuzzy yaitu sebuah system yang dibangun dengan definisi, cara kerja dan deskripsi yang jelas. Penalaran Logika Fuzzy menyediakan cara untuk memahami kinerja system dengan cara menilai input dan output system dari hasil pengamatan. Logika Fuzzy menyediakan cara untuk menggambarkan kesimpulan pasti dari informasi yang samar-samar, ambigu dan tidak tepat. Fuzzy logic Pertama kali dikembangkan oleh Lotfi A. Zadeh tahun 1965.

Penalaran Logika Fuzzy memnyediakan cara untuk memahami kinerja system dengan cara menilai input dan output system dari hasil pengamatan. Logika Fuzzy menyediakan cara untuk menggambarkan kesimpulan pasti dari informasi yang samar-samar, ambigu dan tidak tepat. Fuzzy logic Pertama kali dikembangkan oleh Lotfi A. Zadeh tahun 1965.


Fuzzy logic merupakan peningkatan dari logika Boolean yang berhadapan dengan konsep kebenaran sebagian. Saat logika klasik menyatakan bahwa segala hal dapat diekspresikan dalam istilah biner (0 atau 1, hitam atau putih, ya atau tidak), logika fuzzy menggantikan kebenaran boolean dengan tingkat kebenaran. Logika Fuzzy memungkinkan nilai keanggotaan antara 0 dan 1. Logika ini berhubungan dengan set fuzzy dan teori kemungkinan.
Fuzzy Logic adalah suatu cabang ilmu Artificial Intellegence, yaitu suatu pengetahuan yang membuat komputer dapat meniru kecerdasan manusia sehingga diharapkan komputer dapat melakukan hal-hal yang apabila dikerjakan manusia memerlukan kecerdasan.
Dengan kata lain fuzzy logic mempunyai fungsi untuk “meniru” kecerdasan yang dimiliki manusia untuk melakukan sesuatu dan mengimplementasikannya ke suatu perangkat, misalnya robot, kendaraan, peralatan rumah tangga, dan lain-lain.

  
Alasan Kenapa digunakan logika Fuzzy:

     1.  Sudah menjadi sifatnya yang kuat selama tidak membutuhkan ketepatan, input yang bebas derau, dan dapat diprogram untuk gagal dengan aman jika sensor arus balik dimatikan atau rusak. Control output adalah fungsi control halus meskipun jarak variasi inputyang cukup besar.

2. Selama fuzzy logic controller memproses aturan – aturan yang dibuat user yang memerintah system control target, ia dapat dimodifikasi dengan mudah untuk meningkatkan atau mengubah secara drastis performa system. Sensor yang baru dapat dengan mudah digabungkan kedalam system secara sederhana dengan menghasilkan aturan memerintah yang sesuai.

3. Fuzzy logic tidak terbatas pada sedikit masukan umpan-balik dan satu atau dua output control, tidak juga penting untuk menilai atau menghitung parameter rata - rata perubahan dengan tujuan agar ia diimplementasikan. Sensor data yang menyediakan beberapa indikasi untuk aksi dan reaksi system sudah cukup. Hal ini memungkinkan sensor menjadi murah dan tidak tepat sehingga menghemat biaya system keseluruhan dan kompleksitas rendah.

4. Karena operasi – operasi yang berbasiskan aturan, jumlah input yang masuk akal dapat diproses ( 1 sampai 8 atau lebih ) dan banyak output ( 1 sampai 4 atau lebih ) dihasilkan, walaupun pendefinisian rulebase secara cepat menjadi rumit jika terlalu banyak input dan output dipilih untuk implementasi tunggal selama pendefinisian rules(aturan), hubungan timbal baliknya juga harus didefinisikan. Akan lebih baik jika memecah system kedalam potongan – potongan yang lebih kecil dan menggunakan fuzzy logic controllers yang lebih kecil untuk didistribusikan pada system, masing – masing dengan tanggung jawab yang lebih terbatas.

5. Fuzzy Logic dapat mengontrol system nonlinier yang akan sulit atau tidak mungkin untuk dimodelkan secara matematis. Hal ini membuka pintu bagi system control yang secara normal dianggap tidak mungkin untuk otomatisasi.

secara sederhana
·         Karena konsep logika Fuzzy mudah dimengerti.
·         Logika Fuzzy fleksibel.
·         LogikaFuzzy mampu memodelkan fungsi-fungsi nonlinear yang sangat kompleks.
·         Logika Fuzzy dapat bekerja dengan teknik-teknik kendali secara konvensional.
·         Logika Fuzzy memiliki toleransi terhadap data-data yang tepat.
·         Logika Fuzzy didasarkan pada bahasa alami.
·  Logika Fuzzy dapat membangun dan mengaplikasikan pengalaman-pengalaman para pakar secara langsung tanpa harus melalui proses pelatihan.

Profesor Lotfi A. Zadeh  adalah guru besar pada University of California yang merupakan pencetus sekaligus yang memasarkan ide tentang cara mekanisme pengolahan atau manajemen ketidakpastian yang kemudian dikenal dengan logika fuzzy. Dalam penyajiannya vaiabel-variabel yang akan digunakan harus cukup menggambarkan ke-fuzzy-an tetapi di lain pihak persamaan-persamaan yang dihasilkan dari variable-variabel itu haruslah cukup sederhana sehingga komputasinya menjadi cukup mudah.

 Karena itu Profesor Lotfi A Zadeh kemudian memperoleh ide untuk menyajikannya dengan menentukan “derajat keanggotaan” (membership function) dari masing-masing variabelnya. Fungsi keanggotaan (membership function), adalah suatu kurva yang menunjukkan pemetaan titik input data kedalam nilai keanggotaanya (sering juga disebut dengan derajat keanggotaan) yang memiliki interval antara 0 sampai 1.
·        Derajat Keanggotaan (membership function) adalah : derajat dimana nilai crisp dengan fungsi keanggotaan ( dari 0 sampai 1 ), juga mengacu sebagai tingkat keanggotaan, nilai kebenaran, atau masukan fuzzy.
·       Label adalah nama deskriptif yang digunakan untuk mengidentifikasikan sebuah fungsi keanggotaan.
·     Fungsi Keanggotaan adalah mendefinisikan fuzzy set dengan memetakkan masukan crisp dari domainnya ke derajat keanggotaan.  Masukan Crisp adalah masukan yang tegas dan tertentu.
·  Lingkup/Domain adalah lebar fungsi keanggotaan. Jangkauan konsep, biasanya bilangan, tempat dimana fungsi keanggotaan dipetakkan.
·     Daerah Batasan Crisp adalah jangkauan seluruh nilai yang dapat diaplikasikan pada variabel sistem.


Contoh penerapan Logika Fuzzy dalam kehidupan sehari-hari:

Logika Fuzzy untuk Sistem Pengaturan Suhu Ruangan.
Untuk menentukan suhu dalam suatu ruangan, kita dapat menentukannya menggunakan Logika Fuzzy. Jika suhu dalam suatu ruangan dingin maka naikkan suhu penghangat, dan jika suhu dalam suatu ruangan panas maka naikkan suhu pendingin.

Logika Fuzzy untuk Sistem Pengaturan Lampu Lalu lintas.
Untuk memperlancar arus lalu lintas dengan adanya system yang bekerja secara otomatis diharapkan angka kecelakaan bias dikurangi. Untuk kepadatan jumlah kendaraan dibuat pemberitahuan seperti: Tidak Padat (TP), Kurang Padat (KP), Cukup Padat (CP), Padat (P) dan Sangat Padat (SP).

Penerapan Fuzzy Logic:

Air Conditioner (Mitsubishi)
AC Mitsubishi menggunakan fuzzy logic dalam system control-nya seperti berikut :
Jika suhu udara semakin hangat, daya pendinginan naik sedikit, jika udara semakin dingin, matikan daya ke bawah.

Beberapa keuntungan yang diperoleh adalah sebagai berikut :
Mesin menjadi halus sehingga tidak cepat rusak, suhu kamar yang nyaman menjadi lebih konsisten dan peningkatan efisiensi (penghematan energi).

Vacuum Cleaner (Panasonic)
Prinsip kerja Vacuum Cleaner yang diproduksi oleh Panasonic adalah sebagai berikut :
Karakteristik lantai dan jumlah debu yang dibaca oleh sensor inframerah dan mikroprosesor akan memilih daya yang sesuai dengan kontrol fuzzy berdasarkan karakteristik lantai.
Karakteristik lantai meliputi jenis (kayu, semen, ubin, kelembutan karpet, karpet tebal, dll).
Pola perubahan jumlah debu yang melewati sensor inframerah dapat dideteksi.
Mikroprosesor menetapkan pengaturan yang sesuai dengan vakum dan daya motor menggunakan skema kontrol fuzzy.
Lampu merah dan hijau dari penyedot debu menunjukkan jumlah debu tersisa di lantai.

Automatic Transmission System (Nissan, Subaru, Mitsubishi) 
Dalam sistem transmisi otomatis konvensional, sensor elektronik mengukur kecepatan kendaraan dan membuka throttle, and gear bergeser berdasarkan nilai-nilai variabel-variabel yang telah ditentukan.
Pada Nissan, tipe sistem ini tidak mampu memberikan performa kontrol seragam yang memuaskan untuk driver karena hanya menyediakan sekitar tiga pola pergeseran yang berbeda.
Dengan digunakannya fuzzy locgic membuat transmisi kontrol fuzzy mampu membaca beberapa variabel termasuk kecepatan kendaraan dan akselerasi, membuka throttle, laju perubahan pembukaan throttle, beban mesin, dan gaya mengemudi. Ketika variabel ini terdeteksi maka akan diberi bobot nilai dan agregat fuzzy dihitung untuk memutuskan kapan akan oper.
Kontroler ini dikatakan lebih fleksibel, halus, dan efisien, memberikan kinerja yang lebih baik. Sebuah sistem yang terintegrasi yang dikembangkan oleh Mitsubishi juga menggunakan logika fuzzy untuk kontrol aktif dari sistem suspensi, four-wheel-drive (traksi), kemudi, dan pendingin udara.

Game untuk Merespon Emosi dari Teks Berbahasa Indonesia Menggunakan Klasifikasi Teks dan Logika Fuzzy.
Game sebagai media hiburan telah berkembang dengan pesat seiring dengan perkembangan teknologi. Salah satu unsur yang berperan penting dalam sebuah game adalah kecerdasan buatan. Dengan kecerdasan buatan, elemen-elemen dalam game dapat berperilaku sealami mungkin layaknya manusia.
Dalam game ini dikembangkan implementasi kecerdasan buatan dalam game dimana salah satu elemen game yaitu NPC (Non Playable Character), mampu mengenali emosi dari teks berbahasa indonesia sekaligus merespon dengan perilaku sesuai dengan jenis emosinya. Metode yang digunakan dalam penelitian ini adalah klasifikasi teks sebagai penentu jenis emosi dalam teks dan logika fuzzy sebagai penentu perilaku dari NPC yang sesuai dengan jenis emosinya.



Di bawah ini adalah beberapa contoh aplikasi Fuzzy Logic:
1. Penghematan Konsumsi Daya Listrik AC (Mitsubhishi Heavy Industries Tokyo).
2. Mesin Cuci.
3. Kamera.
4. Sistem Pengereman Mobil (Nissan).
5. Pengontrol kereta bawah tanah di Sendai, Jepang. 

Sumber :
·         https://www.academia.edu/4858948/FUZZY_LOGIC_ASAL_MULA_FUZZY_LOGIC_Konsep_Fuzzy_Logic_diperkenalkan_oleh_Prof
·         http://socs.binus.ac.id/2012/03/02/pemodelan-dasar-sistem-fuzzy/
·         Suyanto, ST, MSc. Artificial Intelligence Searching, Reasoning, Planning danLearning. 

NAMA : FARHAN JULIYANTO
NPM : 13114956
KELAS : 3KA32



Sistem Pakar

Sistem Pakar

Sistem Pakar adalah sistem informasi yang berisi dengan pengetahuan dari pakar sehingga dapat digunakan untuk konsultasi. Atau Sistem pakar adalah suatu program komputer yang dirancang untuk mengambil keputusan seperti keputusan yang diambil oleh seorang atau beberapa orang pakar. Menurut Marimin (1992), sistem pakar adalah sistem perangkat lunak komputer yang menggunakan ilmu, fakta, dan teknik berpikir dalam pengambilan keputusan untuk menyelesaikan masalah-masalah yang biasanya hanya dapat diselesaikan oleh tenaga ahli dalam bidang yang bersangkutan.


Pengetahuan dari pakar di dalam sistem ini digunakan sebagi dasar oleh Sistem Pakar untuk menjawab pertanyaan (konsultasi).
Kepakaran (expertise) adalah pengetahuan yang ekstensif dan spesifik yang diperoleh melalui rangkaian pelatihan, membaca, dan pengalaman.
Sistem pakar adalah suatu program computer 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.

Pengetahuan membuat pakar dapat mengambil keputusan secara lebih baik dan lebih cepat daripada non-pakar dalam memecahkan problem yang kompleks. Kepakaran mempunyai sifat berjenjang, pakar top memiliki pengetahuan lebih banyak daripada pakar yunior. Tujuan Sistem Pakar adalah untuk mentransfer kepakaran dari seorang pakar ke komputer, kemudian ke orang lain (yang bukan pakar).
Sistem Pakar memiliki ciri-ciri yaitu:

·                     Terbatas pada domain keahlian tertentu.
·                     Dapat memberikan penalaran untuk data yang tidak pasti.
·                     Dapat mengemukakan rangkaian alasan yang diberikan dengan cara yang dapat dipahami. 
·                      Berdasarkan kaidah atau rule tertentu.
·                     Dirancang untuk dapat dikembangkan secara bertahap.

Dalam penyusunannya, sistem pakar mengkombinasikan kaidah-kaidah penarikan kesimpulan (inference rules) dengan basis pengetahuan tertentu yang diberikan oleh satu atau lebih pakar dalam bidang tertentu. Kombinasi dari kedua hal tersebut disimpan dalam komputer, yang selanjutnya digunakan dalam proses pengambilan keputusan untuk penyelesaian masalah tertentu.

Sistem Pakar menurut Siswanto (kecerdasan tiruan:2010) merupakan program komputer, yaitu :
·         Program komputer yang menangani masalah dunia nyata, masalah yang kompleks yang membutuhkan interpretasi pakar.
·         program komputer untuk menyelesaikan masalah dengan menggunakan komputer dengan model penalaran manusia dan mencapai kesimpulan yang sama dengan yang dicapai oleh seorang jika berhadapan dengan masalah.



Komputer berbasis pengetahuan sistem pakar merupakan program komputer yang mempunyai pengetahuan berasal dari manusia yang berpengetahuan luas(pakar) dalam domain tertentu, di mana pengetahuan di sini adalah pengetahuan manusia yang sangat minim penyebarannya, mahal serta susah didapat.

Walaupun sistem pakar dapat menyelesaikan masalah dalam domain yang terbatas berdasarkan pengetahuan yang dimasukkan ke dalamnya, tetapi sistem pakar tidak dapat menyelesaikan yang tidak dapat diselesaikan manusia. Oleh sebab itu keandalan dari sistem pakar terletak pada pengetahuan yang dimasukkan ke dalamnya.

Kondisi-kondisi di mana sistem pakar dapat membantu manusia dalam menyelesaikan masalahnya, antara lain:
·         Kebutuhan akan tenaga ahli (pakar) yang banyak, tetapi pakar yang tersedia jumlahnya sangat terbatas.
·         Pemakaian pakar yang berlebihan dalam membuat keputusan, walaupun dalam suatu tugas yang rutin.
·         Pertimbangan kritis harus dilakukan dalam waktu yang singkat untuk menghindari hal-hal yang tidak diinginkan.
·         Hasil yang optimal, seperti dalam pencernaan atau konfigurasi.
·         Sejumlah besar data yang harus diteliti oleh pakar secara kontinu.




Konsep Dasar Sistem Pakar

Menurut Efraim Turban, konsep dasar sistem pakar mengandung beberapa hal yang di antaranya:
a)  Keahlian
Merupakan suatu kelebihan penguasaan pengetahuan di bidang tertentu yang diperoleh dari pelatihan, membaca atau pengalaman. Contoh bentuk pengetahuan ; Strategi-strategi global untuk menyelesaikan masalah
b)  Ahli (Pakar)
Merupakan seseorang yang memiliki pengetahuan, penilaian, pengalaman, metode tertentu, serta mampu menerapkan keahlian dalam memberikan advise untuk pemecahan persoalan, serta mampu menjelaskan suatu tanggapan, mempelajari hal-hal baru seputar topik permasalahan, mengenali & merumuskan permasalahan, menyusun kembali pengetahuan jika dipandang perlu, memecah aturan-aturan jika dibutuhkan, dan mampu menentukan relevan tidaknya keahlian mereka.
c)  Pengalihan Keahlian
Merupakan pengalihan keahlian dari para ahli ke komputer untuk kemudian dialihkan lagi ke orang lain yang bukan ahli, dimana pengetahuan yang disimpan di komputer ini disebut dengan nama basis pengetahuan. Ada 2 tipe pengetahuan, yaitu: fakta dan prosedur (biasanya berupa aturan).
d)     Inferensi
Kemampuan untuk melakukan penalaran dengan menggunakan pengetahuan yang ada untuk menghasilkan suatu kesimpulan atau hasil akhir. dengan menggunakan motor interafe yang merupakan permodelan proses berfikir dan bernalar layaknya manusia.
e)  Aturan
Sebagian besar sistem pakar dibuat dalam bentuk rule-based system, dimana pengetahuan disimpan dalam bentuk aturan-aturan yang biasanya berbentuk IF-THEN
f)  Kemampuan Menjelaskan
Kemampuan untuk menjelaskan dan merekomendasi, yang membedakan sistem pakar dengan sistem konvensional.



Ciri-Ciri Sistem Pakar

   1.    Terbatas pada domain keahlian tertentu.
   2.    Dapat memberikan penalaran untuk data yang tidak pasti.
   3.    Dapat mengemukakan rangkaian alasan-alasan yang diberikannya dengan cara yang dapat dipahami.
   4.    Berdasarkan pada kaidah/ketentuan/rule tertentu.
   5.    Dirancang untuk dapat dikembangkan secara bertahap.
   6.    Pengetahuan dan mekanisme penalaran (inference) jelas terpisah.
   7.    Keluarannya bersifat anjuran.
   8.    Sistem dapat mengaktifkan kaidah secara searah yang sesuai dituntun oleh dialog dengan user.

Contoh Penerapan :


·         MYCIN  : Digunakan untuk mendiagnosa penyakit.
·         Dendral  : Digunakan untuk mengidentifikasikan struktur molekul campuran kimia yang tidak dikenal.
·         XCON & XSEL : Digunakan untuk konfigurasi sistem komputer besar.
·         Prospector : Digunakan dalam bidang ilmu biologi.

Penerapan Sistem Pakar

Aplikasi Sistem Pakar Tes Kepribadian Berbasis Web

Kepribadian sangatlah penting untuk diketahui setiap orang agar setiap individu mampu mengembangkan kelebihan yang dimilikinya. Seseorang yang kesulitan dalam mengembangkan dirinya kemungkinan karena tidak mengetahui sama sekali kelemahan dan kekurangan yang dimilikinya. Sistem Pakar merupakan suatu sistem yang dibangun untuk memindahkan kemampuan dari seorang atau beberapa orang pakar ke dalam komputer yang digunakan untuk memecahkan masalah yang dihadapi oleh pemakai dalam bidang tertentu. Untuk membantu setiap orang yang ingin mengetahui kepribadiannya, penulis membangun sebuah aplikasi sistem pakar berbasis web yang mampu membantu pengenalan seseorang terhadap kepribadiannya. Proses pembuatan aplikasi tersebut menggunakan metodologi berorientasi obyek dengan pemodelan visual Unified Modeling Language (UML). Pada tahap implementasi penulis menggunakan perangkat pemrograman berbasis web, Apache2Triad 1.5.2 yang berisi Apache 2.0.53, dan PHP 5.0.4. Aplikasi ini dapat membantu pengguna untuk mengetahui kepribadiannya, sehingga dapat membantu untuk mengembangkannya.


Sumber :