SKRIPSI
OLEH:
FAHRUL BADJEBER
0434010125
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN” JAWA TIMUR
BERBASIS TEKNOLOGI MOBILE
SKRIPSI
Diajukan Untuk Memenuhi Sebagian Persyaratan Dalam Memperoleh Gelar Sarjana Komputer
Jurusan Teknik Informatika
OLEH:
FAHRUL BADJEBER 0434010125
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN” JAWA TIMUR
SURABAYA
Assalamu’alaikum Wr. Wb
Puji syukur Alhamdulillah penulis panjatkan kehadirat Allah SWT, atas
rahmat, taufik dan hidayah-Nya sehingga penulis dapat menyelesaikan skripsi ini,
sebagai prasyarat untuk memperoleh gelar Sarjana Teknik pada Jurusan
Informatika (S1), Fakultas Teknologi Industri, Universitas Pembangunan
Nasional “VETERAN” Surabaya.
Dalam menyusun skripsi ini penulis banyak menerima bantuan, bimbingan
dan dukungan dari berbagai pihak. Pada kesempatan ini dengan segala kerendahan
hati penulis menyampaikan terima kasih yang sebesar-besarnya kepada :
1. Ir. Bambang Wahyudi, MS selaku Dekan Fakultas Teknologi Industri UPN
“VETERAN” Jawa Timur.
2. Basuki Rahmat, S.Si., MT selaku Ketua Jurusan Teknik Informatika - FTI
UPN “VETERAN” Jawa Timur sekaligus dosen penguji.
3. I Gede Susrama M, ST, M.Kom selaku Dosen Pembimbing I yang telah
memberikan kontribusi berupa masukan dan koreksi yang berguna dalam
membimbing penyelesaian skripsi ini.
4. Chrystia Aji Putra, S.Kom selaku Dosen Pembimbing II yang telah
memberikan kontribusi berupa masukan dan koreksi yang berguna dalam
membimbing penyelesaian skripsi ini.
membantu tersusunnya laporan ini.
Penulis menyadari bahwa susunan skripsi ini masih banyak kekurangan dan
kelemahan yang disebabkan oleh keterbatasan pengetahuan penulis. Oleh karena
itu saran dan kritik yang membangun sangat penulis harapkan. Akhir kata penulis
berharap semoga skripsi ini bermanfaat bagi pembaca dan semua pihak yang
menggunakan.
Wassalamu’alaikum Wr. Wb
Surabaya, Mei 2011
Halaman
HALAMAN JUDUL
LEMBAR PERSETUJUAN
LEMBAR PENGESAHAN
LEMBAR REVISI
THANKS TO
ABSTRAK ... i
ABSTRACT ... ii
KATA PENGANTAR ... iii
DAFTAR ISI ... v
DAFTAR GAMBAR ... ix
DAFTAR TABEL ... xii
DAFTAR LAMPIRAN ... xiii
BAB I PENDAHULUAN 1.1 Latar Belakang ... 1
1.2 Perumusan Masalah ... 2
1.3 Tujuan ... 3
1.4 Manfaat ... 3
1.5 Batasan masalah ... 3
1.6 Metodologi Penulisan ... 4
2.2.1 Karakteristik Sistem Pakar ... 11
2.2.2 Aplikasi Sistem Pakar ... 11
2.2.3 Kosep Dasar Sistem Pakar ... 13
2.2.4 Struktur Sistem Pakar ... 15
2.2.5 Keuntungan Sistem Pakar ... 25
2.2.6 Perbandingan kemampuan seorang pakar dengan sistem pakar ... 27
2.3 Borland Delphi ... 29
2.3.1 Lingkungan Kerja Borland Delphi ... 30
2.4 Deteksi Kerusakan Komputer Berdasarkan Bunyi ... 35
BAB III PERANCANGAN SISTEM 3.1 Perancangan Program ……….. 44
3.2 Perancangan Basis Pengetahuan (Knowledge Base) ... 44
3.3 Perancangan Basis Aturan (Rule Base) ……… 45
3.4 Pembentukan Data Flow Diagram ………... 53
3.4.1 Context Diagram Sistem Pakar ………. 53
3.4.2 CDM ………. 58
3.4.3 PDM ………. 59
3.5 Pembentukan Entity Relationship Diagram ………...…… 60
4.2.1 Implentasi Data ... 58
4.2.2 Menu Index ... 59
4.2.3 Menu Login ... 60
4.2.4 Form Input Pakar ... 61
4.2.5 Form Pilih ... 61
BAB V UJI COBA 5.1 Implementasi ... 62
5.2 Uji Coba ... 64
5.3 Menu Login ... 65
5.4 Form Input Pakar ... 66
5.5 Form Update Data Rule ... 67
5.6 Menu Logout ... 67
5.7 Menu Pengguna ... 68
BAB VI PENUTUP 6.1 Kesimpulan ... 70
6.2 Saran ... 71
Gambar 2.1 Struktur Sistem Pakar ... 15
Gambar 2.2 Diagram Forward Chaining2 ... 17
Gambar 2.3 Diagram Backward Chaining3 ………. 18
Gambar 2.4 Depth First Search 4 ………. 20
Gambar 2.5 Breadth First Search 5 ……….. 21
Gambar 2.6 Best First Search 6 ……… 23
Gambar 3.1 Skema Forward Chaining ... 46
Gambar 3.2 Context Diagram Sistem Pakar ... 49
Gambar 3.3 DFD Level 0 ... 50
Gambar 3.4 DFD Level 1 Dari Level 0 Proses 1.1 ... 51
Gambar 3.5 DFD Level 1 Dari Level 0 Proses 1.2 ……….. 52
Gambar 3.7 CDM ... 53
Gambar 3.8 PDM ... 53
Gambar 4.1 Struktur Tabel Data ... 58
Gambar 4.2 Tabel Admin ... 59
Gambar 4.3 Form Index ... 59
Gambar 4.4 Form Login untuk Pakar ... 60
Gambar 4.5 Form Login untuk Pakar / Admin ... 60
Gambar 4.6 Form Input Pakar ... 61
Gambar 5.5 Form Index ... 65
Gambar 5.6 Form Login untuk Pakar ... 65
Gambar 5.7 Form Login Untuk Pakar/Admin ... 66
Gambar 5.8 Form Input Pakar ... 66
Gambar 5.9 Form Pilih Gejala... 67
Gambar 5.10 Menu Logout ... 67
Gambar 5.11 Menu Pilihan Sistem Pakar ... 68
Gambar 5.12 Next Menu Pilihan Sistem Pakar ... 68
Gambar 5.13 View Diagnosa Kerusakan ... 69
Tabel 3.6 Tabel Pasien ... 66
Lampiran B Form Login ... L-2
Lampiran C Form Main ... L-7
Lampiran D Form Konfirmasi ... L-9
Lampiran E Form Konsultasi ... L-12
Lampiran F Form Solusi ... L-16
Lampiran G Form Penyakit ... L-17
Lampiran H Form Cari ... L-25
Lampiran I Form Jenis ... L-27
Lampiran J Form Gejala ... L-32
Lampiran K Form Pengobatan ... L-38
Lampiran L Form Rule ... L-44
Lampiran M Form Cari Penyakit ... L-47
Lampiran N Form Edit Rule ... L-49
Lampiran O Form Pakar ... L-52
Lampiran P Form User ... L-57
Lampiran Q Form Cari User ... L-61
Lampiran R Form Cari Tanggal ... L-63
Lampiran S Form Tips ... L-64
ABSTRAK
Aplikasi Pengecekkan Kerusakkan Pada Komputer Berbasis Web. ini dibuat untuk
membantu User untuk terhindar dari kerusakan - kerusakan Sistem pada Komputer, dari
kerusakan yang normal terjadi pada komputer sampai dengan kerusakan yang Parah
sekalipun.
Selain itu pada Sistem ini User dapat mengetahui penyebab dari kerusakan –
kerusakan yang terjadi pada sistem komputer dan juga memungkinkan User dapat
memperbaiki kerusakan – kerusakan pada komputer tersebut, dan pada aplikasi ini juga
dapat mengoneksikkan antara Komputer dengan Mobile ( Hanphone ) tetapi hanya
Mobile yang mempunyai fasilitas WiFi, dan User dapat juga menjalankan aplikasi ini
dengan menggunakan Mobile dalam satu sambungan WiFi.
1.1 Latar Belakang
Saat komputer dihidupkan, BIOS melakukan POST (power-on self test).
POST ini diperlukan untuk memastikan semua sistem berfungsi sebagaimana
mestinya, dan juga mencari informasi tentang hardware apa saja yang terpasang di
komputer. Saat BIOS (basic input output system) mendeteksi adanya masalah saat
POST, BIOS akan mengirimkan pesan kesalahan. Pada beberapa kasus, masalah
tersebut dapat dideteksi lebih awal, sehingga BIOS tidak dapat mengakses video
card dan tidak dapat menampilan pesan kesalahan tersebut, jika seperti ini yang
terjadi, BIOS akan mengeluarkan suara “bip” yang memiliki pola tertentu sesuai
dengan kesalahan yang diidentifikasinnya. Klo suara “bip” tunggal muncul setelah
tampilnya pesan startup pada monitor adalah normal dan tidak ada kegagalan
proses booting. “bip” yang dimaksud adalah yang dihasilkan pada saat prosedur
POST belum selesai dan belum ada informasi apapun yang ditampilkan pada laya.
Meskipun seorang pakar adalah orang yang ahli dibidangnya, namun
dalam kenyataannya seorang pakar mempunyai keterbatasan daya ingat dan
stamina kerja yang salah satu faktornya mungkin disebabkan karena usia dari
seorang pakar. Sehingga seorang pakar dalam hal ini seorang ahli servis pada
suatu ketika bisa saja melakukan kesalahan yang mungkin salah satunya
melakukan kesalahan pada hasil analisa yang bisa berlanjut pada kesalahan solusi
Untuk mengatasi pemecahan masalah tersebut ditawarkan pemanfaatan
teknologi canggih. Seperti diketahui, dewasa ini telah berkembang bidang studi
Artificial Intelegence (AI) atau kecerdasan buatan yang mempelajari serta mampu
meniru kecerdasan manusia. Salah satu cakupan AI adalah sistem pakar (Expert
System).
Sistem pakar akan bertindak layaknya seperti seorang pakar. Ia akan
memberikan daftar gejala-gejala sampai bisa mengidentifikasi suatu obyek
berdasarkan jawaban yang diterimanya. Jadi kerja sistem pakar adalah
menganalisis suatu masalah. Dengan adanya Sistem Pakar ini diharapkan nantinya
bisa membantu masyarakat dalam menginformasikan kerusakan komputer apa
saja yang menyerang komputer dan bagaimana cara penanggulangan kerusakan
tersebut.
1.2 Perumusan Masalah
Dari latar belakang di atas, maka dapat di ambil permasalahan yaitu
bagaimana merancang suatu aplikasi sistem pakar untuk memperbaiki komputer.
1.3 Tujuan
Dengan memperhatikan latar belakang dan permasalahan tersebut di atas,
tujuan penulisan skripsi ini adalah: mengimplementasikan sistem pakar dengan
metode forward chaining untuk membantu kerja seorang dalam memperbaiki
komputer, dalam hal kecepatan dan ketepatan mengetahui kerusakan komputer
1.4 Manfaat
Adapun manfaat dari dibuatnya skripsi ini adalah:
1. Dengan dibuatnya aplikasi sistem pakar ini adalah untuk memberikan
informasi yang lebih kepada kita mengenai kerusakan komputer yang
meliputi informasi mengenai gejala-gejalanya, menganalisis, pencegahan
dan perbaikannya.
2. Memberikan pemahaman dan kesadaran kepada masyarakat tentang
pentingnya merawat komputer, sehingga kita dapat melakukan pencegahan
kerusakan secara lebih dini.
1.5 Batasan Masalah
Untuk lebih memfokuskan pada permasalahan, maka program yang akan
dibuat nantinya akan dibatasi pada:
1. Program sistem pakar ini hanya meliputi identifikasi gejala, menganalisis,
pencegahan dan perbaikan kerusakan komputer.
2. Metode penalaran yang digunakan adalah metode Forward Chaining.
1.6 Metodologi Penelitian
Langkah-langkah yang ditempuh untuk keperluan pembuatan skripsi ini
antara lain:
Mengumpulkan referensi baik dari buku, internet, maupun sumber-sumber
yang lainnya mengenai sistem pakar dengan metode Forward Chaining
guna sebagai acuan untuk perancangan sistem.
2. Pengumpulan dan Analisa Data
Pengumpulan data dilakukan dengan cara: observasi, identifikasi dan
klasifikasi melalui studi literatur. Dari pengumpulan data tersebut,
dilakukan analisa data yaitu menganalisa gejala-gejala apa saja yang
timbul apabila terjadi keruskan komputer. Yang kemudian akan
ditemukan suatu solusi yang tepat terhadap gejala-gejala tersebut.
3. Perancangan Sistem
Melakukan analisa awal tentang sistem yang akan dibuat yaitu suatu
pemecahan masalah yang dilakukan melalui sistem terkomputerisasi
dengan cara menggolongkan bagian mulut menjadi tiga bagian yaitu:
bibir, lidah, dan gigi untuk dicari penyebab / gejala yang terjadi.
Kemudian pada perancangan sistem akan dilakukan suatu sistem yang
baku untuk rule base, knowledge base dan metode yang akan dipakai
dalam pencarian solusi yang tepat untuk mengatasi kerusakan komputer
yang sesuai dengan gejala-gejala yang disebutkan.
4. Pembuatan Program
Setelah selesai dengan perancangan sistem maka tahap berikutnya adalah
pembuatan program yang terdiri dari tiga bagian besar yaitu membuat
mekanisme inferensi. Dalam skripsi ini program nantinya akan dibuat
menggunakan PHP berbasis web.
5. Uji Coba Program
Setelah program selesai dibuat maka dilakukan pengujian program untuk
mengetahui apakah program tersebut telah bekerja dengan benar.
6. Pembuatan Kesimpulan
Dalam bagian akhir skripsi dibuat kesimpulan dan saran dari hasil
pembuatan sistem yang diperoleh sesuai dengan dasar teori yang
mendukung dalam pembuatan sistem tersebut yang telah dikerjakan secara
keseluruhan.
1.7 Sistematika Penulisan
Sistematika penulisan laporan pada skripsi ini adalah sebagai berikut:
BAB I : PENDAHULUAN
Bab ini membahas mengenai latar belakang, permasalahan,
tujuan, manfaat, batasan masalah, metodologi penulisan, dan
sistematika penulisan.
BAB II : LANDASAN TEORI
Bab ini membahas tentang teori-teori dasar yang meliputi
Kecerdasan Buatan (AI) yang lebih dikhususkan kepada sistem
pakarnya sendiri, seputar kerusakan komputer yang meliputi
gejala dan perbaikannyanya, dan bahasa pemograman yang
BAB III : PERANCANGAN SISTEM
Bab ini membahas tentang perancangan program yang akan
dibangun dengan metode penalaran yang dipakai yaitu metode
Forward Chaining, yang digunakan untuk menganalisa
kerusakan dan yang sesuai dengan golongan-golongan yang
tersebut diatas. Yang kemudian dicari suatu solusi yang tepat
untuk pemecahan masalah tersebut.
BAB IV : IMPLEMENTASI PROGRAM
Bab ini membahas tentang tampilan-tampilan dari program yang
telah dibuat.
BAB V : UJI COBA DAN EVALUASI
Bab ini membahas tentang cara menjalankan aplikasi serta uji
coba dari program yang telah dibuat tersebut.
BAB V : PENUTUP
Bab ini berisi tentang kesimpulan yang dapat diambil dari
keuntungan sistem serta berisi tentang saran-saran yang diambil
dari kelemahan sistem untuk perbaikan guna pengembangan
2.1 Kecerdasan Buatan (Artificial Intelegence)
Perkembangan kecerdasan buatan, khususnya kecerdasan modern telah
berlangsung sekitar 50 tahun yang lalu di Amerika Serikat. Dan saat ini,
negara-negara Eropa juga ikut berlomba dalam penelitian dan pengembangan serta
percobaan-percobaan yang berkaitan dengan kecerdasan buatan.
Gagasan untuk menerapkan kecerdasan buatan atau membuat mesin pintar
sesungguhnya telah ada sejak jaman dahulu. Berdasarkan fiksi-fiksi yang telah
ada, dikenal istilah robot, yaitu mesin yang bertingkah laku mirip manusia.
Perkembangan ilmu kecerdasan buatan tidak terlepas dari perkembangan
ilmu lain. Bidang matematika yang berkembang pesat juga ikut memacu
perkembangan teori kecerdasan buatan. George Boole, dalam An Investigation Of
The Law Of Thought, on which are founded The Matematical Theories of Logic
and Probabilities (1954), mengemukakan bahwa salah satu pengembangan ilmu
matematika diarahkan untuk meneliti bagaimana proses-proses yang ada pada
otak manusia dalam melakukan perhitungan. Pernyataan ini pada perkembangan
selanjutnya menjadi dasar penelitian kecerdasan buatan modern.
Pada perkembangan ilmu kecerdasan buatan selanjutnya penelitian lebih
ditujukan untuk mempelajari proses komputasi pada otak manusia (brain’s
Kecerdasan buatan memungkinkan sebuah komputer untuk bisa menerima
pengetahuan melalui input manusia dan menggunakan pengetahuan itu melalui
simulasi proses penalaran dan berfikir manusia untuk memecahkan berbagai
persoalan pada batas-batas tertentu.
Beberapa penulis mendefinisikan kecerdasan buatan sebagai cabang dari
ilmu komputer yang mempelajari otomatisasi dari tingkah laku cerdas, sehingga
komputer dapat memecahkan masalah yang lebih luas.
Kecerdasan Buatan adalah gabungan dari tiga bidang penelitian utama
yaitu:
1. Robotics, merupakan bidang penyelidikan umum yang memiliki tujuan
akhir untuk membangun, dengan segala kemungkinan, simulasi dari wujud
manusia secara lengkap termasuk mental dan fisik.
2. Cognitive Science, mempelajari cara pengenalan pada manusia atau proses
berfikir, susunan dan cara kerja pada otak manusia.
3. Intellegent Software, difokuskan pada pengembangan kemampuan
komputer agar lebih “pintar”. Pada bidang ini teknik dan teori kecerdasan
buatan dicoba untuk diaplikasikan, agar dapat meningkatkan kegunaan
komputer bagi masyarakat.
2.2 Sistem Pakar (Expert System)
Sistem pakar adalah suatu sistem komputer yang bertujuan memecahkan
suatu persoalan dengan cara meniru pola pikir manusia yaitu pekerjaan seorang
mesin pengambil keputusan (Inference Engine). Ini merupakan bagian perangkat
lunak khusus yang berusaha menduplikasikan fungsi kerja seorang ahli dalam
suatu bidang keahlian. Program ini dapat bertindak seperti seorang konsultan
dalam suatu domain tertentu, berdasarkan himpunan pengetahuan yang telah
diperoleh dari satu atau beberapa orang pakar.
Basis pengetahuan (Knowledge Base) berisikan fakta-fakta tentang obyek
domain dalam lingkup pengetahuan expert system tersebut, dan didesain saling
berhubungan antara satu dengan yang lainnya. Seluruh program sistem pakar
difokuskan pada satu domain tertentu. Isi keseluruhan dalam basis pengetahuan
(Knowledge Base) tersebut berupa pikiran atau teori yang saling berkaitan.
Berdasarkan basis pengetahuan (Knowledge Base), mesin inferensi
(Inference Engine) melakukan penalaran dan menarik kesimpulan. Mesin
inferensi merupakan suatu rangkaian prosedur yang digunakan untuk menguji
basis pengetahuan dengan sistematis pada saat memecahkan persoalan, dan
kemudian membuat keputusan. Cara komputer berpikir tentang subyek domain
adalah dengan melakukan penalaran (searching) pada basis pengetahuan untuk
mencari solusinya.
Proses untuk mencari jawaban dari suatu permasalahan memerlukan
adanya goal (tujuan). Berdasarkan goal yang diberikan, komputer berusaha
mencari kesimpulan dengan menggunakan formal reasoning, yaitu membuktikan
2.2.1 Karakteristik Sistem Pakar
Ada beberapa hal yang menjadi ciri-ciri dari sistem pakar antara lain:
1. Memiliki informasi yang handal, baik dalam menampilkan
langkah-langkah maupun dalam menjawab pertanyaan-pertanyaan tentang
proses penyelesaian.
2. Mudah di modifikasi, yaitu dengan menambah atau menghapus suatu
kemampuan dari basis pengetahuannya.
3. Heuristik dalam menggunakan pengetahuan (yang sering kali tidak
sempurna) untuk mendapatkan penyelesaiannya.
4. Dapat digunakan dalam berbagai jenis komputer.
5. Memiliki kemampuan untuk beradaptasi.
2.2.2 Aplikasi Sistem Pakar
Sistem pakar terdiri dari sebelas bidang aplikasi, yakni:
1. Diagnosis
Menentukan sebab malfungsi dalam situasi kompleks yang di
dasarkan pada gejala-gejala yang teramati, di antaranya medis,
elektronis, mekanis dan diagnosis perangkat lunak.
2. Debugging dan repair
Menentukan dan mengimplementasikan cara-cara untuk mengatasi
malfungsi, di antaranya memberikan resep obat terhadap suatu
3. Instruksi
Mendeteksi dan mengoreksi defisiensi dalam pemahaman domain
objek, di antaranya melakukan instruksi untuk diagnosis, debugging
dan perbaikan kinerja.
4. Interpretasi
Pengambilan keputusan atau deskripsi tingkat tinggi dari
sekumpulan data mentah. Termasuk di antaranya juga pengawasan,
pengenalan ucapan, analisis citra, interpretasi sinyal dan beberapa
analisis kecerdasan.
5. Proyeksi
Memprediksi akibat-akibat yang di mungkinkan dari situasi-situasi
tertentu, di antaranya peramalan, prediksi demografis, peramalan
ekonomi, prediksi lalu lintas, estimasi hasil, militer, pemasaran atau
peramalan keuangan.
6. Perencanaan
Merencanakan serangkaian tindakan yang dapat mencapai
sejumlah tujuan dengan kondisi awal tertentu, di antaranya adalah
perencanaan keuangan, komunikasi, militer, pengembangan produk,
routing dan manajemen proyek.
7. Desain
Menentukan konfigurasi komponen-komponen sistem yang cocok
dengan tujuan-tujuan kinerja tertentu yang memenuhi kendala-kendala
8. Monitoring
Membandingkan antara tingkah laku suatu sistem yang teramati
dengan tingkah laku yang diharapkan darinya, misalnya adalah
Computer Aided Monitoring System
9. Pengendalian
Mengatur tingkah laku suatu environment yang kompleks seperti
control terhadap interpretasi-interpretasi, prediksi, perbaikan dan
monitoring kelakuan sistem.
10. Seleksi
Mengidentifikasi pilihan terbaik dari sekumpulan (list)
kemungkinan.
11. Simulasi
Pemodelan interaksi antara komponen-komponen sistem.
(Desiani, A. Arhami, M, 2005)
2.2.3 Konsep Umum Sistem Pakar
Pengetahuan dari suatu sistem pakar mungkin dapat
dipresentasikan dalam sejumlah cara. Salah satu metode yang paling
umum untuk merepresentasikan pengetahuan adalah dalam bentuk tipe
aturan (rule) IF...THEN (jika...maka).
Walaupun cara di atas sangat sederhana, namun banyak hal yang
berarti dalam membangun sistem pakar dengan mengekspresikan
Turban (1995) menyatakan bahwa konsep dasar dari suatu sistem
pakar mengandung beberapa unsur / elemen, yaitu keahlian,ahli,
pengalihan keahlian, inferensi, aturan dan kemampuan menjelaskan.
Salah satu fitur yang harus dimiliki oleh sistem pakar adalah
kemampuan untuk menalar (reasoning). Jika keahlian-keahlian sudah
tersimpan sebagai basis pengetahuan dan sudah tersedia program yang
mampu mengakses basis data, maka komputer harus dapat diprogram
untuk membuat inferensi. Proses ini dibuat dalam bentuk motor inferensi
(inference engine).
Menurut Turban (1995), terdapat tiga orang yang terlibat dalam
lingkungan sistem pakar, yaitu:
1. Pakar adalah orang yang memiliki pengetahuan khusus, pendapat,
pengalaman dan metode, serta kemampuan untuk mengaplikasikan
keahliannya tersebut guna menyelesaikan masalah.
2. Perekayasa sistem (Knowledge engineer) adalah orang yang
membantu pakar dalam menyusun area permasalahan dengan
menginterpretasikan dan mengintegrasikan jawaban-jawaban pakar
atas pertanyaan yang di ajukan, menggambarkan analogi, mengajukan
counter example dan menerangkan kesulitan-kesulitan konseptual.
3. Pemakai maksudnya sistem pakar memiliki beberapa pemakai, yaitu:
pemakai bukan pakar, pelajar, pembangun sistem pakar yang ingin
meningkatkan dan menambah basis pengetahuan dan pakar.
2.2.4 Struktur Sistem Pakar
Sistem pakar terdiri dari 2 bagian pokok, yaitu: lingkungan
pengembangan (development environment) dan lingkungan konsultasi
(consultation environment). Lingkungan pengembangan digunakan
sebagai pembangun sistem pakar baik dari segi pembangun komponen
maupun basis pengetahuan. Sedangkan lingkungan konsultasi digunakan
oleh seseorang yang bukan ahli untuk berkonsultasi.
Gambar 2.1 Struktur Sistem Pakar 1
Komponen-komponen yang ada pada sistem pakar adalah:
1. User interface
Antar muka pemakai merupakan bagian yang menghubungkan antara
sistem pakar dengan pemakainya.
Pada bagian ini akan terjadi dialog, dimana sistem pakar biasanya akan
mengajukan pertanyaan dengan bentuk jawaban “ya atau tidak” atau
berbentuk menu pilihan. Komponen sistem pakar ini memegang
peranan yang cukup besar. Sebab kesimpulan yang diambil oleh sistem
pakar, sangat tergantung pada jawaban-jawaban yang diberikan oleh
user. Sehingga antar muka pemakai perlu dirancang agar tidak
membingungkan pemakai, terutama untuk pemakai awam.
2. Blackboard
Merupakan area dalam memori yang digunakan untuk merekam
kejadian yang sedang berlangsung, termasuk keputusan sementara.
Ada 3 tipe keputusan yang dapat direkam yaitu:
- Rencana : bagaimana menghadapi masalah
- Agenda : aksi potensial yang sedang menunggu untuk dieksekusi
- Solusi : calon aksi yang akan dibangkitkan
3. Subsistem penjelasan
Digunakan untuk melacak respon dan memberikan penjelasan tentang
kelakuan sistem pakar secara interaktif melalui pertanyaan.
4. Sistem penyaring pengetahuan
Sistem ini digunakan untuk mengevaluasi kinerja sistem pakar itu
sendiri untuk melihat apakah pengetahuan-pengetahuan yang ada
5. Inference Engine
Program yang berisi metodologi yang digunakan untuk melakukan
penalaran terhadap informasi-informasi dalam knowledge base dan
blackboard, serta digunakan untuk memformulasikan konklusi. Ada 3
elemen utama dalam inference engine, yaitu:
Interpreter: Mengeksekusi item-item agenda yang terpilih
dengan menggunakan rule-rule dalam knowledge base yang
sesuai.
Scheduler: Akan mengontrol agenda
Consitency Enforcer: Akan berusaha memelihara
kekonsistenan dalam merepresentasikan solusi yang bersifat
darurat.
Secara umum ada dua cara yang dapat dikerjakan dalam melakukan
inferensi, yaitu:
1. Penalaran Maju (Forward Chaining)
Gambar 2.2 Diagram Forward Chaining2
2
Muhammad Arhami, Konsep Dasar Sistem Pakar, ANDI, Yogyakarta, 2005.
Observasi A aturan R1 fakta C kesimpulan 1
Aturan R3
Observasi B aturan R2 fakta D kesimpulan 2
Penalaran yang dimulai dari fakta terlebih dahulu untuk menguji
kebenaran hipotesis. Dalam penalaran maju, aturan-aturan diuji
satu demi satu dalam urutan tertentu. Saat tiap aturan diuji, sistem
pakar akan mengevaluasi apakah kondisinya benar atau salah. Jika
kondisinya benar, maka aturan itu disimpan kemudian aturan
berikutnya diuji. Sebaliknya kondisinya salah, aturan itu tidak
disimpan kemudian aturan berikutnya diuji. Proses ini akan
berulang sampai seluruh basis aturan teruji dengan berbagai
kondisi.
2. Penalaran Mundur (Backward Chaining)
Gambar 2.3 Diagram Backward Chaining3
Penalaran dimulai dari hipotesis terlebih dahulu, dan untuk
menguji kebenaran hipotesis tersebut harus dicari fakta-fakta yang
ada dalam basis pengetahuan hingga sampai pada pembuktiannya.
3
Mesin Inferensi merupakan sekumpulan program komputer yang
mengkoordinir sebab dan kesimpulan berdasarkan pada aturan dari
basis pengetahuan menjadi sebuah solusi. Mesin Inferensi menguji
aturan dan kombinasinya dengan fakta baru pada basis
pengetahuan untuk membuat kesimpulan. Karena aturan sering
bersifat heuristic dan fakta kemungkinannya hanya benar maka
kebanyakan keputusan membawa ke tingkat nyata. Mekanisme ini
akan menganalisa suatu masalah tertentu dan selanjutnya akan
mencari jawaban atau kesimpulan yang terbaik.
Kedua metode inferensi tersebut, dipengaruhi oleh 3 macam
teknik penelusuran yaitu:
1. Depth First Search
2. Breadth First Search
3. Best First Search
1. Depth First Search (Teknik Penelusuran Mendalam Pertama)
Teknik penelusuran data pada node-node secara vertikal dan
sudah terdefinisikan, misalkan dari kiri ke kanan. Proses
penelusuran ini akan dilakukan pada anaknya sebelum
dilakukan ke node-node yang selevel. Proses ini diulangi terus
Gambar 2.4 Depth First Search 4
Pada gambar di atas dijelaskan A, B, C, D, E, E, F, G, H
adalah suatu terminal pada pohon pelacakan, H adalah
keadaan tujuan dengan keadaan awal (state awal) adalah A.
Maka dengan teknik ini akan dimulai pelacakan dari A ke B
lalu ke C, ke D, baru ke E melalui C, demikian selanjutnya
sampai ditemukannya keadaan tujuan yaitu H. Keuntungan
dari pencarian ini adalah penelusuran masalah dapat digali
secara mendalam sampai ditemukannya kepastian suatu solusi
yang optimal. Kekurangannya membutuhkan waktu yang
sangat lama untuk ruang lingkup masalah yang besar sesuai
dengan banyaknya tingkat kedalaman pada pohon pelacakan
yang harus diperiksa.
4
2. Breadth First Search (Teknik Penelusuran Melebar Pertama)
Teknik penelusuran data dilakukan secara horizontal yaitu
pada semua node dalam satu level atau satu tingkatan sebelum
ke level atau tingkatan dibawahnya.
Start
End
Gambar 2.5 Breadth First Search 5
Sebagai contoh pada pohon pelacakan di atas, keadaan awal
(start) adalah A dan keadaan tujuan (end) adalah H maka
pelacakan yang dilakukan adalah sebagai berikut, dari keadaan
awal yaitu A dilanjutkan ke B, ke C, kemudian dilanjutkan ke
level berikutnya yaitu D, E, F, G, dan berakhir ke H.
Keuntungan penelusuran dengan teknik ini adalah tidak akan
terperangkap untuk mengeksplorasi sebuah jalan yang salah.
Jika ada sebuah solusi maka akan segera menemukannya,
misalkan ada banyak solusi, maka solusi yang minimal akan
cepat ditemukan.
5
Jaminan tersebut berdasarkan pada kenyataan bahwa jalan
yang lebih panjang tidak akan dieksplorasi sampai semua jalan
yang lebih pendek selesai diuji. Kekurangan teknik
penelusuran ini terletak pada waktu yang dibutuhkan yang
sangat lama apabila solusi berada dalam posisi node terakhir
sehingga menjadi tidak efisien. Dan juga tidak adanya relasi
antara suatu topik dengan topik yang lain atau harus melompat
dari satu topik ke topik yang lain sebelum topik tersebut
selesai ditelusuri.
3. Best First Search (Teknik Penelusuran Terbaik Pertama)
Penelusuran ini merupakan kombinasi dari metode depth first
search dan breadth first search dengan mengambil kelebihan
dari kedua metode tersebut. Penelusuran ini menggunakan
pengetahuan akan suatu masalah untuk melakukan panduan
pencarian ke arah node tempat di mana solusi berada.
Penelusuran jenis ini dikenal juga sebagai heuristik.
Pendekatan yang dilakukan adalah mencari solusi yang terbaik
berdasarkan pengetahuan yang dimiliki sehingga penelusuran
dapat ditentukan harus dimulai dari mana dan bagaimana
Gambar 2.6 Best First Search 6
Diasumsikan bahwa node dengan nilai yang lebih besar,
memiliki nilai evaluasi yang lebih baik. Pada saat keadaan
awal, antrian berisi A.
6Sri Kusumadewi, Artificial Intelligence (Teknik dan Aplikasinya), Graha Ilmu,
Pengujian dilakukan pada level pertama, node memiliki nilai
terbaik, sehingga menempati antrian pertama, disusul dengan
C dan B. Node D memiliki cabang E dan F yang
masing-masing bernilai 2 dan 4. Dengan demikian C merupakan
pilihan terbaik dengan menempati antrian pertama. Demikian
seterusnya. Keuntungan jenis penelusuran ini adalah
mengurangi beban komputasi karena hanya solusi yang
memberikan harapan saja yang diuji dan akan berhenti apabila
solusi sudah mendekati yang terbaik. Ini merupakan model
yang menyerupai cara manusia mengambil solusi, hanya saja
solusi yang diambil bisa saja salah dan tidak ada jaminan
bahwa solusi yang dihasilkan merupakan solusi yang mutlak
benar.
6. Basis Pengetahuan (Knowledge Base)
Basis pengetahuan merupakan inti program sistem pakar, yang
merupakan representasi pengetahuan dari seorang pakar. Basis
pengetahuan ini tersusun atas fakta yang berupa informasi tentang
obyek, dan kaidah atau aturan tertentu (rules), yang merupakan
informasi tentang cara pembangkitan fakta baru dari fakta-fakta yang
sudah ada.
7. Subsistem Penambahan Pengetahuan.
Bagian ini digunakan untuk memasukkan pengetahuan,
pengetahuan. Pengetahuan itu bisa berasal dari: ahli, buku, basis data,
penelitian, dan gambar.
2.2.5 Keuntungan Sistem Pakar
Ada beberapa keunggulan sistem pakar, diantaranya adalah:
1. Menghimpun data dalam jumlah yang sangat besar.
2. Menyimpan data tersebut untuk jangka waktu yang panjang dalam
suatu bentuk tertentu.
3. Mengerjakan perhitungan secara cepat dan tepat dan tanpa jemu
mencari kembali data yang tersimpan dengan kecepatan tinggi.
Sementara kemampuan sistem pakar diantaranya adalah:
1. Menjawab berbagai pertanyaan yang menyangkut bidang keahliannya.
2. Bila diperlukan dapat menyajikan asumsi dan alur penalaran yang
digunakan untuk sampai ke jawaban yang dikehendaki.
3. Menambah fakta kaidah dan alur penalaran sahih yang baru ke dalam
otaknya.
Selanjutnya ada banyak keuntungan bila menggunakan sistem
pakar, diantaranya adalah:
1. Menjadikan pengetahuan dan nasihat lebih mudah di dapat.
2. Meningkatkan output dan produktivitas.
3. Menyimpan kemampuan dan keahlian pakar.
4. Meningkatkan reliabilitas.
6. Merupakan panduan yang intelligence (cerdas).
7. Meningkatkan penyelesaian masalah – meneruskan panduan pakar,
penerangan, sistem pakar khas.
8. Dapat bekerja dengan informasi yang kurang lengkap dan mengandung
ketidakpastian.
9. Intellegence database (basis data cerdas), bahwa sistem pakar dapat
digunakan untuk mengakses basis data dengan cara cerdas.
Selain keuntungan-keuntungan di atas, sistem pakar seperti halnya
sistem lainnya, juga memiliki kelemahan, diantaranya adalah:
1. Masalah dalam mendapatkan pengetahuan di mana pengetahuan tidak
selalu bisa di dapatkan dengan mudah, karena kadang kala pakar dari
masalah yang kita buat tidak ada, dan kalaupun ada, kadang-kadang
pendekatan yang dimiliki oleh pakar berbeda-beda.
2. Untuk membuat suatu sistem pakar yang benar-benar berkualitas tinggi
sangatlah sulit dan memerlukan biaya yang sangat besar untuk
pengembangan dan pemeliharaannya.
3. Boleh jadi sistem tak dapat membuat keputusan.
4. Sistem pakar tidaklah 100% menguntungkan, walaupun seorang tetap
tidak sempurna atau tidak selalu benar. Oleh karena itu perlu di uji
2.2.6Perbandingan Kemampuan Seorang Pakar Dengan Sistem Pakar
Keunggulan sistem pakar dibanding seorang pakar, yaitu:
1. Sistem pakar bisa digunakan setiap hari menyerupai sebuah mesin
sedangkan seorang pakar tidak mungkin bekerja terus-menerus setiap
hari tanpa beristirahat.
2. Sistem pakar merupakan suatu software yang dapat diperbanyak dan
kemudian dibagikan ke berbagai lokasi maupun tempat yang
berbeda-beda untuk digunakan, sedangkan seorang pakar hanya bekerja pada
satu tempat dan pada saat yang bersamaan.
3. Suatu sistem pakar dapat diberi pengamanan untuk menentukan siapa
saja yang mempunyai hak akses untuk menggunakannya dan jawaban
yang diberikan oleh sistem terbebas dari proses intimidasi / ancaman,
sedangkan seorang pakar bisa saja mendapat ancaman atau tekanan
pada saat menyelesaikan permasalahan.
4. Pengetahuan (knowledge) yang disimpan pada sistem pakar tidak akan
bisa hilang / lupa, yang dalam hal ini tentu harus didukung oleh
maintenance yang baik, sedangkan pengetahuan seorang pakar
manusia lambat laun akan hilang karena meninggal, usia yang semakin
tua, maupun menderita suatu penyakit. Walaupun pengetahuan yang
dimilikinya dalam waktu yang singkat tidak akan hilang, akan tetapi
bisa saja seorang pakar mengundurkan diri dari pekerjaannya sehingga
organisasi yang memperkerjakannya akan kehilangan seorang pakar
5. Kemampuan memecahkan masalah pada suatu sistem pakar tidak
dipengaruhi oleh faktor dari luar seperti intimidasi, perasaan kejiwaan,
faktor ekonomi ataupun perasaan tidak suka. Akan tetapi sebaliknya
dengan seorang pakar yang dapat dipengaruhi oleh faktor-faktor luar
seperti yang disebutkan diatas ketika sedang menyelesaikan atau
memecahkan suatu masalah, sehingga dapat memunculkan jawaban
yang berbeda-beda atas pertanyaan yang diajukan walaupun
masalahnya sama. Atau dengan kata lain, seorang pakar boleh jadi
tidak konsisten.
6. Umumnya kecepatan dalam memecahkan masalah pada suatu sistem
pakar relatif lebih cepat dibandingkan oleh seorang pakar manusia.
Hal ini sudah dibuktikan pada beberapa sistem pakar yang terkenal di
dunia.
7. Biaya menggaji seorang pakar lebih mahal bila dibandingkan dengan
penggunaan program sistem pakar (dengan asumsi bahwa program
sistem pakar itu sudah ada).
Ada beberapa alasan mendasar mengapa sistem pakar dikembangkan
untuk menggantikan seorang pakar, diantaranya:
1. Dapat menyediakan kepakaran setiap waktu dan diberbagai lokasi.
2. Secara otomatis mengerjakan tugas-tugas rutin yang membutuhkan
seorang pakar.
3. Seorang pakar akan pensiun atau pergi.
5. Kepakaran dibutuhkan juga pada lingkungan yang tidak bersahabat.
(Arhami, M, 2005)
2.3 PHP
PHP adalah salah satu bahasa pemrograman di Internet. PHP bersifat
cepat, gratis dan murah ( gratis ), selain itu PHP mendukung penggunaan database
seperti MySQL, PostgreSQL, mSQL, Oracle etc.
Untuk dapat menjalankan PHP melalui browser, maka anda diharuskan
terlebih dahulu menginstall web server ( misalnya Apache, PWS, IIS ) lalu
menginstall PHP, sedangkan untuk menjalankan MySQL anda tidak perlu
menginstall web server, hanya saja jika ingin dijalankan melalui browser, maka
anda harus menginstall web server. Prosedur penginstallan web server, PHP dan
MySQL dapat anda baca pada manual masing – masing. Adapun manual dan
instalan Apache, PHP maupun MySQL dapat anda cari di
http://ftpsearch.itb.ac.id .
Jika anda tidak ingin direpotkan dengan prosedur penginstallan PHP, anda
dapat menjalankan PHP di direktori public_html anda di s.ee.itb.ac.id. Hal itu
dapat dilakukan karena PHP bersifat server side artinya script PHP di jalankan di
server, bukan di computer client. Jadi semakin banyak client yang menjalankan
script PHP di suatu situs, maka beban yang ditanggung oleh server semakin
bertambah.
Sintaks – sintaks dalam PHP banyak yang sama dengan C++, dalam hal
mengingat para cakru telah memperoleh pengajaran tersebut di dalam kuliah
maupun praktikum EL – 207 Komputer dan Pemrograman.
DASAR PHP
PHP dijalankan dalam file berekstensi .php, .php3 atau .phtml, itu
tergantung dengan settingan PHP anda, tetapi secara umum ekstensi file PHP
adalah .php.
Kode PHP menyatu dengan tag – tag HTML dalam satu file. Kode PHP
diawali dengan tag <? atau <?php dan ditutup dengan ?>.
Contoh : <?
phpinfo(); ?>
Struktur penulisan dalam PHP, sama seperti dalam C++, yaitu setiap
pernyataan diakhiri oleh semicolon ( ; ) dan bersifat case sensitive untuk penulisan
nama variabel. Cara penulisan komentar dalam PHP juga sama dengan C++.
TIPE DATA
PHP mengenal 5 tipe data yaitu integer, floating point, string, array dan
object. Penggunaan tipe data tidak secara ekspilisit di deklarasikan seperti dalam
C++. function ubah($str)
{
$hme->ubah("Divisi Komputer HME ITB"); print $hme->divisi;
?>
Penggunaan tipe data array akan di bahas di bagian operasi array.
OPERATOR
Dalam PHP terdapat operator artimatika, assignment, bitwise,
perbandingan, logika , increment / decrement yang kesemuanya sama dengan C++
dalam cara penggunaannya.
PERNYATAAN
Dalam PHP juga terdapat conditional statement yang cara penggunaannya sama
seperti dalam C++.
FUNGSI
Dalam PHP, tipe data balikan sebuah fungsi tidak di deklarasikan secara
eksplisit seperti dalam C++. Dalam PHP, fungsi tidak perlu dideklarasikan, cukup
di definisikan saja. Pendefinisian fungsi dapat diletakkan di awal, tengah, akhir
maupun di file lain.
Contoh : <?
print "<form action='$PHP_SELF?action=1' method='post'>"; print "Masukkan Nama Anda : <input type='text' name='nama' size=25>";
print "<input type='submit' value=' OK '></form>";
else if($date>=11 && $date<15)print "Selamat Siang $str"; else if($date>=15 && $date<18)print "Selamat Sore $str"; else print"Selamat Malam $str";
1. $divisi[3] = {“Divkom”,”Elektron”,”WS”};
2. $divisi = array(“Divkom”,”Elektron”,”WS”);
Menghitung jumlah elemen array menggunakan fungsi count($array) contoh
: count($divisi) menghasilkan nilai 3;
Mengambil potongan elemen dari suatu array, menggunakan array_slice()
array_slice(variable_array,parameter_offset, panjang);
variable_array adalah nama variable array yang ingin kita potong.
Parameter_offset, jika positif menunjukkan elemen awal pemotongan dihitung
dari depan, sedangkan jika negatif di hitung dari belakang ( yaitu urutan ke
parameter_offset dari belakang ). Panjang yaitu menentukan panjang elemen
yang dipotong. Jika panjang tidak diberikan, maka array dipotong mulai dari
nilai elemen yang ditentukan oleh parameter_offset sampai elemen terakhir.
OPERASI FILE
Membuka File fopen(nama_file, mode_akses);
Menutup File fclose(file_pointer)
Tag HTML tidak diabaikan
fgetss(file_pointer, panjang_string)
Mengabaikan tag HTML
Menulis ke File fputs(file_pointer,string)
Memeriksa apakah pointer telah berada di akhir file feof(file_pointer)
Ket : Gunakan fungsi
mode_akes pada PHP sama dengan mode akses pada C++.
$file = fopen(“coba.txt”,”r+w”). $file disebut sebagai file_pointer
PHP DAN MYSQL
Bagian ini tidak membahas tentang MySQL, namun bagian ini membahas
pengaturan hubungan antara PHP dan MySQL secara general. Mengenai struktur
database, table, field mauoun pengertian querinya diberikan pada modul MySQL.
Untuk dapat berhubungan dengan MySQL, PHP harus membuka
hubungan ke server MySQL, yaitu dengan
mysql_connect(nama_host, nama_user, password);
Setelah tersambung, maka user memilih database, yaitu dengan
mysql_select_db(nama_database);
Untuk mengeksekusi query – query yang ada pada MySQL namun tidak
dimiliki oleh PHP digunakan fungsi
mysql_query(query);
Untuk mengambil hasil query yang dilakukan oleh mysql_query() digunakan
fungsi
mysql_fetch_row(result_id) atau
mysql_fetch_array(result_id)
Beda antara mysql_fetch_row() dan mysql_fetch_array() adalah pada
mysql_fetch_array() hasil yang diperoleh dalam bentuk array assosiatif.
Setelah penggunaan database mysql selesai, maka koneksi diputus dengan
menggunakan
mysql_close();
2.4 Deteksi Kerusakan Komputer Berdasarkan Bunyi
Saat komputer dihidupkan, BIOS melakukan POST (power-on self test).
POST ini diperlukan untuk memastikan semua sistem berfungsi sebagaimana
mestinya, dan juga mencari informasi tentang hardware apa saja yang terpasang di
komputer. Saat BIOS (basic input output system) mendeteksi adanya masalah saat
POST, BIOS akan mengirimkan pesan kesalahan. Pada beberapa kasus, masalah
tersebut dapat dideteksi lebih awal, sehingga BIOS tidak dapat mengakses video
card dan tidak dapat menampilan pesan kesalahan tersebut, jika seperti ini yang
terjadi, BIOS akan mengeluarkan suara “bip” yang memiliki pola tertentu sesuai
dengan kesalahan yang diidentifikasinnya. Klo suara “bip” tunggal muncul setelah
tampilnya pesan startup pada monitor adalah normal dan tidak ada kegagalan
POST belum selesai dan belum ada informasi apapun yang ditampilkan pada
layar.
Untuk lebih jelasnya, adalah sebagai berikut:
Ketika komputer dihidupkan pertama kali, terdengar suara “bip” dan
diikuti adanya pesan start-up (yaitu : size hardisk, ram dan tipe dari BIOS)
Berarti komputer dalam keadaan normal
Tetapi, ketika komputer dihidupkan, selanjutnya tidak ada pesan start-up,
dan diikuti bunyi “bip” yang berulang-ulang, hal itu dapat dipastikan
komputer dalam keadaan error
1. AMI BIOS
- 1x suara “bip”
Kegagalan refresh DRAM. sistem mempunyai masalah dalam mengakses memori
untuk merefreshnya.
- 2x suara “bip”
Kegagalan rangkaian parity, parity bit berfungsi untuk mendeteksi dan
mengkoreksi error, secara umum terjadi bermasalah pada memori atau
motherboard
- 3x suara “bip”
Kegagalan pada base memori 64K, kegagalan ini bisa disebabkan chip dalam slot
memory ada yang rusak.
- 4x suara “bip”
Kegagalan pada timer, kemungkinan ada kesalahan pada satu atau lebih timer
yang digunakan untuk mengontrol fungsi-fungsi pada motherboard.
- 5x suara “bip”
Kegagalan prosesor, mungkin karena kepanasan/pemasangan pada socketnya
- 6x suara “bip”
Kegagalan pada keyboard controller/gate A20. Keyboard controller adalah chip
pada motherboard yang mengendalikan keyboard.
- 7x suara “bip”
Kesalahan pada prosesor.
- 8x suara “bip”
Kegagalan baca/tulis memory display.
- 9x suara “bip”
Kerusakan BIOS.
- 10x suara “bip”
Kesalahan CMOS.
- 11x suara “bip”
Kerusakan pada cache memory.
Informasi kerusakan :
- untuk no. 1,2,3 cobalah perbaiki posisi memory, bila tetap tidak bisa berarti
memory harus diganti.
- untuk no. 4,5,7,10 motherboard rusak.
- untuk no. 6, coba perbaiki dudukan chip keyboard controller, jika masih error,
gantilah dengan chip yang baru.
- untuk no. 8, kerusakan pada memory VGA.
- untuk no. 9, kegagalan pada chip BIOS.
2. AWARD
- 1x suara “bip” panjang
Masalah pada memory, mungkin memory tidak terpasang dengan benar, bisa juga
ada chip dalam memory yang sudah rusak.
- 1x suara “bip” panjang dan 2 “bip” pendek
Kesalahan pada displaynya, kemungkinan pemasangan VGA card tidak benar /
tidak tertancap dengan benar pada slot AGP / PCI X, bisa juga ada konflik antara
IRQ VGA onboard dengan VGA Card.
- 1x suara “bip” panjang dan 3 “bip” pendek
Kesalahan sama denga VGA card.
- suara “bip” sambung – menyambung
3.1 Perancangan Program
Perancangan program harus dirancang dengan jelas dan mengenai sasaran,
karena program yang bagus tergantung pada perancangannya. Suatu program
dapat dengan mudah dimengerti oleh user dan hasilnya dapat bermanfaat bagi
pemakainya. Perancangan sistem pakar meliputi perancangan basis pengetahuan
(Knowledge Base), perancangan mesin inferensi (Inference Engine), dan
perancangan antar muka pemakai (User Interface).
Program yang akan dibuat adalah program sistem pakar untuk perbaikan
komputer, serta akan diberikan suatu cara memperbaikinya dengan menggunakan
PHP.
3.2 Perancangan Basis Pengetahuan (Knowledge Base)
Basis pengetahuan merupakan inti program sistem pakar, yang merupakan
representasi pengetahuan dari seorang pakar. Basis pengetahuan ini tersusun atas
fakta yang berupa informasi tentang obyek, dan kaidah atau aturan tertentu
(rules), yang merupakan informasi tentang cara pembangkitan fakta baru dari
fakta-fakta yang sudah ada. Dalam pengambilan keputusan sistem pakar sangat
tergantung pada basis pengetahuan yang dimiliki, sebab jika ternyata basis
pengetahuan salah atau kurang lengkap, maka sistem tersebut tidak akan secara
Untuk menghasilkan program yang mudah berkembang, maka basis
pengetahuan dibuat terpisah dengan program utama. Dengan tujuan untuk
mempermudah dalam memperbarui atau menambah basis pengetahuan dan dapat
dilakukan setiap saat tanpa harus mengubah programnya.
Perancangan program sistem pakar ini menggunakan metode penalaran
Forward Chaining. Pelacakan dilakukan terhadap gejala-gejala yang timbul yang
terserang penyakit, kemudian diberikan suatu cara pengobatan penyakit tersebut.
Cara kerja pada basis pengetahuan ini adalah sebagai berikut:
1. Basis pengetahuan menerima aturan yang sudah ditentukan oleh mesin
inferensi.
2. Basis pengetahuan membuka tampilan menu yang berisi hasil-hasil analisa
dari masing-masing aturan.
3. Aturan yang diterima dari mesin inferensi dibandingkan dengan aturan yang
tersimpan dalam tabel.
4. Hasil dari analisa aturan ditampilkan pada tampilan menu.
3.3 Perancangan Basis Aturan (Rule Base)
Pada dasarnya rule terdiri dari dua bagian pokok, yaitu bagian premise
atau kondisi dan bagian conclution atau kesimpulan. Struktur rule secara logika
menghubungkan satu atau lebih kondisi (premise) pada bagian IF (yang akan
menguji kebenaran dari serangkaian data) dengan satu atau lebih kesimpulan
Berikut ini merupakan contoh rule base sistem untuk menemukan solusi
perbaikan komputer yang sesuai dengan gejala yang dialami dengan
menggunakan metode Forward Chaining:
Gambar 3.1 Skema Forward Chaining
Keterangan:
1. AMI BIOS
- 1x suara “bip”
Kegagalan refresh DRAM. sistem mempunyai masalah dalam mengakses memori
untuk merefreshnya.
- 2x suara “bip”
mengkoreksi error, kalau ini terjadi umumnya bermasalah
pada memori atau motherboard
- 3x suara “bip”
Kegagalan pada base memori 64K, kegagalan ini bisa disebabkan chip dalam slot
memory ada yang rusak.
- 4x suara “bip”
Kegagalan pada timer. kemungkinan ada kesalahan pada satu atau lebih timer
yang digunakan untuk mengontrol fungsi-fungsi
pada motherboard.
- 5x suara “bip”
Kegagalan prosesor, mungkin karena kepanasan / pemasangan pada socketnya
tidak pas atau benar
- 6x suara “bip”
Kegagalan pada keyboard controller/gate A20. Keyboard controller adalah chip
pada motherboard yang mengendalikan keyboard anda
- 7x suara “bip”
Kesalahan pada prosesor
- 8x suara “bip”
Kegagalan baca/tulis memory display
- 9x suara “bip”
Kerusakan BIOS
- 10x suara “bip”
- 11x suara “bip”
Kerusakan pada cache memory
Kerusakan yang terjadi :
1. untuk no. 1,2,3 cobalah perbaiki posisi memory, bila tetap tidak bisa anda
harus ganti memory yang baru
2. untuk no. 4,5,7,10 motherboard anda rusak
3. Untuk no. 6, coba anda perbaiki dudukan chip keyboard controller, jika
masih error, gantilah dengan chip yang baru.
4. Untuk no. 8, kerusakan pada memory VGA
5. Untuk no. 9, kegagalan pada chip BIOS
6. Untuk no. 11, ganti cache memory
Contoh Penjelasan :
1. IF 1x Suara “bip” AND 2x Suara “bip” AND 3x Suara bip” THEN
cobalah perbaiki posisi memory, bila tetap tidak bisa anda harus ganti
memory yang baru.
2. IF 4x Suara “bip” AND 5x Suara “bip” AND 7x Suara bip” THEN
motherboard anda rusak.
Dan ada beberapa Pesan error berupa kode-kode angka pada layer monitor
Ada banyak pesan error yang dimunculkan pada saat terjadi kerusakan atau
kesalahan dalam memasang peripheral saat merakit suatu personal computer
diantaranya yaitu :
Tabel 3.1 kode kerusakan
CODE PROBLEM AREA
02X
System board interrupt circuitry
System board timer circuitry
System board timer interrupt
Time and date not set run setup
Memory size setting incorrect
DMA test error
Keyboard error
Keyboard malfunction (check cable/keyboard;
noresponse to reset
Keyboard or system unit error ; CMOS ram
3.4 Pembentukan Data Flow Diagram
3.4.1 Context Diagram Sistem Pakar
Hasil Data Konsultasi
Data Rule Data Login
Administrator Pengguna
1 Sistem Konsultan
Komp
+
Gambar 3.2 Context Diagram Sistem Pakar
Keterangan:
Gambar diatas mempunyai dua entitas yaitu pengguna dan Administrator.
Dimana pengguna menginputkan data konsultasi ke proses sistem pakar
sedangkan outputnya berupa hasil konsultasi. Untuk administrator
menginputkan data login administrator, data kerusakan dan data rule ke dalam
DFD Level 0
Gambar diatas mempunyai dua entitas yaitu pengguna dan Administrator.
Dimana pada proses login, pasien menginputkan administrator menginputkan
data login admin yang oleh sistem dibaca dari tabel admin. Pada proses
konsultasi pengguna menginputkan data konsultasi yang oleh sistem dibaca
dari tabel rule dan outputnya berupa hasil konsultasi kemudian hasilnya akan
data rule dan data perbaikannya dimana data-data ini kemudian disimpan ke
Gambar 3.4 DFD Level 1 Dari Level 0 Proses 1.1
Keterangan:
Gambar diatas mempunyai dua entitas yaitu administrator. Dimana pada
proses baca login masukan, administrator menginputkan data login
administrator yang berupa nama dan password administrator kemudian data
DFD Level 1 Dari Level 0 Proses 1.2
data rule Data Konsultasi
Hasil konsultasi Pengguna
Pengguna
1
forward chaining
data null
Gambar 3.5 DFD Level 1 Dari Level 0 Proses 1.2
Keterangan:
Gambar diatas mempunyai satu entitas yaitu pengguna. Dimana pada proses
forward chaining pasien menginputkan data konsultasi yang oleh sistem
diambil dari tabel rule. Untuk outputnya pengguna mendapatkan hasil
3.4.2 Model Konseptual ( CDM )
Model data konseptual adalah rancangan dalam bentuk diagram
sebelum pembuatan database secara detail. Model data konseptual pada
aplikasi sistem ini merepresentasikan rancangan basis data konseptual
yang nantinya akan digunakan oleh sistem ini. Untuk lebih jelasnya dapat
dilihat pada gambar berikut :
mengisi
konseptual yang telah dijelaskan diatas. Model data ini menghasilkan
tabel-tabel yang nantinya akan dipakai dalam implementasi sistem yang dibuat.
Untuk lebih jelasnya dapat dilihat pada gambar dibawah ini:
3.5 Pembentukan Entity Relationship Diagram
Sebagai lanjutan implementasi dari entity relationship menjadi tabel yang
lebih baik, dengan melalui tahapan atau aturan berdasarkan cardinality ratio dan
participant constrant, dimana terdapat dua participant yaitu: total dan partial.
Pada perancangan database secara umum, cardinality ratio dan participant
constrant pada tabel dapat digambarkan sebagai berikut:
Setelah penjabaran dari entity relationship, maka sudah didapatkan beberapa
tabel yang menjadi tabel akhir dari sistem yang dibangun. Dari hasil mapping
diatas didapat beberapa tabel sebagai berikut:
Rule (Kode_Rule, Kode_Gejala, Kode_Perbaikan)
Admin (Kode_administrator, password)
3.6 Perancangan Database
Desain struktur data untuk basis pengetahuan (knowledge base) program
sistem pakar ini dibuat dalam bentuk tabel-tabel yang saling berhubungan:
a. Nama Tabel : Rule
Primary Key : Kode rule
Foreign Key : Kode gejala, kode perbaikan
Fungsi : Menyimpan data rule
Tabel 3.2 Rule
Nama Field Tipe Data Lebar Keterangan
b. Nama Tabel : Administrator
Primary Key : Password Administrator
Foreign Key : -
Fungsi : Menyimpan data Administrator
Tabel 3.3 Administrator
Nama Field Tipe Data Lebar Keterangan
Nama
Administrator
Varchar 25 Nama Administrator
Passwor
Administrator
Varchar 8 Password Administrator
3.7 Perancangan Mesin Inferensi (Inference Engine)
Mesin Inferensi (Inference Engine) merupakan bagian yang mengandung
mekanisme fungsi berfikir dan pola-pola penalaran sistem yang digunakan oleh
seorang pakar. Fungsi mesin inferensi merupakan pembuktian hipotesa. Bila
hipotesa sudah dimasukkan dalam expert system, mesin inferensi pertama-tama
mengecek apakah hipotesa itu sudah disimpan dalam pangkalan data atau belum.
Jika sudah, maka dianggap sebagai fakta yang sudah dibuktikan, dan oleh karena
itu operasi tidak perlu dilanjutkan.
Teknik inferensi yang digunakan pada program sistem pakar ini adalah
teknik penalaran ke depan (Forward Chaining). Penalaran dilakukan terhadap
Teknik penalaran ke depan (Forward Chaining)
Pada teknik ini pendekatan penalaran dimulai dari sekumpulan data yang
berupa gejala kerusakan untuk menuju suatu kesimpulan yaitu kerusakan yang
dialami. Dalam perancangan mesin inferensi pada program sistem pakar ini,
sistem memberikan daftar pertanyaan mengenai gejala-gejala apa saja yang terjadi
pada suara komputer, sehingga mesin inferensi akan dapat melakukan analisa dan
mengambil kesimpulan perbaikan yang akan dilakukan.
Aliran data yang terdapat pada perancangan mesin inferensi untuk
perbaikan komputer dapat digambarkan pada gambar berikut ini:
Mulai
Menjalankan Basis
Pengetahuan
Menampilkan Beberapa
kerusakan padakomputer
Melakukan Proses Penelusuran
Pada Data yang Dimasukkan
Memberitahukan Kerusakan
Pada Komputer dan Solusinya
Dalam bab ini akan dibahas implementasi pembuatan program serta cara
penggunaannya.
4.1 Perangkat yang dibutuhkan
Perangkat yang dibutuhkan dalam membuat aplikasi ini terbagi menjadi
dua bagian yaitu:
a. Perangkat keras
Processor Intel Pentium 3 - 733 Mhz
Memory 64 MB
Harddisk 10 GB
Printer Canon BJC - 2100SP
Monitor
Mouse
Keyboard
b. Perangkat lunak
Power Designer 6.0
power designer 12
Visio 2003
4.2 Implementasi
4.2.1 Implementasi Data
Dalam sub-bab ini merupakan database yang dibuat untuk
pembuatan Sistem Pakar Kerusakan pada Komputer ini dimana Admin
dapat mengedit pada aplikasi ini dan Menu ini berisikan tentang data-data
pada basis pengetahuan dan data-data pada basis aturan yang merupakan
kumpulan dari premis
.
a. Tabel Data
Gambar 4.1 Struktur Tabel Data
Pada gambar 4.1 diatas dapat dijelaskan bahwa semua data rule dan
inputan pertanyaan akan masuk pada table data ini, dimana Admin
yang mengatut semua rule yang akan berjalan pada aplikasi ini, jadi ini
table berfungsi sangat penting dalam system pakar pada kerusakan
b. Tabel Admin
Gambar 4.2 Tabel Admin
Pada gambar 4.2 diatas dapat dijelaskan, sebagai fungsi untuk
menyimpan data login administrator dan juga menyimpan data yang
telah dirubah oleh Admin selaku sebagai user pakar.
4.2.2 Menu Index
Pertama kali aplikasi dijalankan akan muncul Index Form seperti
gambar di bawah ini:
4.2.3 Menu Login
Menu login merupakan awal dari masuknya program ini, menu ini
memiliki username, dan password yang berfungsi untuk membuka form
atau mengaktifkan menu-menu berdasarkan username-nya. Ini berlaku jika
ingin login sebagai pakar. Sedangkan user biasa cukup langsung
menekan tombol Login, maka dapat langsung menggunakan aplikasi.
Berikut tampilan form login pemakai:
Gambar 4.4 Form Login Untuk Pakar
Sedangkan user biasa cukup langsung menekan tombol Login,
maka dapat langsung menggunakan aplikasi.
4.2.4 Form Input Pakar
Gambar 4.6 Form Input Pakar
Pada gambar diatas 4.6 menerangkan bahwa seorang pakar setelah
berhasil login, maka seoarang pakar tersebut akan melakukan membuat
sebuah rule yang nantinya bisa diakses oleh pengguna yang sedang
membutuhkannya.
4.2.5 Form Pilih
Gambar 4.7 Form Pilih Gejala
Pada gamabr 4.7 diatas bisa dijelaskan bahwa form pilih tersebut
nantinya akan digunakan oleh pengguna yang sedang memakai sistem
Dalam bab ini akan dibahas uji coba dan implementasi pembuatan
program serta cara penggunaannya.
5.1 Implementasi
5.1.1 Implementasi Data
Dalam sub-bab ini merupakan database yang dibuat untuk
pembuatan Sistem Pakar Kerusakan pada Komputer ini.
a. Tabel Data
Gambar 5.1 Struktur Tabel Data
Pada gambar 5.1 diatas dapat dijelaskan bahwa semua data rule dan
inputan pertanyaan akan masuk pada table data ini, jadi ini table
berfungsi sangat penting dalam system pakar pada kerusakan computer
ini. Pada tempat penyimpanan itu banyak sekali data yang nantinya
sama, sehingga kemungkinan rule berjalan dengan baik akan disulitkan
b. Isi Data Tabel Data
Gambar 5.2 View table data
Pada gambar 5.2 diatas dapat dijelaskan bahwa semua rule dan data
pertanyaan yang disguhkan terhadap pengunjung akan dimasukkan
atau disimpan pada table data ini, jadi sang pakar bisa memasukkan
data pertanyaan dan hasil dari beberapa gejala tersebut.
c. Tabel Admin
Gambar 5.3 Tabel Admin
Pada gambar 5.3 diatas dapat dijelaskan, sebagai fungsi untuk
d. View Tabel Admin
Gambar 5.4 View Tabel Admin
Pada gambar 5.4 diatas dapat dijelaskan bahwa tabel admin ini
difungsikan untuk menyimpan username dan password seorang admin
atau pakar yang tugasnya untuk mengisi data sistem pakar yang
nantinya bisa dipakai oleh para pengguna.
5.2 Uji Coba
Pertama kali aplikasi dijalankan akan muncul Index Form seperti
gambar di bawah ini, didalam form pada gambar 5.6 dibawah ini bahwa
ada 2 pilihan yaitu untuk pengguna dan juga untuk admin, sehingga para
pengguna bisa memilih hak aksesnya mana yang perlu dan diijinkan untuk
Gambar 5.5 Form Index
5.3 Menu Login
Menu login merupakan awal dari masuknya program ini, menu ini
memiliki username, dan password yang berfungsi untuk membuka form
atau mengaktifkan menu-menu berdasarkan username-nya. Ini berlaku jika
ingin login sebagai pakar. Sedangkan user biasa cukup langsung
menekan tombol Login, maka dapat langsung menggunakan aplikasi.
Berikut tampilan form login pemakai:
Gambar 5.6 Form Login Untuk Pakar
Sedangkan user biasa cukup langsung menekan tombol Login,
Gambar 5.7 Form Login Untuk Pakar/Admin
Pada gambar 5.7 diatas dapat dijelaskan bahwa apabila administrator
memasukkan username dan password yang salah maka sistem tidak akan bisa
masuk, meskipun pengguna juga mencoba tidak akan bisa, hal ini karena didalam
databasenya MYSQL field dari username dan password ini sudah ternkripsi md5,
sehingga sulit untuk dibaca.
5.4 Form Input Pakar
Gambar 5.8 Form Input Pakar
Pada gambar diatas 5.8 menerangkan bahwa seorang pakar setelah
sebuah rule yang nantinya bisa diakses oleh pengguna yang sedang
membutuhkannya.
5.5 Form Update Data Rule
Gambar 5.9 Form Pilih Gejala
Pada gambar 5.9 diatas bisa dijelaskan bahwa form edit atau ubah
diatas, bahwa seoarang pakar bisa melakukan ubah data rule dan juga field
yang menjelaskan jenis kerusakannya hardwarenya.
5.6 Menu Logout
Gambar 5.10 Menu Logout
Pada gambar 5.10 diatas menjelaskan bahwa seorang administrator ini
harus memilih menu logout ini, hal ini dikarenakan supaya bisa menghapus semua
session yang ada di browser, sehingga data-data yang telah dikerjakan oleh
5.7 Menu Pengguna
Di dalam menu pengguna ini, para pengguna hanya akan dihadaptkan
kepada beberapa soal yang isinya menyangkut dengan gejala-gejala kerusakan
pada komputer, maka form-form isian ini dapat digambarkan sebagai berikut:
Gambar 5.11 Menu Pilihan Sistem Pakar
Pada gambar 5.11 diatas dapat dijelaskan bahwa pengguna setelah
memilih menu pengguna, maka akan dihadapkan dengan form pilihan seperti
digambar 5.11 diatas.
Apabila pada gambar 5.11 diatas pengguna memilih menu yang ”YA”
maka akan masuk ke dalam pada gambar 5.12 dibawah ini
Gambar 5.12 Next Menu Pilihan Sistem Pakar
Jadi setelah dilihat ada perbedaan pada gambar 5.11 dan 5.12, yaitu
terletak pada isi pertanyaannyal, kemudian apabila pengguna memilih menu
Gambar 5.13 View Diagnosa Kerusakan
Pada gambar 5.13 diatas bisa dijelaskan bahwa setelah pada gambar 5.12
memilih menu ”TIDAK”, maka diagnosa pada gambar 5.12 adalah seperti pada
gambar 5.13, karena pada pertanyaan yang kedua pengguna memilih menu
”TIDAK”, apabila pengguna memilih menu ”YA”, maka pertanyaan akan