Saturday, 2 December 2017

Definisi dan Contoh Metode Pencarian Buta dan Heuristik


1. Metode Pencarian Buta (Blind Search) 

yaitu tidak terdapatnya informasi awal yang digunakan dalam proses pencarian. Ada dua jenis pencarian buta (blind search) :

a. Pencarian melebar pertama (Breadth – First Search)
Pada 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.
Keuntungannya :
- Tidak akan menemui jalan buntu, menjamin ditemukannya solusi (jika solusinya memang ada) dan solusi yang ditemukan pasti solusi yang paling baik
- Jika ada 1 solusi, maka breadth – first search akan menemukannya
- Jika ada lebih dari 1 solusi, maka solusi minimum akan ditemukan
Kerugiannya :
- Membutuhkan memori yang banyak, karena harus menyimpan semua simpul yang pernah dibangkitkan dan hal ini harus dilakukan agar BFS dapat melakukan penelusuran simpul-simpul sampai di level bawah
- Membutuhkan waktu yang cukup lama
Kesimpulan :
Teknik pencarian Breadth – First Search ini :
Completeness : dimana teknik yang digunakan adanya solusi
Optimality : dimana teknik yang digunakan menemukan solusi yang terbaik saat adanya beberapa solusi berbeda Time complexity : waktu yang dibutuhkan cukup lama Space complexity : memori yang dibutuhkan juga banyak.
Contoh :

Maka penyelesaiannya adalah:
Gambar (a) BFS(1): 1, 2, 3, 4, 5, 6, 7, 1
Gambar (b) BFS(1): 1, 2, 3, 4, 5, 6, 7, 1
Gambar (c) BFS(1): 1, 2, 3, 4, 5, 6, 7, 8, 9

b. Pencarian mendalam pertama (Depth – First Search)
Pada pencarian Depth – First Search dilakukan pada suatu simpul dalam setiap level dari yang paling kiri. Jika pada level yang paling dalam tidak ditemukan solusi, maka pencarian dilanjutkan pada simpul sebelah kanan dan simpul 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.
Keuntungannnya :
- Membutuhkan memori relatif kecil, karena hanya node-node pada lintasan yang aktif saja yang disimpan
- Dan secara kebetulan, akan menemukan solusi tanpa harus menguji lebih banyak lagi dalam ruang keadaan, jadi jika solusi yang dicari berada pada level yang dalam dan paling kiri, maka DFS akan menemukannya dengan cepat (waktunya cepat)
Kerugiannya :
- Memungkinkan tidak ditemukannya atau tidak adanya tujuan yang diharapkan, karena jika pohon yang dibangkitkan mempunyai level yang sangat dalam (tak terhingga) à tidak complete karena tidak ada jaminan akan menemukan solusi
- Hanya mendapat 1 solusi pada setiap pencarian, karena jika terdapat lebih dari satu solusi yang sama tetapi berada pada level yang berbeda, maka DFS tidak menjamin untuk menemukan solusi yang paling baik à tidak optimal

Contoh :
Untuk grafik berikut:

Pencarian mendalam-pertama mulai dari A, dengan asumsi bahwa tepi kiri dalam grafik ditunjukkan dipilih sebelum tepi kanan, dan dengan asumsi pencarian sebelumnya-ingat node dikunjungi dan tidak akan mengulangi mereka (karena ini
adalah grafik kecil), akan mengunjungi node dalam urutan sebagai berikut: A, B, D, F, E, C, G.
Melakukan pencarian yang sama tanpa mengingat hasil sebelumnya mengunjungi node dalam mengunjungi node dalam urutan A,B, D, F, E, A, B, D, F
, E, dll selamanya, terperangkap dalam A, B, D, F , E siklus dan tidak pernah mencapai C atau G.
Iteratif memperdalam mencegah loop ini dan akan mencapai node berikut pada kedalaman berikut, dengan asumsi itu hasil dari kiri-ke-kanan seperti di atas:
  • 0: A
  • 1: A (diulang), B, C, E
(Perhatikan bahwa iterasi memperdalam sekarang melihat C, ketika sebuah pencarian depth-first konvensional tidak.)
  • 2: A B,, D, F, C, G, E, F
(Perhatikan bahwa masih melihat C, tetapi itu datang belakangan juga diketahui bahwa melihat E melalui jalan yang berbeda, dan loop kembali ke F dua kali..)
  • 3: A B,, D, F, E, C, G, E, F, B
Untuk grafik ini, kedalaman lebih yang ditambahkan, dua siklus "ABFE" dan "AEFB" hanya akan mendapatkan lagi sebelum algoritma menyerah dan mencoba cabang lain.

2. Pencarian Terbimbing (Heuristic Search)
yaitu terdapatnya informasi awal yang digunakan dalam proses pencarian. Pencarian buta (blind search) tidak selalu dapat diterapkan dengan baik, disebabkan karena waktu aksesnya yang cukup lama & besarnya memori yang diperlukan. Untuk masalah dengan ruang masalah yang besar, teknik pencarian buta (blind search) bukan teknik yang baik untuk digunakan karena keterbatasan kecepatan komputer dan memori.
Dengan adanya teknik heuristic search diharapkan bisa menyelesaikan permasalahan yang lebih besar. Fungsi dari teknik heuristic search menggunakan suatu fungsi yang menghitung biaya perkiraan (estimasi) dari suatu simpul tertentu menuju ke simpul tujuan. Contoh aplikasi yang menggunakan fungsi heuristic : Google, Deep Blue Chess Machine.
Ada empat jenis pencarian terbimbing (heuristic search) :

a. Pembangkitan dan pengujian (Generate and Test)
Teknik ini merupakan gabungan dari DFS dan pelacakan mundur (backtracking), yaitu bergerak ke belakang menuju pada suatu keadaan awal. Dimana nilai pengujian berupa jawaban “ya” atau “tidak”. Algoritmanya :
- Bangkitkan suatu kemungkinan solusi (membangkitkan suatu titik tertentu atau lintasan tertentu dari keadaan awal)
- Uji untuk melihat apakah node tersebut benar-benar merupakan solusinya dengan cara membandingkan node tersebut atau node akhir dari suatu lintasan yang dipilih dengan kumpulan tujuan yang diharapkan
- Jika solusi ditemukan, keluar dan jika tidak, ulangi lagi langkah pertama
Salah satu kelemahan teknik Generate and Test adalah perlu membangkitkan semua kemungkinan sebelum dilakukan pengujian, sehingga membutuhkan waktu yang cukup besar dalam pencariannya.
Contoh:
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 Generate and Test


b. Pendakian Bukit (Hill Climbing)
Hampir sama dengan teknik Generate and Test dimana roses pengujian dilakukan dengan menggunakan fungsiheuristic. Pembangkitan keadaan berikutnya sangat tergantung pada feedback dari prosedur pengetesan. Tes yang berupa fungsi heuristic ini akan menunjukkan seberapa baik nilai terkaan yang diambil terhadap kesalahan-kesalahan lainnya yang mungkin. Teknik-teknik pada Hill Climbing :

1. Teknik simple hill climbing
Algoritma akan berhenti kalau mencapai nilai optimum lokal. Urutan penggunaan operator akan sangat berpengaruh pada penemuan solusi. Tidak diijinkan untuk melihat satupun langkah selanjutnya.
2. Teknik steepest – ascent hill climbing
Hampir sama dengan simple hill climbing, hanya saja gerakan pencarian tidak dimulai dari paling kiri. Gerakan selanjutnya dicari berdasarkan nilaiheuristic terbaik.
Contoh :
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


Sumber : http://yoosinhay.blogspot.co.id/2011/03/teknik-pencarian-perancangan.html
http://yoursknowladge.blogspot.co.id/2015/04/makalah-algoritma-breadth-first-search.html
http://jidun12ispcom.blogspot.co.id/2010/04/depth-first-search.html
http://choirulkahfi97.blogspot.co.id/2017/12/definsi-dan-contoh-metode-pencarian.html
https://www.slideshare.net/ahmadhaidaroh/modul-3-pencarian-heuristik

Thursday, 23 November 2017

Representasi Pengetahuan

1. Unifikasi dan Runut Balik

1.1 Unifikasi
Unifikasi adalah proses yang dilakukan oleh prolog untuk mencari padanan antara pernyataan yang terdapat pada aturan dengan fakta atau kepala aturan yang lain.

Syarat terjadinya unifikasi adalah:
§ Mempunyai relasi yang sama
§ Mempunyai jumlah argumen yang sama dan posisi argumen yang sama pula
§ Argumen yang berpadanan harus mempunyai jenis data yang sama
§ Semua pasangan argumen (pada data majemuk) harus juga berpadanan

1.2 Proses Pencarian Jawaban

GOAL : kakek(Kakek,budi).

Kakek(Kakek,budi) – kakek(Kakek,Cucu)

ayah(Ayah,Cucu) – ayah(Ayah,budi)

ayah(Ayah,budi) – ayah(amin,budi)

ayah(Kakek,Ayah) – ayah(Kakek,amin)

ayah(Kakek,amin) – ayah(slamet,amin)

kakek(Kakek,budi) – kakek(slamet,budi)

Kakek = slamet

1.3 Predikat Not

Predikat Not digunakan untuk menyatakan lawan logika dari suatu pernyataan. Predikat ini tidak dapat berdiri sendiri juga tidak dapat dipasangkan pada fakta atau kepala suatu aturan, tetapi hanya dapat dipasangkan pada bagian suatu aturan

Contoh : menyatakan saudara sepupu
Saudara_sepupu(Sdr1,Sdr2) :- kakek(Kakek,Sdr1), kakek(Kakek,Sdr2), not(saudara_kandung(Sdr1,Sdr2)), Sdr1 <> Sdr2.

2. Predikat keluaran & Masukan

·        Write
Write digunakan untuk menuliskan konstanta atau isi variabel ke piranti keluaran yang dikenali pada saat itu.
write(E1,E2,E3,…,En) – (i,i,i,…,i). E1,E2,E3,…En adalah konstanta (karakter atau string) atau variable
Contoh :
Tes :- Write(“Saya sedang belajar Turbo Prolog.”), write(“Teman saya belajar Basic”)
Output :
Saya sedang belajar Turbo Prolog.Teman saya belajar Basic

·        Writef
Writef mempunyai fungsi yang hampir sama dengan predikat write, hanya hasilnya mempunyai format seperti yang diinginkan.
writef(format,E1,E2,…,En) – (i,i,…,i)

Macam-macam format :
f : format bilangan real dalam notasi desimal
e : format bilangan real dalam notasi eksponensial
d : format karakter atau bilangan bulat dalam desimal
c : format karakter atau bilangan bulat sebagai karakter

·        Writedevice
Writedevice digunakan untuk mengubah atau mendapatkan informasi tentang piranti keluaran yang dikenali oleh program pada saat itu.
writedevice(VarPiranti) – (i), (o)
Macam-macam piranti keluaran :
• Screen
• Printer
• Com1
• Tdout
• Stderr

·        Readln
Digunakan untuk membaca sederetan karakter dari piranti masukan sampai ditemukan tanda carriage return (ASCII 13). Karakter yang dibaca akan ditampilkan di layar monitor.

·        Readchar
Digunakan untuk membaca karakter tunggal dari piranti masukan (tanpa perlu enter). Berbeda dengan readln, untuk readchar karakter yang dibaca tidak ditampilkan di layar monitor.

·        Readint
Readint digunakan untuk membaca bilangan bulat sampai tombol Enter. Akan gagal apabila bilangan bulat yang dibaca tidak sesuai dengan yang sudah didefinisikan.
·        Readreal
Digunakan untuk membaca bilangan real sampai tombol Enter.

·        Readdevice
Digunakan untuk mengubah atau meminta informasi tentang piranti masukan yang saat itu dikenal

3. Perbandingan Operator

3.2 Perbandingan
Operator perbandingan berfungsi untuk membandingkan nilai suatu variable terkat atau suatu objek. Variable atau objek yang dibandingkan disebut operand. Kedua operand yang dibandingkan haruslah sudah terikat dengan nilai tertentu (baik variable maupun objek), kecuali operator sama dengan.

3.3 Operasi Aritmatika
Pernyataan aritmatika terdiri dari operand (bilangan atau variable), operator dan tanda kurung (bila diperlukan).

Ada 6 buah operator aritmatika, yaitu:
+        : Operator Penjumlahan
-        : Operator Pengurangan
*        : Operator Perkalian
/         : Operator Pembagian
Div    : Operator hasil bagi bulat
Mod   : Operator sisa hasil bagi

3.4 Fungsi Matematik
Disamping mempunyai kemampuan dalam perhitungan aritmatika, Prolog juga dilengkapi dengan predikat jadi yang merupakan fungsi matematika (fungsi aljabar, trigonometri, logaritma).
Fungsi-fungsi tersebut dapat dilihat pada table berikut ini :

Referensi : http://ayu_ws.staff.gunadarma.ac.id ( Pasangan Pola )

Sunday, 12 November 2017

Sistem Pakar - Pengertian, Sejarah dan Pembahasannya


  • Pengertian Sistem Pakar
      Sistem pakar (dalam bahasa Inggris :expert system) adalah sistem informasi yang berisi dengan pengetahuan dari pakar sehingga dapat digunakan untuk konsultasi. 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. 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 adalah 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.

  • Sejarah Sistem Pakar
        Expert System (ES) dikembangkan pada pertengahan tahun 1960-an oleh Artificial Intelligence Corporation. Periode penelitian artificial intelligence ini didominasi oleh suatu keyakinan bahwa nalar yang digabungkan dengan komputer canggih akan menghasilkan prestasi pakar atau manusia super. Suatu usaha kearah ini adalah General Purpose Problem-Solver (GPS). GPS yang berupa sebuah prosedur yang dikembangkan Allen Newell, John Cliff Show dan Herbert Alexander Simon dari Logic Theorist, merupakan sebuah percobaan untuk menciptakan mesin yang cerdas. GPS sendiri merupakan sebuah Predecessor menuju Expert System (ES). GPS berusaha untuk menyusun langkah – langkah yang dibutuhkan untuk mengubah situasi awal menjadi state tujuan yang telah ditentukan sebelumnya.
      Pada pertengahan tahun 1960-an, terjadi pergantian dari program serba bisa (general-purpose) ke program yang spesialis (special-purpose) dengan dikembangkannya DENDRAL oleh E.Feigenbaum dari Universitas Stanford dan kemudian diikuti oleh MYCIN. Problem yang kompleks membutuhkan pengetahuan yang banyak sekali tentang area problem. Pada tertengan tahun 1970-an, beberapa ES mulai muncul, sebuah pengetahuan kunci yang dipelajari saat itu adalah kekuatan dari ES berasal dari pengetahuan spesifik yang dimilikinya bukan dari formalism khusus dan pola penarikan kesimpulan yang digunakan.
      Awal 1980-an teknologi ES yang mula – mula dibatasi oleh suasana akademis mulai muncul sebagai aplikasi komersial, khususnya XCON, XSEL (dikembangkan dari R-1 pada Digital Equipment Corp) dan CATS-1 (dikembangkan oleh General Electric). Sistem Pakar untuk untuk melakukan diagnosis pertama dibuat oleh Bruce Buchanan dan Edward Shortliffe di STANFORD UNIVERSITY. Sistem ini diberinama MYCIN (Heckerman, 1986).

Sistem pakar yang terkenal antara lain:
MYCIN
• Paling terkenal, dibuat oleh Edward Shortlife of Standford University tahun 70-an
• Sistem pakar medical yang bisa mendiagnosa penyakit infeksi dan merekomendasi pengobatan
• MYCIN membantu dokter mengidentifikasi pasien yang menderita penyakit. Dokter duduk di depan komputer dan memasukkan data pasien: umur, riwayat kesehatan, hasil laboratorium dan informasi terkait lainnya. Dengan informasi ini ditambah pengetahuan yang sudah ada dalam komputer, MYCIN mendiagnosa selanjutnya merekomendasi obat dan dosis yang harus dimakan.
• MYCIN sebagai penasehat medis, tidak dimaksudkan untuk mengantikan kedudukan seorang dokter. Tetapi membantu dokter yang belum berpengalaman dalam penyakit tertentu. Juga untuk membantu dokter dalam mengkonfirmasi diagnosa dan terapi yang diberikan kepada pasien apakah sesuai dengan diagnosa dan terapi yang ada dalam basis pengetahuan yang sudah dimasukkan ke dalam MYCIN, karena MYCIN dirancang oleh dokter-dokter yang ahli di bidang penyakit tersebut.
• Kesimpulan : sistem pakar seperti MYCIN bisa digunakan sebagai bahan pembanding dalam pengambilan solusi dan pemecahan masalah. Keputusan terakhir atas pengobatan tersebut tetap menjadi tanggung jawab dokter.

DENDRAL
Mengidentifikasi struktur molekular campuran kimia yang tak dikenal XCON & XSEL

XCON
• Merupakan sistem pakar untuk membantu konfigurasi sistem komputer besar, membantu melayani order langganan sistem komputer DEC VAX 11/780 ke dalam sistem spesifikasi final yang lengkap
• Komputer besar seperti VAX dan komponen yang berbeda digabung dan disesuaikan dengan konfigurasi tertentu yang diinginkan oleh para pelanggan.
• Ada ribuan cara dimana aseosri Pcboard, kabel, disk drive, periperal, perangkat lunak, dan lainnya bisa dirakit ke dalam konfigurasi yang sangat rapih. Untuk meng-identifikasi hal-hal tersebut diperlukan waktu berhari-hari/berminggu-minggu agar bisa memenuhi spesifikasi yang diinginkan pemesan, tapi dengan XCON bisa dalam beberapa menit.

XSEL
• Dirancang untuk membantu karyawan bagian penjualan dalam memilih komponen sistem VAX. Karena banyaknya pilihan karyawan tersebut sering menghadapi kesulitan dalam memilih suatu komponen yang paling tepat.
• Basis pengetahuan yang ada pada XSEL membantu mengarahkan para pemesan serius untuk memilih konfigurasi yang dikehendaki, kemudian XSEL memilih CPU, memori, periperal dan menyarankan paket software tertentu yang paling tepat dengan konfigurasinya.

PROSPECTOR
• = sistem pakar yang membantu ahli geologi dalam mencari dan menemukan deposit
• Basis pengetahuan berisi bermacam-macam mineral dan batu-batuan. Banyak pakar geologi diwawancarai dan pengetahuan mereka tentang berbagai bentuk biji deposit dimasukkan ke dalam sistem pakar.
• Ahli geologi melacak biji deposit dengan pergi ke lapangan untuk meninjau medan dan mengumpulkan bukti yang ada seperti ciri-ciri geologi dicatat, sampel tanah dan batu-batuan. Sistem pakar mengevaluasi areal dalam bentuk pertanyaan dan data-data tersebut dimasukkan, kemudian Prospector memberikan rekomendasi yang menunjukkan jumlah deposit yang ada dan apakah menguntungkan atau tidak bila dieksplorasi atau di bor lebih lanjut.

DELTA
• Dibuat oleh perusahaan General Electric (GE) membantu karyawan bagian pemeliharaan mesin lokomotif diesel dalam memantau mesin-mesin yang tidak berfungsi dengan baik dan membimbing ke arah prosedur perbaikan.

FOLIO
• Sistem pakar yang menolong stock broker dan tugas manajer dalam menangani investasi bagi kepentingan para langganannya. Stock broker mewawancarai langganan untuk menentukan tujuan sumber dan investasi mereka.
• FOLIO bisa memberikan rekomendasi tentang keamanan investasi, mengevaluasi stock beresiko tinggi,menghitung pengembalian modal, dan membuat keputusan dalam hal pemasaran suatu komoditi.
• Membantu para perencana keuangan untuk memperkecil kerugian karena pajak, inflasi atau faktor lain misal turun naiknya nilai mata uang.


ELECTRONIC LAYER.
• Digunakan untuk menganalisa dan membantu rekayasa rancangan sirkuit elektronik yang terbuat dari transistor, dioda dan resistor.
• Diagram skematik dari sirkuit ini dimasukkan ke dalam komputer dan EL menganalisis menentukan karakteristik sirkuit, nilai voltase, dan strum yang ada pada semua titik sirkuit.
• Basis pengetahuan pada EL merupakan prinsip umum elektronik seperti hukum OHM, hukum kirchoff, karakteris-tik komponen, teori operasi transistor.

RAMALAN CUACA
Dengan diberi input tentang situasi cuaca yang sedang berlangsung, baik lokal maupun ditempat lain, maka sistem pakar bisa menyajikan ramalan yang akurat tentang cuaca yang akan terjadi dalam suatu periode tertentu.

  • Struktur Sistem Pakar
Komponen utama pada struktur sistem pakar (Hu et al, 1987) meliputi:
1. Basis Pengetahuan (Knowledge Base)
       Basis pengetahuan merupakan inti dari suatu sistem pakar, yaitu berupa representasi pengetahuan dari pakar. Basis pengetahuan tersusun atas fakta dan kaidah. Fakta adalah informasi tentang objek, peristiwa, atau situasi. Kaidah adalah cara untuk membangkitkan suatu fakta baru dari fakta yang sudah diketahui. Menurut Gondran (1986) dalam Utami (2002), basis pengetahuan merupakan representasi dari seorang pakar, yang kemudian dapat dimasukkan kedalam bahasa pemrograman khusus untuk kecerdasan buatan (misalnya PROLOG atau LISP) atau shell sistem pakar (misalnya EXSYS, PC-PLUS, CRYSTAL, dsb.)

2. Mesin Inferensi (Inference Engine)
      Mesin inferensi berperan sebagai otak dari sistem pakar. Mesin inferensi berfungsi untuk memandu proses penalaran terhadap suatu kondisi, berdasarkan pada basis pengetahuan yang tersedia. Di dalam mesin inferensi terjadi proses untuk memanipulasi dan mengarahkan kaidah, model, dan fakta yang disimpan dalam basis pengetahuan dalam rangka mencapai solusi atau kesimpulan. Dalam prosesnya, mesin inferensi menggunakan strategi penalaran dan strategi pengendalian.
Strategi penalaran terdiri dari strategi penalaran pasti (Exact Reasoning) dan strategi penalaran tak pasti (Inexact Reasoning). Exact reasoning akan dilakukan jika semua data yang dibutuhkan untuk menarik suatu kesimpulan tersedia, sedangkan inexact reasoning dilakukan pada keadaan sebaliknya.
Strategi pengendalian berfungsi sebagai panduan arah dalam melakukan prose penalaran. Terdapat tiga tehnik pengendalian yang sering digunakan, yaitu forward chaining, backward chaining, dan gabungan dari kedua tehnik pengendalian tersebut.

3. Basis Data (Database)
      Basis data terdiri atas semua fakta yang diperlukan, dimana fakta-fakta tersebut digunakan untuk memenuhi kondisi dari kaidah-kaidah dalam sistem. Basis data menyimpan semua fakta, baik fakta awal pada saat sistem mulai beroperasi, maupun fakta-fakta yang diperoleh pada saat proses penarikan kesimpulan sedang dilaksanakan. Basis data digunakan untuk menyimpan data hasil observasi dan data lain yang dibutuhkan selama pemrosesan.

4. Antarmuka Pemakai (User Interface)
        Fasilitas ini digunakan sebagai perantara komunikasi antara pemakai dengan sistem. Hubungan antar komponen penyusun struktur sistem pakar dapat dilihat pada Gambar di bawah ini :

  • 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 se-bagai 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

  • Area Permasalahan Aplikasi Sistem Pakar
1. Interpretasi
Yaitu pengambilan keputusan dari hasil observasi, diantaranya : pengawasan, pengenalan ucapan, analisis citra, interpretasi sinyal, dan beberapa analisis kecerdasan.
2. Prediksi
Memprediksi akibat-akibat yang dimungkinkan dari situasi-situasi tertentu, diantaranya : peramalan, prediksi demografis, peralaman ekonomi, prediksi lalulintas, estimasi hasil, militer, pemasaran, atau peramalan keuangan.
3. Diagnosis
Menentukan sebab malfungsi dalam situasi kompleks yang didasarkan pada gejala-gejala yang teramati, diantaranya : medis, elektronis, mekanis, dan diagnosis perangkat lunak
4. Desain
Menentukan konfigurasi komponen-komponen sistem yang cocok dengan tujuan-tujuan kinerja tertentu dan kendala-kendala tertentu, diantaranya : layout sirkuit, perancangan bangunan
5. Perencanaan
Merencanakan serangkaian tindakan yang akan dapat mencapai sejumlah tujuan dengan kondisi awal tertentu, diantaranya : perencanaan keuangan, komunikasi, militer, pengembangan politik, routing dan manajemen proyek.
6. Monitoring
Membandingkan tingkah laku suatu sistem yang teramati dengan tingkah laku yang diharapkan darinya, diantara-nya : Computer Aided Monitoring System
7. Debugging dan repair
Menentukan dan mengimplementasikan cara-cara untuk mengatasi malfungsi, diantaranya memberikan resep obat terhadap suatu kegagalan.
8. Instruksi
Melakukan instruksi untuk diagnosis, debugging dan per-baikan kinerja.
9. Kontrol
Mengatur tingkah laku suatu environment yang kompleks seperti kontrol terhadap interpretasiinterpretasi, prediksi, perbaikan, dan monitoring kelakuan sistem
10. Seleksi
Mengidentifikasi pilihan terbaik dari sekumpulan (list) kemungkinan.
11. Simulasi
Pemodelan interaksi antara komponen-komponen sistem.



KESIMPULAN

Jadi dapat disimpulkan bahwa, sistem pakar dapat digunakan oleh:
· Orang awam yang bukan pakar untuk meningkatkan kemampuan mereka dalam memecahkan masalah.
· Pakar sebagai asisten yang berpengetahuan.
· Memperbanyak atau menyebarkan sumber pengetahuan yang semakin langka.
Sistem pakar merupakan program yang dapat menggantikan keberadaan seorang pakar. Alasan mendasar mengenai sistem pakar dikembangkan untuk menggantikan seorang pakar :
· Dapat menyediakan kepakaran setiap waktu dan diberbagai lokasi.
· Secara otomatis mengerjakan tugas – tugas rutin yang membutuhkan seorang pakar.
· Seorang pakar akan pensiun atau pergi.
· Menghadirkan / menggunakan jasa seorang pakar memerlukan biaya yang mahal.
· Kepakaran dibutuhkan juga pada lingkungan yang tidak bersahabat (hostile environtment).

Ciri – Ciri Sistem Pakar
· Terbatas pada bidang yang spesifik.
· Dapat memberikan penalaran untuk data – data yang tidak lengkap atau tidak pasti.
· Dapat mengemukakan rangkaian alasan yang diberikannya dengan cara yang dapat dipahami.
· Berdasarkan pada Rule atau kaidah tertentu.
· Dirancang untuk dapat dikembangkan secara bertahap.
· Outputnya bersifat nasihat atau anjuran.
· Output tergantung dari dialog dengan user.
· Knowledge base dan interference engine terpisah.

Keuntungan Pemakaian Sistem Pakar
· Membuat seorang yang awam dapat bekerja seperti layaknya seorang pakar.
· Dapat bekerja dengan informasi yang tidak lengkap atau tidak pasti.
· Meningkatkan output dan produktifitas. ES dapat bekerja lebih cepat dari manusia. Keuntungan ini berarti mengurangi jumlah pekerja yang dibutuhkan, dan akhirnya akan mereduksi biaya.
· Meningkatkan kualitas.
· ES menyediakan nasihat yang konsisten dan dapat mengurangi tingkat kesalahan.
· Membuat peralatan yang kompleks lebih mudah dioperasikan karena ES dapat melatih pekerja yang tidak berpengalaman.
· Handal (reliability)
· ES tidak dapat lelah atau bosan. Juga konsisten dalam member jawaban dan selalu memberikan perhatian penuh.
· Memiliki kemampuan untuk memecahkan masalah yang kompleks.
· Memungkinkan pemindahan pengetahuan ke lokasi yang jauh serta memperluas jangkauan seorang pakar, dapat diperoleh dan dipakai dimana saja. Merupakan arsip yang terpercaya dari sebuah keahlian sehingga user seolah-olah berkonsultasi langsung dengan sang pakar meskipun mungkin sang pakar sudah pensiun.

Kerugian Pemakaian Sistem Pakar
Selain banyak manfaat yang diperoleh, ada juga kelemahan pengembangan sistem pakar, yaitu:
· Daya kerja dan produktivitas manusia menjadi berkurang karena semuanya dilakukan secara otomatis oleh sistem.
· Pengembangan perangkat lunak sistem pakar lebih sulit dibandingkan dengan perangkat lunak lainya.
· Biaya yang diperlukan untuk membuat dan memeliharanya relatif mahal karena diperlukan banyak data.
· Perlu admin khusus yang selalu update informasi dalam bidang yang sesuai dengan sistem pakar.
· Pengembangan perangkat lunak sistem pakar lebih sulit dibandingkan perangkat lunak konvensional.
· Susah di kembangkan.
· Membutuhkan waktu yang lama.

DAFTAR PUSTAKA

Setiawan, Agung Budi (2014). Sistem Pakar. Bandung
Arhami, Muhammad. (2004). Konsep Dasar Sistem Pakar. Andi. Yogyakarta.
Farid Azis, M, (1994), Belajar sendiri pemrograman sistem pakar, Elexmedia Komputindo, Jakarta, 3-48.
Jogiyanto HM,Akt MBA.(2005). Analisis dan desain Sistem Informasi: pendekatan terstruktur teori dan praktek aplikasi bisnis ,Andi,Yogyakarta.
Rusell Stuart J, Norvig Peter. 1995: “Artificial Intelligence A Modern Approach”. Prentice-Hall International Edition, New Jersey.
Suparman, 1991: Mengenal Artificial Intelegence, Andi Offset, Yogyakarta.

Monday, 30 October 2017

Program Menggambar Garis Menggunakan Java NetBeans

Bismillahirrahmanirrahim,
Assalamualaikum Warahmatullahi Wabarakatuh.

Program ini saya buat menggunakan aplikasi Java NetBeans IDE 8.2, logika pada program ini saya jelaskan pada program melalu sebuah teks komentar pada program tersebut. Logika tersebut tertera sebelum code-nya.
Logika ini saya buat berdasarkan pengetahuan yang saya miliki, mohon maaf apabila terdapat kesalahan pada logika.
Berikut juga terdapat sebuah user guide, yaitu adalah penjelasan mengenai bagaimana cara kerja program tersebut. semua sudah dijelaskan secara lengkap pada sebuah makalah yang saya buat berdasarkan tugas yang diamanatkan kepada saya untuk membuat sebuah program membuat sebuah garis horizontal, vertikal dan diagonal.

Terdapat 4 class dalam program ini yaitu :
a. Menu_utama ( Menu Utama )
b. Horizontal ( Garis Horizontal )
c. Vertikal ( Garis Vertikal )
d. Diagonal ( Garis Diagonal )

Berikut link pdf-nya  melalui google drive : PDF
Direct link download : DOWNLOAD PDF

Semoga dapat membantu dan bermanfaat.
Terimakasih
Wassalamualaikum Warahmatullahi Wabarakatuh

Wednesday, 18 October 2017

Pengenalan Intelegent Agents dan konsep serta contohnya

Pengenalan Intelegent Agents

A. Definisi Agent & Konsep Agent serta contohnya
Agents adalah segala sesuatu yang dapat melihat/ mengartikan/ mengetahui (perceiving) linkungannya melalui alat sensor (sensors) dan bertindak (acting) melalui alat aktuator (actuators)untuk efektor

B. Konsep Agents
1) Rational Agent
  • a. Rational agent adalah suatu agent yang selalu bertindak memaksimalkan ukuran kinerja, mengingat apa yang ia amati tentang lingkungan (sejarah input) dan pengetahuan lain yang dimilikinya.
    b. Rational tidak berarti sempurna: ada aspek lingkungan yang tidak diketahui, di luar kendali.
    c. Terkadang agent bermulai tanpa pengetahuan lingkungan → exploration, learning, autonomy.
2) Task Environment
Ketika merancang sebuah agent, kita harus mendefinisikan lingkungan masalah (task environment), yakni :
a. Performance measure: apa saja yang menjadi ukuran kinerja agent?
b. Environment: di manakah agent berperan?
c. Actuators: apa saja yang bisa dilakukan si agent?
d. Sensors: apa saja yang menjadi perantara input untuk agent?
e. PEAS

3) Struktur sebuah agent
  • a. Agent function
  • b. Sebuah fungsi yang memetakan sejarah input (percept sequence) terhadap tindakan yang dilakukan (action)
  • c. f : P* → A
  • d. Agent program
  • e. Sebuah program yang mengimplementasikan fungsi f di atas arsitektur
  • f. Agent = Arsitektur + Program
  • g. Agent program menerima input percept terakhir (*mungkin* ia menyimpan percept sequence di dalam memory-nya)
C. Contoh Agent
1. Taksi Otomatis merupakan Sebuah agent taksi otomatis yang menerima penumpang dan mengantarkannya ke tujuan :
• Performance measure: sampai tujuan, tidak melanggar aturan lalu lintas, perjalanan nyaman, hemat bensin
• Environment: jalan, lalu lintas, pejalan kaki, pelanggan
• Actuators: arah stir, gas, rem, klakson, sinyal kiri atau kanan
• Sensors: video, speedometer, GPS, keyboard
2. Medical Diagnosis System merupakan Sebuah agent Medical diagnosis system yang mendiagnosa pasien secara otomatis
• Performance measure: pasien sembuh, biya murah, tidak menyalahi hukum
• Environment: pasien, rumah sakit, suster, dokter
• Actuators: layar monitor (pertanyaan, tes, diagnosa, treatment, petunjuk

Definisi PEAS ( Perfomance Measure, Environment, Actuators, Sensor )

2. Definisi PEAS ( Perfomance Measure, Environment, Actuators, Sensor )

PEAS adalah singkatan dari Perfomance Measurement,Environment, Actuator, Sensor.
Berikut ini definisi dari PEAS :


  • Performance Measurement/Pengukuran Kinerja adalah suatu proses penilaian kemajuan pekerjaan terhadap tujuan dan sasaran yang telah ditentukan sebelumnya. 

  • Environment/Lingkungan adalah hal yang mencakup sumber daya yang terdapat didalamnya. 
  • Actuator/Aktuator adalah sebuah peralatan mekanis untuk menggerakkan atau mengontrol sebuah mekanisme atau sistem. 
  • Sensor adalah tiruan dari indra pada makhluk hidup yang digunakan untuk merespon lingkungan sekitar.
Contoh PEAS :

1. Taksi Otomatis merupakan Sebuah agent taksi otomatis yang menerima penumpang dan mengantarkannya ke tujuan :
• Performance measure: sampai tujuan, tidak melanggar aturan lalu lintas, perjalanan nyaman, hemat bensin
• Environment: jalan, lalu lintas, pejalan kaki, pelanggan
• Actuators: arah stir, gas, rem, klakson, sinyal kiri atau kanan
• Sensors: video, speedometer, GPS, keyboard

2. Medical Diagnosis System merupakan Sebuah agent Medical diagnosis system yang mendiagnosa pasien secara otomatis
• Performance measure: pasien sembuh, biya murah, tidak menyalahi hukum
• Environment: pasien, rumah sakit, suster, dokter
• Actuators: layar monitor (pertanyaan, tes, diagnosa, treatment, petunjuk
• Sensors: keyboard (masukan gejala penyakit, jawaban pasien)
Sumber :

Tuesday, 26 September 2017

Kecerdasan Buatan ( AI ) : Sejarah, Definisi dan Contohnya

Sejarah Artificial Intelligence

Istilah AI pertama kali dikemukakan pada tahun 1956 di Konferensi Darthmouth. Sejak saat itu, AI terus dikembangkan sebab berbagai penelitian mengenai teori-teori dan prinsip-prinsipnya juga terus berkembang. Meskipun istilah AI baru muncul tahun 1956, tetapi teori-teori yan gmengarah ke AI sudah muncul sejak tahun 1941. Berikut tahapan-tahapan sejarah perkembangan AI :
· Era Komputer Elektronik (1941)
Pada tahun 1941 telah ditemukan alat penyimpanan dan pemrosesan informasi.
· Masa Persiapan AI (1943 – 1956)
Pada tahun 1943, Warren McCulloch dan Walter Pitt mengemukakan tiga hal : pengetahuan fisiologi dasar dan fungsi sel syaraf dalam otak, analisa formal tentang logika proposisi, dan teori komputasi Turing. Mereka berhasil membuat suatu model yaitu sel syaraf tiruan
· Awal Perkembangan AI (1952 – 1969)
Pada tahun-tahun pertama perkembangannya, AI mengalami banyak kesuksesan. Diawali dengan kesuksesan Newell dan Simon dengan ssebuah program yang disebut General Problem Solver. Program ini dirancang untuk memulai penyelesaian masalah secara manusiawi.
· Perkembangan AI Melambat (1966 – 1974)
1.Perkembangan AI melambat disebabkan adanya 3 kesulitan utama yang dihadapi AI, yaitu :
Program-program AI yang bermunculan hanya mengandung sedikit atau bahkan tidak mengandung sama sekali pengetahuan (knowledge) pada subjeknya.
2.Banyak masalah yang harus diselesaikan oleh AI.
3.Ada beberapa batasan pada struktur dasar yang digunakan untuk menghasilkan perilakU intelijensia.
· Sistem Berbasis Pengetahuan (1969 – 1979)
Pengetahuan adalah kekuatan pendukung AI.
Contoh : Dendral Programs yang berfokus pada segi pengetahuan kimia.
Feingenbaum, Bruce Buchanan dan Joshua Lederberg yang membuat program Computer in Biomedicine Proyek ini diawali keinginan untuk mendapatkan diagnose penyakit berdasarkan pengetahuan yang ada pada mekanisme penyebab proses penyakit.
· AI Menjadi Sebuah Industri (1980 – 1988)
Industrialisasi AI diawali dengan ditemukannya system pakar yang dinamakan R1 yang mampu mengkonfigurasi system-sistem computer baru. Program tersebut mulai dioperasikan di Digital Equipment Corporation (DEC), McDermott, pada tahun 1982.
· Kembalinya Jaringan Syaraf Tiruan (1986 – sekarang)
Para ahli fisika seperti Hopfield (1982) menggunakan teknik-teknik mekanika statistika untuk menganalisa sifat-sifat pentimpanan dan optimasi pada jaringan syaraf. Para ahli psikologi, David Rumelhart dan Geoff Hinton, melanjutkan penelitian mengenai model jaringan syaraf tiruan pada memori
Pada tahun 1985-an setidaknya empat kelompok riset menemukan kembali algoritma belajar propagasi balik (Black-Propagation Learning). Algoritma ini berhasil diimplementasikan ke dalam bidang ilmu computer dan psikologi.
Definisi AI

AI merupakan proses di mana peralatan mekanik dapat melaksanakan kejadian-kejadian dengan menggunakan pemikiran atau kecerdas seperti manusia.
Pengertian AI dapat ditinjau deri dua pendekatan :
  1. Pendekatan Ilmiah (A Scientific Apprah) : Pendekatan dasar ilmiah timbul sebelum invansi ke komputer, ini tidak sama dengan kasus mesin uap. Pendekatan ilmiah melihat batas sementara dari komputer, dan dapat diatasi dengan perkembangan teknologi lanjutan. Mereka tidak mengakibatkan tingkatan pada konsep.
  2. Pendekatan Teknik (An Engineering Apprach) : Usaha untuk mengindari definsi AI, tetapi ingin mengatasi atau memecahkan persoalan-persoalan dunia nyata (real wordl problem).
Apa itu Kecerdasan Tiruan (AI) ?
AI dapat membuat sebuah sistem komputer berpikir seperti manusia dan sistem komputer dapat berpikir secara rasional (masuk akal). AI dapat membuat sistem komputer bertingkah laku seperti manusia dan sistem komputer dapat bertingkah laku seperti manusia dan sistem komputer dapat bertingkah laku yang diterima logika/masuk akal kita.

Contoh Penerapan Kecerdasan buatan (AI)

1. Natural Language Processing (NLP)
NLP mempelajari bagaimana bahasa alami itu diolah sedemikian hingga user dapat berkomunikasi dengan komputer. Konsentrasi ilmu ini adalah interaksi antara komputer dengan bahasa natural yang digunakan manusia, yakni bagaimana komputer melakukan ekstraksi informasi dari input yang berupa natural language dan atau menghasilkan output yang juga berupa natural language, misalnya pada system Automated online assistant seperti gambar 1.1 dan deteksi email spam yang cerdas .

Gambar 1.1 Penerapan NLP pada automated online asistant berbasis web

2. Computer Vision
Cabang ilmu ini erat kaitannya dengan pembangunan arti/makna dari image ke obyek secara fisik. Yang dibutuhkan didalamnya adalah metode-metode untuk memperoleh, melakukan proses, menganalisa dan memahami image. Apabila cabang ilmu ini dikombinasikan dengan Artificial Intelligence secara umum akan mampu menghasilkan sebuah visual intelligence system. Akuisisi dan pemrosesan informasi berupa vision dapat ditampilkan pada gambar 1.2

Gambar 1.2 Model persepsi visual pada computer vision

Gambar 1.3 Contoh penerapan computer vision untuk identifikasi wajah

3. Robotika dan Sistem Navigasi
Bidang ilmu inilah yang mempelajari bagaimana merancang robot yang berguna bagi industry dan mampu membantu manusia, bahkan yang nantinya bisa menggantikan fungsi manusia. Robot mampu melakukan beberapa task dengan berinteraksi dengan lingkungan sekitar. Untuk melakukan hal tersebut, robot diperlengkapi dengan actuator seperti lengan, roda, kaki, dll. Kemudian, robot juga diperlengkapi dengan sensor, yang memampukan mereka untuk menerima dan bereaksi terhadap environment mereka Al-Jajari (1136-1206) seorang ilmuwan Islam pada dinasti Artuqid yang dianggap pertama kali menciptakan robot humanoid dimana berfungsi sebagai 4 musisi, hebat kan? Bahkan pada tahun 1796 sudah dihasilkan boneka mekanik bernama Karakuri yang mampu menuangkan air teh atau menulis karakter Kanji yang dibuat oleh Hisashige Tanaka.

Gambar 1.4 Al-Jazari’s programmable automata (Tahun 1206 SM)

Gambar 1.5 Karakuri, rancangan robot dari Jepang adad 16 yang mampu menuang air teh

Ada beberapa istilah penting di dalam robot vision yang saling berhubungan, diantaranya computer vision, machine vision dan robot vision. Computer vision merupakan teknologi paling penting di masa yang akan datang dalam pengembangan robot yang interaktif. Computer Vision merupakan bidang pengetahuan yang berfokus pada bidang sistem kecerdasan buatan dan berhubungan dengan akuisisi dan pemrosesan image. Machine vision merupakan proses menerpakan teknologi untuk inspeksi automatis berbasis image, kontrol proses dan pemanduan robot pada berbagai aplikasi industri dan rumah tangga. Robot vision merupakan pengetahuan mengenai penerapan computer vision pada robot. Robot membutuhkan informasi vision untuk memutuskan aksi apa yang akan dilakukan. Penerapan saat ini vision pada robot antara lain sebagai alat bantu navigasi robot, mencari obyek yang diinginkan, inspeksi lingkungan dan lainnya. Vision pada robot menjadi sangat penting karena informasi yang diterima lebih detail dibanding hanya sensor jarak atau sensor lainnya. Misalnya dengan vision, robot dapat mengenal apakah obyek yang terdeteksi merupakan wajah orang atau bukan.

Gambar 1.6 Contoh Model visual perception pada robot

Contoh nyata model service robot berbasis vision ( vision-based service robot) yang dikembangkan penulis bernama Srikandi III yang menggunakan 2 buah kamera (stereo vision) seperti gambar di bawah, dimana robot dapat mengirimkan order pesanan minuman ke pelanggan:
 
                                                      (a)                                     (b)
Gambar 1.7 Contoh robotika berbasis kamera

Pada pengembangan selanjutnya, menanamkan kecerdasan buatan yang komplek pada robot sehingga mampu mengenal dan memahami suara manusia, perhatian terhadap berbagai gerak lawan bicara dan mampu memberikan response alami yang diberikan robot ke manusia merupakan tantangan ke depan untuk membangun robot masa depan.
4. Game Playing
Game biasanya memiliki karakter yang dikontrol oleh user, dan karakter lawan yang dikontrol oleh game itu sendiri. Dimana kita harus merancang aturan-aturan yang nantinya akan dikerjakan oleh karakter lawan. Game akan menjadi menarik apabila karakter lawan (non-player) bereaksi dengan baik terhadap apa yang dilakukan oleh player. Hal ini akan memancing penasaran user dan membuat game menarik untuk dimainkan. Tujuan intinya adalah membuat non-player memiliki strategi yang cerdas untuk mengalahkan player. Pada bidang ini, AI dibutuhkan, yaitu untuk merancang dan menghasilkan game yang fun serta antarmuka antara man-machine yang cerdas dan menarik untuk dimainkan.

Gambar 1.8 Games tingkat lanjut yang menerapkan AI

5. Sistem Pakar
Bidang ilmu ini mempelajari bagaimana membangun sistem atau komputer yang memiliki keahlian untuk memecahkan masalah dan menggunakan penalaran dengan meniru atau mengadopsi keahlian yang dimiliki oleh pakar. Dengan sistem ini, permasalahan yang seharusnya hanya bisa diselesaikan oleh para pakar/ahli, dapat diselesaikan oleh orang biasa/awam. Sedangkan, untuk para ahli, sistem pakar juga akan membantu aktivitas mereka sebagai asisten yang seolah-olah sudah mempunyai banyak pengalaman.

Gambar 1.9 Model Sistem Pakar

Menurut Turban, Sistem Pakar dapat ditampilkan dengan dua lingkungan, yaitu lingkungan pengembangan dan lingkungan konsultasi (runtime). Lingkungan pengembangan digunakan oleh ES builder untuk membangun komponen dan memasukkan pengetahuan ke dalam basis pengetahuan. Lingkungan konsultasi digunakan oleh user nonpakar untuk memperoleh pengetahuan dan nasihat pakar. Lingkungan ini dapat dipisahkan setelah sistem lengkap.

Sumber : 
http://najibzot.blogspot.co.id/p/kumpulan-film.html
https://rijalahmad.wordpress.com/2014/02/11/pengertian-dan-sejarah-dari-artificial-intelligence-ai/
http://blog.rumahproject.com/2016/11/27/contoh-penerapan-kecerdasan-buatan-ai-dalam-kehidupan/  


Friday, 16 June 2017

Service Level Agreement dan Operational Level Agreement


Service Level Agreement ( SLA )

Pengertian dan Cara Perhitungan SLA ( Service Level Agreement )
Bermula dari seringnya memberikan diskusi sharing baik kepada mahasiswa maupun kepada client ,dan hari ini mendapatkan permasalahan dari salah satu institusi pendidikan yang bermasalah dengan layanan Internet dari salah satu provider (saya ngak usah sebutkan yah providernya, nanti ada yang complain J), mengenai pemahaman SLA (Serive Level Agreement), akhirnya saya mencoba berbagi mengenai apa itu SLA dan bagaimana estimasi perkiraan hitungan dari restitusi (pengurangan pembayaran yang seharusnya kita bayarkan , nah masih bingung maksud kalimat ini , nanti saya akan jelaskan lebih banyak).

Definisi SLA
SLA singkatan dari Service Level Agreement atau jika diterjemahkan adalah, Perjanjian Tingkat Layanan , Pengertian SLA adalah bagian dari perjanjian layanan secara keseluruhan antara 2 dua entitas untuk peningkatan kinerja atau waktu pengiriman harus di perbaiki selama masa kontrak. Dua entitas tersebut biasanya dikenal sebagai penyedia layanan dan klien, dan dapat melibatkan perjanjian secara hukum karena melibatkan uang, atau kontrak lebih informal antara unit-unit bisnis internal.
SLA ini biasanya terdiri dari beberapa bagian yang mendefinisikan tanggung jawab berbagai pihak, dimana layanan tersebut bekerja dan memberikan garansi, dimana jaminan tersebut bagian dari SLA memilikitingkat harapan yang disepakati, tetapi dalam SLA mungkin terdapat tingkat ketersediaan, kemudahan layanan, kinerja, operasi atau tingkat spesifikasi untuk layanan itu sendiri. Selain itu, Perjanjian Tingkat Layanan akan menentukan target yang ideal, serta minimum yang dapat diterima.

Mengapa SLA dibutuhkan
SLA dibutuhkan jika dilihat dari sisi Penyedia layanan adalah sebagai jaminan atas service yang diberikan kepada klien, sehingga klien tersebut bisa puas atas layanan yang diberikan, dampak lain yang akan muncul dari sisi penyedia layanana adalah konsep pemasaran tradisional yaitu pemasaran dari mulut ke mulut , maksudnya adalah klien akan memberikan rekomendasi kepada temannya/ rekan lainnya bahwa layanan yang diberikan oleh penyedia tersebut bagus, sehingga berharap teman/ rekan lainnya mau berlangganan kepada provider/ penyedia layanan tersebut
Dari sisi Klien adalah menjamin aspek ketersedian (availability) informasi(kalau kita mengacu kepada konsep informasi yang berkualias, adalah mengacu kepada availability, accurate, Update). Sehingga pihak klien merasa terbantu dengan ketersediaan layanan yang diberikan oleh pihak provider, sehingga proses pengelolaan data/ informasi dengan pihak-pihak terkait (customer/ vendor) berjalan lancar & tidak terganggu karena layanan itu mati, bisa dibayangkan jika klien tersebut adalah sebuah institusi perbankan (dimana layanan yang dibutuhkan adalah 24 jam , dengan kata lain layanan internet nya tidak boleh down (mati), dan bisa dibayangkan juga jika layanan dari perbankan itu down (mati), akibatnya dari aspek pemasaran nasabahnya dari bank tersebut tidak akan percaya , sehingga dampak yang paling tragis adalah nasabah tersebut akan berpindah kepada layanan dari bank lain ?, begitupula layanan-layanan lainnya seperti Perguruan tinggi, yang nantinya akan berdampak kepada image yang kurang baik dari perguruan tinggi tersebut.

SLA sebagai layanan untuk Aplikasi Bisnis
Dengan mengetahui hal itu, diharapkan tingkat pelayanan dan juga tingkat minimum, pelanggan dapat menggunakan layanan dengan maksimal. Hal ini juga sangat membantu jika klien adalah perantara, yang menjual kembali atau bundling dengan pelayanan yang lebih besar yang sedang dijual. SLA telah digunakan sejak awal 1980-an oleh perusahaan telepon dengan pelanggan dan reseller yang lebih besar perusahaannya dengan pelayanan mereka. Konsep “tertangkap” dari bisnis unit dan usaha lainnya dalam perusahaan besar mulai menggunakan istilah dan pengaturan yang ideal dalam awal kontrak layanan telekomunikasi.
Ide menciptakan sebuah layanan yang lebih besar dari layanan yang lebih kecil hampir membutuhkan SLA dari penyedia jasa. Misalnya, untuk memiliki cakupan ponsel nasional, Anda tidak perlu untuk membangun menara dan antena di seluruh kota. Sebaliknya, Anda bisa menemukan perusahaan lokal dan daerah yang menawarkan layanan yang sama, menulis tentang SLA dan mengukur hasilnya. Untuk pelanggan anda, anda akan menawarkan SLA yang sama. Dalam SLA asli tidak memerlukan perusahaan dari mana anda membeli, dan anda dapat mengontrol biaya anda, ketika pelanggan mematuhi SLA yang anda buat dengan mereka. Hal ini memberikan kemampuan bagi Perusahaan untuk menggunakan banyak sub kontraktor untuk menyediakan pelayanan yang lebih besar, namun mengendalikan biaya dan sumber daya untuk menawarkan produk yang lebih besar.
Penggunaan SLA tidak terbatas pada dunia IT atau telekomunikasi – mereka juga digunakan untuk real estate, medis dan bidang apapun yang menyediakan produk atau layanan kepada pelanggan.Layanan berorientasi manusia dan bisnis memiliki kebutuhan untuk mengukur dan memikul tanggung jawab, dan SLA menyediakan pengukuran dan ide bagi entitas untuk menyepakati.


Operational-level agreement (OLA)

Pengertian OLA

Operational-level agreement (OLA) mendefinisikan hubungan saling tergantung dalam mendukung Service Level Agreement (SLA). Kesepakatan tersebut menggambarkan tanggung jawab masing-masing kelompok pendukung internal terhadap kelompok pendukung lainnya, termasuk proses dan kerangka waktu untuk penyampaian layanan mereka. Tujuan OLA adalah untuk menyajikan deskripsi dukungan internal dari penyedia layanan yang jelas, ringkas dan terukur.
OLA kadang diperluas ke frase lain tapi semuanya memiliki arti yang sama:
  • Kesepakatan tingkat organisasi
  • Perjanjian tingkat operasi
  • Perjanjian tingkat operasi
OLA bukan pengganti SLA. Tujuan OLA adalah untuk membantu memastikan bahwa kegiatan pendukung yang dilakukan oleh sejumlah komponen tim pendukung secara jelas disesuaikan untuk menyediakan SLA yang dimaksud.
Jika OLA yang berada di bawah tidak ada, seringkali sangat sulit bagi organisasi untuk kembali dan memberi persetujuan insinyur antara tim pendukung untuk mengirimkan SLA. OLAharus dilihat sebagai dasar praktik yang baik dan kesepakatan bersama.

Perbedaan antara SLA dan OLA
Perbedaan antara Service Level Agreement (SLA) dan Perjanjian Tingkat Operasional (Operational Level Agreement / OLA) adalah apa yang secara keseluruhan oleh organisasi TI menjanjikan kepada pelanggan (SLA), dan apa yang diinginkan oleh kelompok fungsional TI satu sama lain (OLA).
SLA dapat menyatakan bahwa "TI akan memastikan bahwa peralatan komputer akan dipertahankan". Tentu pernyataan itu adalah generalisasi yang tidak bisa diukur, jadi mungkin pernyataan yang lebih baik adalah "Tidak akan ada kurang dari 100 jam kerja yang hilang per tahun karena kurangnya pemeliharaan peralatan komputer".
OLA menyatakan segala sesuatu yang dibutuhkan kelompok fungsional TI dalam kaitannya untuk mendukung SLA. Ini akan mencakup apa yang tim server akan lakukan untuk menambal server, apa tim desktop yang akan dilakukan untuk menambal sistem desktop, apa yang akan dilakukan oleh DBA untuk mengoptimalkan basis data, dll, dll.
Idenya adalah bahwa janji yang dibuat di SLA harus dapat diukur dan didukung sepenuhnya oleh OLAs yang diandalkan SLA.


CONTOH KASUS SLA PADA PERUSAHAAN IT

Bagaimana Menghitung SLA
Beberapa provider IT khususnya provider / penyedia layanan internet memberikan SLA antara 96% – 99%, artinya dalam 1 bulan pihak provider menjamin bahwa layanan yang diberikan adalah :
Menghitung SLA (asumsi dengan SLA 98%, artinya layanan standard mereka 98% dalam 1 bulan, dan 2% dianggap wajar jika terjadi mati (down) dalam layanan tersebut)
1 hari = 24 jam
1 bulan = 30 hari
Biaya bulanan Internet = Rp. 1.000.000
==> 1 bulan = 30 hari x 24 jam = 720 Jam (720 jam merupakan layanan 100%)
==> Sedangkan jika 98% maka layanan standard mereka adalah
==> 98% * 720 jam = 705.6 jam (layanan standard mereka, sisanya 14.4 jam dianggap wajar jika layanan itu mati (down)
Pengertian Restitusi dan Bagaimana menghitung Restitusi
Restitusi adalah pengembalian dalam bentuk (bisa dalam bentuk pembayaran (uang), ataupun lainnya (tergantung kontrak) dari pihak penyedia layanan kepada klien.
Sebagai contoh (dengan mengambil lanjutan perhitungan diatas), jika klien mempunyai kewajiban membayar Rp. 1.000.000 :
Biaya bulanan internet = Rp. 1.000.000
SLA layanan (contoh bulan Juli) = 76,6% (100% – 23,3%), artinya pihak provider bulan juli hanya bisa memberikan layanan internet sebesar 76,6% artinya ada selisih (98% – 76.6% = 21.3%, yang tidak bisa dipenuh oleh pihak provider)
Nah 21,3 % itu adalah hak kita u/ mendapatkan penggantian, penggantian ini biasanya dlm bentuk pengurangan pembayaran, misalkan kita bayar
1bulan Rp. 1.000.000 = untuk layanan 98% (1% sekitar Rp. 10.204)
Maka u/ layanan hanya 76.6% = 1.000.000 – (21.3% X Rp. 10.204)
= Rp1.000.000 – Rp. 217.345
= Rp. 782.654
Artinya dlm bulan ini kita hanya punya kewajiban membayar sekitar Rp. 782.654

Sumber : http://itsm.certification.info/slavola.html

Saturday, 13 May 2017

Perbandingan antar ITIL, COBIT dan MOF


PENGERTIAN

ITIL adalah suatu rangkaian dengan konsep infrastruktur, pengembangan, serta operasi teknologi informasi. ITIL sebenarnya adalah suatu rangkaian rangkuman dari beberapa buku yang membahas tentang pengelolaan (TI). ITIL memberikan beberapa praktik TI penting seperti daftar cek, tugas, serta beberapa prosedur yang disesuaikan dengan segala jenis organisasi(TI).

Control Objective for Information & Related Technology (COBIT) adalah sekumpulan dokumentasi best practice untuk IT Governance yang dapat membantu auditor, pengguna (user), dan manajemen, untuk menjembatani gap antara resiko bisnis, kebutuhan kontrol dan masalah-masalah teknis IT (Sasongko, 2009).

Microsoft Operation Frameworks(MOF)  adalah sekumpulan prinsip, teknik, dan model teruji di lapangan (best practices) untuk mengelola layanan TI

KERANGKA KERJA

KERANGKA KERJA ITIL

Pada 30 Juni 2007, OGC (Office of Government Commerce) menerbitkan versi ketiga ITIL (ITIL v3) yang intinya terdiri dari lima bagian dan lebih menekankan pada pengelolaan siklus ITSM (IT service management). Lima bagian tersebut adalah :
1. Service Strategy
Ini merupakan inti dari ITIL Service Life Cycle yang memberikan panduan kepada pengimplementasian ITSM . Panduan ini disajikan dalam bentuk prinsip-prinsip dasar konsep ITSM, acuan, serta proses-proses inti.
Proses di dalamnya yaitu:
  • Service Portofolio Management
  • Financial Management
  • Demand Management
2. Service Design
Agar layanan TI dapat memberikan manfaat pada bisnis, layanan TI harus terlebih dahulu didesain dengan tujuan bisnis dari pelanggannya. Service Design memberikan panduan kepada organisasi TI untuk bisa secara sistematis dan best practice mendesain dan membangun layanan TI.
Proses di dalamnya yaitu:
  • Service Catalog Management
  • Service Level Management
  • Supplier Management
  • Capacity Management
  • Availability Management
  • IT Service Countinuity Management
  • Information Security Management
3. Service Transition
Menyediakan panduan kepada organisasi TI agar dapat mengembangkan kemampuan untuk mengubah hasil desain layanan TI. Tahapan ini menggambarkan bagaimana sebuah kebutuhan didefinisikan dalam Service Strategy, lalu dibentuk dalam Service Design dan selanjutnya secara efektif direalisasikan dalam Service Operation
Proses di dalamnya yaitu:
  • Transation Planning and Support
  • Change Management
  • Service Assset and Configuration Management
  • Release and Deployment Management
  • Service Validation
  • Evaluation
  • Knowledge Management
4. Service Operational
Ini adalah tahapan life cycle yang mencakup semua kegiatan operasional layanan-layanan TI. Di dalamnya terdapat beberapa panduan-panduan untuk mengelola layanan TI secara efisien.
Proses di dalamnya:
  • Event Management
  • Incident Management
  • Problem Management
  • Request Fulfillment
  • Access Management
Berikut kerangkanya

Kerangka kerja ITIL

KERANGKA KERJA COBIT

Berdasarkan IT Governance Institute (2012), Framework COBIT disusun dengan karakteristik yang berfokus pada bisnis (bussiness focused). Pada edisi keempatnya ini, COBIT Framework terdiri dari 34 high level control objectives dan kemudian mengelompokan proses tersebut menjadi 4 domain, keempat domain tersebut antara lain: Plannig and Organization, Acquisition and Implementation, Delivery and Support, dan Monitoring and Evaluation :

1. Planing and Organization (Perencanaan dan Organisasi). Mencakup strategi, taktik dan identifikasi kontribusi terbaik TI demi pencapaian tujuan organisasi.
2. Acquire and Implement (Pengadaan dan Implementasi). Untuk merealisasikan strategi TI, perlu dilakukan pengidentifikasian, pengembangan dan perolehan solusi TI, sesuai dengan yang akan diimplementasikan dan diintegrasikan ke dalam proses bisnis.
3. Delivery and Support (Pengiriman Layanan dan Dukungan). Domain ini fokus terhadap penyampaian jasa yang sesungguhnya diperlukan, termasuk penyediaan layanan, manajemen keamanan dan kontinuitasnya, jasa dukungan kepada user dan manajemen data dan fasilitas operasi.

KERANGKA KERJA MOF

Tahapan Siklus Hidup MOF 4.0 Siklus hidup MOF 4.0 terdiri dari tiga tahapan yang sedang berlangsung dan satu tahapan dasar yang beroperasi di seluruh semua tahapan antara lain:
a. Tahap Perencanaan
Tahap ini bertujuan untuk merencanakan dan mengoptimalkan strategi layanan TI dalam rangka mendukung tujuan bisnis dan tujuan.
b. Tahap Penyampaian
Tahap ini bertujuan untuk memastikan bahwa layanan TI yang dikembangkan secara efektif, dikerahkan berhasil, dan siap untuk dioperasikan.
c. Tahap Operasional
Tahap ini bertujuan untuk memastikan bahwa layanan TI dioperasikan, dipelihara, dan didukung dengan cara yang memenuhi kebutuhan bisnis dan harapan.
d. Tahap Pengelolaan
Tahap ini bertujuan untuk memberikan prinsip operasi dan best practice untuk memastikan bahwa investasi di TI memberikan nilai bisnis yang diharapkan serta dapat menangani risiko. Tahap ini berkaitan dengan tata kelola TI, risiko, kepatuhan, peran dan Tahapan proses ini berlangsung di setiap tahapan di dalam siklus hidup MOF 4.0.

Kerangka kerja MOF


MANFAAT

Manfaat ITIL

Manfaat ITIL ini merupakan pendekatan sistematis untuk management layanan TI. ITIL dapat membantu perusahaan dalam cara berikut:
1. Mengurangi biaya
2. Pengunaan proses praktik terbaik yang sudhah terbukti meningkatkan kepuasan pelanggan.
3. Meningkatkan produktivitas
4. Meningkatkan penggunaan keterampilan dan pengalaman
5. Meningkatkan penyampaian layanan pihak ketiga melalui spesifikasi ITIL atau ISO 20000


Manfaat dan Pengguna COBIT

Secara manajerial target pengguna COBIT dan manfaatnya adalah :
Direktur dan Eksekutif
Untuk memastikan manajemen mengikuti dan mengimplementasikan strategi searah dan sejalan dengan TI.
Manajemen
v Untuk mengambil keputusan investasi TI.
v Untuk keseimbangan resiko dan kontrol investasi.
v Untuk benchmark lingkungan TI sekarang dan masa depan.
Pengguna
Untuk memperoleh jaminan keamanan dan control produk dan jasa yang dibutuhkan secara internal maupun eksternal.
Auditors
v Untuk memperkuat opini untuk manajemen dalam control internal.
v Untuk memberikan saran pada control minimum yang diperlukan.


Manfaat MOF

Adapun keuntungan menggunakan MOF 4.0 antara lain:
a. Mengurangi risiko dengan adanya koordinasi antar tim.
b. Dapat mengenali dampak yang terjadi jika dikaji dengan kebijakan yang ada.
c. Mengantisipasi dan mengurangi dampak dari mitigasi.
d. Menemukan kemungkinan permasalahan integrasi sebelum produksi.
e. Mencegah masalah kinerja dengan mengantisipasi thresholds.
f. Efektif beradaptasi dengan kebutuhan bisnis baru.


DAFTAR PUSTAKA

https://mumtazgalery.wordpress.com/2013/12/11/apa-sih-it-infrastruktur-library-itil-itu/
https://haendra.wordpress.com/2012/06/08/pengertian-cobit/
http://haniyamari.blogspot.co.id/2016/04/microsoft-operations-framework_24.html

 

Subscribe to our Newsletter