Logika Cerdas dan Sistem Pakar

A. Teknik Pelacakan
                Pelacakan adalah teknik untuk pencarian :sesuatu”. Didalam pencarian ada dua kemungkinan hasil yang didapat yaitu menemukan dan tidak menemukan. Sehingga pencarian merupakan teknik yang penting dalam AI. Hal penting dalam menentukan keberhasilan sistem berdasar kecerdasan adalah kesuksesan dalam pencarian dan pencocokan.
Keberhasilan dan kualitas pencarian diukur adari empat cara yaitu:
1.       Kelengkapan
    Apakah algoritma pencarian menjamin untuk mendapatkan sebuah penyelesaian jika ada               penyelesaian ?

2.     Optimal
              Apakah algoritma pencarian akan mendapatkan penyeleaian optimal (Misal: penyelesaian dengan biaya lintasan minimum)

3.       Kekompleksan waktu
         Berapa lama waktu yang digunakan untuk menyelesaian permasalahan ?

4.       Kekompleksan Ruang
         Berapa banyak memori yang dibutuhkan untuk melakukan pencarian
Ada beberapa teknik pelacakan:




B. Pencarian Buta Melebar Pertama (Breadth First Search)

Pada metode ini 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 ke-1 dari kiri ke kanan, kemudian berpindah ke level berikutnya demikian pula dari kiri ke kanan hingga ditemukan solusi. ( lihat gambar)

  
Algoritma Breadth First:
1.       Buat suatu variable Node_list dan tetapkan sebagai keadaan awal.
2.       Kerjakan langkag-langkah berikut ini sampai tujuan tercapai atau Node_lIst dalam keadaan kosong:
a.    Hapus elemen pertama dari Node_list, sebut dengan nama E. Jika Node_list kosong, maka Keluar.
b.   Pada setiap langkah yang aturannya cocok dengan E, kerjakan:
-          Aplikasikan aturan tersebut untuk membentuk sustu keadaan baru.
-          Jika keadaan awal adalah tujuan yang diharapkan, sukses, dan keluar
-          Jika tidak demikian, tambahkan keadaan awal yang baru tersebut pada akhir Node_list
Keuntungan:
1.    Tidak akan menemui jalan buntu.
2.    Jika ada satu solusi, maka breadth first search akan menemukan. Jika ada lebih dari satu solusi, maka solusi minimum akan ditemukan.
Kelemahan:
1.       Membutuhkan memori yang besar, karena menyimpan semua node dalam satu pohon.
2.       Membutuhkan waktu yang lama, karena akan menguji n level untuk mendapatkan solusi pada level yang ke- (n+1).

Analisis Ruang dan Waktu
1.       Diasumsikan: Ada satu solusi (I tujuan ditemukan) pada pohon. Pohon pelacakan memiliki cabang yang selalu sama, yaitu sebanyak b. Tujuan dicapai pada level ke-d. Tujuan dicapai pada pertengahan pohon ( kondisi rata-rata)
2.       Analisis Ruang
-          Antrian pertama memiliki 1 keadaan.
-          Setelah mencapai langkah pertama, antrian akan berisi b keadaan.
-          Pemrosesan setiap b keadaan pada level ke-0 akan menambahkan b keadaan lagi pada antrian.
-          Sehingga setelah dilakukan pemrosesan semua keadaan pada level ke-d, maka antrian akan menyimpan keadaan sebanyak b d−1 .


Karena diasumsikan bahwa tujuan terletak di tengah, maka antrian akan menyimpan b d−1 /2 keadaan (Lihat Gambar)
c.       3. Analisis Waktu
Ukuran waktu diambil dari banyaknya keadaan yang dikunjungi. Jika tujuan diasumsikan bahwa setiap node membutuhkan waktu yang sama dalam pemrosesan maka:
·         Waktu = waktu untuk memproses node-node di level 1 +
·         Waktu untuk memproses node-node di level 2 +…+
·         Waktu untuk memproses node-node di level ke-(d-1) +
·         Waktu untuk memproses node-node di level ke-(d)/2
                        = 1 + b + b 2 + b 3 +…….+ b d−1 + b d /2
                        = 0 (b d )
C. Pencarian Mendalam Pertama ( Depth First Search)
Pada Depth First Search, Proses pencarian akan dilakukan pada semua anak sebelum dilakukan pencarian ke node-node yang selevel. Pencarian dimulai dari dari node akarke level yang lebih tinggi. Proses ini diulangi terus hingga ditemukan solusi.
        termasuk teknik pelacakan sistematis
        ruang keadaan direpresentasikan dg. diagram pohon mapun grafik
        asumsi one path is as good as any other
        ambil salah satu cabang ( left-to-right order)
        simpul-simpul paling dalam diperiksa lebih dahulu
        lebih efektif digunakan jika simpul sasaran (Goal) terletak pada lokasi yang lebih dalam.
Ø  Keuntungan
      Membutuhkan memori yang relative kecil, karena hanya node-node pada lintasan yang aktif saja yang disimpan. Secara kebetulan, metode ini akan menemukan solusi tanpa harus menguji lebih banyak lagi yang lain.
Ø  Kelemahan:
Memungkinkan tidak ditemukannya tujuan yang diharapkan. Hanya akan mendapatkan 1 solusi pada setiap pencarian
Ø  Analisis Ruang dan Waktu
1.    Analisis Ruang
                        Setelah berjalan 1 langkah, stack akan berisi b node.
                        Setelah berjalan 2 langkah, stack akan berisi (b-1)+b node
                        Setelah berjalan 3 langkah, stack akan berisi (b-1)+(b-1)+b node
                        Setelah berjalan d langkah, stack akan berisi (b-1)x d+1, mencapai maksimum
2.       Analisis Waktu
Pada kasus terbaik, depth-first-search akan mencapai tujuan pada kedalaman d pertama, sehingga dibutuhkan pencarian sebanyak d+1 node. Pada kasus terburuk , depth-first-search akan mencapai tujuan pada kedalaman d pada node terakhir, sehingga dibutuhkan pencarian sebanyak : 1+b+b 2 +b 3 +….+b d = (b d +1 -1)/(b-1)

Read more

Logika Cerdas dan Sistem Pakar


Logika cerdas terdiri dua suku kata, yaitu logika (menurut wikipedia) yang berarti  hasil pertimbangan akal pikiran yang diutarakan lewat kata dan dinyatakan dalam bahasa dan kata cerdas (menurut Kamus Besar Bahasa Indonesia) yang berarti  sempurna perkembangan akal budinya (untuk berpikir, mengerti, dsb).  Jadi arti dari logika cerdas adalah hasil pertimbangan akal pikiran yang sempurna perkembangan untuk berfikir dan mengerti.
Dalam kaitannya dengan kecerdasan buatan (Artificial Intelligence), logika cerdas dapat mengacu pada sesuatu yang dibuat oleh manusia dengan tingkat kecerdasan yang sangat baik. Contoh utamanya adalah robot. Robot memang diciptakan untuk membantu meringankan pekerjaan manusia. Sehingga penciptaan robot pun semakin mencapai titik sempurna yaitu dapat melakukan semua pekerjaan manusia.
Salah satu pengaplikasian logika cerdas buatan manusia yaitu berupa sistem pakar. 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.
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.
Salah satu sistem pakar (expert system) yang pertama adalah:
  1. MACSYMA, yang digunakan untuk tugas-tugas matematika.
  2. MYCIN, untuk mendiagnosa penyakit infeksi pada darah.
  3. CADUCEUS, untuk mendeteksi penyakit.
  4. PUFF, untuk mengukur fungsi dari paru-paru.
  5. PROSPECTOR, digunakan perusahaan DEC untuk menggamarkan konfigurasi dari sistem komputer bagi para langganannya.
  6. DENDRAL, untuk mengidentifikasikan struktur molekul suatu komposisi kimia dan lain sebagainya.


Untuk mengembangkan expert system, harus diciptakan terlebih dahulu suatu knowledge base yang dibutuhkan oleh aplikasinya. Suatu knowledge base terdiri dari kumpulan data tertentu untuk permasalahan yang spesifik dan aturan-aturan bagaimana memanipulasi data yang disimpan tersebut.
Berbeda dengan database biasa, knowledge base mungkin dapat juga terdiri dari asumsi-asumsi, kepercayaan-kepercayaan, pendugaan-pendugaan dan metode-metode heuristic. Untuk membuat knowledge base perencanaan sistem harus bekerja sama atau meminta nasehat dari ahli di bidangnya. Orang yang menciptakan expert system disebut dengan knowledge engineer.
Elemen Manusia Yang Terkait Dalam Penggunaan dan Pengembangan Sistem Pakar
1. Pakar
Pakar adalah orang yang memiliki pengetahuan khusus, pendapat, pengalaman dan metode, serta kemampuan untuk mengaplikasikan keahliannya tersebut guna menyelesaikan masalah.
2. Perekayasa pengetahuan
Perekayasa pengetahuan adalah orang yang membantu pakar dalam menyusun area permasalahan dengan menginterpretasikan dan mengintegrasikan jawaban-jawaban pakar atas pertanyaan yang diajukan, menggambarkan analogi, mengajukan counter example dan menerangkan kesulitan-kesulitan konseptual.
3. Pemakai
            - Pemakai awam : dalam hal ini sistem pakar bertindak sebagai konsultan untuk memberikan                        saran dan solusi kepada pemakai
            - Pelajar yang ingin belajar : sistem pakar bertindak sebagai instruktur
            - Pembuat sistem pakar : sistem pakar sebagai partner dalam pengembangan basis                             pengetahuan.
            - Pakar : sistem pakar bertindak sebagai mitra kerja/asisten

BENTUK / TIPE SISTEM PAKAR
  1. Mandiri : sistem pakar yang murni berdiri sendiri, tidak digabung dengan software lain, bisa dijalankan pada komputer pribadi, mainframe.
  2. Terkait/Tergabung : dalam bentuk ini sistem pakar hanya merupakan bagian dari program yang lebih besar. Program tersebut biasanya menggunakan teknik algoritma konvensional tapi bisa mengakses sistem pakar yang ditempatkan sebagai subrutin, yang bisa dimanfaatkan setiap kali dibutuhkan.
  3. Terhubung : merupakan sistem pakar yang berhubungan dengan software lain, misal :spreadsheet, DBMS, program grafik. Pada saat proses inferensi, sistem pakar bisa mengakses data dalam spreadsheet atau DBMS atau program grafik bisa dipanggil untuk menayangkan output visual.
  4. Sistem Mengabdi Merupakan bagian dari komputer khusus yang diabdikan kepada fungsi tunggal. Sistem tersebut bisa membantu analisa data radar dalam pesawat tempur atau membuat keputusan intelejen tentang bagaimana memodifikasi pembangunan kimiawi, dll.
BASIS PENGETAHUAN (KNOWLEDGE BASE)
            Basis pengetahuan berisi pengetahuan-pengetahuan dalam penyelesaian masalah. Ada 2 bentukpendekatan basis pengetahuan :
·         Penalaran berbasis aturan (rule-based reasoning)
Pada penalaran berbasis aturan, pengetahuan direpresentasikan dengan menggunakan aturan berbentuk IF-THEN. Bentuk ini digunakan apabila kita memiliki sejumlah pengetahuan pakar pada suatu permasalahan tertentu, dan si pakar dapat menyelesaikan masalah tersebut secara berurutan. Disamping itu, bentuk ini juga digunakan apabila dibutuhkan penjelasan tentang jejak (langkah-langkah) pencapaian solusi. Contoh : aturan identifikasi hewan.
Rule 1 : IF hewan berambut dan menyusui THEN hewan mamalia
Rule 2 : IF hewan mempunyai sayap dan bertelur THEN hewan jenis burung
Rule 3 : IF hewan mamalia dan memakan daging THEN hewan karnivora
Dan seterusnya…

·         Penalaran berbasis kasus (case-based reasoning)
Pada penalaran berbasis kasus, basis pengetahuan akan berisi solusi-solusi yang telah dicapai sebelumnya, kemudian akan diturunkan suatu solusi untuk keadaan yang terjadi sekarang (fakta yang ada). Bentuk ini digunakan apabila user menginginkan untuk tahu lebih banyak lagi pada kasus-kasus yang hampir sama (mirip). Selain itu bentuk ini juga digunakan bila kita telah memiliki sejumlah situasi atau kasus tertentu dalam basis pengetahuan.

Sumber :
http://www.buzzle.com/img/articleImages/336417-54415-34.jpg
Read more