laporan makalah sispak ganjil 2013
TRANSCRIPT
-
LAPORAN TUGAS AKHIR Implementasi Sistem Pakar Penentuan Jurusan IPA IPS Menggunakan
Metode Tsukamoto
Konsentrasi : Komputasi Cerdas dan Visual
Diajukan untuk memenuhi persyaratan tugas akhir Mata Kuliah Sistem Pakar
KELAS B KELOMPOK 2
DisusunOleh :
Magdalena Trie P. 105060807111045 HennyAprilya 105060807111115 Maharani Putri S. N. 105060807111005 Clara Jerina 105060800111058
DosenPengampu: Arief Andy Subroto, ST., M.Kom
PROGRAM STUDI TEKNIK INFORMATIKA
PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER UNIVERSITAS BRAWIJAYA
MALANG 2013
-
ii
KATA PENGANTAR
Puji dan syukur dipanjatkan kehadirat Tuhan Yang Maha Esa yang telah melimpahkan berkat
dan karunia-Nya sehingga penulis dapat menyelesaikan laporan hasil diskusi dengan judul
Implementas Sistem Pakar Penentu Jurusan IPA IPS Menggunakan Metode Tsukamoto.
Melalui pengantar ini penulis ingin mengucapkan banyak terima kasih karena dalam
penyusunan laporan hasil diskusi ini penulis telah mendapat bantuan dan dorongan baik moril
maupun materil dari berbagai pihak. Untuk itu pada kesempatan ini penulis ingin
mengucapkan terima kasih kepada :
1. Bapak Arief Andy S. selaku dosen matakuliah Sistem Pendukung Keputusan
2. Semua rekan yang telah membantu dalam analisa dan pembuatan laporan ini
Serta semua pihak yang tidak disebutkan yang telah membantu penulis dalam
penyelesaian laporan hasil diskusi ini. Penulis sangat menyadari bahwa laporan hasil diskusi
ini masih banyak kekurangan, oleh karena itu penulis mengharapkan masukan dari semua
pihak.
Malang,25 November 2013
Penulis
-
iii
DAFTAR ISI
Halaman Cover i
Kata Pengantar .... ii
Daftar isi ......................................................................................................... iii
Daftar Gambar ................................................................................................ vi
Daftar Tabel ................................................................................. vii
DaftarPersamaan ............................................................................................. viii
BAB 1 PENDAHULUAN
1.1 LatarBelakang ....................................................................................... 1
1.2 RumusanMasalah .................................................................................. 2
1.3 Tujuan .................................................................................................. 2
1.4 Manfaat................................................................................................. 2
BAB II Tinjauan Pustaka
2.1 Tinjauan Pustaka 3
2.2 Penjurusan SMA ............ 7
2.3. Sistem Pakar ........................................................................................ 8
2.4. Definisi Logika Samar ......................................................................... 10
2.3. Himpunan Fuzyy .................................................................................. 12
2.4. Fungsi Keanggotaan ............................................................................. 12
2.5. Sistem Fuzzy ........................................................................................ 18
2.6. Fuzzy Set ............................................................................................. 19
2.7. FIS ....................................................................................................... 19
2.7.1 Metode Tsukamoto ..................................................................... 21
2.7.2 Metode Mamdani ........................................................................ 22
2.7.3 Metode Sugeno ........................................................................... 24
-
iv
BAB III METODOLOGI PENELITIAN
3.1 Studi Pustaka................................................................................... 26
3.2 Analisis Data Sistem ....................................................................... 26
3.3 Analisis Kebutuhan ......................................................................... 28
3.4 Peracangan Umum .......................................................................... 29
3.5 Implementasi ................................................................................... 30
3.6 Pengujian ........................................................................................ 31
3.7 Kesimpulandan Saran ...................................................................... 31
BAB IV ANALISIS DAN PERANCANGAN SISTEM
4.1 Analisa Kebutuhan Sistem ............................................................. 33
4.1.1. Identifikasi Aktor ................................................................ 33
4.1.2. Daftar Kebutuhan Sistem ..................................................... 33
4.1.3. Diagram Use Case ............................................................... 34
4.1.4. Skenario Use Case ............................................................... 35
4.1.4.1. Skenario Use Case Login......................................... 36
4.1.4.2. Skenario Use Case Logout ....................................... 36
4.1.4.3. Skenario Use Case Mengolah Data User .................. 37
4.1.4.4. Skenario Use Case Mengolah Data Siswa ................ 38
4.1.4.5. Skenario Use Case Mengolah Data Hasil Pengolahan
Pakar ................................................................................... 39
4.1.4.6. Skenario Use Case Melakukan Test ......................... 40
4.1.5. Subsistem Antarmuka .......................................................... 62
4.1.5.1. Halaman Login ........................................................ 63
4.1.5.2. Halaman Home (Admin) ......................................... 64
4.1.5.3. Halaman Add Data User .......................................... 64
4.1.5.4. Halaman Lihat dan Delete Data User ....................... 65
-
v
DAFTAR PUSTAKA .................................................................................... 42
-
vi
DAFTAR GAMBAR
Gambar 2.1 SistemPakar ...................................................................................... 7
Gambar 2.2 Sistem Pakar dari Sudut Pandag Lingkungan .................................... 8
Gambar 2.3 Pemetaan Input Output ...................................................................... 10
Gambar 2.4 Representasi Linier Naik ................................................................... 12
Gambar 2.5 Representasi Linier Turun ................................................................. 13
Gambar 2.6 RepresentasiKurvaSegitiga ............................................................... 13
Gambar 2.7 RepresentasiKurvaTrapesium ............................................................ 14
Gambar 2.8 RepresentasiKurvaPertumbuhan ........................................................ 15
Gambar 2.9 RepresentasiKurvaPenyusutan .......................................................... 16
Gambar 2.10 RepresentasiKurva Phi .................................................................... 16
Gambar 2.11 SistemInferensi Fuzzy ..................................................................... 19
Gambar 2.12 Proses SistemInferensi Fuzzy .......................................................... 19
Gambar 2.13 FIS Metode Tsukamoto ................................................................... 21
Gambar 2.14 FIS MetodeMamdani ...................................................................... 22
Gambar 2.15 FIS Metode Takagi-Sugeno ............................................................. 23
Gambar 3.1 Diagram AlirMetodologiPenelitian ................................................... 24
Gambar 3.2 Diagram Blok Sistem Pakar Pemilihan Jurusan ................................. 26
Gambar 4.1 Pohon Perancangan ........................................................................... 29
Gambar 4.2 Diagram Use Case............................................................................. 32
Gambar 4.3 Sitemap Halaman Admin .................................................................. 38
Gambar 4.4 Sitemap Halaman User ...................................................................... 39
Gambar 4.5 Perancangan Antarmuka Halaman Login .......................................... 39
Gambar 4.6 Perancangan Antarmuka Halaman Home .......................................... 40
Gambar 4.7 Perancangan Antarmuka Halaman Insert dan Edit Data User............. 40
Gambar 4.8 Perancangan Antarmuka Halaman Lihat dan Edit, Delete Data User . 41
-
vii
DAFTAR TABEL
Tabel 2.1 Perbandingan Objek dan Metode .......................................................... 4
Tabel 2.2 Perbandingan Data Input....................................................................... 4
Tabel 4.1 Identifikasi Aktor.................................................................................. 30
Tabel 4.2 Daftar Kebutuhan Sistem ...................................................................... 30
Tabel 4.3 Skenario Use Case Login dan Melihat Hasil Rekomendasi ................... 33
Tabel 4.4 Skenario Use Case Logout .................................................................... 33
Tabel 4.5 Skenario Use Case Mengolah Data User ............................................... 34
Tabel 4.6 Skenario Use Case Mengolah Data Siswa ............................................. 35
Tabel 4.7 Skenario Use Case Mengolah Data Hasil Pengolahan Pakar ................. 36
Tabel 4.8 Skenario Use Case Melakukan Test ...................................................... 37
-
viii
DAFTAR PERSAMAAN
Persamaan 2.1Representasi Linier Naik ................................................................ 7
Persamaan 2.2Representasi Linier Turun .............................................................. 8
Persamaan 2.3RepresentasiKurvaSegitiga ............................................................ 9
Persamaan 2.4RepresentasiKurvaTrapesium ........................................................ 10
Persamaan2.6 RepresentasiKurvaPertumbuhan .................................................... 11
Persamaan 2.7 RepresentasiKurvaPertumbuhan ................................................... 12
Persamaan 2.8 RepresentasiKurva Phi .................................................................. 13
-
1
BAB I
PENDAHULUAN
1.1 Latar belakang
Pelaksanaan penjurusan bagi setiap siswa SMA dimulai pada semester satu
kelas XI. Penjurusan di tingkat SMA tidak selalu menjamin bahwa seorang siswa
akan memilih bidang studi yang sama di Universitas. Faktor yang menjadi penentu
pemilihan bidang studi masih didominasi oleh: referensi orangtua, tren terkini dan
faktor teman. [1]
Tes bakat dan minat siswa sebelum memilih bidang studi penting dilakukan
jika siswa tidak mengetahui potensi yang dimilikinya dan akan diarahkan kemana
kelak masa depannya. Implementasi teknologi informasi yang sesuai yaitu sistem
pakar dengan data bakat dan minat serta nilai akademik.[1]
Penentuan jurusan siswa SMA berpengaruh terhadap kegiatan akademik
siswa. Oleh karena itu, penjurusan yang tepat dan sesuai dengan bakat serta minat
siswa sangat diperlukan. Dengan adanya penjurusan, diharapkan setiap siswa dapat
lebih fokus pada bakat yang dimiliki. Namun faktor utama yang menentukan
penjurusan adalah nilai akademik siswa, minat siswa, kapasitas kelas IPA dan nilai tes
IQ.[12]
Nilai tes IQ adalah salah satu alat ukur kecerdasan seseorang. Kecerdasan
ialah istilah umum yang digunakan untuk menjelaskan sifat pikiran yang mencakup
sejumlah kemampuan, seperti kemampuan menalar, merencanakan, memecahkan
masalah, berpikir abstrak, memahami gagasan, menggunakan bahasa, dan belajar.
Kecerdasan erat kaitannya dengan kemampuan kognitif yang dimiliki oleh
individu.[12]
Fuzzy inference system (FIS) adalah suatu kerangka komputasi yang
didasarkan pada teori himpunan fuzzy, aturan fuzzy dan penalaran fuzzy
(Kusumadewi dan Hartati, 2006). Secara garis besar, input crisp dimasukkan ke FIS.
Input ini kemudian dikirim ke basis pengetahuan yang berisi n aturan fuzzy dalam
bentuk if-then. Fire strength atau derajat kebenaran akan dicari pada setiap aturan.
Jika jumlah aturan lebih dari satu maka dilakukan inferensi dari semua aturan. Untuk
mendapatkan nilai crisp sebagai output sistem dilakukan defuzzifikasi dari hasil
inferensi. Fuzzy inference system (FIS) dapat dilakukan dengan tiga metode, yaitu
dengan metode Mamdani, metode Sugeno dan metode Tsukamoto (Kusumadewi dan
-
2
Purnomo, 2004). Metode yang dipilih untuk menyelesaikan bidang studi adalah
metode Tsukamoto.[12]
1.2. Rumusan masalah Berdasarkan latar belakang yang telah diuraikan di atas maka didapat rumusan
masalah yang meliputi :
a. Bagaimana rancangan dari sistem pakar pemilihan bidang studi dengan
menggunakan fuzzy interference system metode Tsukamoto?
b. Bagaimana akuisisi pengetahuan dari sistem pakar pemilihan bidang studi
dengan menggunakan fuzzy interference system metode Tsukamoto ?
c. Bagaimana implementasi dari sistem pakar pemilihan bidang studi dengan
menggunakan fuzzy interference system metode Tsukamoto ?
d. Bagaimana pengujian dari sistem pakar pemilihan bidang studi dengan
menggunakan fuzzy interference system metode Tsukamoto ?
1.3. Tujuan Tujuan perancangan sistem pakar ini adalah merancang dan membangun
sistem pakar untuk pemilihan bidang studi bagi calon mahasiswa dengan
menggunakan fuzzy interference system metode Tsukamoto.
1.4. Manfaat Diharapkan dengan adanya perancangan sistem pakar ini dapat bermanfaat
bagi :
a. Bagi Instansi Pendidikan Diharapkan sistem pakar ini dapat memudahkan para
pendidik dan pakar psikologi untuk mengarahkan calon mahasiswa pada pemilihan
bidang studi yang sesuai.
b. Bagi Ilmu Pengetahuan Diharapkan perancangan aplikasi ini dapat menambah
referensi terhadap penelitian baru dengan bidang studi terkait.
c. Bagi Masyarakat Diharapkan sistem pakar ini dapat menjadi sarana informasi
untuk membantu calon mahasiswa dalam memilih bidang studi yang tepat.
d. Bagi Penulis Diharapkan dengan adanya tugas akhir ini dapat menjadi
pembelajaran dan dapat menambah pengalaman di bidang studi keilmuan yang
terkait.
-
3
BAB II
TINJAUAN PUSTAKA
2.1 Kajian Pustaka Penjurusan di tingkat SMA tidak selalu menjamin siswa memilih bidang studi
yang sama di Perguruan Tinggi. Banyak hal yang menjadi faktor penentu siswa dalam
menentukan pilihan bidang studi di Perguruan Tinggi. Hingga saat ini, faktor penentu
yang masih mendominasi diantaranya: referensi orang tua, tren terkini dan faktor
teman. Masih banyak siswa yang dibuat bingung karena siswa masih belum
mengetahui minat bakat serta potensi yang dimilikinya sehingga lebih cendurung
mengikuti saran dari orang lain [1].
Masalah tersebut menjadikan peneliti untuk merancang sebuah sistem pakar
yang berguna untuk membantu siswa untuk memilih program studi di Perguruan Tinggi
berdasarkan tes bakat dan minat bakat siswa. Dalam implementasi penulis pada
penelitian dengan judul Sistem Pakar Pemilihan Bidang Studi Bagi Calon Mahasiswa
Dengan Metode Technique For Order Preference By Similarity To Ideal Solution
(TOPSIS) (Studi Kasus SMA NEGERI 8 Malang) dengan kriteria perhitungan yang
digunakan antara lain: nilai akademik, hasil test bakat dan hasil tes minat. Hasil akhir
dari sistem yaitu sebuah table rekomendasi bidang studi dengan tujuh alternative data
sesuai dengan kriteria yang disebutkan sebelumnya. Besar kesesuaian antara hasil
sistem dengan keinginan siswa sebesar 65.91% [1].
Metode Tsukamoto juga digunakan pada penelitian kedua yaitu sebuah sistem
pakar dengan judul Studi Inferensi Fuzzy Tsukamoto Untuk Penentuan Faktor
Pembebanan Trafo PLN. Metode Tsukamoto digunakan sebagai alat bantu teknisi PT.
PLN dalam melakukan pemeliharaan preventif pada trafo PLN sehingga dapat
dilakukan pemeliharaan sesuai dengan gejala awal gangguan [2].
Sistem yang akan dibangun penulis nantinya merupakan sistem pakar yang
memanfaatkan metode Tsukamoto dalam membantu pemelihan penjurusan siswa SMA
sesuai dengan nilai yang telah dilakukan sehingga dapat dilakukan perhitungan kriteria
seperti pada penelitian pertama. Penelitian dilakukan dengan metode Tsukamoto
dengan perhitungan seperti pada penelitian kedua.
-
4
Pada tabel 2.1 dibawah ini akan dijelaskan mengenai perbandingan objek dan
metode yang digunakan.
Tabel 2.1 Perbandingan Objek dan Metode Penelitian Objek yang digunakan Metode yang digunakan
Sebelumnya
Pemilihan Bidang Studi Calon Mahasiswa
TOPSIS (Technique For Order Preference By Similiarity To Ideal Solution)
Pembebanan Trafo PLN Tsukamoto
Usulan Pemilihan Penjurusan SMA Tsukamoto
Sumber: [1, 2]
Selanjutnya pada tabel 2.2 dibawah ini akan diuraikan mengenai perbandingan
data input untuk masing-masing objek.
Tabel 2.1 Perbandingan Data Input Pemilihan Bidang
Studi Calon Mahasiswa
Pembebanan Trafo PLN
Pemilihan Penjurusan SMA
Input
Rata-rata nilai akademik kelas X, terdiri atas: Bahasa, Logika, Sains, Praktek, Sosial.
Penalaran Verbal
Kemampuan Angka
Penalaran Abstrak
Kecepatan dan Ketelitian Klerikal (KKK)
Penalaran Mekanikal
Pemakaian Bahasa Mengeja
Penggunaan Tata Bahasa
Hasil tes minat yang terdiri dari : Bahasa, Seni,
Pembebanan trafo
Ketidakseimbangan beban
Faktor daya Tegangan
Nilai IPA Nilai IPS IQ Minat Kapasitas
-
5
Fisik, Eksperimen, Organisasi, Bisnis dan sosial.
Proses
User memasukan data fuzzy yang terdiri dari tegangan tiap fasa trafo, arus tiap fasa trafo dan kator daya
Sistem akan melakukan proses fuzzifikasi utnuk mengubah data masukan menjadi data fuzzy berdasarkan himpunan fuzzy yang terlah ditetapkan
Dilanjutkan dengan proses inferensi fuzzy menggunakan metode fuzzy Tsukamoto.
Sistem akan memberikan rekomendasi sesuai dengan proses fuzzy yang telah dilakukan. Keluaran berupa informasi variable tegangan dan solusi keputusan pemeliharan trafo PLN.
User memasukan data fuzzy yang terdiri dari Nilai IPA, Nilai IPS, IQ, Minat, Kapasitas
Sistem akan melakukan proses fuzzifikasi utnuk mengubah data masukan menjadi data fuzzy berdasarkan himpunan fuzzy yang terlah ditetapkan
Dilanjutkan dengan proses inferensi fuzzy menggunakan metode fuzzy Tsukamoto.
Sistem akan memberikan rekomendasi sesuai dengan proses fuzzy yang telah dilakukan. Keluaran berupa rekomendasi jurusan SMA.
Output
Hasil rekomendasi bidang studi :
Kedokteran MIPA SASTRA Teknik Ilmu
administrasi
Nilai pembebanan trafo dan ketidakseimbangan beban beserta solusi pemeliharaan trafo PLN.
Rekomendasi jurusan SMA, yakni :
IPA IPS
-
6
FISIP Ekonomi
Sumber: [1, 2]
2.2 Penjurusan SMA Ketentuan kurikulum, pemilihan jurusan adalah ketentuan yang ditetapkan
oleh pemerintah melalui kurikulum yang berlaku untuk sekolah dengan disesuaikan
kemampuan sekolah masing-masing. Ada tiga program studi di SMA yang selama ini
dikenal, yaitu Program Ilmu Pengetahuan Alam (IPA), Program Ilmu Pengetahuan
Sosial (IPS) serta Program Bahasa.
Pertimbangan khusus untuk melakukan penjurusan :
1. Program Ilmu Pengetahuan Alam (IPA)
Nilai mata pelajaran yang menjadi ciri program IPA, yakni; fisika,
kimia, biologi, matematika, harus sesuai dengan Standar Ketuntasan
Minimal (SKM). Kemudian hasil tes psikologi: IQ minimal 100,
kemampuan numerical, skolastik, relasi ruang minimal 65.
2. Pogram Ilmu Pengetahuan Sosial (IPS)
Nilai mata pelajaran yang menjadi ciri program IPA, yakni; ekonomi,
sosiologi, geografi, sejarah harus sesuai dengan Standar Ketuntasan
Minimal (SKM) serta juga dibutuhkan bakat numerical, verbal serta
penalaran yang tinggi.
3. Program Bahasa
Juga harus di dukung dengan mata pelajaran yang menjadi cirri dari
program ini seperti; bahasa Indonesia, Bahasa Inggris, serta penambahan
bahasa asing lain seperti Jerman atau Bahasa jepang yang kesemuannya
harus minimal sesuai dengan KKM. Terkait masalah hasil tes psikologi
pada jurusan ini hendaknya ditunjang dengan kemampuan verbal serta
penalaran yang tinggi [3].
2.3 Sistem Pakar Sistem Pakar adalah sistem yang digunakan untuk mengadopsi
pengetahuan manusia ke komputer agar dapat menyelesaikan masalah seperti
yang biasa dilakukan oleh para ahli namun tetap tidak digunakan untuk
mengganti kedudukan seorang pakar. Aturan-aturan diberikan agar komputer
-
7
dapat memberlakukan informasi-informasi yang tersimpan dan program
nantinya dapat memberikan solusi-solusi pengambilan keputusan mengenai
permasalahan tertentu. Menurut Efraim Turban, Sistem Pakar harus
mengandung keahlian, ahli, pengalihan keahlian, inferensi, aturan serta
kemampuan menjelaskan.
Facts
Expertise
Gambar 2.1. Sistem Pakar Sumber : [4]
Bentuk-bentuk pengetahuan [4] :
1. Faktor-faktor pada lingkup permasalahan tertentu
2. Teori-teori lingkup masalah tertentu
3. Prosedur-prosedur berkenaan dengan lingkup masalah tertentu
4. Strategi-strategi global untuk menyelesaikan masalah
5. Meta-knowledge
Karakteristik umum yang membedakan Sistem Pakar dengan perangkat lunak
biasa adalah [5] :
1. Terdapat banyak kemungkinan jawaban
2. Meskipun sistem pakar sering menggunakan informasi berupa data
kabur, dengan menggunakan sistem pakar diharapkan dapat mengurangi
tingkat kesalahan dan dapat memberikan keputusan yang tergolong baik
3. Sistem pakar bersifat heuristic untuk memperoleh suatu solusi
User
Knowledge
Base
-
8
4. Sistem pakar dapat memberikan kemudahan-kemudahan jawaban kepada
user.
Gambar 2.2. Sistem Pakar dari Sudut Pandang Lingkungan dalam Sistem
Sumber : [2]
Gambar di atas menjelaskan bahwa sistem pakar dapat dilihat
dari sudut pandang lingkungan dalam sistem. Lingkungan konsultasi
diperuntukkan bagi pengguna non pakar untuk berkonsultasi dengan sistem
dengan tujuan untuk mendapatkan nasehat pakar. Lingkungan pengembangan
ditujukan bagi yang membangun dan mengembangkan sistem pakar termasuk
membangun komponen dan memasukkan pengetahuan hasil akuisisi
pengetahuan ke dalam basis pengetahuan [2].
Blackboard adalah memori yang digunakan untuk menyimpan kondisi
yang dialami oleh pengguna dan hipotesa serta keputusan sementara. Proses
update pada basis pengetahuan dibutuhkan untuk menyempurnakan mesin
inferensi, sehingga solusi yang dihasilkan lebih baik daripada sebelumnya [2].
Mesin Inferensi
Antar Muka Fasilitas
Penjelasan
Pemakai
Rekomendasi
Blackboard, Solusi
Basis Pengetahuan:
Fakta dan Aturan
Perbaikan
Pengetahuan
Knowledge
Engineer
Pakar
Lingkungan Konsultasi Linkungan Pengembangan
Akusisi Pengetahuan
-
9
Mesin Inferensi merupakan prosesor dalam sistem pakar yang
berfungsi untuk mencocokan fakta dengan pengetahuan yang terdapat pada
basis pengetahuan untuk menghasilkan solusi dari suatu masalah. Sedangkan
cara penyusunan basis pengetahuan dalam sistem agar dapat memecahkan
masalah serupa dengan seorang ahli/pakar disebut dengan penyajian
pengetahuan [2].
Metode Forward Chaining
Metode ini melakukan pemrosesan dimulai dari
sekumpulan data, kemudian dilakukan proses inferensi
sesuai dengan aturan yang telah diterapkan, sehingga
diketemukan kesimpulan yang optimal. Kelebihannya
adalah data baru dapat dimasukkan ke dalam table
database inference dan kemungkinan untuk melakukan
perubahan aturan inferensi. Biasanya metodi ini
digunakan untuk masalah pengendalian dan peramalan
[11].
Metode Backward Chaining
Metode ini dimulai dari hipoteses dan kemudian
mencari bukti yang mendukung harapan dan
memerlukan perumusan serta pengujian hipotesis
sementara. Metode inferensi dengan backward chaining
akan mencari aturan yang memiliki konsekuen yang
mengarah kepada tujuan yang diskenariokan. Biasanya
metodi ini digunakan untuk masalah diagnosis [11].
2.4 Definisi Logika Samar (Fuzzy Logic)
Fuzzy dapat diartikan sebagai hal yang bersifat kabur atau samar-samar.
Sehingga dalam suatu saat bisa saja suatu nilai dapat bernilai benar dan salah
secara bersamaan. Sehingga logika fuzzy merupakan sebuah logika yang
memiliki nilai yang tidak pasti karena bersifat kabur atau samar. Dalam logika
fuzzy dikenal istilah derajat keanggotaan yang bernilai 0 sampai dengan 1. Nilai
tersebut yang nantinya akan memberikan keberadaan dan kesalahan suatu nilai
yang bergantung pada keangotaan yang dimiliki. Logika fuzzy digunakan untuk
-
10
mempresentasikan masalah yang mengandung ketidakpastian dalam sebuah
bahasa yang dipahami oleh komputer [6].
Pengertan lain menjelaskan bahwa logika fuzzy adalah cara yang
digunakan dengan baik untuk memetakan suatu ruang input ke dalam ruang
output. Fuzzy dinyatakan dalam sebuah derajat keanggotaan dan derajat
kebenaran. Sehingga sesuatu dapat dinyatakan dalam kondisi benar dan salah
pada waktu yang bersamaan (Kusumadewi,2004), berikut merupakan contoh
pemetaan yang dapat dilihat pada gambar 2.1 dibawah ini [6].
Gambar 2.3 pemetaan input output Sumber: [6]
Alasan penggunaan logika fuzzy yaitu
Logika fuzzy sangat fleksibel dan mudah untuk dipahami.
Logika fuzzy memiliki toleransi terhadap data-data yang tidak tepat.
Logika fuzzy dapat bekerja sama dengan teknik-teknik kendali secara
konvensional serta mampu memodelkan fungsi-fungsi non linier yang
sangat kompleks.
Logika fuzzy dapat mengaplikasikan pengalaman-pengalaman para pakar
tanpa harus melalui proses pelatihan [6].
Persediaan Barang Produksi
Barang
Pemataan Input Output pada masalah produksi Diberikan data persediaan barang, barapa jumlah barangyang harus diproduksi
Ruang Input (Semua total persediaan barang yang mungkin)
RuangOutput (Semua total produksi barang yang mungkin)
-
11
2.5 Himpunan Fuzzy
Himpunan fuzzy merupakan pengelompokan suatu hal berdasarkan variable
bahasa (lingustik variable), yang dinyatakan sebagai fungsi keanggotaan pada semesta
U. Keanggotaan suatu nilai pada sebuah himpunan dinyatakan dalam derajat
keanggotaan, yang memiliki nilai antara 0.0 sampa 1.0.
Himpunan fuzzy didasarkan untuk memperluas jangkauan fungsi karakteristik
sedemikian hingga fungsi tersebut dapat mencangkup bilangan real. Nilai keanggotaan
menunjukkan bahwa suatu item tidak hanya bernilai benar atau salah, di mana nilai 0
menunjukkan bahwa item bernilai salah dan nilai 1 menunjukkan bahwa item tersebut
bernilai benar, serta masih terdapat nilai-nilai yang terletak antara benar dan salah [4].
Atribut himpunan fuzzy:
Lingustik
Linguistik yaitu penamaan suatu grup yang mewakili suatu keadaan tertentu
dengan menggunakan bahasa alami dan biasanya ditulis menggunakan huruf
besar. Contoh: MUDA, TUA.
Numeris
Numeris yaitu suatu nilai yang menunjukkan ukuran dari suatu variable.
Contoh: 10, 25, 30, dsb.
Suatu jimpunan fuzzy A dalam semesta pembicaraan X dinyatakan dengan fungsi
keanggotaan A yang mempunyai nilai dalam interval. Proses untuk mendapat derajat
keanggotaan dalam himpunan fuzzy disebut fuzzifikasi [7].
2.6 Fungsi Keanggotaan
Fungsi keanggotaan adalah suatu kurva yang menunjukkan pemetaan input data
ke dalam nilai anggotanya (derajat keanggotaan). Fungsi keanggotaan memiliki interval
antara 0 sampai 1. Pendekatan fungsi adalah salah satu cara yang dapat digunakan
untuk mendapatkan nilai keangotaan.
Ada beberapa fungsi yang bisa digunakan, yakni:
-
12
Representasi Linear
Di dalam representasi linier, pemetaan input ke derajat keanggotaan digambarkan
sebagai suatu garis lurus. Representasi linier adalah bentuk yang paling sederhana
dan menjadi pilihan yang baik. Ada 2 keadaan himpunan fuzzy linier, yaitu:
o Representasi Liniear Naik Kenaikan himpunan dimulai pada nilai domain yang memiliki derajat
keanggotaan nol bergerak e kanan menuju ke nilai domain yang memiliki
derajat keanggotaan lebih tinggi [8].
Fungsi Keanggotaan:
Gambar2.4 Representasi Linier Naik Sumber: [perancangan]
[] = 0;
; 1; . (2 1) o Representasi Linear Turun
Garis lurus dimulai dari nilai domain dengan derajat keanggotaan tertinggi
pada sisi kiri, kemudian bergerak menurun ke nilai domain yang memiliki
derajat keanggotaan yang lebih rendah [8].
Fungsi Keanggotaan:
a b domain 0
1
Derajat Keanggotaan
-
13
Gambar 2.5 Representasi Linier Turun Sumber: [perancangan]
[] = 1;
; 0; . (2 2) Representasi Kurva Segitiga
Kurva segitiga merupakan gabungan antara 2 garis liniear [8]. Fungsi keanggotaan:
Gambar 2.6 Representasi Kurva Segitiga Sumber: [perancangan]
[] =
0; atau
;
; . (2 3)
Representasi Kurva Trapesium
Memiliki dasar layaknya kurva segitiga, namun terfapat beberapa titik yang
memiliki nilai keanggotaan 1 [8]. Fungsi keanggotaan:
1
0 a Domain b
Derajat Keanggotaan
a b c
1
0
Derajat Keanggotaan
domain
-
14
Gambar 2.7 Representasi Kurva Trapesium Sumber: [perancangan]
[] =
0; atau
; 1;
; . (2 4)
Representasi Kurva Bentuk Bahu
Daerah yang terletak di tengah-tengah suatu variable yang direpresentasikan
dalam bentuk segitiga, namun terkadang pada salah satu sisi dari variable tersebut
tidak mengalami perubahaan. Bahu kiri bergerak dari benar ke salah dan bahu
kanan bergerak dari salah ke benar [8].
Representasi Kurva S
Kurva pertumbuhan dan penyusutan merupakan kurva S (kurva sigmoid) yang
berhubungan dengan kenaikan dan penurunan permukaan secara tak linear. Kurva
S didefinisikan dengan menggunakan 3 parameter yakni nilai keanggotaan nol,
nilai keanggotaan lengkap dan crossover yaitu titik yang memiliki domain 50%
benar. Terdapat dua keadaan himpunan fuzzy tak linier, yakni:
o Kurva Pertumbuhan Kurva pertumbuhaan akan bergerak dari sisi paling kiri dengan nilai
keanggotaan nol ke sisi paling kanan dengan nilai keanggotaan satu. Fungsi
keanggotaan akan tertumpu pada 50% nilai keanggotaannya yakni titik
infleksi [8]. Fungsi keanggotaan:
1
c d 0
a b
domain
Derajat Keaangotaan
-
15
Gambar 2.8 Representasi Kurva Pertumbuhan Sumber: [perancangan]
(; ,, ) =
0; 2
; 1 2
; 1;
. . (2 5) o Kurva Penyusutan
Kurva penyusutan akan bergerak dari sisi paling kanan dengan nilai
keanggotaan satu ke sisi paling kiri dengan nilai keanggotaan nol [8].
Fungsi keanggotaan:
Gambar 2.9 Representasi Kurva Penyusutan
Sumber: [perancangan]
1
0,5
0 a b c
Derajat
keanggotaan
domain
1
0.5
0 a b c
Derajat keanggotaan
domain
-
16
(; ,, ) =
1; 1 2
; 2
; 0;
. . (2 6) Representasi kurva Phi
Kurva ini berbentuk seperti lonceng dan derajat keanggotaan 1 terletak pada pusat
domain [8]. Fungsi keanggotaan:
Gambar 2.10 Representasi Kurva Phi Sumber: [perancangan]
(;, ) = ; , 2 , ; 1 ; , + 2 , + ; > . (2 7)
2.7 Sistem Fuzzy
Sistem fuzzy pertama kali ditemukan oleh Prof. Lotfi Zadeh di Universtas
California. (Kusumadewi: 2006) Sistem ini diciptakan karena logika Boolean tidak
memiliki ketelitian yang tinggi, yakni hanya memiliki logika 0 dan 1. Logika fuzzy
adalah salah satu cara yang tepat untuk memetakan suatu ruang input ke dalam suatu
ruang output.
1
0.5
0
a c b
domain
Derajat keanggotaan
-
17
Hal yang perlu diketahui dalam sistem fuzzy, yaitu:
Variabel Fuzzy
Variabel fuzzy merupakan variable yang hendak diterapkan dalam sistem fuzzy.
Contoh: umur, temperature, dsb.
Himpunan Fuzzy
Himpunan fuzzy merupakan suatu grup yang mewakili suatu kondisii tertentu di
dalam variable fuzzy. Himpunan fuzzy memiliki 2 atribut, yaitu:
Lingustik
Linguistik yaitu penamaan suatu grup yang mewakili suatu keadaan tertentu
dengan menggunakan bahasa alami dan biasanya ditulis menggunakan
huruf besar. Contoh: MUDA, TUA.
Numeris
Numeris yaitu suatu nilai yang menunjukkan ukuran dari suatu variable.
Contoh: 10, 25, 30, dsb.
Semesta Pembicaraan
Semesta pembicaraan merupakan keseluruhan nilai yang diperbolehkan untuk
dioperasikan dalam variable fuzzy.
Domain
Domain himpunan fuzzy merupakan kesuluruhan nilai yang diizinkan dalam
semesta pembicaraan yang boleh dioperasikan dalam himpunan fuzzy.
2.8 Fuzzy Set Fuzzy set merupakan dasar dari fuzzy logic dan fuzzy system. Suatu fuzzy set A di
dalam Universe (semesta) U didefinisikan sebagai suatu fungsi keanggotaan A(x),
yang memetakan setiap objek di U menjadi suatu nilai real dalam interval [0,1]. Nilai-
nilai A(x) menyatakan derajat keanggotaan x di dalam A [9]. Perhitungan fuzzy set
menggunakan max-min inference serta menggunakan rumus segitiga maupun trapesium
untuk menentukan derajat keanggotaannya.
-
18
2.9 Fuzzy Inference System (FIS)
Fuzzy merupakan suatu kerangka kerja perhitungan yang berdasar konsep
teori himpunan fuzzy.Aturan fuzzy meliputi fungsi if-then, dan pemikiran fuzzy.
Inferensi fuzzy dapat mengambil input fuzzy ataupun crisp (himpunan tegas), tetapi
outputnya hampir selama menghasilkan himpunan fuzzy. Metode fuzzy merupakan
suatu metode di fuzzikan untuk mendapatkan nilai crisp(himpunan tegas).Struktur
dasar dari sistem inferensi fuzzy ini meliputi[7] :
A. Dasar aturan yang mana berisi sebuah pemilihan aturan fuzzy.
B. Database yang nantinya di gunakan untuk mendefinisikan fungsi
keanggotaan dalam sebuah aturan fuzzy.
C. Mekanisme pemikiran yang mengerjakan prosedur inferensi terhadap
aturan dan kenyataan yang dapat diketahui untuk menurunkan output atau
kesimpulan masuk akal.
Penjelasan dalam sistem inferensi fuzzy dapat di gambarkan sebagai berikut :
Gambar 2.11. Sistem inferensi fuzzy Sumber [7]
is 1 Y is B1
W1
Rule 1
Rule 2
is 2 W2
Y is B2
is r Y is Br
Wr
Rule r
Crisp for Fuzzy
Agoregator
Fuzzy
Fuzzy
Fuzzy
Defuzrisp y
Fuzzy Crisp
-
19
Proses proses dalam Sistem Inferensi fuzzy meliputi
Gambar 2.12 Proses sistem inferensi fuzzy
Sumber: [7]
Gambar 2.12 diatas merupakan proses sistem inferensi fuzzy yang
penjelasannya adalah sebagai berikut :
1. Fuzzyfikasi merupakan nilai crisp (numeric) dalam suatu himpunan
fuzzydan menentukan derajat keanggotaan dalam suatu himpunan fuzzy.
Fuzzyfikasi ini dilakukan didasarkan pada teori himpunan fuzzy , sehingga
apabila data yang belum bebentuk fuzzy harus di ubah dalam bentuk
fuzzy.
2. Jika bagian antesenden dihubungkan oleh konektor and, or, not maka
derajat kebenarannya dihitung dengan operasi fuzzy yang bersesuaian.
3. Implikasi merupakan proses mendapatkan pengeluaran dari IF-THEN rule.
Fugsi dari implikasi itu sendiri adalah min.
4. Agregasi merupakan suatu metode yang menggunakan max atau or pada
semua keluaran IF-THEN rule. Dan jika lebih dari satu kaidah yang
dievaluasi, keluaran semua IF-THEN rule dikombinasikan menjadi sebuah
fuzzy set tunggal.
5. Defuzzyfikasi merupakan proses memetakan besaran dari himpunan fuzzy
ke dalam bentuk nilai crisp. Defuuzyfikasi ini diterapkan karena sistem
diatur dengan besaran rill, bukan besaran fuzzy. Pada defuzzifikasi
INPUT
OPERASI FUZZY LOGIC
IMPLIKASI
AGREGASI
DEFUZZYFIKASI
-
20
strategib yang dipakai dalam pakar adalah menetukan bentuk kompromi
yang terbaik. Dalam fuzzy inference system dikenal tiga metode yang dapat
digunakan untuk pengambilan keputusan, yaitu :
3.7.1. metode Tsukamoto
pada metode ini, konsekuen dari setiap aturan bebentuk IF-
THEN yang direpresentasikan dengan menggunakan himpunan-
himpunan fuzzy dengan fungsi keanggotaan yang monoton. Sebagai
hasilnya, output hasil penarikan kesimpulan (inference) dari tiap-tiap
aturan diberikan secara tegas (crisp) berdasarkan-predikat (fire
strength). Hasil akhir diperoleh dengan menggunakan rata-rata
berbobot (weight average) [10].
Gambar 2.13 fuzzy inference system metode Tsukamoto
Sumber: [10]
Z
Z1
C2
C1
A1
X
A2
X
X
B1
B2
y
y
y
Min or product
Z2
= + +
-
21
3.7.2. metode Mamdani
metode ini merupakan sebuah metode yang sering dikenal dengan nama
metode Max-Min [10]. Untuk mendapatkan output maka diperlukan 4 tahapan
yaitu
Pembentukan himpunan fuzzy (fuzzyfication)
Variabel input dan output dibagi menjadi satu atau lebih himpunan fuzzy
[10]
Penerapan fungsi implikasi
Fungsi implikasi yang digunakan adalah MIN [10]
Komposisi (penggabungan) aturan
Inferensi diperoleh dari kumpulan dan korelasi antar aturan. Ada 3 macam
metode yang dapat digunakan untuk melakukan inferensi, yaitu metode
MAX, metode ADDITIVE, dan metode probabilistik OR [10].
Penegasan (defuzzyfication)
Input disini adalah suatu himpunan fuzzy yang diperoleh dari komposisi
aturan-aturan fuzzy, outputnya adalah nilai tegas (crisp) yang dihasilkan
dari satu bilangan pada domain himounan fuzzy tersbut. Metode
defuzzifikasi yang digunakan yaitu metode Centroid (Center of Mass),
metode Bisektor, metode Mean of Maximum (MOM), metode Largest of
Maximum (LOM), dan metode Smallest of Maximum (SOM) [10].
-
22
Gambar 2.14 fuzzy inference system metode Mamdani
Sumber: [8]
3.7.3. metode Sugeno
metode ini hampir sama dengan metode mamdani, hanya output sistem bukan
berupa himpunan fuzzy melainkan sebuah konstanta (orde nol) atau persamaan
linier (orde satu) [10].
Model Sugeno Orde Nol
IF (x1 is A1) (x2 is A2) (xn is An) THEN z=k
Model Sugeno Orde Satu
IF (x1 is A1) (x2 is A2) (xn is An) THEN z= p1 * x1 + + p2 *
x2 + q
Z COA
C
Z
Z
C2
C2
C1 A1
X
A2
X
X
B1
B2
y
y
y
Max
Min
-
23
Gambar 2.15 fuzzy inference system metode Takagi-Sugeno
Sumber: [8]
A1
X
A2
X
XC
B1
B2
y
y
y
Weigthed average
Min or product
= + +
W1
W1
1 = 1 + 1 + 1
= + +
-
24
BAB III
METODELOGI PENELITIAN
Bab ini membahas metode yang digunakan dalam penelitian yang terdiri dari studi
pustaka, metode pengambilan data, metode perancangan, metode implementasi, metode
pengujian dan analisis serta pengambilan kesimpulan dan saran. Berikut gambar 3.1. adalah
diagram alir metodelogi penelitian yang dilakukan :
Gambar 3.1 Diagram Metodologi Penelitian
Sumber: [Perancangan]
3.1 Studi Pustaka Metode ini digunakan untuk mendapatkan dasar teori sebagai suber acuan untuk
penulisan skripsi dan pengembangan aplikasi. Teori dan pustaka yang berkaitan dengan
tugas akhir ini meliputi :
-
25
Penjurusan SMA
Sistem Pakar
Fuzzy Logic
Fungsi Keanggotaan
Sistem Fuzzy
Fuzzy Set
Fuzzy Inference System
Metode Tsukamoto
Studi literatur menjelaskan dasar teori yang digunakan sebagai penunjang dan
pendukung penulisan skripsi, Sumber atau referensi yang digunakan antar lain buku,
jurnal, laporan penelitian, bantuan dan mesin perncari (search engine) internet.
3.2 Analisis Data Sistem Aplikasi sistem pakar fuzzy logic berikut ini merupakan diagnose penyakit
dengan menggunakn mesin inferensia fuzzy berdasarkan metode tsukamoto. Proses
diagnosis ini didasarkan dengan nilai - nila pada siswa SMA kelas X. Masukan atau
inputan dari sistem berikut ini adalah :
1. Biodata Siswa yang terdiri dari
Nama, nomer induk.
2. Nilai semua Mata pelajaran yang terdiri dari
Agama, matematika, kima, fisika, biologi, sejarah, ekonomi, akutansi.
3.3 Penerapan Metode Tsukamoto Model yang dipakai dalam implementasi sistem pakar diaognosis penyakit
adalah model logika fuzzy dengan metode Tsukamoto. Gambar 3.2 di bawah
ini merupakan gambaran langkah-langkah yang digunakan dalam metode Tsukamoto.
-
26
Gambar 3.2. Flowchart Fuzzy metode Tsukamoto Sumber : [perancangan]
Adapun penjelasan dari flowchart pada gambar 3.2 di atas adalah sebagaim berikut :
1. Input himpunan fuzzy
Dalam perancangan sistem pakar ini menggunakan inputan dari
hasil nilai . Hasil pemeriksaan tersebut merupakan variabel-variabel yang
digunakan dalam menentukan penjurusan IPA/IPS. Variabel-variabel
tersebut niali biologi, fisika, kimia, matematika, sejarah, geografi, ekonomi
dan hasil psikotest.
2. Menentukan derajat keanggotaan himpunan fuzzy
Setiap variabel sistem dalam himpunan fuzzy ditentukan derajat
keanggotaannya (). Dimana derajat keanggotaan tersebut menjadi nilai
dalam himpunan fuzzy.
3. Menghitung predikat aturan ()
Variabel-variabel yang telah dimasukkan dalam himpunan fuzzy,
dibentuk aturan-aturan yang diperoleh dengan mengkombinasikan setiap
variabel dengan variabel yang satu dengan atribut lingusitiknya masing-
Mulai
Input nilai himpunan Fuzzy
Menentukan derajat keanggotaan
Menghitung predikat aturan
Defuzzifikasi
Output hasil keputusan
Selesa
-
27
masing. Aturan-aturan yang telah diperoleh akan dihitung nilai predikat
aturannya dengan proses implikasi.
Dalam metode Tsukamoto proses implikasi dilakukan dengan
operasi Min. Predikat aturan tersebut diperoleh dengan mengambil nilai
minimum dari derajat keanggotaan variabel yang satu dengan variabel
yang lain, yang telah dikombinasikan dalam aturan yang telah ditentukan
sebelumnya.
4. Defuzifikasi
Pada tahap defuzifikasi ini dilakukan penghitungan rata-rata
dengan menggunakan persamaan berikut ini :
= ,, (,, ) (3-1)
5. Hasil keputusan
Pada bagian ini merupakan hasil keputusan dari rangkaian proses
dalam penegakan penentuan penjurusan IPA/IPS.
3.4 Analisis kebutuhan Kegiatan analisis kebutuhan perangkat lunak meliputi analisis spesifikasi
perangkat lunak.Metode analisis menggunakan bahasa pemodelan UML (Unified
Modeling Language). Use Case Diagram digunakan untuk mendeskripsikan
kebutuhan-kebutuhan dan fungsionalitas sistem dari perspektif user. Analisis
kebutuhan dilakukan dengan mengidentifikasi semua kebutuhan (requirements) sistem
yang kemudian akan dimodelkan dalam diagram use case. Kebutuhan fungsional yang
nantinya akan disediakan oleh aplikasi ini antara lain adalah :
1. Aplikasi pada komputer ini harus menyediakan fasilitas untuk login sehingga
hanya admin yang terdaftar yang dapat menggunakan layanan sistem.
2. Penentuan jurusan IPA dan IPS.
Sumber data yang digunakan berasal dari nilai akademik dari calon siwa IPA
atau IPS pada saat SMA kelas X. Penentuan ini mendapatkan pengarahan dari pakar
psikologi sehingga dapat disesuaikan antara pertanyaan dengan rekomendasi bidang
studi yang diberikan.
-
28
3.5 Perancangan Umum Perancangan arsitektur sistem adalah tahap dimana penulis mulai merancang
suatu sistem yang mampu memenuhi semua kebutuhan fungsional aplikasi dalam tugas
akhir ini. Teori teori dari pustaka dan data sample digabungkan dengan ilmu yang
didapat diimplementasikan untuk merancang serta mengembangkan sistem pakar
pemilihan jurusan pada tingkat SMA. Perancangan sistem dilakukan setelah semua
kebutuhan sistem terpenuhi yang didapatkan melalui tahap analisis kebutuhan.
Perancangan aplikasi berdasarkan Object Oriented Analysis dan Object Oriented
Desaign yaitu menggunakan pemodelan UML (Unified Modeling Language). Sistem
pakar memilih bidang studi ini dibentuk dengan blok diagram seperti gambar dibawah
ini :
Gambar 3.3 Diagram Blok sistem pakar pemilihan penjurusan
Sumber : Perancangan
Lingkungan Konsultasi Lingkungan Pengembangan
Calon
Antarmuka Pengguna
Fakta tentang kejadian khusus yaitu penjurusan
IPA & IPS
Penjurusan yang direkomendasikan Mesin Inferensi
Menarik Kesimpulan
Blackboard (tempat kerja) Agenda Solusi
Deskripsi Masalah
BASIS PENGETAHUAN Fakta : tes akademik dan bakat Aturan : Menggunakan metode
tsukamoto yang memadukan dari tes bakat dan akademik
Knowladge Enginner
Pengetahuan Pakar Psikolog(keminatan)
Perbaikan Pengetahuan
Pengetahuan Terdokumenta
Akuisisi pengetahuan tentang
minat dan penjurusan
Fasilitas penjelas tentang alasan rekomendasi penjurusan IPA&IPS
-
29
Keterangna Gambar :
Proses yang dapat dijelaskan dari diagram alir diatas yakni, pertama calon siswa
akan mendapatkan soal maupun pertanyaan untuk mengetahui minatnya, serta calaon siswa
akan mengikuti test akademik. Selanjutnya jawaban serta nilai akdemik tersebut akan
menentukan rekomendasi bidang studi yang diberikan.
Proses interaksi user dengan sistem dilakukan melalui antarmuka pengguna. Pada
antarmuka juga dilengkapi dengan fasilitas penjelas yang memberikan penjelasan bagaimana
hasil kesimopulan diperoleh sehingga dapat meyakinkan pengguna. Kesimpulan diberikan
berupa rekomendasi penjurusan IPA maupun IPS yang sesuai dengan minat calon siswa
tersebut dan disesuaikan dengan nilai akademin calon siswa tersebut.
Disini pakar mengambil peranan sangat aktif dalam pembuatan basis pengetahuan.
Tempat kerja disediakan bagi pakar untuk membantu memberikan solusi bagi permasalahan
sistem dijalankan dan menyediakan fasilitas khusus yang belum diprediksi. Knowladge
engineer bertanggung jawan membuat kesan yang tepat, sevara positif mengkomunikasikan
tentang proyek, memahami tipe pakar, mempersiapkan sesi, dan seterusnya.
3.6 Implementasi Implementasi aplikasi dilakukan dengan mengacu kepada perancangan aplikasi.
Implementasi perangkat lunak dilakukan dengan menggunakan bahasa pemrograman
berorientasi objek yaitu menggunakan bahasa pemrograman Java dengan software
netbeans 6.7.1. Pada pembuatan database sistem pakar, digunakan Database Management
System (DBMS) MySQL dengan software XAMPP 1.7.7.
: Langsung
: Tidak Langsung
: Pemisan antara lingkungan dan pengembangan
: Komunikasi dua arah
-
30
3.7 Pengujian Melakukan pengujian berdasarkan implementasi yang telah dibuat melalui
perhitungan akurasi efektifitas penggunaan sistem pakar bila dibandingkan dengan sistem
manual. Parameter yang digunakan meliputi: hasil tes bakat dan minat serta nilai akademik
dari calon mahasiswa.
3.8 Kesimpulan dan saran Pengambilan kesimpulan dilakukan setelah dilakukan proses pengujian sistem pakar
sehingga dapat diketahui efektifitas kinerja sistem pakar. Tahap terakhir yaitu penulisan saran
yang dapat membantu dalam pengembangan sistem pakar selanjutnya.
-
31
BAB IV
ANALISA DAN PERANCANGAN SISTEM
1. Metode
Bab ini membahas mengenai analisis kebutuhan dan perancangan Sistem Pakar Untuk
Menentukan Jurusan di SMA. Tahap perancangan yang diperlukan terbagi menjadi dua
tahapan, yaitu perancangan kebutuhan perangkat lunak dan perancangan sistem pakar. Tahap
analisis kebutuhan perangkat lunak meliputi identifikasi aktor, daftar kebutuhan sistem dan
use case diagram serta skenario use case. Sedangkan tahap analisis perancangan sistem
keputusan meliputi perncangan subsistem basis pengetahuan, subsistem manjemen data,
subsistem manajemen model dan susbsistem antarmuka. Untuk lebih jelasnya dapat dilihat
dalam pohon perncangan seperti yang terlihat pada Gambar 4.1.
Gambar 4.1 Pohon Perancangan
Sumber: [Perancangan]
Analisa dan Perancangan
Analisa Kebutuhan
Perangkat Lunak
Perancangan sisten pakar
Identifikasi Aktor
Daftar Kebutuhan
Sistem
Use Case Diagram
Skenario Use Case
Akuisisi pengetahuan
Basis Penegetahuan
Mesin inferensi
Fasilitas pengguna
Subsistem Antarmuka
-
32
4.1. Analisa Kebutuhan Perangkat Lunak
Tahapan analisa kebutuhan sistem memiliki tujuan untuk memodelkan
informasi yang akan digunakan dalam tahapan perancangan. Analisa kebutuhan
sistem yang diperlukan meliputi identifikasi aktor, daftar kebutuhan sistem dan use
case diagram. Berikut ini merupakan penjelasan dari masing-masing tahapannya:
4.1.1. Identifikasi Aktor Tahapan ini bertujuan untuk mengidentifikasi aktor-aktor yang nantinya akan
berinteraksi dengan sistem. Pada kolom aktor disebutkan aktor-aktor yang berperan
dalam sistem dan pada kolom lainnya akan menunjukkan deskripsi dari masing-
masing aktor. Tabel 4.1 memperlihatkan aktor-aktor yang berperan dalam sistem yang
dilengkapi dengan penjelasannya yang merupakan hasil dari proses identifikasi aktor.
Tabel 4.1 Identifikasi Aktor Aktor Deskripsi Aktor
User User merupakan aktor pengguna yang ingin mendapatkan rekomendasi siswa. User bisa merupakan guru atau karyawan.
Admin Admin merupakan aktor pengguna yang bertugas untuk memantau sistem, seperti mengolah data user, mengolah data yang diperlukan untuk sistem pakar.
Sumber: Perancangan
4.1.2. Daftar Kebutuhan Sistem Tahapan ini bertujuan untuk menjelaskan kebutuhan sistem yang harus
dipenuhi saat aktor melakukan sebuah aksi. Daftar kebutuhan ini terdiri dari sebuah
kolom yang merupakan hal-hal yang harus disediakan oleh sistem, sedangkan pada
kolom yang lain menunjukkan nama use case yang menampilkan fungsionalitas
masing-masing kebutuhan tersebut. Tabel 4.2 memperlihatkan daftar kebutuhan
fungsionalitas pada sistem.
Tabel 4.2 Daftar kebutuhan Sistem Kebutuhan Aktor Nama Use Case
Sistem harus menyediakan antarmuka untuk melakukan Login
Admin, User Login
Sistem harus menyediakan antarmuka untuk melakukan Logout
Admin, User Logout
Sistem harus menyediakan menu untuk mengolah data user
Admin Mengolah data user
Sistem harus menyediakan proses untuk insert data user
Admin Insert data user
-
33
Sistem harus menyediakan proses untuk edit data user
Admin Edit data user
Sistem harus menyediakan proses untuk delete data user
Admin Delete data user
Sistem harus menyediakan menu untuk mengolah data siswa
Admin Mengolah data siswa
Sistem harus menyediakan proses untuk insert data siswa
User Insert data siswa
Sistem harus menyediakan proses untuk edit data siswa
User Edit data siswa
Sistem harus menyediakan proses untuk delete data siswa
User Delete data siswa
Sistem harus menyediakan menu untuk mengolah data hasil pakar
Admin Mengolah data hasil rekomendasi
Sistem harus menyediakan proses untuk delete data hasil pakar
Admin Delete data hasil rekomendasi
Sistem harus menyediakan antarmuka untuk menampilkan hasil olah pakar dari proses perhitungan yang telah dilakukan oleh sistem.
Admin, User Melihat hasil perhitungan sistem pakar
Sistem harus menyediakan antarmuka untuk melakukan tes
User Melakukan tes
Sistem harus menyediakan antarmuka untuk menampilkan hasil rekomendasi dari proses perhitungan yang telah dilakukan oleh sistem.
User Melihat hasil perhitungan sistem pakar
Sumber: Perancangan
4.1.3. Diagram Use Case Diagram use case merupakan salah satu diagram yang digunakan
untuk menggambarkan kebutuhan-kebutuhan dan fungsionalitas dari sistem
serta digunakan untuk menunjukan aksi-aksi yang dilakukan oleh aktor dari
sistem. Gambar 4.2 merupakan diagram use case sistem pendukung keputusan
yang menunjukkan spesifikasi fungsionalitas yang disediakan oleh sistem dari
segi aktor Admin dan User.
-
34
Gambar 4.2 Diagram Use Case
Sumber: [Perancangan]
Akun untuk admin sebelumnya telah dibuat dan dinputkan dalam database
sistem pada tabel admin yang berisi username dan password. Admin dapat mengolah
data user dan mengolah data hasil sistem pakar yang berarti dapat melakukan insert,
edit, delete. Sementara itu, user dapat memasukan data siswa, dapat melakukan tes
dan melihat hasil perhitungan sistem pakar
4.1.4. Skenario Use Case Use case yang telah digambarkan dalam diagram use case akan lebih
dijelaskan secara terperinci dalam skenario use case. Penggunaan skenario use case
ini bertujuan untuk mendapatkan deskripsi secara global mengenai use case, kondisi
awal dan akhir yang harus dipenuhi oleh use case setelah fungsionalitas telah
dijalankan. Dalam skenario ini akan diulas bagaimana tanggapan sistem terhadap aksi
yang dilakukan oleh aktor.
-
35
4.1.4.1. Skenario Use Case Login Pada skenario ini akan dijelaskan lebih mendetail mengenai proses login yang
dilakukan oleh aktor admin ataupun user. Dalam skenario ini juga dijelaskan
bagaimana tanggapan sistem ketika kedua aktor tersebut melihat hasil rekomendasi.
Tabel 4.3 menjelaskan bagaimana jalannya skenario use case login dan melihat hasil
rekomendasi.
Tabel 4.3 Skenario Use Case login dan Melihat Hasil Pakar Identifikasi
Nama Login Deskripsi Use case ini menjelaskan proses login
ke dalam sistem Aktor Admin, User Pra-kondisi Sistem telah menampilkan halaman
login Skenario Melihat Hasil Rekomendasi
Aksi Aktor Reaksi Sistem 1. Aktor memasukkan username
dan password 2. Sistem memproses login
3. Sistem menampilkan halaman utama actor
Kondisi Akhir Sistem menampilkan halaman utama actor
Sumber: Perancangan
4.1.4.2. Skenario Use Case Logout Pada skenario ini akan dijelaskan lebih mendetail mengenai proses logout
yang dilakukan oleh aktor admin ataupun user. Tabel 4.4 menjelaskan bagaimana
jalannya skenario use case logout.
Tabel 4.4 Skenario Use Case Logout Identifikasi
Nama Login Deskripsi Use case ini menjelaskan proses
logout ke dalam sistem Aktor Admin, User Pra-kondisi Sistem telah menampilkan halaman
utama Skenario Melihat Hasil Rekomendasi
Aksi Aktor Reaksi Sistem 1. Aktor menekan tombol logout 2. Sistem memproses logout
Kondisi Akhir Sistem berhasil ditutup Sumber: Perancangan
-
36
4.1.4.3. Skenario Use Case Mengolah Data User Pada skenario ini akan dijelaskan lebih mendetail mengenai kebutuhan
fungsionalitas yang harus disediakan oleh sistem yang ditujukan untuk memenuhi
kebutuhan admin. Dalam skenario ini dijelaskan bagaimana skenario use case dalam
mengolah data user. Tabel 4.5 merupakan skenario use case mengolah data user.
Tabel 4.5 Skenario Use case Mengolah Data User Identifikasi
Nama Mengolah Data User Deskripsi Use case ini menjelaskan proses
melihat, menambah, mengubah dan menghapus data user
Aktor Admin Pra-kondisi Sistem telah menampilkan halaman
admin Skenario Insert Data User
Aksi Aktor Reaksi Sistem 1. Aktor memilih untuk masuk ke
halaman data user 2. Sistem menampilkan halaman
data user 3. Aktor memilih menu Tambah
User 4. Sistem menampilkan halaman
untuk menu tambah user 5. Aktor mengisi data user 6. Sistem memasukkan data yang
telah diisikan oleh actor ke dalam basis data
7. Sistem menampilkan pesan Data Berhasil di Simpan
8. Aktor menutup pesan 9. Sistem kembali menampilkan halaman data user
Skenario Edit Data User 1. Aktor memilih untuk masuk ke
halaman data user 2. Sistem menampilkan halaman
data user 3. Aktor memilih data yang akan
di edit 4. Sistem akan menampilkan menu
edit dan delete pada data yang dipilih
5. Aktor memilih menu edit 6. Sistem akan menampilkan halaman edit data
7. Aktor melakukan perubahan data user
8. Sistem memasukkan data yang telah dirubah oleh actor ke dalam basis data
9. Sistem menampilkan pesan Data Berhasil di Ubah
10. Aktor menutup pesan 11. Sistem kembali menampilkan halaman data user
Skenario Delete Data User 1. Aktor memilih untuk masuk ke
halaman data user 2. Sistem menampilkan halaman
data user 3. Aktor memilih data yang akan 4. Sistem akan menampilkan menu
-
37
di delete edit dan delete pada data yang dipilih
5. Aktor memilih menu delete 6. Sistem akan menampilkan menghapus data user dari basis data
7. Sistem menampilkan pesan Data Berhasil di Hapus
8. Aktor menutup pesan 9. Sistem kembali menampilkan halaman data user
Kondisi Akhir Sistem menampilkan halaman data user
Sumber: Perancangan
4.1.4.4. Skenario Use Case Mengolah Data Siswa Pada skenario ini akan dijelaskan lebih mendetail mengenai kebutuhan
fungsionalitas yang harus disediakan oleh sistem yang ditujukan untuk memenuhi
kebutuhan admin. Dalam skenario ini dijelaskan bagaimana skenario use case dalam
mengolah data siswa. Tabel 4.6 merupakan skenario use case mengolah data siswa.
Tabel 4.6 Skenario Use Case Mengolah data Siswa Identifikasi
Nama Mengolah Data Siswa Deskripsi Use case ini menjelaskan proses
melihat, menambah, mengubah dan menghapus data siswa
Aktor User Pra-kondisi Sistem telah menampilkan halaman
User Skenario Memasukkan Data Siswa
Aksi Aktor Reaksi Sistem 1. Aktor memilih untuk masuk ke
halaman data siswa 2. Sistem menampilkan halaman
data siswa 3. Aktor memilih menu Tambah
Data Siswa 4. Sistem menampilkan halaman
untuk menu tambah data siswa 5. Aktor mengisi data siswa 6. Sistem memasukkan data yang
telah diisikan oleh actor ke dalam basis data
7. Sistem menampilkan pesan Data Berhasil di Simpan
8. Aktor menutup pesan 9. Sistem kembali menampilkan halaman data siswa
Skenario Edit Data Siswa 1. Aktor memilih untuk masuk ke
halaman data siswa 2. Sistem menampilkan halaman
data siswa 3. Aktor memilih data yang akan
di edit 4. Sistem akan menampilkan menu
edit dan delete pada data yang dipilih
-
38
5. Aktor memilih menu edit 6. Sistem akan menampilkan halaman edit data
7. Aktor melakukan perubahan data siswa
8. Sistem memasukkan data yang telah dirubah oleh actor ke dalam basis data
9. Sistem menampilkan pesan Data Berhasil di Ubah
10. Aktor menutup pesan 11. Sistem kembali menampilkan halaman data siswa
Skenario Delete Data User 1. Aktor memilih untuk masuk ke
halaman data siswa 2. Sistem menampilkan halaman
data siswa 3. Aktor memilih data yang akan
di delete 4. Sistem akan menampilkan menu
edit dan delete pada data yang dipilih
5. Aktor memilih menu delete 6. Sistem akan menampilkan menghapus data user dari basis data
7. Sistem menampilkan pesan Data Berhasil di Hapus
8. Aktor menutup pesan 9. Sistem kembali menampilkan halaman data siswa
Kondisi Akhir Sistem menampilkan halaman data siswa
Sumber: Perancangan
4.1.4.5. Skenario Use Case Mengolah Data Hasil Pengolahan Pakar Pada skenario ini akan dijelaskan lebih mendetail mengenai kebutuhan
fungsionalitas yang harus disediakan oleh sistem yang ditujukan untuk memenuhi
kebutuhan admin. Dalam skenario ini dijelaskan bagaimana skenario use case dalam
mengolah data hasil rekomendasi. Tabel 4.7 merupakan skenario use case mengolah data
hasil rekomendasi.
Tabel 4.7 Skenario Use Case Mengolah Data Hasil Pengolahan Pakar Identifikasi
Nama Mengolah Hasil Rekomendasi Deskripsi Use case ini menjelaskan proses
melihat dan menghapus data hasil rekomendasi
Aktor Admin,User Pra-kondisi Sistem telah menampilkan halaman
admin/user Skenario Melihat Hasil Pakar
Aksi Aktor Reaksi Sistem 1. Aktor memilih untuk masuk ke
halaman data olah pakar 2. Sistem menampilkan halaman
hasil pakar
-
39
3. Aktor memilih bagian/posisi dari hasil rekomendasi yang akan dilihat
4. Sistem menampilkan data hasil rekomendasi sesuai dengan bagian/posisi yang dipilih
Identifikasi Nama Mengolah Hasil Rekomendasi
Deskripsi Use case ini menjelaskan proses melihat dan menghapus data hasil rekomendasi
Aktor Admin Pra-kondisi Sistem telah menampilkan halaman
admin Skenario Delete Hasil Pakar
1. Aktor memilih untuk masuk ke halaman data hasil pakar
2. Sistem menampilkan halaman hasil pakar
3. Aktor memilih data yang akan di delete
4. Sistem akan menampilkan menu delete pada data yang dipilih
5. Aktor memilih menu delete 6. Sistem akan menghapus data dari database
7. Sistem menampilkan pesan Data Berhasil di Hapus
8. Aktor menutup pesan 9. Sistem kembali menampilkan halaman data hasil pakar
Kondisi Akhir Sistem menampilkan halaman hasil rekomendasi
Sumber: Perancangan
4.1.4.6. Skenario Use Case Melakukan Test
Pada skenario ini akan dijelaskan lebih mendetail mengenai kebutuhan
fungsionalitas yang harus disediakan oleh sistem yang ditujukan untuk memenuhi
kebutuhan user. Dalam skenario ini dijelaskan bagaimana skenario use case dalam
melakukan test untuk mendapatkan hasil rekomendasi melalui sistem. Tabel 4.8
merupakan skenario use case melakukan test.
Tabel 4.1 Skenario Use Case Melakukan Test Identifikasi
Nama Melakukan Test Deskripsi Use case ini menjelaskan proses
melakukan test rekomendasi siswa Aktor User Pra-kondisi Sistem telah menampilkan halaman
utama user Proses Skenario
Aksi Aktor Reaksi Sistem 1. Aktor memasukkan data yang
diminta oleh menu 2. Sistem menampilkan halaman
utama user
-
40
3. Aktor menekan tombol Tampilkan untuk mengolah data yang telah dimasukkan oleh user
4. Sistem melakukan perhitungan dengan menggunakan metode Tsukamoto
5. Sistem menampilkan data siswa (No, Nama Siswa, Ranking, Jurusan) yang telah diurutkan berdasarkan skor yang didapat
Kondisi Akhir Sistem menampilkan hasil rekomendasi untuk user
Sumber: Perancangan
4.2 Perancangan Sistem Pakar Tahapan analisa dan perancangan sistem pendukung keputusan disini
merupakan tahapan yang betujuan untuk mengubah model informasi yang telah dibuat
pada tahapan analisa kebutuhan sistem. Perancangan yang dilakukan adalah
perancangan untuk seluruh subsistem yang terdapat dalam arsitektur sistem pendukung
keputusan untuk merekomendasikan kamera digital. Perancangan tersebut meliputi
perancangan untuk susbsistem manajemen data, susbsistem basis pengetahuan,
subsistem manajemen model dan subsistem antarmuka. Pemodelan yang digunakan
yaitu diagram konteks sistem, ERD, Physical diagram, dan DFD.
Subsistem yang terdapat dalam sistem antara lain:
a) Akuisisi Pengetahuan
b) Basis Pengetahuan
menjelaskan kriteria-kriteria yang akan digunakan sebagai bahan yang digunakan
untuk perhitungan
c) Mesin Inferensi
d) Fasilitas Pengguna.
e) Perancangan interface
Akuisisi Pengetahuan Akuisisi pengetahuan dimulai dari wawancara dengan pakar. Pakar yang membantu
dalam proses pembuatan sistem penjurusan IPA/IPS. Wawancara ini berkaitan dengan
penyusunan nilai dan psikotest, perancangan aturan produksi dan mesin inferensi.
Proses akuisisi pengetahuan pada aplikasi sistem pakar penjurusan IPA/IPS
ditunjukkan pada gambar 4.3 berikut.
-
41
Mulai
Wawancara Pakar
Penyusunan Test yang digunakan
Melakukan survey ke SMA
Data nilai akademik dan psikotest
Test penjurusan sesuai?
Data psikotest dan akademik
Wawancara pakar tentang representasi pengetahuan
Mengolah data nilai akademik dan psikotest sesuai dengan representasi pengetahuan
Aturan produksi pada data psikotest dan nilai akademik
Aturan produksi pada data psikotest dan nilai akademik
a
-
42
Gambar 4.3 Diagram Alir Proses Akuisisi Pengetahuan
Sumber: Perancangan
Basis Pengetahuan
4.2.2.1 Himpunan Bahasa Variable Himpunan Bahasa pada Variabel
Biologi = Buruk, Cukup, Bagus
Fisika = Buruk, Cukup, Bagus
Kimia = Buruk, Cukup, Bagus
Matematika = Buruk, Cukup, Bagus
Geografi = Buruk, Cukup, Bagus
Sejarah = Buruk, Cukup, Bagus
Ekonomi = Buruk, Cukup, Bagus
Psikotest = Below average, Average, Genius
Wawancara pakar tentang mesin inferensi
Mengolah data nilai akademik dan psikotest sesuai dengan mesin inferensi
Perancangan mesin inferensi yang digunakan pada implementasi
a
Wawancara pakar tentang kasus khusus yang diprediksi muncul
Penyediaan fasilitas pakar untuk menangani khasus khusus
Selesai
-
43
4.2.2.2 Semesta Pembicaraan
Tabel 4.9 Semesta pembicaraan
Inputan Buruk Cukup Bagus Biologi x
-
44
4.2.2.4 Fungsi derajat keanggotaan variabel Fisika. Fungsi keanggotaan linier turun digunakan untuk merepresentasikan
himpunan fuzzy rendah dan fungsi keanggotaan linier naik untuk himpunan fuzzy
tinggi. Fungsi keanggotaan segitiga digunakan untuk merepresentasikan himpunan
fuzzy normal. Fungsi derajat keanggotaan dari variabel fisika didefinisikan persamaan
(4-3), (4-3) dan (4-5).
[] = 1; 0 ; 0 450 ; 45
[] =
0; 25
; 25 451; 45 65
; 65 850 ; 85
[] = 0; 65 ; 65 1001 ; 100 4.2.2.5 Fungsi derajat keanggotaan variabel Kimia
Fungsi keanggotaan linier turun digunakan untuk merepresentasikan
himpunan fuzzy rendah dan fungsi keanggotaan linier naik untuk himpunan fuzzy
tinggi. Fungsi keanggotaan segitiga digunakan untuk merepresentasikan himpunan
fuzzy normal. Fungsi derajat keanggotaan dari variabel kimia didefinisikan persamaan
(4-7), (4-8) dan (4-9).
[] = 1; 0 ; 0 500 ; 50
[] =
0; 30
; 30 501; 50 70
; 70 900 ; 85
. (4-5)
. (4-8)
. (4-4)
. (4-6)
. (4-7)
-
45
[] = 0; 70 ; 70 1001 ; 100 4.2.2.6 Fungsi derajat keanggotaan variabel Matematika.
Fungsi keanggotaan linier turun digunakan untuk merepresentasikan
himpunan fuzzy rendah dan fungsi keanggotaan linier naik untuk himpunan fuzzy
tinggi. Fungsi keanggotaan segitiga digunakan untuk merepresentasikan himpunan
fuzzy normal. Fungsi derajat keanggotaan dari variabel matematika didefinisikan
persamaan (4-10) , (4-11) dan (4-12).
[] = 1; 0 ; 0 480 ; 48
[] =
0; 28
; 28 481; 48 68
; 68 880 ; 88
[] = 0; 88 ; 88 1001 ; 100 4.2.2.7 Fungsi derajat keanggotaan variabel Geografi
Fungsi keanggotaan linier turun digunakan untuk merepresentasikan
himpunan fuzzy rendah dan fungsi keanggotaan linier naik untuk himpunan fuzzy
tinggi. Fungsi keanggotaan segitiga digunakan untuk merepresentasikan himpunan
fuzzy normal. Fungsi derajat keanggotaan dari variabel geografi didefinisikan
persamaan (4-13) , (4-14) dan (4-15).
[] = 1; 0 ; 0 500 ; 50
. (4-11)
. (4-9)
. (4-10)
... (4-12)
. (4-13)
-
46
[] =
0; 30
; 30 501; 50 70
; 70 900 ; 90
[] = 0; 70 ; 70 1001 ; 100 4.2.2.8 Fungsi derajat keanggotaan variabel Sejarah.
Fungsi keanggotaan linier turun digunakan untuk merepresentasikan
himpunan fuzzy rendah dan fungsi keanggotaan linier naik untuk himpunan fuzzy
tinggi. Fungsi keanggotaan segitiga digunakan untuk merepresentasikan himpunan
fuzzy normal. Fungsi derajat keanggotaan dari variabel sejarah didefinisikan
persamaan (4-16) , (4-17) dan (4-18).
[] = 1; 0 ; 0 500 ; 50
[] =
0; 30
; 30 501; 50 70
; 70 900 ; 90
[] = 0; 70 ; 70 1001 ; 100 4.2.2.9 Fungsi derajat keanggotaan variabel Ekonomi.
Fungsi keanggotaan linier turun digunakan untuk merepresentasikan
himpunan fuzzy rendah dan fungsi keanggotaan linier naik untuk himpunan fuzzy
tinggi. Fungsi keanggotaan segitiga digunakan untuk merepresentasikan himpunan
fuzzy normal. Fungsi derajat keanggotaan dari variabel ekonomi didefinisikan
persamaan (4-19) , (4-20) dan (4-21).
. (4-14)
. (4-16)
. (4-15)
. (4-17)
. (4-18)
-
47
[] = 1; 0 ; 0 550 ; 55
[] =
0; 35
; 35 551; 55 75
; 75 950 ; 95
[] = 0; 75 ; 75 1001 ; 100 4.2.2.10 Fungsi derajat keanggotaan variabel IQ.
Fungsi keanggotaan linier turun digunakan untuk merepresentasikan
himpunan fuzzy rendah dan fungsi keanggotaan linier naik untuk himpunan fuzzy
tinggi. Fungsi keanggotaan segitiga digunakan untuk merepresentasikan himpunan
fuzzy normal. Fungsi derajat keanggotaan dari variabel IQ didefinisikan persamaan
(4-22) , (4-23) dan (4-24).
[] =
0; 30
; 30 401; 40 84
; 84 940 ; 94
[] =
0; 75
; 75 851; 85 144
; 144 1540 ; 154
. (4-19)
. (4-22)
. (4-20)
. (4-21)
. (4-23)
-
48
[] =
0; 135
; 135 1451; 145 175
; 175 1850 ; 185
4.2.2.11 Fungsi derajat keanggotaan output variabel IPA Fungsi keanggotaan linier turun digunakan untuk merepresentasikan
himpunan fuzzy rendah dan fungsi keanggotaan linier naik untuk himpunan fuzzy
tinggi. Fungsi keanggotaan segitiga digunakan untuk merepresentasikan himpunan
fuzzy normal. Fungsi derajat keanggotaan dari variabel IPA didefinisikan persamaan
(4-25).
[] = 0; 40 ; 4 0 701 ; 70 4.2.2.12 Fungsi derajat keanggotaan output variabel IPA
Fungsi keanggotaan linier turun digunakan untuk merepresentasikan
himpunan fuzzy rendah dan fungsi keanggotaan linier naik untuk himpunan fuzzy
tinggi. Fungsi keanggotaan segitiga digunakan untuk merepresentasikan himpunan
fuzzy normal. Fungsi derajat keanggotaan dari variabel IPS didefinisikan persamaan
(4-26).
[] = 1; 40 ; 4 0 700 ; 70 4.2.2.13 Rule
Tabel 4.10 Semesta pembicaraan
No rule Then If
Biologi Fisika Kimia Matematika Geografi Sejarah Ekonomi Psikotest 1 Cukup - - Bagus - - Buruk - IPA 2 Fisika - - Cukup - - - Average IPA 3 - - Bagus - Buruk - - Average IPA 4 Cukup - - - - Cukup - Bagus IPA 5 - Cukup - - - Buruk Cukup - IPA 6 - - Bagus - - - Cukup Average IPA 7 Bagus - - - - Buruk - Bagus IPA
. (4-25)
. (4-26)
. (4-24)
-
49
Sumber: Perancangan
8 - - - Bagus - - Cukup Average IPA 9 - - Cukup - - Buruk - Bagus IPA
10 - Bagus - Bagus - Cukup - Average IPA 11 Bagus - Cukup - - Cukup - - IPA 12 - - Bagus - - Cukup Buruk - IPA 13 - Cukup - - Buruk Buruk - - IPA 14 - - - Bagus - - Cukup Genius IPA 15 - Cukup Cukup - - Buruk - - IPA 16 - - - Bagus - Buruk - Average IPA 17 Buruk - - - Bagus - - Average IPS 18 - Cukup - - Bagus - Bagus - IPS 19 - - Cukup - - Cukup Bagus - IPS 20 - - - Cukup - - Cukup Average IPS 21 - Buruk - - - - Cukup Average IPS 22 - Buruk - - Cukup Cukup - - IPS 23 - - - Cukup Bagus Cukup - - IPS 24 - - - Buruk Bagus - Bagus - IPS 25 Cukup - - - - Cukup Bagus - IPS 26 Cukup - - Bagus - - Cukup - IPS 27 - - Buruk Cukup - Bagus - - IPS 28 - - Buruk - Cukup Bagus - - IPS 29 Buruk - - - - Bagus Cukup - IPS 30 - Cukup - - Cukup Cukup - - IPS 31 - - - Cukup Bagus Bagus - - IPS 32 - - Cukup - - Cukup - Genius IPS
-
50
Mesin Inferensi Dalam mesin inferensi ini akan dimodelkan bagaimana sistem akan
memproses data dengan menggunakan metode ini, yang mana proses tersebut dimulai dengan inputan dari user, kemudian data yang berasal dari inputan user tersebut dihitung sesuang dengan perumusan tsukamoto.
Gambar 4.4. Flowchart Fuzzy metode Tsukamoto Sumber : [perancangan]
Dari diagram alir diatas maka dapat dibuat pseudocode untuk menerapkan cara kerja
dari metode tsukamoto. Algoritma tersebut dapat dilihat pada gambar dibawah ini
Nama algoritma: Fuzzy Metode Tsukamoto Deklarasi:
- Bio, adalah integer, variable untuk menampung nilai mata pelajaran Bio.
- uBurukBio, adalah integer, variable untuk menampung nilai derajat anggota mata pelajaran X buruk.
- uCukupBio, adalah integer, variable untuk menampung nilai derajat anggota mata pelajaran X cukup.
- uBaikBio, adalah integer, variable untuk menampung nilai derajat anggota mata pelajaran X baik.
- himpBurukBio, adalah string, variable untuk menampung himpunan bahasa anggota mata pelajaran X buruk.
- himpCukupBio, adalah string, variable untuk menampung himpunan bahasa anggota mata pelajaran X buruk.
- himpBaikBio, adalah string, variable untuk menampung himpunan bahasa anggota mata pelajaran X baik. Bio, adalah
Mulai
Input nilai himpunan Fuzzy
Menentukan derajat keanggotaan
Menghitung predikat aturan
Defuzzifikasi
Output hasil keputusan
Selesa
-
51
integer, variable untuk menampung nilai mata pelajaran Biologi.
- uBurukBio, adalah integer, variable untuk menampung nilai derajat anggota mata pelajaran biologi buruk.
- uCukupBio, adalah integer, variable untuk menampung nilai derajat anggota mata pelajaran biologi cukup.
- uBaikBio, adalah integer, variable untuk menampung nilai derajat anggota mata pelajaran biologi baik.
- himpBurukBio, adalah string, variable untuk menampung himpunan bahasa anggota mata pelajaran biologi buruk.
- himpCukupBio, adalah string, variable untuk menampung himpunan bahasa anggota mata pelajaran biologi buruk.
- himpBaikBio, adalah string, variable untuk menampung himpunan bahasa anggota mata pelajaran biologi baik.
- - Fis, adalah integer, variable untuk menampung nilai mata
pelajaran Fisika. - uBurukFis, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran fisika buruk. - uCukupFis, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran fisika cukup. - uBaikFis, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran fisika baik. - himpBurukFis, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran fisika buruk. - himpCukupFis, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran fisika buruk. - himpBaikFis, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran fisika baik. - - Kim, adalah integer, variable untuk menampung nilai mata
pelajaran kimia. - uBurukKim, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran kimia buruk. - uCukupKim, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran kimia cukup. - uBaikKim, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran kimia baik. - himpBurukKim, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran kimia buruk. - himpCukupKim, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran kimia buruk. - himpBaikKim, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran kimia baik. - - Mat, adalah integer, variable untuk menampung nilai mata
pelajaran matematika. - uBurukMat, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran matematika buruk. - uCukupMat, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran matematika cukup. - uBaikMat, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran matematika baik. - himpBurukMat, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran matematika buruk.
-
52
- himpCukupMat, adalah string, variable untuk menampung himpunan bahasa anggota mata pelajaran matematika buruk.
- himpBaikMat, adalah string, variable untuk menampung himpunan bahasa anggota mata pelajaran matematika baik.
- - Geo, adalah integer, variable untuk menampung nilai mata
pelajaran geografi. - uBurukGeo, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran geografi buruk. - uCukupGeo, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran geografi cukup. - uBaikGeo, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran geografi baik. - himpBurukGeo, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran geografi buruk. - himpCukupGeo, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran geografi buruk. - himpBaikGeo, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran geografi baik. - - Sjr, adalah integer, variable untuk menampung nilai mata
pelajaran sejarah. - uBurukSjr, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran sejarah buruk. - uCukupSjr, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran sejarah cukup. - uBaikSjr, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran sejarah baik. - himpBurukSjr, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran sejarah buruk. - himpCukupSjr, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran sejarah buruk. - himpBaikSjr, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran sejarah baik. - - Eko, adalah integer, variable untuk menampung nilai mata
pelajaran ekonomi. - uBurukEko, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran ekonomi buruk. - uCukupEko, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran ekonomi cukup. - uBaikEko, adalah integer, variable untuk menampung nilai
derajat anggota mata pelajaran ekonomi baik. - himpBurukEko, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran ekonomi buruk. - himpCukupEko, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran ekonomi buruk. - himpBaikEko, adalah string, variable untuk menampung
himpunan bahasa anggota mata pelajaran ekonomi baik. - - Psiko, adalah integer, variable untuk menampung nilai
psikotes. - uBurukPsiko, adalah integer, variable untuk menampung nilai
derajat anggota nilai psikotes buruk. - uCukupPsiko, adalah integer, variable untuk menampung nilai
-
53
derajat anggota nilai psikotes cukup. - uBaikPsiko, adalah integer, variable untuk menampung nilai
derajat anggota nilai psikotes baik. - himpBurukPsiko, adalah string, variable untuk menampung
himpunan bahasa anggota nilai psikotes buruk. - himpCukupPsiko, adalah string, variable untuk menampung
himpunan bahasa anggota nilai psikotes buruk. - himpBaikPsiko, adalah string, variable untuk menampung
himpunan bahasa anggota nilai psikotes baik. - - simpanU, adalah decimal, list untuk menyimpan nilai derajat
keanggotaan mata pelajaran yang sesuai dengan rule. - nilaiUmin, adalah decimal, list untuk menyimpan nilai
derajat keanggotaan minimal yang sesuai dengan rule. - nilaiZ adalah decimal, list untuk menyimpan nilai Z dari
nilajat keanggotaan mata pelajaran deryang sesuai dengan rule.
- nilaiUZ adalah decimal, list untuk menyimpan hasil perkalian u dan Z.
- minimal, adalah decimal, variabel untuk menyimpan nilai derajat keanggotaan minimal yang sesuai dengan rule.
- hitungZ, adalah decimal, variabel untuk menyimpan nilai Z dari derajat keanggotaan yang sesuai dengan rule.
- hitungUZ; adalah decimal, variabel untuk menyimpan untuk menyimpan hasil perkalian u dan Z.
- rule, adalah string, list untuk menyimpan rule yang sesuai dengan nilai matapelajaran inputan.
- simpanrule, adalah string, variabel untuk menyimpan rule yang sesuai dengan nilai matapelajaran inputan.
- id, adalah string, list untuk menyimpan no induk. - jurusan adalah string, list untuk menyimpan rule yang sesuai
dengan nilai matapelajaran inputan. Deskripsi:
Input: - Memasukkan nilai mata pelajaran dan psikotes.
Proses: 1. Menghitung derajat keanggotaan masing-masing mata pelajaran
sesuai nilai. 2. Menentukan himpunan bahasa yang dimiliki setiap mata
pelajaran berdasarkan nilai derajat keanggotaan. 3. Menentukan rule yang sesuai dengan derajat keadaan. 4. Menghitung nilai derajat keanggotaan terendah 5. Menghitung nilai Z 6. Menghitung total nilai derajat keanggotaan terendah 7. Menghitung total nilai Z. 8. Menghitung total nilai derajat keanggotaan terendah dikali Z 9. Menghitung nilai perkiraan jurusan. 10. Menentukan jurusan.
Gambar 1.5 Perancangan Algoritma Tsukamoto Sumber: Perancangan
-
54
Proses inferensi dilakukan dengan menggunakan metode Tsukamoto. Berikut
ini adalah contoh kasus pemilihan jurusan IPA/IPS yang diselesaikan dengan metode
Tsukamoto. Misalkan user atau pengguna aplikasi menggunakan alternatif keputusan
untuk data internal dengan memasukkan kriteria seperti tabel 4.11 berikut.
Tabel 4.11 Kriteria Nilai User Mata Pelajaran Nilai
Biologi 67
Fisika 41
Kimia 78
Matematika 90
Geografi 70
Sejarah 73
Ekonomi 40
Psikotes 130
Sumber: Perancangan
1. Posisi input pada himpunan bahasa
Tabel 4.12 Kriteria Nilai User Posisi pada Himpunan Bahasa
Biologi cukup Fisika buruk cukup Kimia bagus
Matematika bagus Geografi cukup bagus Sejarah bagus
Ekonomi buruk cukup Psikotes average
Sumber: Perancangan
2. Menghitung Nilai Derajat Keanggotaan
Langkah pertam