BAB II LANDASAN TEORI
2.1
Sistem Pakar Sistem pakar adalah sistem berbasis komputer yang menggunakan
pengetahuaan, fakta dan teknik penalaran dalam memecahkan masalah yang biasanya hanya dapat dipecahkan oleh seorang pakar dalam bidang tersebut (Martin dan Oxman, 1998). Pada dasarnya sistem pakar diterapkan untuk mendukung aktivitas pemecahan masalah. Beberapa aktivitas pemecahan yang dimaksud antara lain: pembuatan keputusan (decision making), pemanduan pengatahuan (knowledge fusing),
pembuatan
desain
(designing),
(forecasting),
pengaturan (regulating),
(diagnosing),
perumusan
(prescribing),
perencanaan (planning),
prakiraan
pengendalian (controlling),
diagnosis
penjelasan
(explaining),
pemberian
nasihat (advising) dan pelatihan (tutoring). Selain itu sistem pakar juga dapat berfungsi sebagai asisten yang pandai dari seorang pakar (Martin dan Oxman, 1998). Sistem pakar dibuat pada wilayah pengetahuan tertentu untuk suatu kepakaran tertentu yang mendekati kemampuan manusia di salah satu bidang. Sistem pakar mencoba mencari solusi yang memuaskan sebagaimana yang dilakukan oleh seorang pakar. Selain itu sistem pakar juga dapat memberikan penjelasan terhadap langkah yang diambil dan memberikan alasan atas saran atau kesimpulan yang ditemukannya. Biasanya sistem pakar hanya digunakan untuk
9
10
memecahkan masalah yang memang sulit untuk dipecahkan dengan pemrograman biasa, mengingat biaya yang diperlukan untuk membuat sistem pakar jauh lebih besar dari pembuatan sistem biasa. Secara umum, sistem pakar adalah sistem yang berusaha mengadopsi pengetahuan
manusia
ke
komputer
yang
dirancang
untuk
memodelkan
kemampuan menyelesaikan masalah seperti layaknya seorang pakar. Dengan sistem pakar ini, orang awam pun dapat menyelesaikan masalahnya atau sekedar mencari suatu informasi berkualitas yang sebenarnya hanya dapat diperoleh dengan bantuan para ahli di bidangnya. Sistem pakar ini juga akan dapat membantu
aktivitas
para pakar sebagai asisten yang berpengalaman dan
mempunyai pengetahuan yang dibutuhkan. Dalam penyusunannya, sistem pakar mengkombinasikan kaidah-kaidah penarikan kesimpulan (inference rules) dengan basis pengetahuan tertentu yang diberikan oleh satu atau lebih pakar dalam bidang tertentu. Kombinasi dari kedua hal tersebut disimpan
dalam komputer, yang selanjutnya digunakan dalam
pengambilan keputusan untuk penyelesaian masalah tertentu. 2.1.1
Ciri-Ciri Sistem Pakar Sistem pakar yang baik harus memenuhi ciri-ciri sebagai berikut :
a.
Terbatas pada bidang yang spesifik.
b.
Dapat memberikan penalaran untuk data-data yang tidak lengkap atau tidak pasti.
c.
Dapat mengemukakan rangkaian alasan yang diberikan dengan cara yang dapat dipahami.
11
d.
Berdasarkan rule atau kaidah tertentu.
e.
Dirancang untuk dapat dikembangkan secara bertahap.
f.
Outputnya bersifat nasihat atau anjuran.
g.
Output tergantung dari dialog dengan user.
h.
Knowledge base dan inference engine terpisah.
i.
Dapat digunakan dalam berbagai jenis komputer.
2.1.2
Keuntungan Sistem Pakar Secara garis besar, banyak manfaat yang dapat diambil dengan adanya
sistem pakar, antara lain : a.
Memungkinkan orang awan bisa mengerjakan pekerjaan para ahli.
b.
Bisa melakukan proses secara berulang secara otomatis.
c.
Menyimpan pengetahuan dan keahlian para pakar.
d.
Meningkatkan output dan produktivitas.
e.
Menigkatkan kualitas.
f.
Mampu mengambil dan melestarikan keahlian para pakar (terutama yang
termasuk keahlian langka). g.
Mampu beroperasi dalam lingkungan yang berbahaya.
h.
Memiliki kemampuan untuk mengakses pengetahuan.
i.
Memiliki reabilitas.
j.
Meningkatkan kapabilitas sistem komputer.
k.
Memiliki kemampuan untuk bekerja dengan informasi yang tidak lengkap
dan mengandung ketidakpastian. l.
Sebagai media pelengkap dalam pelatihan.
12
m.
Meningkatkan kapabilitas dalam penyelesaian masalah.
n.
Menghemat waktu dalam pengambilan keputusan.
2.1.3 Kelemahan Sistem Pakar Di samping memiliki beberapa keuntungan, sistem pakar juga memiki beberapa kelemahan, antara lain : a.
Masalah dalam mendapatkan pengetahuan di mana pengetahuan tidak
selalu bisa didapatkan dengan mudah, karena kadangkala pakar dari masalah yang kita buat tidak ada dan kalaupun ada kadang-kadang pendekatan yang dimiliki oleh pakar berbeda-beda. b.
Untuk membuat suatu sistem pakar yang benar-benar berkualitas tinggi
sangatlah sulit dan memerlukan biaya yang sangat besar untuk pengembangan dan pemeliharaannya. c.
Boleh jadi sistem tak dapat membuat keputusan.
d.
Sistem pakar tidaklah 100% menguntungkan, walaupun seorang tetap
tidak sempurna atau tidak selalu benar. Oleh karena itu perlu diuji ulang secara teliti sebelum digunakan. Dalam hal ini peran manusia tetap merupakan faktor dominan. 2.1.4 Alasan Pengembangan Sistem Pakar Sistem pakar sendiri dikembangkan lebih lanjut dengan alasan : a.
Dapat menyediakan kepakaran setiap waktu dan berbagai lokasi.
b.
Secara
otomatis
mengerjakan
tugas-tugas
seorang pakar . c.
Seorang pakar akan pensiun atau pergi.
rutin
yang
membutuhkan
13
d.
Seorang pakar adalah mahal.
e.
Kepakaran dibutuhkan juga pada lingkungan yang tidak bersahabat.
2.1.5 Modul Penyusunan Sistem Pakar Menurut Staugaard (1987) suatu sistem pakar disusun oleh tiga modul utama yaitu : a.
Modul Penerimaan Pengetahuan (Knowledge Acquisition Mode). Sistem berada pada modul ini, pada saat ia menerima pengetahuan dari
pakar. Proses mengumpulkan pengetahuan-pengetahuan yang akan digunakan untuk pengembangkan sistem, dilakukan dengan bantuan knowledge engineer. Peran knowledge engineer adalah sebagai penghubung antara suatu sistem pakar dengan pakarnya. b.
Modul Konsultasi (Consultation Mode) Pada
saat
sistem berada pada posisi memberikan jawaban atas
permasalahan yang diajukan oleh user, sistem pakar berada dalam modul konsultasi. Pada modul ini, user berinteraksi dengan sistem dengan mejawab pertanyaan-pertanyaan yang diajukan oleh sistem. c.
Modul Penjelasan (Explanation Mode) Modul ini menjelaskan
proses
pengambilan
keputusan oleh sistem
(bagaimana keputusan dapat diperoleh). 2.1.6 Struktur Sistem Pakar Sistem pengembangan
pakar
disusun
(development
oleh
dua
bagian
environment)
dan
utama,
yaitu
lingkungan
lingkungan
konsultasi
(consultation environment) (Turban, 1995). Lingkungan pengembangan sistem
14
pakar digunakan untuk memasukkan pengetahuan pakar ke dalam lingkungan sistem pakar, sedangkan lingkungan konsultasi digunakan oleh pengguna yang bukan pakar guna memperoleh pengetahuan pakar. Komponen- komponen sistem pakar dalam kedua bagian tersebut dapat dilihat dalam gambar 2.1 berikut ini :
LINGKUNGAN PENGEMBANGAN
LINGKUNGAN KONSULTASI Pemakai Fakta tentang Kejadian tertentu
Basis Pengetahuan : fakta dan aturan
Antar Muka
Fasilitas Penjelasan Knowledge engineer Akuisisi pengetahuan
Mesin Inferensi Aksi yang Direkomendasikan Pakar
Workplace
Gambar 2.1
Perbaikan Pengetahuan
Arsitektur Sistem Pakar (sumber: Turban (1995))
15
Komponen-komponen yang terdapat dalam sistem pakar adalah seperti yang terdapat pada Gambar 2.1, yaitu User Interface (antarmuka pengguna), basis pengetahuan,
akuisisi
pengetahuan,
mesin
inferensi,
workplace,
fasilitas
penjelasan, perbaikan pengetahuan. 2.1.6.1 Antarmuka Pengguna (User Interface) User interface merupakan mekanisme yang digunakan oleh pengguna dan sistem pakar untuk berkomunikasi. Antarmuka menerima informasi dari pemakai dan mengubahnya ke dalam bentuk yang dapat diterima oleh sistem. Selain itu antarmuka menerima informasi dari sistem dan menyajikannya ke dalam bentuk yang dapat dimengerti oleh pemakai. Menurut McLeod (1995), pada bagian ini terjadi dialog antara program dan pemakai, yang memungkinkan sistem pakar menerima intruksi dan informasi (input) dari pemakai, juga memberikan informasi (output) kepada pemakai. 2.1.6.2 Basis Pengetahuan Basis
pengetahuan
mengandung
pengetahuan
untuk
pemahaman,
formulasi dan penyelesaian masalah. Komponen sistem pakar ini disusun atas dua elemen dasar, yaitu fakta dan aturan. Fakta merupakan informasi tentang obyek dalam area permasalahan tertentu, sedang aturan merupakan informasi tentang cara bagaimana memperoleh fakta baru dari fakta yang telah diketahui. Dalam studi kasus pada sistem yang berbasis pengetahuan terdapat beberapa karakteristik yang dibangun untuk membantu kita dalam membentuk serangkaian prinsip-prinsip arsitekturnya. Prinsip tersebut meliputi : a.
Pengetahuan merupakan kunci kekuatan sistem pakar.
16
b.
Pengetahuan sering tidak pasti dan tidak lengkap.
c.
Pengetahuan sering miskin spesifikasi.
d.
Amatir menjadi ahli secara bertahap.
e.
Sistem pakar harus fleksibel.
f.
Sistem pakar harus transparan. Sejarah penelitian di bidang kecerdasan buatan telah menunjukkan
berulang kali bahwa pengetahuan adalah kunci setiap sistem cerdas (intelligence system). 2.1.6.3 Akuisisi Pengetahaun (Knowledge Acquisition) Akuisisi pengetahuan adalah akumulasi, transfer dan transformasi keahlian dalam menyelesaikan masalah dari sumber pengetahuan ke dalam program komputer. Dalam tahap ini knowledge engineer berusaha menyerap pengetahuan untuk selanjutnya ditransfer ke dalam basis pengetahuan. Pengetahuan diperoleh dari pakar, dilengkapi dengan buku, basis data, laporan penelitian dan pengalaman pemakai. 2.1.6.4 Mesin Inferensi Komponen ini mengandung mekanisme pola pikir dan penalaran yang digunakan oleh pakar dalam menyelasikan suatu masalah. Mesin inferensi adalah program komputer
yang
memberikan
metodologi untuk
penalaran tentang
informasi yang ada dalam basis pengetahuan dan dalam workplace dan untuk memformulasikan kesimpulan.(Turban, 1995)
17
2.1.6.5 Workplace Workplace merupakan area dari sekumpulan memori kerja (working memory). Workplace digunakan untuk merekam hasil-hasil antara dan kesimpulan yang dicapai. Ada 3 tipe keputusan yang direkam, yaitu: a.
Rencana : Bagaimana menghadapi masalah.
b.
Agenda : Aksi-aksi yang potensial.
c.
Solusi : calon aksi yang akan dibangkitkan.
2.1.6.6 Fasilitas Penjelasan Fasilitas penjelasan adalah komponen tambahan yang akan meningkatkan kemampuan sistem pakar. Komponen ini menggambarkan penalaran sistem kepada pemakai. Fasilitas penjelasan dapat menjelaskan perilaku sistem pakar dengan menjawab pertanyan-pertanyaan sebagai berikut (Turban, 1995): a.
Mengapa pertanyaan tertentu ditanyakan oleh sistem pakar ?
b.
Bagaimana kesimpulan tertentu diperoleh ?
c.
Mengapa alternatif tertentu ditolak ?
d.
Apa rencana untuk memperoleh penyelesaian ?
2.1.6.7 Perbaikan Pengetahuan Pakar kinerjanya
memiliki
serta
terkomputerisasi,
kemampuan
kemampuan sehingga
untuk
tersebut
program
menganalisis
adalah akan
kesuksesan dan kegagalan yang akan dialaminya.
penting
mampu
dan
meningkatkan
dalam pembelajaran
menganalisis
penyebab
18
2.1.7 Klasifikasi Sistem Pakar Pada penerapan ada beberapa bidang aplikasi yang sesuai dengan teknologi ini. Bidang-bidang tersebut antara lain : a.
Kontrol Sistem pakar ini digunakan untuk mengontrol kegiatan yang membutuhkan
presisi waktu yang tinggi. Misalnya pengontrolan pada industri teknologi tinggi. b.
Prediksi Keunggulan dari seorang pakar adalah kemampuannya memprediksi
kedepan. Contoh yang mudah ditemui, bagaimana seorang pakar meteorologi memprediksi cuaca besok berdasarkan data-data sebelumnya. Kemampuan ini juga dipunyai sistem pakar. Penggunaan sistem pakar prediksi misalnya untuk peramalan cuaca, penentuan masa tanam dan sebagainya. c.
Interpretasi Sistem pakar ini digunakan untuk menganalisis data-data yang tidak
lengkap, tidak teratur dan data kontradiktif. Misalnya untuk interpretasi citra. d.
Pengajaran Sistem pakar ini digunakan untuk mengajar, mulai dari SD sampai
mahasiswa perguruan tinggi. Kelebihan dari sistem pakar yang digunakan untuk mengajar adalah membuat diagnosa apa penyebab kekurangan dari seorang siswa, kemudian memberikan cara untuk memperbaikinya. e.
Perencanaan Penggunaan sistem pakar untuk perencanaan sangat luas, mulai dari
perencanaan mesin-mesin sampai manajemen bisnis. Penggunaan sistem pakar ini
19
akan menghemat biaya, waktu dan material, sebab pembuatan model sudah tidak diperlukan lagi. Contoh penggunaan antara lain sistem konfigurasi komputer, tata letak sirkuit dan sebagainnya. f.
Diagnosis Sistem pakar diagnosis biasanya digunakan untuk merekomendasikan obat
untuk
orang
sakit
kerusakan
mesin,
kerusakan rangkaian elektronik
dan
sebagainya. Prinsipnya adalah menemukan masalah apa masalah atau kerusakan yang terjadi. Sistem pakar diagnosis adalah jenis sistem pakar yang paling popular saat ini. Biasanya
sistem
pakar
diagnosis.
Menggunakan
pohon
keputusan
(decision tree) sebagai representasi pengetahuanya. Kebanyakan sistem pakar diagnosis
menggunakan
shell,
sehingga
sangat
mudah
untuk
melakukan
perubahan pada basis pengetahuannya. Hal lain dari dari sistem pakar diagnosis ini adalah basis pengetahuannya bertambah besar secara eksponensial dengan semakin kompleksnya permasalahan. 2.1.8 Representasi Pengetahuan Representasi pengetahuan adalah suatu teknik untuk merepresentasikan basis pengetahuan yang diperoleh ke dalam suatu skema/diagram tertentu sehingga dapat diketahui relasi/keterhubungan antara suatu data dengan data yang lain. Tekink ini membantu knowledge engineer dalam memahami struktur pengetahuan yang akan dibuat sistem pakarnya.
20
Bahasa representasi harus dapat membuat seorang pemrogram mampu mengekspresikan
pengetahuan
yang
diperlukan
untuk
mendapatkan
solusi
masalah, dapat diterjemahkan ke dalam bahasa pemrograman dan dapat disimpan. Harus dirancang agar fakta-fakta dan pengetahuan lain yan terkandung di dalamnya dapat digunakan untuk penalaran. Pengetahuan dapat direpresentasikan dalam bentuk yang sederhana atau kompleks, tergantung dari masalahnya. Beberapa model representasi pengetahuan yang penting adalah : a.
Logika (logic) Logika merupakan suatu pengkajian ilmiah tentang serangkaian penalaran,
sistem kaidah dan prosedur yang membantu proses penalaran. Logika merupakan bentuk representasi pengetahuan yang paling tua, yang menjadi dasar dari teknik representasi high level. Dalam melakukan penalaran, komputer harus dapat menggunakan proses penalaran deduktif dan induktif ke dalam Logika Simbolik Matematik.
Metode
ini
disebut
Logika
komputasional.
atau Logika
Bentuk
logika
komputasional ada 2 macam, yaitu Logika Proporsional atau Kalkulus dan Logika Predikat. 1.
Logika Proporsional Proposisi merupakan suatu statmen atau pernyataan yang menyatakan
benar (TRUE) atau salah (FALSE). Operator logika dan simbolnya ditunjukan oleh Tabel 2.1
21
Table 2.1 Operator Logika dan Simbol Operator
Simbol
AND
∩,V,&
OR
U,V,+
NOT →
IMPLIES
2.
Logika Predikat Logika predikat adalah suatu logika yang lebih canggih yang seluruhnya
menggunakan konsep dan kaidah proposional yang sama, Disebut juga kalkulus predikat,
yang
memberi
tambahan
kemampuan
untuk
mempresentasikan
pengetahuan dengan sangat cermat dan rinci. Kalkulus predikat memungkinkan kita untuk memecahkan statetmen ke dalam bagian komponen, yang disebut objek, karakteristik objek, atau beberapa keterangan objek. Suatu proposisi atau premis dibagi menjadi dua bagian, yaitu ARGUMEN (objek) dan PREDIKAT (keterangan). Argumen adalah individu atau objek yang membuat keterangan. Predikat adalah keterangan yang membuat argumen dan predikat. Dalam suatu kalimat, predikat dapat berupa kata kerja atau bagian kata kerja. Misalnya proposisi: Mobil berada dalam garasi. Dinyatakan menjadi: Di dalam (mobil,garasi) Di dalam = produk (keterangan) Mobil
= Argumen (objek)
22
Garasi b.
= Argumen (objek)
Jaringan Semantik (Semantic Nets) Konsep jaringan semantik diperkenalkan pada tahun 1968 oleh Ross
Quillin. Jaringan semantic merupakan teknik representasi kecerdasan buatan klasik yang digunakan untuk informasi proposional (Giarrantano dan Riley, 1994). Yang dimaksud dengan informasi proporsional adalah pernyataan yang mempunyai nilai benar atau salah. Informasi proporsional merupakan bahasa deklaratif karena menyatakan fakta. Representasi jaringan semantik pengetahuan
yang
memperlihatkan
merupakan penggambaran grafis dari hubungan
hirarkis
dari
objek-objek.
Komponen dasar untuk mempresentasikan pengetahuan dalam bentuk jaringan semantic adalah simpul (node) dan penghubung (link). Simpul mempresentasikan objek, konsep, atau situasi. Simpul digambarkan dengan kotak atau lingkaran. Penghubung panah
menghubungkan
berarah
dan
diberi
antarsimpul. label
Penghubung
untuk
digambarkan
menyatakan
hubungan
dengan yang
direpresentasikan. Gambar 2.2 berikut ini adalah sebuah contoh bagaimana pengetahuan dapat direpresentasikan menggunakan jaringan semantic :
23
merupakan
merupakan
PC
Komputer
Alat Elektronik
memiliki
Monitor Gambar 2.2. Representasi Jaringan Semantik Jaringan semantik pada gambar 2.2 mempresentasikan pernyataan bahwa semua komputer merupakan alat elektronik, semua PC merupakan komputer dan semua komputer memiliki monitor. Dari pernyataan tersebut dapat diketahui bahwa semua PC memiliki monitor dan hanya sebagian alat elektronik yang memiliki monitor. c.
Object-Attribute-Value (OAV) Object
dapat berupa bentuk
fisik
atau konsep. Atrinbute adalah
karakteristik atau sifat dari objek tersebut. Values (Nilai) besaran/nilai/takaran spesifik dari attribute tersebut pada situasi tertentu, dapat berupa numerik, string atau boolean. Sebuah objek bisa memiliki pengetahuan dengan OAV. Tabel 2.2. Representasi Pengetahuan dengan OAV Object
Attribute
Value
Mangga
Warna
Hijau, Orange
Mangga
Berbiji
Tunggal
Mangga
Rasa
Asam, Manis
Mangga
Bentuk
Oval
Pisang
Warna
Hijau, Kuning
Pisang
Bentuk
Lonjong
24
d.
Bingkai (Frame) Bingkai
adalah
informasi/pengetahuan
yang
struktur relevan
data dari
yang suatu
mengandung objek.
semua
Pengetahuan
ini
diorganisasikan dalam struktur herarkis khusus yang memungkinkan pemrosesan pengetahuan. Bingkai merupakan aplikasi dari pemrograman berorentasi objek dalam AI dan sistem pakar. Pengetahuan dalam bingkai dibagi-bagi kedalam slot atau atribut yang dapat mendeskripsikan pengetahuan secara deklaratif ataupun prosedural. Contoh : Tabel 2.3 Contoh Representasi Pengetahuan Bentuk Bingkai Bingkai mobil Kelas : Transportasi Pabrik : Isuzu Asal : Jepang Model : TBR 541 NA Tipe : Minibus Bingkai Mesin Silinder : 93x92 Mesin : 4 langkah
Slot motor Slot mobil Slot sedan Slot minibus
Roda 4 Pintu 4 Roda 4 Pintu 4 e.
Kaidah Produksi Kaidah menyediakan cara formal untuk mempresentasikan rekomendasi,
arahan, atau strategi. Kaidah produksi dituliskan dalam bentuk jika-maka (if-then). Kaidah if-then menghubungkan anteseden (antecedent) dengan konskuensi yang
25
diakibatkannya. Berbagai struktur kaidah if then yang menghubungkan objek atau atribut adalah sebagai berikut : JIKA premis MAKA konklusi JIKA masukan MAKA keluaran JIKA kondisi MAKA tindakan JIKA anteseden MAKA konsekuen JIKA data MAKA hasil JIKA tindakan MAKA tujuan Premis mengacu pada fakta yang benar sebelum konklusi tertentu dapat diperoleh. Masukan mengacu pada data yang tersedia sebelum keluaran dapat diperoleh. Kondisi mengacu pada keadaan yang harus berlaku sebelum tindakan dapat diambil. Anteseden mengacu pada situasi yang terjadi sebelum konsekuensi dapat diamati. Data mengacu pada kegiatan yang harus dilakukan sebelum hasil dapat diharapkan. Tindakan mengacu pada kegiatan yang harus dilakukan sebelum hasil dapat diharapkan (Hanifah, 1998). Sebuah kaidah terdiri dari klausa-klausa. Sebuah klausa mirip dengan kalimat subjek, kata kerja dan objek yang mengatakan suatu fakta. Ada sebuah klausa premise dan sebuah klausa konklusi pada setiap kaidah. Suatu kaidah juga dapat terdiri atas beberapa premise dan lebih dari satu konklusi. Antara premise dan konklusi dapat dihubungkan dengan “atau” atau “dan”. Contoh : JIKA bersin-bersin dan pusing MAKA terserang penyakit flu
26
f.
Matriks Salah satu cara yang sangat membantu mengorganisasi pengetahuan
adalah matriks. Matriks terdiri dari baris dan kolom yang menunjukkan pangkalan pengetahuan dan bagaimana keterkaitan antara satu penalarannya. Bagian kiri (baris) mengarah pada prosedur sedangkan bagian atas (kolom) menunjukkan kemungkinan hasil jawaban. 2.1.9 Akuisisi Pengetahuan Akuisisi pengetahuan adalah akumulasi, transfer dan transformasi keahlian dalam penyelasaian masalah dari sumber pengetahuan ke dalam program komputer.
Dalam
pengetahuaan
untuk
tahap
ini
selanjutnya
knowledge ditransfer
engineer ke
berusaha
dalam
basis
menerapkan pengetahuan.
Pengetahuan diperoleh dari pakar, dilengkapi dengan buku, basis data, laporan penelitian dan pengalaman pemakai. Menurut Turban (1998), terdapat empat metode utama dalam akuisisi pengetahuan, yaitu : a.
Wawancara Wawancara adalah metode akuisisi yang paling banyak digunakan.
Metode ini melibatkan pembicaraan dengan pakar secara langsung dalam suatu wawancara. Terdapat beberapa bentuk wawancara yang dapat digunakan. Masingmasing bentuk wawancara tersebut memmpunyai tujuan yang berbeda. 1)
Contoh masalah (kasus) Dalam bentuk wawancara ini, pakar dihadapkan dengan suatu masalah nyata.
2)
Wawancara klasifikasi
27
Maksud dari bentuk wawancara ini adalah untuk memperoleh wawasan pakar untuk domain permasalahan tertentu. 3)
Wawancara terarah (direct interview) Metode ini biasanya merupakan pelengkap bagi metode wawancara dengan menggunakan contoh masalah dan wawancara klasifikasi. Dalam bentuk wawancara ini, pakar dan knowledge engineer mendiskusikan domain dan cara penyelesaian masalah dalam tingkat yang lebih umum dari dua metode sebelumnya.
4)
Diskusi kasus dalam konteks dari sebuah prototype sistem Dalam metode ini pakar dihadapkan dalam sebuah kasus contoh dari prototipe sistem. Metode ini digunakan untuk melihat apa yang pakar pikirkan tentang prototipe sistem.
b.
Analisis protokol Dalam metode
akuisisi ini,
pakar diminta untuk
melakukan suatu
pekerjaan dan mengungkapkan proses pemikirannya dengan menggunakan katakata. Pekerjaan tersebut direkam, dituliskan dan dianalisis. c.
Observasi pada pekerjaan pakar Dalam metode ini, pekerjaan dalam bidang tertentu yang dilakukan pakar
direkam dan diobservasi. d.
Induksi aturan dari contoh Metode ini dibuat untuk sistem berbasis aturan. Induksi adalah suatu
proses penalaran dari khusus ke umum. Suatu sistem induksi aturan diberi contohcontoh dari suatu masalah yang hasilnya telah diketahui.
28
Setelah diberikan beberapa contoh, sistem induksi aturan tersebut dapat membuat aturan yang benar untuk kasus-kasus contoh. Selanjutnya aturan dapat digunakan untuk menilai kasus lain yang hasilnya tidak diketahui. 2.1.10 Ketidakpastian Dalam kenyataan sehari-hari para pakar seringkali berurusan dengan faktafakta yang tidak menentu dan tidak pasti, dengan demikian sistem pakar juga harus dapat menangani masalah kekurang pastian dan ketidakpastian ini. Teknik-teknik yang sudah digunakan untuk menangani hal tersebut adalah nilai faktor kepastian (certainty factor). Ada tiga jenis selang faktor kepastian yang biasa digunakan : a.
Nilai 0 untuk pernyataan salah dan 1 untuk pernyataan benar.
b.
Selang 0-1, pada sistem nilai 0 berarti salah mutlak, nilai 1 berarti benar
mutlak dan selang nilai 0 < CF < 1 menunjukkan derajat kepastian. c.
Selang (-1) – 1, pada sistem ini nilai 1 berarti benar mutlak, nilai (-1)
berarti salah mutlak, nilai 0 menunjukkan ketidak tahuan, nilai 0 < CF < 1 menunjukkan derajat kebenaran dan nilai -1 < CF < 1 menunjukkan derajat kesalahan. 2.1.11 Tahapan Pengembangan Sistem Pakar Terdapat 6 tahapan atau fase dalam pengembangan sistem pakar seperti digambarkan pada gambar 2.3 penjelasan berikut merupakan penjelasan secara garis besar tentang fase-fase pengembangan tersebut.
29
1.
Identifikasi Tahap ini merupakan tahap penentuan hal-hal penting sebagian dasar dari
permasalahan yang akan dianalisis. Tahap ini merupakan tahap untuk mengkaji dan membatasi masalah yang akan diimplementasikan dalam sistem. Setiap masalah yang akan diidentifikasi harus dicari solusi.
Fasilitas yang akan
dikembangkan, penentuan jenis bahasa pemrograman dan tujuan yang ingin dicapai dari proses pengembangan tersebut. Apabila identifikasi masalah dilakukan dengan benar maka akan dicapai hasil yang optimal. 2.
Konseptualisasi Hasil identifikasi masalah dikonseptualisasikan dalam bentuk relasi antar
data, hubungan antar pengetahuan dan konsep-konsep penting dan ideal yang akan diterapkan dalam sistem. Konseptualisasi juga menganalisis data-data penting yang harus didalami bersama dengan pakar di bidang permasalahan tersebut. Hal ini dilakukan untuk memperoleh konfirmasi hasil wawancara dan observasi sehingga hasilnya dapat memberikan jawaban pasti bahwa sasaran permasalahan tepat, benar dan sudah selesai. 3.
Formalisasi Apabila tahap konseptualisasi sudah dilakukan, maka di tahap formalisasi
konsep-konsep tersebut diimplementasikan secara formal, misalnya memberikan kategori sistem yang akan mempertimbangkan beberapa faktor
dibangun,
pengambilan keputusan seperti keahlian
30
manusia,
tingkat
kesulitan
yang
mungkin
terjadi,
dokumentasi kerja
dan
sebagainya. 4.
Implementasi Apabila pengetahuan sudah diformalisasikan secara lengkap, maka tahap
implementasi dapat dimulai dengan membuat garis besar masalah kemudian memecahkan masalah ke dalam modul-modul. Untuk memudahkan maka harus diidentifikasikan : a.
Apa yang akan menjadi inputan.
b.
Bagaimana prosesnya digambarkan dalam bagan alur dan basis aturannya.
c.
Apa yang menjadi output atau hasil kesimpulan. Sesudah itu semuanya diubah dalam bahasa yang mudah dimengerti oleh
komputer
dengan
menggunakan
tahapan
fase
seperti
gambaran
fase
pengembangan sistem pakar. 5.
Evaluasi Sistem pakar yang selesai bangun, perlu dievaluasi untuk menguji dan
menemukan kesalahannya. Hal ini merupakan hal yang umum dilakukan karena suatu sistem belum tentu sempurna setelah selesai pembuatannya sehingga proses evaluasi diperlukan untuk penyempurnaannya. Dalam evaluasi akan ditemukan bagian-bagian yang harus dikoreksi untuk menyamakan permasalahan dan tujuan akhir pembuatan sistem. 6.
Pengembangan Sistem Pengembangan sistem diperlukan sehingga sistem yang dibangun tidak
menjadi usang dan investasi sistem tidak sia-sia. Dalam pengembangan sistem
31
yang paling berguna adalah proses dokumentasi sistem dimana di dalamnya tersimpan semua hal penting yang menjadi tolak ukur pengembangan sistem di masa mendatang termasuk di dalamya adalah kamus pengetahuan masalah yang diselesaikan. Fase I Inisialisasi kasus
Definisi masalah Kebutuhan sistem Evaluasi solusi alternative Vertifikasi pendekatan sistem
Fase II Anlisis dan desain sistem
Konseptualisasi rancangan dan desain Strategi pengembangan Materi pengetahuan Komputasi masalah Kemudahan pengenalan Analisa efisiensi
Fase III Prototype dasar kasus
Membangun prototype Pengujian dan pengembangan Demonstrasi dan kemudahan analisa Penyelesaian desain
Fase IV Pengembangan sistem
Membangun basis pengetahuan Pengujian, evaluasi dan pengembangan basis pengetahuan Demonstrasi dan kemudahan analisa
Fase V Implementasi sistem
Fase VI Implementasi Tahap lanjut
Proses inoutan pemakai Instalasi, evaluasi dan pengembangan basis pengetahuan Orentasi dan latihan Keamanan Dokumentasi Integrasi dan pengujian kasus
Operasional Perawatan dan pengembangan sistem Evaluasi sistem secara periodik Gambar 2.3
Fase Pengembangan Sistem Pakar
32
2.1.12 Metode Pemecahan Masalah Suatu
perkalian
inferensi
yang
menghubungkan
suatu
permasalahan
dengan solusinya disebut dengan rantai (chain). Suatu rantai yang dicari atau dilewati/dilintasi dari suatu permasalahan untuk memperoleh solusinya disebut forward chaining. Cara lain menggambarkan forward chaining ini adalah dengan penalaran dari fakta menuju konklusi yang terdapat dari fakta. Suatu rantai yang dilintasi dari hipotesa kembali ke fakta yang mendukung hipotesa tersebut adalah backward chaining. Cara lain menggambarkan backward chaining adalah dalam hal tujuan yang dapat dipenuhi dengan pemenuhan sub tujuannya. Terdapat berbagai cara pemecahan masalah didalam sistem pakar. Beberapa hal yang perlu diperhatikan adalah arah penelusuran dan topologi penelusuran. 1.
Arah penelurusan Arah penelurusan dibagi dua yaitu :
a.
Forward chaining Strategi dari sistem ini adalah dimulai dari inputan beberapa fakta,
kemudian menurunkan beberapa fakta dari aturan-aturan yang cocok pada knowledge base dan melanjutkan prosesnya sampai jawaban sesuai. Forward chaining dapat dikatakan sebagai penelusuran deduktif.
33
Kaidah C
Kesimpulan 1
Kaidah D DC
Kesimpulan 2
Kaidah E
Kesimpulan 3
Fakta 1 Kaidah A Observasi 1
Fakta 2 Kaidah B Fakta 3
Observasi 2
Kesimpulan 4
Gambar 2.4 b.
Diagram Pelacakan ke Depan
Backward chaining Strategi penarikan keputusan yang didasarkan dari hipotesa atau dugaan
yang didapat dari informasi yang ada. Ciri dari strategi ini adalah pertanyaan user. Memperoleh fakta biasanya diajukan dalam bentuk “YA” atau “TIDAK”, proses ini berdampak dengan diterima atau tidaknya hipotesis.
Observasi 1 Kaidah A
Fakta 1
Observasi 2
Kidah D Kaidah B
Fakta 2
Observasi 3
Tujuan Kidah E
Kaidah C
Fakta 3
Observasi 3
Gambar 2.5
Diagram Pelacakan ke Belakang
34
Ada empat faktor metode menentukan mana arah yang lebih baik digunakan dari dua arah penelusuran yaitu : a.
Jumlah keadaan awal dan keadaan akhir akan lebih mudah bila bergerak dari kumpulan keadaan yang lebih sedikit ke kumpulan yang lebih banyak.
b.
Besar kecilnya faktor percabangan lebih baik menuju ke arah yang faktor percabangannya sedikit.
c.
Proses penalaran program sangatlah penting untuk menuju kearah yang lebih condong dengan cara pemikiran pemakai.
d.
Kejadian yang memicu rangkaian tindakan pemecahan masalah. Jika kejadian ini adalah kedatangan fakta baru, maka dipilih forward chaining, tetapi jika kejadian ini adalah suatu pertanyaan yang membutuhkan tanggapan, akan lebih baik jika dipilih backward chaining.
2.
Topologi penelusuran
a.
Breadth first search Metode penelusuran ini memeriksa semua node (simpul) pohon pencarian,
dimulai dari simpul akar. Simpul-simpul dalam tingkat diperiksa seluruhnya sebelum pindah ke simpul di tingkat selanjutnya. Proses ini bekerja dari kiri ke kanan, baru bergerak ke bawah. Ini berlanjut sampai ke titik tujuan (goal).
35
Root node (strat) 1
Level 1
2
Level 2
3
5
Level 3
6
4
7
8
9
10 0
Goal Gambar 2.6 b.
Bread-first Search
Depth first search Metode
ini memulai penelusuran
dari node
sampai simpul akar,
selanjutnya menuju ke bawah dulu baru bergerak ke samping dari kiri ke kanan, proses ini akan berlanjut sampai ditemukan simpul tujuan Root node (start) 1
Level 0
Level 1
Level 2
Level 3
3
4
6
2
8
11 2
5
9
12
10
13
7
Gambar 2.7
Goal (end) Depth-first Search
14
15
16
36
c.
Best first search Bekerja berdasarkan kombinasi kedua metode sebelumnya. Gambar 2.8
(Rusell Stuart, 1995) menunjukkan penelusuran secara best first search. Root node (start) 1
Level 0
Level 1
Level 2
2
3
5
6
4
7
8
9
10
Goal Gambar 2.8
2.2
Best-first Search
WIRELESS APPLICATION PROTOCOL (WAP) Internet sejak pertengahan tahun 1990-an hingga kini, telah mengubah cara
kita
berkomunikasi
dan
berinteraksi.
Internet
memungkinkan
terjadinya
pertukaran informasi secara cepat dalam lingkup yang global, yaitu dunia. Informasi kemudian menjadi wilayah publik dapat diakses dari manapun. Perkembangan sistem komunikasi personal nirkabel (wireless) yang pesat telah membangkitkan gagasan-gagasan tentang akses internet dan informasi dari perangkat
komunikasi
personal
nirkabel
dengan
tingkat
mobilitas
tinggi.
Bagaimana bisa? Teknologi Wireless Aplication Protocol (WAP) merupakan sinergi dari kombinasi internet dan dunia komunikasi nirkabel.
37
2.2.1
Apa itu WAP Wireless Application Protocol (WAP) merupakan protokol bagi perangkat-
perangkat nirkabel yang menyediakan layanan komunikasi data bagi pengguna, baik dalam bentuk yang berhubunngan dengan telekomunikasi maupun aplikasiaplikasi berorentasi internet. Struktur
WAP mengadopsi topologi layer-layer yang ada pada Internet
Protocol (model TCP/IP). Ini terkait dengan tujuan dibuatnya WAP, yaitu memberikan akses internet bagi alat komunikasi mobile nirkabel. Protokol mengatur bagaimana format paket data dan layanan-layanan terhadap paket data pada setiap layer, bagaimana suatu layer memberikan layanan kepada layer lain yang berada diatasnya. 2.2.2
Mengembangkan Aplikasi WAP Pengembangan aplikasi WAP dilakukan dalam suatu lingkungan kerja
yang disebut Wireless Application Environment (WAE). Inti dari WAE ini terdiri Wireless Markup Language (WML) dan Wireless Markup Language Scripts (WMLScript). Untuk
menjangkau dunia internet, sebuah ponsel dengan teknologi WAP
harus berjalan via WAP Gateway. WAP Gateway ini bertindak sebagai perantara, menghubungkan jaringan mobile dan internet dengan menerjemahkan Hypertext Transfer Protokol (HTTP) menjadi Wireless Session Protokol (WSP). Gambar di bawah ini menunjukkan skema sederhana hubungan antara web server, gateway dan ponsel dengan WAP.
38
Gambar 2.9 Diagram Network Pada WAP Web server melayani permintaan dari user melalui ponsel untuk sebuah aplikasi WAP.
Hubungan ini dilakukan melalui perantara WAP Gateway.
Aplikasi dalam WAP dibentuk dalam format WML. Untuk menjalankan suatu aplikasi WAP, sama halnya dengan internet biasa. Kita tinggal mengetikan URL yang dikehendaki, misalnya : http://tekniksoft.net. Karena itu, untuk membuat aplikasi WAP yang kita butuhkan adalah sebuah web server untuk menangani permintaan user akan aplikasi WAP, misalnya Apache, Microsoft Internet Information Sevice (IIS), ataupun PWS (Personal Web Server). WML merupakan bahasa mark-up yang berbasis pada Extensible Markup Language (XML). WML adalah analogi dari HTML yang berjalan pada protocol nirkabel. Tag-tag pada WML mirip dengan tag-tag yang ada pada HTML. Data WML terstruktur dalam bentuk koleksi kartu atau card. Sebuah koleksi card disebut deck. Tiap deck tersusun dari isi yang terstruktur dan
39
spesifikasi navigasi. Penggunaan melakukan navigasi dalam susunan card, melihat isi tiap
card,
mengisi informasi yang
dibutuhkan,
membuat
pilihan
dan
bernavigasi ke card selanjutnya atau kembali ke card sebelumnya. Dalam HTML, user interface ditampilkan dalam bentuk halaman-halaman HTML di mana dalam card pada suatu deck dapat memiliki hyperlink ke card yang lain. Jika WML merupakan analogi dari HTML pada media nirkabel, maka WMLScript merupakan analogi yang tepat dari JavaScript. WMLScript, seperti halnya JavaScript, berjalan pada sisi client (client side scripting). Bedanya, WMLScript tidak bisa ditempatkan menjadi satu dengan halaman WML yang menggunakan fungsi-fungsi dari WMLScript. Fungsi-fungsi WMLScript yang akan digunakan oleh halaman WML ditempatkan
dalam
file
yang
terpisah.
Pemisahan
ini memberikan
suatu
keuntungan, yaitu dalam fokus pembuatan aplikasi. Jika kita bekerja dengan halaman WML, maka kita hanya berfokus pada isi atau user interface halaman yang kita inginkan. Dengan WMLScript, kita berfokus pada pembuatan prosedur atau fungsi dari logika pemrograman. Aplikasi WML yang kita buat dapat diakses menggunakan browser yang disebut user agent (UA). UA mendownload halaman WML dan atau WMLScript yang dibutuhkan dan merender halaman tersebut. Hasil render halaman WML amat tergantung pada tipe alat yang digunakan. Dan tampilan yang diperoleh mungkin berbeda antara ponsel dengan kemampuan grafis yang baik dengan yang hanya mendukung modus teks.
40
a.
Prolog WML 8 Statetmen pertama dalam sebuah dokumen XML dalam sebuah dokumen
WML disebut prolog ini adalah optional (tidak harus ada) dan mengandung dua baris kode : 1)
Deklarasi XML : digunakan untuk mendefinisikan versi XML
2)
Deklarasi DTD : penunjuk ke file yang mengandung DTD dokumen ini. Contoh prolog adalah sebagai berikut :
Setelah prolog, setiap dokumen XML mengandung sebuah elemen tunggal yang mengandung semua sub elemen dan entity yang lainnya. Seperti kalau di HTML, semua elemen dikurung oleh karakter <> dan >. Misalnya : <element> datadatadata Hanya boleh ada satu elemen dokumen per dokumen. Dengan WML, elemen dokumennya adalah <wml>, (seperti di html elemen dokumennya adalah ) semua elemen lainnya termasuk di dalamnya. Dua cara paling umum untuk menyimpan data dalam dokumen XML adalah dengan element dan attribute. 3)
Element adalah item-item berstruktur dalam dokumen tersebut yang ditandai dengan tag elemen pembuka dan penutup. Element juga dapat mengandung sub-element.
4)
Attribute biasanya digunakan untuk mendeskripsikan sebuah elemen. Contoh, misalkan ada kode seperti ini:
41
Silakan pilih nama user anda. Dalam kode di atas, element mengandung attribute id dan title. (Catatan: komentar di WML mirip dengan HTML tetapi harus tampil dalam tag b.
Element WML yang valid WML mendefinisikan sebelumnya sebuah kumpulan element yang dapat
dikombinasikan
bersama-sama
untuk
membuat
sebuah
dokumen
WML.
Pencantuman Elemen-eleman ini dapat dibagi menjadi dua kelmpok : Element Deck/Card; dan Element Event. 1.
Element Deck/Card: wml,card, template, head, acces, meta.
2.
Element Event: do, on timer, onenterforward, onenterbackward, onpick, onevent, postfield.
3.
Task: go, prev, refresh, noop.
4.
Variabel : input, select, option, optgroup, fieldset.
5.
Anchor, Image dan Timer: a, anchor, img, timer.
6.
Text Formatting: br, p, table, tr, td. Setiap elemen di atas dimasukkan ke dalam dokumen dengan sintaks
seperti ini : <element>nilai elemen itu Jika sebuah elemen tidak punya data di dalamnya (sebagaimana biasanya dalam kasus menformat elemen dengan
misalnya), kita dapat menghemat dengan hanya memasukkan satu tag yang ditambahi karakter / (misalnya:
.
42
2.2.2.1 Pengembangan Aplikasi WAP dengan PHP Untuk membuat aplikasi WAP menjadi lebih dinamis dan interaktif, yang mampu memberikan dan menerima respon dari dan ke pengakses, kita dapat menggunakan bahasa-bahasa script yang berjalan pada sisi server (server sidescripting). Dalam tugas akhir ini akan menggunakan PHP (PHP Hypertext Processor), bahasa script server-side yang tangguh, populer di internet dan gratis untuk memberi unsur dinamik dan interaktif pada aplikasi WAP. Pada prinsipnya, komunikasi antara web server dengan perangkat WAP sama dengan hubungan antara web server dengan browser berbasis PC, hanya saja dalam hal ini ada satu tahap tambahan. Tahap ekstra yang dibutuhkan adalah transfer informasi oleh WAP gateway. WAP gateway bertindak sebagai perantara antara browser nirkabel dengan server tempat informasi berada.
INTERNET WIRELESS NETWORK
MOBILE SERVICE PROVIDER WE BSERVER
GATEWAY
PHP
Perangkat Mobille MY SQL DATABASE
Gambar 2.10 Proses komunikasi browser nirkabel dengan web server
43
Yang berperan sebagai WAP gateway biasanya adalah perusahaan telekomunikasi yang menyediakan layanan telepon nirkabel atau telepon seluler. Misalkan kita telah membuat deck yang berisi dua buah card. Kemudian user daengan perangkat nirkabelnya melakukan permintaan atau request terhadap deck tersebut. maka, urut-urutan event yang terjadi untuk permintaan user tersebut adalah sebagai berikut : 1.
Request dikirimkan ke WAP gateway dengan protocol WAP. WAP gateway, di bawah “kendali” dari perangkat WAP, melakukan request untuk URL tertentu dengan protocol HTTP.
2.
Request ditransmisikan via internet ke alamat IP dari perangkat WAP (alamat IP dari suatu perangkat WAP ditentukan oleh operator).
3.
Request mencapai tujuan akhirnya, yaitu web server. Server membaca header dan memproses permintaan dokumen WAP. Kode program PHP yang terdapat dalam dokumen ini dikompilasi dan diformat sesuai dengan kebutuhan.
4.
Dokumen atau deck WAP yang telah diproses ini dikirimkan kembali melalui WAP gateway. Pada gateway, isi dari deck dikompres menjadi data biner dan dikirimkan keperangkat WAP. Adalah mungkin dan sangat mudah untuk menambahkan unsur dinamik ke
dalam WML
dengan
PHP.
Pengembnagan
aplikasi WAP
dengan
PHP
memungkinkan kita membuat aplikasi seperti database, mailserver, pengiriman pesan dan lain-lain. Supaya script PHP dapat didukung oleh perangkat WAP, script ini harus menghasilkan outrput header WML kepada Client. Karena itu,
44
setiap dokumen WML yang berisi kode PHP harus menyertakan baris-baris berikut yang ditempatkan pada awal deck: ”); echo(””; ?> Deklarasi ini diperlukan karena PHP secara default mengirim baris Content-type : text/html. 2.2.2.2 Interaksi PHP dengan MySQL Komunikasi antara user dengan WAP browser dengan web server dapat menjadi lebih interaktif dengan penggunaan database. Dengan adanya PHP yang bekerja pada sisi server, komunikasi interaktif dapat dilakukan dengan antara user dengan server, baik Apache sebagai web server maupun database server MySQL. User yang mengakses dapat memperoleh data atau informasi dari server dan server dapat menyimpan data yang dikirimkan user dalam database MySQL. Database yang dipakai adalah MySQL dengan beberapa alasan, antara lain karena MySQL gratis dan mudah dipelajari. Dalam PHP terdapat banyak fungsi yang digunakan sebagai penghubung atau antarmuka dengan MySQL sehingga data dalam database dapat dilihat di internet. Banyak situs di internet yang menggunakan PHP-MySQL dalam pengembangan situsnya.
45
2.3
Perancangan Sistem Perancangan sistem adalah diagram yang menggambarkan sistem yang
sedang berjalan dan sistem baru yang akan digunakan dengan menggunakan komputer. Dalam tahap-tahap ini dilakukan pemecahan masalah secara logika dengan menggunakan alat bantu, yaitu DFD, ERD dan Normalisasi. 2.3.1
DFD ( Data Flow Diagram ) Data Flow Diagram adalah gambaran sistem secara logika. Gambaran ini
tidak tergantung perangkat keras, perangkat lunak, struktur data atau organisasi file. Keuntungan dari data flow yaitu, memudahkan pemakai atau user yang kurang menguasai bidang komputer untuk mengerti sistem yang akan dikerjakan atau dikembangkan . Ada 4 simbol data flow diagram, yaitu : Tabel 2.4 tabel simbol data flow diagram Simbol-simbol
Keterangan Proses Menunjukkan tranformasi dari masukan Kesatuan luar (Entity)
Penyimpanan data Untuk
menyimpan
data
menemukan data Aliran data Menunjukkan arah dari dalam system
atau
tempat
46
Proses pada data flow diagram dapat merupakan sekumpulan program, satu modul atau sub progam, dapat juga merupakan file elemen dari satu database atau satu bagian record, penyimpanan data dapat juga beupa disket berupa magnetic drum dan magnetic tape.
2.4
Perancangan Data Base
2.4.1 Pengertian Data Base Berikut adalah beberapa pengertian dari basisdata yang dikembangkan atas dasar sudut pandang yang berbeda, yaitu : a.
Basisdata adalah kumpulan data-data (file) non-redudant yang saling
terkait satu sama lainnya (dinyatakan oleh atribut-atribut kunci dari tabeltabelnya/struktur data dan relasi-relasi) di dalam usaha membentuk bangunan informasi yang penting (enterprise). b.
Basisdata
adalah
himpunan
kelompok
data
(file/arsip)
yang
saling
berhubungan dan diorganisasikan sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah. c.
Basisdata adalah kumpulan data yang saling berhubungan dan disimpan
bersama sedemikian rupa tanpa pengulangan yang tidak perlu (redundancy) untuk memenuhi berbagai kebutuhan. d.
Basisdata adalah kumpulan file/table/arsip yang saling berhubungan dan
disimpan di dalam media penyimpanan elektronik (Prahasta, Eddy, Sistem Informasi Geografis, cetakan kedua, CV. Informatika, Bandung, 2005, hal 190).
47
2.4.2 Flowchart 2.4.2.1 Pengertian Flowchart Flowchart adalah representasi grafik dari langkah-langkah yang harus diikuti dalam menyelesaikan suatu permasalahan yang terdiri atas sekumpulan symbol, dimana masing-masing simbol mempresentasikan suatu kegiatan tertentu. Flowchart diawali dengan penerimaan input, pemrosesan input dan diakhiri dengan penampilan output. 2.4.2.2 Simbol-simbol dalam Flowchart Simbol-simbol flowchart ada beberapa macam, yaitu : Simbol titik terminal
digunakan untuk menunjukkan awal dan akhir dari suatu proses
Simbol proses digunakan untuk menunjukkan proses dari operasi program
Simbol display digunakan untuk menunjukkan output yang ditampilkan di monitor
Simbol keputusan digunakan untuk menunjukkan
suatu penyeleksian
kondisi di dalam program
Simbol On-Page Connector
digunakan
untuk
menghubungkan suatu langkah
dengan langkah lain dari flowchart dalam satu halaman
48
Simbol Off-Page Connector
digunakan
untuk
menghubungkan suatu langkah
dengan langkah lain dari flowchart dalam halaman yang berbeda Simbol garis alir digunakan untuk menghubungkan setiap langkah dalam flowchart dan menunjukkan kemana arah aliran diagram Simbol pita magnetik digunakan
untuk
menunjukkan
input/output
menggunakan pita magnetik
Simbol drum magnetik
digunakan
untuk
menunjukkan
input/output
menggunakan drum magnetik
Simbol pita kertas berlubang
digunakan
untuk
menunjukkan
input/output
menggunakan pita kertas berlubang
Simbol kartu prolog digunakan
untuk
menunjukkan
input/output
menggunakan kartu plong Simbol keyboard digunakan
untuk
menunjukkan
menggunakan on line keyboard
input
yang
49
Simbol dokumen
digunakan untuk menunjukkan dokumen input dan output baik untuk proses manual, mekanik, atau komputer
Simbol input / output
Simbol proses terdefinisi
digunakan untuk mewakili data input/output
digunakan untuk menunjukkan suatu operasi yang rinciannya ditunjukkan di tempat lain
Simbol persiapan digunakan untuk memberi nilai awal suatu besaran
(Sumber Findra Kartika Sari Dewi, Teknik dan Logika Pemrograman, www.ilmukomputer.com) 2.4.3 Operasi-operasi Dasar dalam Data Base Operasi-operasi dasar yang dapat dilakukan berkenaan dengan database adalah sebagai berikut : a.
Pembuatan database baru (create database)
b.
Penghapusan database (drop database)
c.
Pembuatan file/tabel baru kedalam suatu database (create table)
d.
Penghapusan file/tabel dari suatu database (drop table)
50
e.
Penambahan atau pengisian data baru ke dalam sebuah file/tabel di sebuah database (insert)
f.
Pengubahan data dari sebuah file/tabel (update)
g.
Penghapusan data dari sebuah file/tabel (delete)
2.4.4 Teknik Normalisasi Proses
pengelompokan
data
elemen
menjadi
tabel-tabel
yang
menunjukkan entry dan relasinya. a.
Bentuk Tak Normal Merupakan kumpulan data yang akan direkam, tidak ada keharusan
mengikuti suatu format tertentu, dapat saja data tidak lengkap atau terduplikasi. Data dikumpulkan apa adanya sesuai dengan kedatangannya (Harianto Kristanto. Ir, Konsep dan Perencanaan Database, Andi Offset, Yogyakarta, 2004, hal 24). Tabel 2.5 Tabel Bentuk Tak Normal Id_Bengkel
Nm_Bengkel
Id_Kerusakan
Nm_Kerusakan
B1 B2
Astra int’l Kalimusada
A1 A2
Starter tidak berputar Mesin berputar tetapi tidak hidup
Jns_kendaraan 1 Niaga
Jns_kendaraan 2 Minibus
Id_kendaraan F 8833 AA B 7676 AE
Id_Sebab
Nm_Sebab
Id_wil
Nm_wil
G1
Terminal batere kendor
1
Bogor
G2
Tali kipas rusak
2
Tangerang
b.
Bentuk Normal Pertama
51
Bentuk normal pertama memiliki ciri yaitu setiap data dibentuk dalam flat file (file datar/rata), data bentuk, dalam satu record demi satu record. Tidak ada set atribut yang berulang-ulang atribut bernilai ganda (Harianto Krintanto. Ir, Konsep dan Perancangan database, Andi Offset, Yogyakarta, 2004, hal 24). Tabel 2.6 Tabel Bentuk Normal Pertama Id_Bengkel
Nm_Bengkel
Id_Kerusakan
Nm_Kerusakan
B1
Astra int’l
A1
Starter tidak berputar
B2
Kalimusada
A2
Mesin berputar tetapi tidak hidup
Id_Sebab
Nm_Sebab
Id_wil
Nm_wil
G1
Terminal batere kendor
1
Bogor
G2
Tali kipas rusak
2
Tangerang
c.
Bentuk Normal Kedua Mempunyai syarat yaitu bentuk data telah memenuhi kriteria bentuk
normal kesatu. Atribut bukan kunci haruslah bergantung secara fungsi pada kunci utama. Sehingga untuk membentuk normal kedua haruslah sudah ditentukan kunci-kunci field. Kunci field haruslah unik dan mewakili atribut lain yang menjadi anggotanya (Harianto Kristanto. Ir, Konsep dan Perancangan Database, Andi Offset, Yogyakarta, 2004, hal 25). Tabel 2.7 Tabel Bentuk Normal Kedua Tabel Bengkel *Id_Bengkel
Nm_Bengkel
**Id_Wil
B1
Astra Int’l
1
52
B2
Kalimusada
2
Tabel Sebab Kerusakan **Id_Kerusakan
**Id_Bengkel
**Id_Sebab
A1
B1
G1
A2
B2
G2
Tabel Sebab *Id_Sebab Nama_sebab G1
Terminal batere kendor
G2
Tali kipas rusak
Tabel Kerusakan Tabel Wilayah *Id_wil
Nm_Wil
1
Jakarta
2
Bogor
*Id_Kerusakan
Nama_Kerusakan
A1
Starter tidak berputar
A2
Mesin berputar tetapi tidak hidup
Keterangan : *
: Kunci Primer (Primary Key)
* * : Kunci Tamu (Foreign Key) : Relasi one many 2.4.5 Atribut Kunci Setiap file selalu terdapat kunci dari file berupa satu field atau satu set field yang dapat mewakili record. Misalnya no kerusakan merupakan kunci dari
53
tabel kerusakan. Kunci terdiri dari bermacam-macam diantaranya adalah sebagai brikut: a.
Kunci field (primary key) Kunci primer adalah satu atribut atau minimal satu set atribut yang tidak
hanya mengidentifikasi secara unik suatu kejadian spesifik, tapi juga dapat mewakili setiap kejadian dari satu entity baru. b.
Kunci kandidat (candidate key) Kunci kandidat adalah satu atribut atau minimal satu set atribut yang
mengidentifikasi secara unik satu kejadian spesifik dari entity. c.
Kunci alternatif (alternate key) Kunci alternatif adalah kunci kandidat yang tidak dipakai sebagai kunci
primer. Sering kunci alternatif dipakai sebagai kunci pengurutan dalam laporan. d.
Kunci tamu (foreign key) Kunci tamu adalah satu set atribut (set atribut) yang melengkapi satu
hubungan
(relationship)
yang
menunjukkan
ke
induknya.
Kunci
tamu
ditempatkan pada entity anak dan sama dengan kunci primer induk yang tidak direlasikan. Hubungan antara entity induk dengan entity anak adalah hubungan satu lawan banyak (one to many relationship). 2.4.6 Konsep Relasi Relasi berarti hubungan atau keterkaitan. Dalam hal perancangan database relasi diartikan sebagai hubungan atau keterkaitan antara sebuah atau beberapa entitas dengan sebuah atau beberapa entitas lainnya.
54
Dalam
database
ada
tiga
konsep
relasi yang
pemakainya
dapat
dikombinasikan sesuai dengan konteks data. Adapun konsep relasinya adalah sebagai berikut: a.
One to one relationship Hubungan antara file pertama dengan file kedua adalah berbanding satu
atau memiliki satu pasangan saja. Contoh : jenis
Nojenis
Gambar 2.11 Relationship 1 : 1
b.
One to many relationship Hubungan antara file pertama dengan file kedua adalah satu berbanding
banyak atau kebalikannya banyak berbanding banyak. Contoh : gejala
diagnosa Gambar 2.12 Relationship 1 : M
c.
Many to many relationship Hubungan antara file pertama dengan file kedua adalah banyak berbanding
banyak. Contoh :
55
macam
ciri
Gambar 2.13 Relationship M : M d.
Entity relationship model Entity adalah pemodelan data yang berdasarkan pada objek dasar yang
benar-benar nyata, relationship adalah hubungan antar objek, sedangkan atribut adalah keterangan mengenai sebuah entity. Atribut digambarkan sebagai elips atau lingkaran dengan sebuah garis yang berasal dari entitas yang bersangkutan. Untuk lebih jelasnya dapat dilihat pada gambar.
atribut
atribut
Set entity
relationship
Set entity
Gambar 2.14 Entity Relationship
2.5
Engine Mechanichal Isuzu Mesin diesel 4jA1 menggunakan ruang bakar square combustion chamber,
mesin ini di design dengan menggunakan bahan bakar yang irit dalam range
56
kondisi pengemudian, pistonnya jenis auto thermatic untuk memperkecil expansi thermal, sehingga suara mesin menjadi lebih halus. Pada waktu mesin dingin cylinder liner dilapisi oleh chrome sehingga mempunyai daya tahan yang lebih kuat. Cylinder head gasket dengan tipe laminated lebih terpercaya. Poros engkol di tuffrided agar umurnya lebih panjang. Karena di tuffrided sehingga tidak dapat di bubut (undersize). Mesin ini juga dilengkapi dengan pompa injeksi tipe VE. (Pantja Motor, 1998, hal 30) 2.5.1 Mesin Diesel Mesin diesel ditemukan oleh Rudolf Diesel, pada tahun 1872. Dahulu mesin diesel menggunakan siklus diesel tapi sekarang ini menggunapkan siklus sabathe, perubahan ini membuat mesin lebih halus. Mesin diesel mempunyai tekanan kompresi yang tinggi (30 – 45 kg/cm ) agar temperature udara yang dikompresikan mencapai 500°C atau lebih.(Pantja Motor, 1998, hal 2) 2.5.2
Prinsip Kerja
1.
Langkah Hisap a.
Piston bergerak dari Titik Mati Atas (TMA) ke Titik Mati Bawah (TMB)
b.
Katup hisap terbuka
c.
Katup buang tertutup
d.
Terjadi kevakuman dalam silinder, yang menyebabkan udara murni masuk ke dalam silinder
2.
Langkah Kompresi a.
Piston bergerak dari TMB ke TMA
57
b.
Katup hisap tertutup
c.
Katup buang tertutup
d.
Udara dikompresikan sampai tekanan dan suhunya menjadi 30 kg/cm dan 500°C
3.
Langkah Usaha a.
Katup hisap tertutup
b.
Katup buang tertutup
c.
Injector menyemprotkan bahan bakar sehingga terjadi pembakaran yang menyebabkan piston bergerak dari TMA ke TMB
4.
Langkah Buang a.
Piston bergerak dari TMB ke TMA
b.
Katup hisap tertutup
c.
Katup buang terbuka
d.
Piston mendorong gas sisa pembakaran keluar
2.5.3
Siklus Pembakaran
1.
Perbandingan Kompresi dan Temperatur Udara dalam silinder dikompresikan oleh adanya gerakan naik piston yang
menyebabkan temperatur meningkat. Grafik dibawah memperlihatkan hubungan secara teori antar perbandingan kompresi, tekanan kompresi dan suhu. Apabila perbandingan kompresi 16 maka tekanan kompresi dan temperatur adalah 30 kg/cm dan 500°C.
58
130
1300
120
1200
110
1100
100
1000
90
900
80
800
70
700
Air temperature
60
600
50
500
40
400
30
300
20
Air temperature
Compression pressure
Tabel 2.8 Grafik Perbandingan Kompresi Dan Temperatur
200 Compression pressure
10
100
0
0 4
12
8
16
20
24
28
32
Compression ratio
2.
Proses Pembakaran Mesin Diesel Tabel 2.9 Proses Pembakaran Mesin Diesel Kg/cm2 60
Kg/cm2
Fuel Injection ends
D C
50 60
Fuel Injection ends
D C
30
Pressure
Pressure
40 50
Ignition B
40
Fuel Injection Starts
Ignition
20 A
30
E Combustion Ignition B delay
Fuel Injection Starts
10
E Combustion Ignition delay
20 A Fuel Injection
1
100 10
75
50
25
TDC
25
50
75
100
Crank angel
1
Fuel Injection 100
75
50
25
TDC
25
50
75
100
Crank angel
Proses pembakaran pada mesin diesel dibagi menjadi 4 tahap : 1.
Saat pembakaran tertunda (Ignition Delay) = A-B Tahap dimana bahan bakar yang diinjeksikan baru bercampur dengan udara agar terbentuk campuran yang homogen.
2.
Saat perambatan api (Flame propagation) = B-C
59
Terjadi pembakaran di beberapa tempat yang menyebabkan terjadinya letupan api yang mengakibatkan kenaikan tekanan dan temperatur secara dratis. 3.
Saat pembakaran langsung (Direct Combustion) = C-D Pada phase ini, bahan bakar yang diinjeksikan langsung terbakar.
4.
Saat pembakaran lanjut (After Burning) = D-E Phase ini membakar sisa pembakaran yang belum terbakar.
2.5.4
Detonasi (Knocking) Detonasi adalah getaran atau suara ledakan yang ditimbulkan oleh
pembakaran yang tidak sempurna. Metode dibawah ini adalah cara mengatasinya : 1.
Menggunakan solar yang akan cetane tinggi
2.
Menaikkan tekanan dan temperatur udara
3.
Mengurangi volume injeksi saat mulai injeksi
4.
Menaikkan temperatur ruang bakar
60
2.5.5
Macam-Macam Mesin Diesel Mesin diesel dibagi berdasarkan bentuk ruang bakar : Ruang Bakar Langsung
Tipe Injeksi langsung (Direct Injection)
Ruang Bakar
Tipe Ruang Bakar Kamar Depan (Pre-combustion Chamber) Ruang Bakar Tambahan Tipe Kamar Pusar (Swirl Chamber)
Gambar 2.15 Macam Ruang Bakar Diesel 1.
Tipe Injeksi Langsung (Direct Injection) Injection nozzle menyemprotkan bahan bakar langsung ke ruang bakar
utama (main combustion) yang terdapat pada Piston dan cylinder head. Keuntungan : a.
Efisiensi panas tinggi
b.
Kontruksi cylinder head sederhana
c.
Karena kerugian panas kecil, perbandingan kompresi dapat diturunkan Kerugian :
a.
Pompa injeksi harus menghasilkan tekanan tingi
b.
Kecepatan maksimum lebih rendah
c.
Suara lebih berisik
61
d. 2.
Bahan bakar harus bermutu tinggi Tipe Ruang Bakar Kamar Depan Bahan bakar disemprotkan oleh injection nozzle ke precombustion
chamber. Sebagian akan terbakar di tempat dan sisanya yang tidak terbakar akan dibakar habis di ruang bakar utama (main chamber). Keuntungan : a.
Pemakaian bahan bakar lebih luas
b.
Detonasi dapat dikurangi karena menggunakan injector tipe throttle
c.
Mesin tidak terlalu peka terhadap perubahan timing injeksi Kerugian
a.
Cylinder head rumit dan biaya pembuatan mahal
b.
Memerlukan glow plug
c.
Pemakaian bahan bakar boros
62
2.5.6
Konstruksi Mesin Diesel
Cylinder head Cylinder block dan cylinder liner Piston
Komponen Mesin
Conneting rod Timming gear Crankshaft Flywheel
Oil pump, Oli pump
Mesin Mesin Sistem Pelumasan
Oil filter Oil cooler
Radiator dan Thermostat
Sistem Pendinginan
Water pump dan V belt Cooling
Air dan Vacuum cleaner
Sistem Intake dan Exhaust
Intake dan Exhaust manifold Exhaust pipe dan M uffler
Injection pump dan Nozzle
Sistem Bahan bakar
Feed pump Fuel tank, filter, Water sedimenter
Starter
Sistem Kelistrikan
Glow plug alternator
Gambar 2.16 Kontruksi Mesin Diesel
63
2.5.7
Kelengkapan Mesin Diesel
2.5.7.1 Cylinder Block dan Cylinder Liner Berfungsi untuk dudukan komponen mesin dan terdapat water jacket untuk tempat aliran air pendingin. Cylinder Liner adalah silinder yang dapat dilepas. Cylinder liner dibagi menjadi 2 type : dry type dan wet type. 2.5.7.2 Cylinder Head Cylinder
terbuat
dari besi tuang
dan
berfungsi sebagai dudukan
mekanisme katup, injector dan glow plug juga sebagai ruang bakar. 2.5.7.3 Gasket Kepala Silinder Gasket kepala silinder letaknya antara blok silinder dan kepala silinder, fungsinya untuk mencegah kebocoran gas pembakaran, air pendingin dan oli. 2.5.7.4 Piston Fungsi utama piston adalah untuk menerima pembakaran dan meneruskan ke poros engkol melalui connecting rod. Piston terbuat dari alumunium alloy karena ringan dan radiasi panas tinggi. 2.5.7.5 Batang Piston Batang piston (connecting rod) berfungsi untuk meneruskan tenaga yang dihasilkan oleh piston ke crankshaft. 2.5.7.6 Poros Nok Poros nok berfungsi untuk menggerakkan mekanisme katup, pompa oli. Untuk mesin besin ditambah untuk menggerakkan pompa bahan bakar dan distributor.
64
2.5.7.7 Poros Engkol Dan Bantalan Poros Engkol Poros engkol terbuat dari baja carbon dan berfunsi untuk merubah gerak naik turun piston menjadi gerak putar. Bantalan poros engkol terbuat dari logam putih logam kelmet, logam alumunium. 2.5.7.8 Roda Penerus Roda penerus (flywheel) terbuat baja tuang berfungsi untuk menyimpan tenaga putar mesin. Flywheel dilengkapi dengan ring gear yang berfungsi untuk perkaitan dengan gigi pinion motor starter. 2.5.7.9 Oil Pan Oil pan terbuat dari baja dan dilengkapi separator untuk menjaga agar permukaan oli tetap rata ketika kendaraan dalam posisi miring. Penyumbat oli letaknya di bagian bawah oli pan yang berfungsi untuk mengelua rkan oli bekas. 2.5.7.10 Mekanisme Katup Pada mekanisme katup terbagi beberapa komponen antara lian : 1.
Valve lifter Valve lifter berfungsi untuk meneruskan gerakkan camshaft ke push rod
2.
Push rod Push rod berfungsi untuk meneruskan gerakan lifter ke rocker arm.
3.
Rocker arm dan Shaft Rocker arm berfungsi untuk menekan katup saat tertekan oleh push rod. Rocker arm dilengkapi skrup dan mur penyetel celah katup.
65
2.5.8 Sistem Pelumasan Sistem pelumasan berfungsi untuk : 1.
membentuk oil film untuk mengurangi gesekan , aus dan panas
2.
Mendinginkan bagian-bagian yang dilewati
3.
Sebagai seal antara piston dengan dinding silinder
4.
Mencegah karat pada bagian-bagian mesin Sistem pelumasan terbagi menjadi 3 macam, yaitu: tekanan penuh (fully-
pressurized method), sistem percikan dan sistem kombinasi. 2.5.9 Sistem Pendingin Sistem pendingin berfungsi untuk mendinginkan mesin dan mencegah panas berlebihan.Umumnya mesin didinginkan oleh sistem pendingin air dan udara. 2.5.10 Sistem Pemasukan dan Pembuangan Sistem pemasukan terdiri dari saringan udara, dan intake manifold, sistem pembuangan terdiri dari exhaust manifold, exhaust pipe dan muffler. 1.
Saringan Udara Berfungsi untuk membersihkan udara yang masuk ke silinder.
2.
Manifold Berfungsi sebagai tempat pemasukan udara yang akan ke silinder, Exhaust manifold berfungsi untuk menampung gas bekas dari semua silinder untuk dialirkan ke exhaust pipe.
66
3.
Pipa Buang dan Muffler Pipa buang adalah pipa baja yang mengalirkan gas bekas dari exhaust
manifold ke udara bebas Muffler berfungsi untuk mendinginkan gas buang agar saat dilepas ke udara luar tidak akan meledak. 2.5.11 Sistem Bahan Bakar Pada sistem bahan bakar mesin diesel, feed pump menghisap solar dari tanki bahan bakar. Baham bakar disaring oleh fuel filter dan kandungan air dalam bahan bakar dipisahkan oleh water sendimenter sebelum dialirkan ke pompa injeksi.