Anda di halaman 1dari 16

DISCRETE MATHEMATIC

“Implementasi Sistem Pakar dengan Metode Fordward Chaining


pada Sebuah ChatBot Discord”
Dosen Pengampu : Maimunah, S. Si,. M. Kom

Disusun Oleh :
Hanandita Dwi Saputra // 20.0504.0045
Teknik Informatika (S-1)
Reguler B

FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH MAGELANG
2021
KATA PENGANTAR

Puji syukur penulis panjatkan kepada Tuhan Yang Maha Esa, karena dengan rahmat
dan hidayahnya, penulis dapat menyelesaikan tugas akhir mata kuliah Discrete Mathematic
yng berjudul “Implementasi Sistem Pakar dengan Metode Fordward Chaining pada Sebuah
ChatBot Discord”.

Tugas akhir mata kuliah ini dibuat dan diajukan untuk memenuhi syarat Assignment
Akhir Semester guna memperoleh kelulusan mata kuliah Discrete Mathematic pada program
studi Teknik Informatika S1 Fakultas Teknik di Universitas Muhammadiyah Magelang.
Selain itu, penulisan tugas akhir ini juga bertujuan memberikan wawasan pembaca mengenai
sistem pakar yang digunakan pada sebuah chatbot.

Penulis menyadari bahwa tugas akhir ini masih jauh dari kata “sempurna”
dikarenakan adanya keterbatasan ilmu dan pengalaman yang dimiliki oleh penulis. Oleh
karena itu, semua kritik dan saran dari pembaca akan diterima oleh penulis dengan senang
hati. Penulis berharap, semoga tugas akhir ini dapat bermanfaat bagi semua pihak yang
memerlukan.

Magelang, 4 Agustus 2021

Penulis,

Hanandita Dwi Saputra


DAFTAR ISI

KATA PENGANTAR...............................................................................................................i

DAFTAR ISI.............................................................................................................................ii

BAB I.........................................................................................................................................1

A. Latar Belakang..............................................................................................................1

B. Rumusan Masalah.........................................................................................................2

C. Tujuan Penelitian..........................................................................................................2

D. Manfaat Penelitian........................................................................................................2

BAB II.......................................................................................................................................3

A. Chatbot............................................................................................................................3

B. Discord............................................................................................................................3

C. Sistem Pakar..................................................................................................................3

D. Forward Chaining..........................................................................................................4

1. Knowledge Base..........................................................................................................4

2. Sisi kiri harus cocok dengan fakta yang ada di memori kerja..............................4

BAB III......................................................................................................................................6

A. Penerapan Metode Forward Chaining pada Chatbot.................................................6

B. Cara Membuat Chatbot Sederhana pada Discord......................................................7

C. Cara Kerja Chatbot.....................................................................................................11

BAB V......................................................................................................................................12

KESIMPULAN...................................................................................................................12

SARAN................................................................................................................................12

DAFTAR PUSTAKA.............................................................................................................13
BAB I
PENDAHULUAN
A. Latar Belakang
Manusia merupakan makhluk yang paling mulia yang diciptakan oleh Tuhan. Yang
menjadikan manusia makhluk yang paling mulia adalah manusia dibekali dengan akal,
pikiran, dan perasaan, serta emosi.salah satu aspek penting yang berhubungan dengan materi
yang saya bawakan yaitu kecerdasan. Karena dengan kecerdasan manusia dapat beranjak dari
jaman primitif hingga ke jaman modern ini. Dengan adanya kecerdasan pula, manusia di
zaman modern ini sudah banyak memunculkan suatu inovasi yang dimana manusia dapat
membuat suatu mesin dengan sebuah pemikiran sehingga mesin mesin tersebut dapat bekerja
dengan sendirinya. Hal tersebut dapat terwujud setelah diciptakannya komputer. Teknik yang
memungkinkan mesin untuk berpikir dan dapat mengambil keputusan sendiri dinamakan
kecerdasan buatan atau artificial intelligence (AI).

Dengan menggunakan kecerdasan buatan ini, tidaklah mustahil bahwa dimasa depan
sebuah mesin yang menyerupai manusia atau sering kita sebut robot, dapat benar benar
mampu untuk berpikir, bertindak, melihat, mendengar, dan berbcara layaknya manusia.

Perkembangan jaman ditandai dengan dengan perkembangan “otak elektronik”. Para


praktisi dari berbagai bidang menggunakan komputer untuk mempermudah kegiatan yang
mereka lakukan dan mereka berlomba lomba untuk menentukan siapa yang dapat membuat
inovasi tercanggih, yang berarti juga memakai teknologi komputerisasi terpintar yang
bertujuan untuk menciptakan mesin yang dapat berkomunikasi seperti layaknya manusia.

Sekarang ini, telah banyak bermunculan chatbot (sistem computer yang berbasis kan
Bahasa alami atau natural language). Chatbot atau chatting robot adalah salah satu
kecanggihan pekerjaan manusia. Chatbot sekarang ini sudah mulai diterapkan di dalam
sebuah website. Dengan adanya chatbot ini sangat memudahkan pelanggan ketika ingin
melakukan sesuatu pada website namun diluar jam kerja. Sehubungan dengan itu, maka
dengan adanya penelitian ini, diharapkan pembaca dapat mengerti sistem forward chaining
yang digunakan untuk mengetahui cara kerja dari sebuah chatbot.
B. Rumusan Masalah
Dari latar belakang tersebut dapat kita rumuskan suatu masalah, yaitu :

 Bagaimana penerapan teori sistem pakar forward chaining pada chatbot?.


 Bagaimana cara membuat chatbot sederhana pada discord?.
 Bagaimana cara kerja suatu chatbot?.

C. Tujuan Penelitian
Berdasarkan rumusan masalah, dapat ditentukan tujuan penelitian yaitu:

 Untuk mengetahui implementasi konsep sistem pakar teori forward chaining dalam
chatbot.
 Untuk mengetahui cara kerja chatbot.

D. Manfaat Penelitian
Manfaat dari penelitian ini adalah :
 Untuk mengetahui cara kerja konsep sistem pakar yang digunakan untuk membuat
suatu chatbot.
 Dapat mengetahui cara membuat bot discord sederhana.
 Mengetahui tentang sistem pakar dengan metode forward chaining.
BAB II
LANDASAN TEORI
A. Chatbot
Chatbot adalah sebuah simulator percakapan yang berupa program komputer yang
dapat berdialog dengan penggunanya dalam Bahasa alami. Karena chatbot hanya sebuah
program dan bukan robot, maka yang dimaksud dengan dialog antar manusia sebagai
pengguna chatbot dilakukan dengan cara mengetik apa yang akan dibicarakan dan chatbot
akan memberikan sebuah respon. Orang yang membuat dan mengembangkan program
chatbot disebut bot master.

E. Discord
Discord merupakan sebuah platform yang memungkinkan penggunanya untuk saling
mengirim chat, gambar, audio, video, bahkan hingga share screen. Discord bertujuan untuk
memudahkan para pemain game untuk berkomunikasi saat sedang bermain game yang
bersifat online dan berkelompok. Adapun tujuan lain discord adalah untuk membantu orang
untuk membentuk suatu komunitas agar dapat mencari member dari mana saja secara daring.
Discord juga mempunyai beberapa keunggulan diantaranya yaitu lintas platform, keamanan
informasi yang terjamin, memiliki banyak komunitas, dan voice chat tanpa mengganggu
performa gaming seorang gamer.

F. Sistem Pakar
Sistem pakar merupakan suatu program yang bertindak sebagai penasehat atau
konsultan pintar dengan mengambil pengetahuan yang disimpan dalam domain tertentu.
Seorang pemakai yang belum berpengalaman dalam mendiagnosa suatu masalah dapat
memecahkan masalah yang sulit dan mengambil keputusan yang benar.

Secara umum sistem pakar adalah sistem yang berusaha mengadopsi pengetahuan
manusia ke komputer., agar dapat menyelesaikan masalah seperti yang biasa dilakukan para
ahli. Sistem pakar tidak untuk menggantikan kedudukan seorang pakar tetapi untuk
memasyarakatkan pengetahuan dan pengalaman pakar tersebut.
Gambar I : Konsep Dasar Sistem Pakar

G. Forward Chaining
Forward chaining merupakan strategi pencarian yang memulai proses pencarian dari
sekumpulan data atau fakta. Dari data data tersebut dicari suatu kesimpulan yang menjadi
solusi dari permasalahan yang dihadapi. Mesin inferensi mencari kaidah-kaidah tersebut
diperoleh suatu kesimpulan. Forward chaining memulai proses pencarian dengan data
sehingga strategi ini disebut juga data-driven.

Operasi dari sistem forward chaining dimulai dengan memasukkan sekumpulan fakta
yang diketahui ke dalam memori kerja (working memory). Kemudian menurunkan fakta baru
berdasarkan aturan yang premisnya cocok dengan fakta yang diketahui.

1. Knowledge Base
Knowledge Base berisi pengetahuan dalam penyelesaian masalah. Ada 2 bentuk
pendekatan knowledge base :

a) Rule Based Reasoning


 Pengetahuan dalam sistem pakar direpresentasikan dalam bentuk IF-THEN atau
dalam bentuk Production Rules.
 Motor inferensi menentukan rule antecedents yang sesuai.

b) Sisi kiri harus cocok dengan fakta yang ada di memori kerja.
 Aturan yang sesuai ditempatkan di agenda dan dapat diaktivasi.
 Aturan yang yang terdapat di agenda dapat diaktivasi.
 Aktivasi aturan akan membangkitkan fakta baru di sisi kanan.
 Aktivasi dari satu aturan adalah bagian dari aktivasi aturan yang lain.
Contoh Basis Aturan

IF …. THEN Rules

Gambar II : Basis Aturan IF … THEN

Production Rules

Gambar III : Basis aturan production rules


BAB III
STUDI KASUS
A. Penerapan Metode Forward Chaining pada Chatbot

Gambar IV : Rancangan Desain Sistem

Rancangan desain sistem ini dilakukan untuk memnuhi kebutuhan sistem dalam hal :

Analisa Input : kalimat apa yang mampu dieksekusi oleh chatbot.

Analisa Output : kalimat hasil eksekusi dari chatbot.

Analisa Process : meneliti jalannya sistem dalam mengeksekusi input hingga output.

Analisa Data : meneliti kelengkapan data yang dibutuhkan sistem.

Gambar V : Flowchart metode forward Chaining

Penerapan metode forward chaining dimulai dengan user memasukkan kalimat


kedalam kolom message yang sudah disediakan oleh aplikasi. Kemudian kalimat tersebut
akan terbaca oleh sistem dan apabila kalimat tersebut merupakan kalimat yang ditujukan
kepada chatbot, maka chatbot akan memberi respon kepada user.
H. Cara Membuat Chatbot Sederhana pada Discord

Pada platform discord, kita dapat membuat komunitas tersendiri dan sudah disediakan
berbagai bot untuk memudahkan user dan memberi kenyamanan pada user untuk
menggunakan aplikasi discord ini. Bahkan selain sudah dibuatkan beberapa bot seperti
music-bot, chat-bot, admin-bot, dan lain sebagainya, kita juga dapat membuat bot kita
sendiri. Berikut merupakan langkah langkah untuk membuat chatbot pada discord :

Langkah 1 : Cara membuat bot dan memasukkan kedalam server.

1. Pastikan anda memiliki akun discord.


2. Anda bisa mendaftarkan akun menggunakan akun gmail jika anda tidak
memiliki akun discord.
3. Silahkan kunjungi website https://discord.com/developers/applications .

Pada website ini lah anda akan diarahkan untuk membuat aplikasi yang nantinya akan
menjadi chatbot kalian. Sebagai catatan : pastikan anda memiliki server platform discord dan
anda sebagai founder atau admin pada server tersebut.

Setelah berada pada website tersebut silahkan anda klik pada kolom aplikasi baru yang
terlah disediakan dan beri nama bot kalian. Untuk mengatur ikon bot, anda bisa klik bot yang
muncul pada laman tersebut.

4. Silahkan kunjungi website https://discordapi.com/permissions.html .

Centang semua kolom yang ada pada laman tersebut. Lalu masukkan token atau client id
pada kolom client id yang berada di bawah kiri.

Untuk mengetahui client id, kalian dapat menyalin pada website developers yang
sebelumnya kalian buka, lalu klik pada ikon bot kalian setelah itu kalian diarahkan pada
laman berikutnya. Lalu pada menu bagian kiri kalian menuju ke menu “General Information”
lalu cari “Application ID”.

Setelah itu kalian dapat menambahkan bot kalian ke dalam server kalian dengan cara
membuka link yang sudah disediakan pada laman tersebut.
Langkah 2 : Memberikan perintah pada bot.

1. Silahkan buka website yang saya sediakan dibawah ini.

https://glitch.com/dashboard?
group=owned&sortColumn=boost&sortDirection=DESC&page=1&showAll=false&filterD
omain=

setelah membuka website silahkan untuk klik new project yang berada di kanan atas
laman dan pilihlah hello-node.

Setelah itu kalian hapuslah beberapa menu pada bagian kanan kecuali menu server.js,
package.json, .env, dan README.md.

2. Silahkan anda masukkan source code ini pada menu server.js.

const http = require('http');


const express = require('express');
const app = express();
app.get("/", (request, response) => {
console.log('Pinging');
response.sendStatus(200);
});
app.listen(process.env.PORT);
setInterval(() => {
http.get(`http://${process.env.PROJECT_DOMAIN}.glitch.me/`);
}, 280000);
const Discord = require('discord.js');
const client = new Discord.Client();
client.on('ready', () => {
console.log("saya telah online");
});
client.on('message', async message => {
if (message.content === "Siapa nama dosen Discrete
Mathematic?") {
message.channel.send('Ibu Maimunah, S, Si., M. Kom');
}
});
client.on('ready', () => {
console.log("saya telah online");
});
client.on('message', async message => {
if (message.content === "Prodi apakah yang diambil oleh
Hanandita?") {
message.channel.send('Teknik Informatika S-1');
}
});
client.on('ready', () => {
console.log("saya telah online");
});
client.on('message', async message => {
if (message.content === "Berapakah NPM Hanandita?") {
message.channel.send('20.0504.0046');
}
});
client.on('ready', () => {
console.log("saya telah online");
});
client.on('message', async message => {
if (message.content === "Apa materi kita hari ini?") {
message.channel.send('Implementasi Sistem Pakar dengan Metode
Forward Chaining pada Sebuah Chatbot Discord');
}
});
client.login(process.env.BOT)

3. Setelah itu, silahkan masukkan source code ini pada menu package.json.

{
"name": "Unimma",
"version": "1.0.0",
"main": "bot.js",
"scripts": {
"start": "node bot.js"
},
"dependencies": {
"discord.js": "^12.5.3",
"request": "2.81.0",
"express": "^4.16.3",
"https": "^1.0.0",
"foreach-timeout": "2.0.2",
"map": "^1.0.1"
}
}
Setelah itu silahkan anda masuk pada menu .env lalu pada menu yang bertuliskan
SECRET silahkan anda masukkan token bot kalian pada variable value nya.

Variable value dapat kalian dapatkan pada laman yang pertama kali kalian buka lalu klik
ikon bot setelah itu kalian klik menu bot carilah click to reveal token lalu klik pada bagian
copy dibawahnya.

4. Setelah itu silahkan check status pada log di laman glitch.com.

Gambar VI : Hasil eksekusi bot


I. Cara Kerja Chatbot
Banyak jenis chatbot yang dapat memberi tanggapan dengan berbagai macam input
manusia. Sebenarnya bots ini bekerja dengan memindai kata kunci dalam input, setelah itu
dibalas dengan kata kunci yang paling cocok atau bisa pula dengan pola kata yang paling
mirip dari basis data tekstual.

Jadi, jika pengguna mengirim suatu permintaan maka bots tersebut akan mengirim
kembali respon secara spesifik yang berdasarkan pada query yang dikirim. Pada saat itu yang
perlu Anda lakukan hanya memberikannya perintah, selain itu bisa pula membuat suatu
percakapan baik text atau audio.

Setelah itu para bots ini mulai mencari data yang dibutuhkan yang berdasarkan kata
kunci yang diberikan, baik itu berbentuk text ataupun audio. Setelah mendapatkan data yang
dibutuhkan tersebut, akan disampaikan kembali oleh mereka juga dalam bentuk teks maupun
audio. Bahkan, tidak hanya itu teknologi ini juga bisa melakukan transaksi yang berdasarkan
perintah yang diberikan.
BAB V
PENUTUP

KESIMPULAN

Dari hasil implementasi dan uji coba yang telah dilakukan, memperoleh kesimpulan
bahwa sistem pakar dengan metode forward chaining merupakan algoritma yang baik untuk
penyelesaian proses chatbot berdasarkan kalimat yang dimasukkan oleh user.

Dengan adanya chatbot, memudahkan para user untuk megetahui informasi tertentu
yang bot master akan sampaikan kepada user. Dengan begitu akan memudahkan bot master
pula untuk melakukan broadcast message kepada user yang ingin dituju.

Aplikasi discord merupakan aplikasi platform yang bagus untuk siapa saja yang ingin
membuat komunitas, bergabung dengan komunitas, ataupun bermain game dengan komunitas
dengan menggunakan fitur voice chat. Discord juga aplikasi yang sangat baik bagi kalian
yang ingin belajar membuat suatu program pada chatbot.

SARAN

Chatbot memanglah suatu terobosan yang begitu bagus pada berbagai bidang. Lebih
baik perkembangan dan penggunaan chatbot ini dimaksimalkan karena ini juga dapat
membantu bot master dan user. Sebagai contoh dengan mengembangkan chatbot dibidang
perdagangan, chatbot ini maka kita bisa berdagang tanpa harus kita chat secara langsung
apabila kita sedang sibuk. Itu juga akan memudahkan pembeli sehingga pembeli tidak harus
menunggu lama untuk balasan sang pedagang.
DAFTAR PUSTAKA
wordpress.com. (2014). Program Aplikasi Sistem Pakar dengan Metode Forward Chaining
Rule Base berbasis Web dengan PHP-MySQL dan Dreamweaver.
Www.Bunafitkomputer.Com. https://www.bunafitkomputer.com/tag/contoh-pohon-
keputusan-sistem-pakar

Baiti, Z. N., & Nugroho, F. (2013). APLIKASI CHATBOT “MI3” UNTUK INFORMASI
JURUSAN TEKNIK INFORMATIKA BERBASIS SISTEM PAKAR MENGGUNAKAN
METODE FORWARD CHAINING. Ejournal.Uin-Malang.Ac.Id. http://ejournal.uin-
malang.ac.id/index.php/saintek/article/view/2425

Anda mungkin juga menyukai