• Tidak ada hasil yang ditemukan

Implementasi Algoritma Logika Fuzzy Pada Game Simulasi Bahaya Merokok

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi Algoritma Logika Fuzzy Pada Game Simulasi Bahaya Merokok"

Copied!
108
0
0

Teks penuh

(1)

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana

Oleh :

TIJAN HAKIKI

10109340

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

(2)
(3)

LAMPIRAN B

(4)
(5)

Nama : Tijan Hakiki

Tempat, Tanggal Lahir : Serang, 26 Januari 1990

Jenis Kelamin : Laki – laki

Alamat : Komp. Soreang Indah Blok K No. 20 RT02/15 Bandung

Agama : Islam

Kewarganegaraan : Indonesia

Tinggi Badan : 165 cm

Berat Badan : 65 kg

Status : Belum Kawin

Hobi : Bermain musik, membaca buku

Email : tijanhakiki08@gmail.com Phone : 081906241069

SD : 1997 – 2003 (SDN Inpres Cikeusal)

SMP : 2003 – 2006 (SMPN 1 Cikeusal)

SMK : 2006 – 2009 (SMKN 2 Kota Serang)

(6)

DAFTAR ISI

ABSTRAK ... i

ABSTRACT ... ii

KATA PENGANTAR ... iii

DAFTAR ISI ... v

DAFTAR GAMBAR ... viii

DAFTAR TABEL ... xii

DAFTAR SIMBOL ... xiii

DAFTAR LAMPIRAN ... xviii

1.5 Metodologi Penelitian ... 2

1.5.1 Metode Pengumpulan Data ... 3

1.5.2 Metode Pembuatan Perangkat Lunak ... 3

1.6 Sistematika Penulisan ... 4

BAB II LANDASAN TEORI ... 7

2.1 Game ... 7

2.1.1 Pengertian Game ... 7

2.1.2 Jenis-jenis Game Berdasarkan Platform ... 8

2.1.3 Genre Game ... 9

2.1.4 Kategori Game Lainnya ... 10

2.1.5 Elemen Pada Game ... 12

2.2 Kecerdasan Buatan Pada Game ... 13

2.3 Algoritma Fuzzy Logic ... 13

2.3.1 Himpunan Fuzzy ... 14

2.3.2 Fungsi - Fungsi Keanggotaan. ... 15

2.3.3 Variabel Linguistik ... 18

(7)

2.3.4 Fuzzyfikasi ... 19

2.3.5 Inference ... 20

2.3.6 Defuzzyfikasi ... 22

2.4 Pemrograman Berorientasi Objek ... 23

2.4.1 Objek (Object) ... 24

2.4.2 Kelas (Class) ... 25

2.4.3 Pembungkusan (Encapsulation) ... 25

2.4.4 Pewarisan (Inheritance) dan Generalisasi/Spesialisasi... 25

2.4.5 Polimorfisme ... 26

2.5 UML (Unified Modeling Language) ... 26

2.6 Diagram UML ... 27

2.6.1 Diagram Kelas (Class Diagram) ... 29

2.6.2 Diagram Use Case ... 29

2.6.3 Diagram Aktivitas (Activity Diagram) ... 30

2.6.4 Diagram State Machine ... 31

2.6.5 Diagram Sekuen (Sequence Diagram) ... 32

BAB III ANALISIS DAN kebutuhan algoritma ... 35

3.1 Analisis Sistem ... 35

3.1.1 Analisis Masalah. ... 35

3.1.2 Analisis Game. ... 35

3.1.3 Gameplay Game Simulasi Bahaya Merokok. ... 35

3.2 Analisis Masukan ... 36

3.3 Analisis Algoritma logika fuzzy... 41

3.4 Analisis Kebutuhan Non Fungsional ... 50

3.4.1 Analisis Kebutuhan Perangkat Lunak ... 50

3.4.2 Analisis Kebutuhan Perangkat Keras ... 50

3.4.3 Analisis Pengguna ... 51

3.5 Analisis Kebutuhan Fungsional ... 52

3.6 Use Case Diagram ... 52

3.6.1 Definisi Actor. ... 52

3.7 Activity Diagram ... 55

(8)

3.8 Sequence Diagram ... 58

3.8.1 Diagram Sequence Memulai Permainan. ... 58

3.8.2 Diagram Sequence Melihat Petunjuk. ... 59

3.8.3 Diagram Sequence Memilih Aktivitas. ... 59

3.9 Class Diagram ... 60

BAB IV IMPLEMENTASI DAN PENGUJIAN ... 61

4.1 Implementasi ... 61

4.1.1 Implementasi Perangkat Keras ... 61

4.1.2 Implementasi Perangkat Lunak ... 62

4.1.3 Implementasi Antarmuka ... 62

4.2 Pengujian Simulasi ... 68

4.2.1 Pengujian Perilaku Karakter Utama ... 68

4.3 Kesimpulan Pengujian ... 95

BAB V KESIMPULAN DAN SARAN ... 97

5.1 Kesimpulan ... 97

5.2 Saran ... 97

DAFTAR PUSTAKA ... 98

(9)

Kecerdasan Buatan. Jurnal ELKHA Vol.4.

[2] Pressman, Roger S. (2002). Rekayasa Perangkat Lunak: pendekatan

praktisi. Andi.

[3] Sommerville, I. (2007). Software Engineering – Eight Edition.

Massachussets: Addison Wesley.

[4] Jones, Key (1995). Simulations: A Handbook for Teachers and

Trainers. Kogan Page, hal. 21.

[5] Andang, Ismail. (2006). Education Games (Menjadi cerdas dan ceria

dengan permainan edukatif), Pilar Media.

[6] Wampler, Bruce E. (2001), The Essence of Object Oriented

Programing with Java and UML. Addison Wesley.

[7] I. Sommerville. (2003) Software Engineering (Rekayasa Perangkat

Lunak), 6th ed., Hilarius Wibi Hardani, Ed., Jakarta: Erlangga.

[8] Trijaya Kusumah, Reza. (2011) Konsep Diri Pecandu Game Online

(Studi Deskripsi Tentang Konsep Diri Pecandu Game Online Di Kota

Bandung). Skripsi. Bandung: Fakultas Sosial Politik Universitas

Komputer Indonesia.

(10)

Puji syukur penulis panjatkan kehadirat Allah SWT yang Maha pengasih

dan juga Maha penyayang, karena atas rahmat dan hidayah-Nya penulis dapat

menyelesaikan Skripsi yang berjudul “IMPLEMENTASI ALGORITMA LOGIKA FUZZY PADA GAME SIMULASI BAHAYA MEROKOK”.

Skripsi ini dibuat sebagai salah satu syarat kelulusan program Strata 1

Fakultas Teknik dan Ilmu Komputer, Program Studi Teknik Informatika di

Universitas Komputer Indonesia. Dengan penuh rasa syukur, ucapan terima kasih

yang mendalam serta penghargaan yang setinggi-tingginya penulis sampaikan

kepada :

1. Allah SWT yang senantiasa memberikan kekuatan, kesehatan, dan juga

kesempatan kepada penulis dalam proses menyelesaikan skripsi ini juga atas

semua rahmat dan hidayah-Nya yang dapat menjadikan semangat tiada henti.

2. Kepada kedua orang tua yang sangat penulis cintai dan penulis hormati, yang

selalu memberikan semangat, kekuatan moril, dan selalu mendo’akan penulis.

3. Kepada ketiga kakak tercinta dan yang penulis banggakan, terimakasih

selama ini sudah banyak membantu dan mendukung.

4. Bpk Irawan Afriyanto, M.T. selaku Ketua Program Studi Teknik Informatika

Universitas Komputer Indonesia (UNIKOM).

5. Ibu Riani Lubis, S.T., M.T. selaku pembimbing yang selalu memberikan yang

terbaik dan selalu meluangkan waktunya kepada penulis.

6. Ibu Nelly Indriani W, S.Si., M.T selaku reviewer dan dosen wali IF 8

angkatan 2009 yang selalu memberikan yang terbaik.

7. Ibu Dian Dharmayanti, S.T., selaku reviewer sekaligus penguji yang telah

bersedia meluangkan waktunya kepada penulis.

8. Seluruh staf dosen Teknik Informatika yang telah memberikan ilmu yang

sangat berarti untuk penulis.

9. Luciana Bella tersayang yang selalu tulus memberikan do’a serta dukungan

kepada penulis untuk menyelesaikan skripsi ini.

(11)

bentuk dukungan kepada penulis untuk menyelesaikan skripsi ini.

Penulis sangat menyadari bahwa skripsi ini masih banyak kekurangan dan

masih jauh dari kata sempurna. Oleh karena itu, kritik dan saran yang sifatnya

membangun akan penulis terima dengan senang hati. Akhir kata penulis berharap

skripsi ini dapat bermanfaat bagi yang membutuhkan.

Bandung, Juli 2014

Penulis

(12)

1.1 Latar Belakang Masalah

Logika fuzzy merupakan suatu logika yang memiliki nilai kekaburan atau

kesamaran (fuzzyness) antara benar atau salah. Namun berapa besar kebenaran dan

kesalahan suatu nilai tergantung pada bobot keanggotaan yang dimilikinya.

Logika fuzzy memiliki derajat keanggotaan dalam rentang 0 hingga 1. Logika

fuzzy adalah suatu cara yang tepat untuk memetakan suatu ruang input kedalam

suatu ruang output, mempunyai nilai kontinyu. Fuzzy dinyatakan dalam derajat

dari suatu keanggotaan dan derajat dari kebenaran. Oleh sebab itu sesuatu dapat

dikatakan sebagian benar dan sebagian salah pada waktu yang sama [1].

Game Cigarette Killer merupakan sebuah action game. Cara memainkan

game ini yaitu menghentikan orang yang merokok di area restoran atau tempat

makan dengan menggunakan senjata air untuk menembaki rokok agar api rokok

padam. GameCigarette Killer menggunakan algoritma greedy untuk menentukan

titik koordinat orang yang merokok. selain itu, untuk titik koordinat tidak akan

terihat lagi di kemudian. Untuk latar tempat yang digunakan masih sama di setiap

permainan saat dimulainya permainan sampai dengan selesai permainan dalam

waktu 100 detik. Hanya saja, kita tidak akan tahu kapan kita menang atau kalah

karena meski rokok yang menyala telah dipadamkan sebelum waktu habis tetap

saja akan mendapatkan game over. Sedangkan game simulasi bahaya merokok

merupakan sebuah game simulasi cara memainkan game ini yaitu dengan

menentukan aktivitas agar karakter utama tidak merokok. Namun pada game

simulasi bahaya merokok tidak membutuhkan algoritma greedy tetapi

membutuhkan suatu algoritma yang dapat menentukan nilai untuk 3 variabel yaitu

variable bosan, variable stress, dan variable lingkungan untuk menentukan

keputusan merokok dan tidak merokok. Berdasarkan penjelasan di atas maka

dibutuhkan algoritma logika fuzzy untuk menentukan keputusan merokok dan

tidak merokok.

(13)

1.2 Perumusan Masalah

Berdasarkan latar belakang masalah yang telah diuraikan di atas, maka

yang menjadi pokok permasalahan adalah bagaimana menerapkan algoritma

logika fuzzy ke dalam game simulasi bahaya merokok untuk menentukan

keputusan merokok dan tidak merokok.

1.3 Maksud dan Tujuan

Berdasarkan permasalahan yang diteliti, maka maksud dari penulisan tugas

akhir ini adalah mengimplementasikan algoritma logika fuzzy pada game simulasi

bahaya merokok. Adapun tujuan yang akan dicapai dalam tugas akhir ini adalah

dapat menentukan sebuah keputusan apakah karakter utama merokok atau tidak

merokok.

1.4 Batasan Masalah

Berdasarkan latar belakang masalah yang telah dijabarkan, maka dapat

dirumuskan beberapa permasalahan yang terjadi, yaitu :

1. Kecerdasan buatan yang digunakan adalah logika fuzzy.

2. Output yang dihasilkan adalah merokok dan tidak merokok.

3. Proses inference menggunakan model Sugeno.

4. Game yang akan dibangun berupa simulasi

1.5 Metodologi Penelitian

Metodologi penelitian merupakan suatu proses yang digunakan untuk

memecahkan suatu masalah agar lebih efisien. Metode penelitian yang digunakan

adalah metode deskriptif. Metode deskriptif merupakan metode yang

menggambarkan fakta-fakta dan informasi dalam situasi atau kejadian sekarang

secara sistematis, faktual dan akurat.

Pengumpulan data dan pengembangan perangkat lunak dalam penelitian

ini menggunakan dua proses metode yaitu metode pengumpulan data dan metode

(14)

1.5.1 Metode Pengumpulan Data

Metode pengumpulan data yang digunakan dalam penelitian ini adalah

sebagai berikut :

a. Studi Literatur.

Pengumpulan data dengan cara mengumpulkan literatur, jurnal, paper dan

bacaan-bacaan yang ada kaitannya dengan judul penelitian.

b. Observasi.

Metode pengumpulan data dengan melakukan pengamatan secara

langsung terhadap objek yang diteliti, yaitu game yang berjudul Cigarette

Killer.

1.5.2 Metode Pembuatan Perangkat Lunak

Metode pembangunan perangkat lunak menggunakan model prototype [2].

Alasan menggunakan metode prototype adalah karena metode ini melakukan

pengumpulan kebutuhan dan memperbaiki kebutuhan, melakukan desain dengan

cepat dan mengevaluasi kebutuhan oleh pemakai agar sesuai dengan kebutuhan.

Pada gambar 1.1 menunjukan tahapan-tahapan model prototype yaitu sebagai

berikut :

1. Requirement Gathering and Refinement (Pengumpulan Kebutuhan dan

Perbaikan)

Mengumpulkan kebutuhan untuk merancang sebuah game dan juga

melakukan perbaikan game jika terdapat kekurangan.

2. Quick Desain (Desain Cepat)

Mendesain secara cepat aplikasi game sesuai dengan kebutuhan pemakai.

3. Building Prototype (Bentuk Prototype)

Aplikasi game yang sudah didesain akan dirancang ke dalam bahasa

pemrograman dengan menggunakan tools yang ada.

4. Customer Evalution of Prototype (Evaluasi Pemakai Terhadap Prototype)

Setelah game sudah jadi, selanjutnya game ini dapat diuji. Setelah diuji,

kemudian diberikan kepada pemakai agar dapat mengetahui game yang

(15)

5. Refining Prototype (Perbaikan Prototype)

Memperbaiki game yang sudah jadi dengan menguji kembali algoritma pada

game ataupun yang tidak sesuai dengan kebutuhan pemakai. Setelah game

sudah diperbaiki, kemudian dapat diberikan kembali kepada pemakai agar

dapat mengetahui game yang sudah diuji.

6. Engineer Product (Produk Rekayasa)

Aplikasi game sudah sesuai dengan kebutuhan pemakai.

Gambar 1.1 Model Prototype [2]

1.6 Sistematika Penulisan

Sistematika penulisan tugas akhir ini disusun untuk memberikan gambaran

umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini

adalah sebagai berikut :

BAB I PENDAHULUAN

Bab ini berisi latar belakang, perumusan masalah, maksud dan tujuan, batasan

masalah, metodologi penelitian, sistematika penulisan dari tugas akhir yang akan dibuat.

BAB II LANDASAN TEORI

Bab ini membahas pengertian game, jenis game, kecerdasan buatan di dalam

game, penjelasan algoritma yang digunakan pada game, serta pemodelan yang

(16)

BAB III ANALISIS DAN KEBUTUHAN ALGORITMA

Bab ini membahas tentang analisis sistem, analisis masalah, analisis game yang

akan dikembangkan, analisis metode atau algoritma, analisis kebutuhan perangkat

lunak, kebutuhan non fungsional dan kebutuhan kebutuhan fungsional.

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

Bab ini membahas implementasi dari tahapan analisis dan perancangan sistem ke

dalam perangkat lunak (dalam bentuk bahasa pemrograman), beberapa

implementasi yang akan dijelaskan adalah implementasi perangkat keras,

implementasi perangkat lunak, dan implementasi antarmuka.

BAB V KESIMPULAN DAN SARAN

Bab ini berisi tentang kesimpulan yang didapatkan selama penulisan laporan tugas

akhir dari pembatasan masalah, selain itu juga berisi saran untuk perbaikan dan

(17)

2.1 Game

Video game merupakan salah satu media hiburan yang paling popular

untuk semua kalangan usia. Sejak pertama kali ditemukan sampai saat ini,

teknologi game telah mengalami kemajuan yang pesat. Hal ini ditandai dengan

berkembangnya jenis, produk, alat, dan jenis interaksi game dengan penggunaan

yang semakin beragam bentuknya.

2.1.1 Pengertian Game

Game berasal dari kata bahasa inggris yang memiliki arti dasar Permainan.

Permainan dalam hal ini merujuk pada pengertian “kelincahan intelektual”

(intellectual playability). Game juga bisa diartikan sebagai arena keputusan dan

aksi pemainnya. Ada target-target yang ingin dicapai pemainnya. Kelincahan

intelektual, pada tingkat tertentu, merupakan ukuran sejauh mana game itu

menarik untuk dimainkan secara maksimal. Game merupakan sebuah bentuk seni

dimana penggunanya, disebut dengan pemain (player), diharuskan membuat

keputusan-keputusan dengan tujuan untuk mengelola sumber daya yang diperoleh

dari kesempatan-kesempatan bermain (token) miliknya, untuk mencapai suatu

tujuan tertentu.

Video game adalah bentuk game yang interaksi utamanya melibatkan

media video (dan biasanya melibatkan audio). Berdasarkan representasi visualnya,

game dapat dibedakan menjadi 2 jenis, yaitu game 2 dimensi (2D) dan 3 dimensi

(3D). Game 2D adalah game, yang secara matematis, hanya melibatkan 2 elemen

koordinat kartesius, yaitu x dan y, sehingga konsep kamera pada game 2D hanya

menentukan “gambar” mana pada game yang dapat dilihat oleh pemain.

Sedangkan game 3D adalah game yang selain melibatkan elemen x dan y, juga

melibatkan elemen z pada perhitungannya, sehingga konsep kamera pada game

3D benar-benar menyerupai konsep kamera pada kehidupan nyata, yaitu selain

digeser (seperti pada game 2D), juga dapat diputar dengan sumbu tertentu.

(18)

Menariknya akan tantangan maupun visualisasi yang ada pada game sering

mengakibatkan ketergantungan terhadap game tersebut (addicted). Ini merupakan

salah satu akibat buruk yang disebabkan oleh game (game addicted) [8].

2.1.2 Jenis-jenis Game Berdasarkan Platform

Berikut ini beberapa jenis game berdasarkan cara pembuatannya, cara

pemasarannya dan mesin yang menjalankannya. Jenis-jenis game tersebut adalah

[8] :

1. Game PC

Game PC adalah game yang dimainkan pada PC (Personal Computer)

yang memiliki kelebihan yaitu tampilan antarmuka yang baik untuk input

maupun output. Output visual berkualitas tinggi karena layar komputer

biasanya memiliki resolusi yang jauh lebih tinggi dibandingkan dengan

layar televisi biasa.Kekurangannya adalah spesifikasi komputer yang

sangat bervariasi antar satu komputer dengan komputer yang lainnya

menyebabkan beberapa game dapat ditampilkan dengan baik pada satu

komputer tetapi tidak berjalan dengan baik pada komputer yang lainnya.

2. Game Console

Game console adalah game yang dijalankan pada suatu mesin spesifik

yang biasanya tersedia di rumah seperti Xbox,Nintendo Wii dan lain-lain.

3. Game Arcade

Game arcade adalah game yang dijalankan pada mesin dengan input dan

output audio visual yang telah terintegrasi dan tersedia ditempat-tempat

umum.

4. Game Online

Game online adalah game yang hanya dapat dumainkan secara online

(19)

2.1.3 Genre Game

Berdasarkan genre permainannya, game dapat dibagi menjadi beberapa

genre yaitu:

1. Action

Action game adalah game dimana kebanyakan dari tantangan yang

disajikan merupakan dari tes physical skill dan koordinasi pemain. Salah

satu sub-genre action game adalah shooter game, baik yang 2D ataupun

3D seperti First Person Shooter (FPS).

2. Strategy

Strategy game menantang pemain untuk mencapai kemenangan dengan

perencanaan, khususnya melalui perencanaan serangkaian tindakan yang

dilakukan melawan satu lawan atau lebih. Kemenangan diraih dengan

perencanaan matang dan pengambilan keputusan optimal.

3. Role Playing Game (RPG)

RPG adalah game dimana pemain mengontrol satu atau lebih karakter

yang biasanya di desain oleh pemain itu sendiri, dan memandu mereka

melewati berbagai rintangan yang diatur oleh komputer. Perkembangan

karakter dalam hal kekuatan dan kemampuannya adalah kunci dari game

jenis ini.

4. Sports

Sports game mensimulasikan berbagai aspek dari olahraga atletik nyata

ataupun imajiner, apakah itu memainkan pertandingan, me-manage tim

dan karir, atau keduanya. Salah satu contoh game jenis ini adalah Pro

Evolution Soccer 2012 (PES 2012), dimana pemain bisa memainkan

pertandingan, menjadi manajer tim, maupun menjadi pemain dan

mengembangkan karirnya sendiri.

5. Vehicle Simulation

Vehicle simulation membuat feeling mengendarai kendaraan, baik

kendaraan nyata maupun kendaraan imajiner. Performa dan karakteristik

kasar mesin harus menyerupai kenyataan, kecuali jika yang didesain

(20)

6. Construction and Management Simulation

CMS game adalah game tentang proses. Tujuan pemain bukan untuk

mengalahkan musuh, tetapi membangun sesuatu dengan konteks proses

yang sedang berjalan. Semakin pemain mengerti dan mengontrol proses,

semakin sukses sesuatu yang ia bangun. Game seperti ini biasanya

menyediakan dua jenis permainan, yaitu mode bebas dimana pemain bebas

membangun sesuatu, dan mode misi dimana terdapat skenario hal apa

yang harus dibangun oleh pemain.

7. Adventures

Adventure game adalah cerita interaktif tentang karakter protagonist yang

dimainkan oleh pemain. Penyampaian cerita dan eksplorasi adalah elemen

inti dari game ini. Penyelesaian teka-teki dan tantangan konseptual adalah

bagian besar dari permainan.

8. Artificial Life and Puzzle Game

Artificial Life game adalah game yang membuat tiruan dari kehidupan

sebenarnya. Biasanya ada dua jenis game ini, tiruan kehidupan manusia,

contohnya The SIMS, dan tiruan kehidupan binatang, contohnya

Tamagochi.

9. Online Game

Istilah online game disini mengacu kepada multiplayer game dimana

mesin dari para pemain terhubung dengan jaringan.

2.1.4 Kategori Game Lainnya

Selain berdasarkan genre permainannya terdapat pula kategori-kategori

game lainnya, yaitu:

1. Multiplayer Online

Game yang dapat dimainkan secara bersamaan oleh lebih dari 2 orang

(bahkan dapat mencapai puluhan ribu orang dalam satu waktu) membuat

pemain dapat bermain bersama dalam satu dunia virtual dari sekedar

chatting hingga membunuh naga bersama teman yang entah bermain di

(21)

walau ada juga yang bertema musik atau action.

2. Casual Games

Sesuai namanya, game casual itu tidak kompleks, mainnya rileks dan

sangat mudah untuk dipelajari (bahkan cenderung langsung bisa

dimainkan). Jenis ini biasanya memerlukan spesifikasi komputer yang

standar. Genre permainannya biasanya puzzle atau action sederhana dan

umumnya dapat dimainkan hanya menggunakan mouse (biasanya game

lain menggunakan banyak tombol tergantung game-nya). Contohnya:

Dinner Dash, Zuma, Feeding Frenzy.

Fitur dasar pada game casual, yaitu:

1) Gameplay sangat sederhana, bisa dimainkan menggunakan mouse,

keyboard atau keypad ponsel.

2) Dimainkan dalam waktu singkat. Biasanya dibawah 10 menit. Bisa

dimainkan saat istirahat kerja atau pada transportasi umum.

3) Kemampuan yang cepat dalam mencapai tahap akhir tanpa perlu

save game.

4) Kadang digunakan untuk model bisnis atau periklanan.

5) Cocok dalam genre apapun.

6) Dapat dimainkan oleh siapa saja, anak – anak sampai orang

dewasa.

7) Dapat dimainkan dengan atau tanpa pengalaman dalam bermain

game.

3. Edugames

Video game jenis ini dibuat dengan tujuan spesifik sebagai alat pendidikan,

entah untuk belajar mengenal warna untuk balita, mengenal huruf dan

angka, matematika, sampai belajar bahasa asing. Developer yang

membuatnya, harus memperhitungkan berbagai hal agar game ini

benar-benar dapat mendidik, menambah pengetahuan dan meningkatkan

ketrampilan yang memainkannya. Target segmentasi pemain harus pula

disesuaikan dengan tingkat kesulitan dan desain visual ataupun

(22)

4. Advergames

Jenis game yang biasanya mudah dimainkan ini mengusung dan

menampilkan produk atau brand secara gamblang maupun tersembunyi.

Di era tumbuhnya media-media baru berteknologi tinggi sekarang ini,

dunia periklanan memang sudah tidak lagi terbatas pada TV, koran,

majalah, billboard dan radio, video game sekarang telah menjadi sarana

beriklan atau membangun brand-awareness yang efektif. Baik melalui

internet maupun di mainkan di event-event mereka, edugames terasa

semakin dibutuhkan untuk menjaring calon konsumen bagi produk yang

menggunakan advergames ini.

2.1.5 Elemen Pada Game

Elemen – elemen yang ada dalam sebuah game biasanya terdiri dari:

1. Desain game

Desain adalah langkah awal untuk membuat semua elemen game. Desain

game dibuat semenarik mungkin agar pemain tidak cepat bosan yang

dampaknya membuat game tersebut cepat ditinggalkan.

2. Pemrograman game

Pemrograman game sebagian besar digunakan untuk mengontrol gerakan

objek di layar. Selain itu, pemrograman game juga digunakan untuk

pemrograman suara, input device, deteksi keadaan lain – lain.

3. Grafis game

Grafis game memegang peranan penting dalam pembuatan tampilan.

Tampilan haruslah dibuat semenarik mungkin, sehingga dengan

melihatnya saja end user langsung tertarik untuk memainkannya.

4. Musik dan sound

Musik dan sound dalam suatu game merupakan suatu hal yang wajib

dikarenakan dalam suatu game akan lebih terasa efek emosi dari game

(23)

2.2 Kecerdasan Buatan Pada Game

Kecerdasan buatan atau AI merupakan kegiatan membuat komputer agar

dapat berpikir dan mengerjakan kegiatan yang dapat dilakukan oleh manusia

maupun binatang.

Saat ini dapat ditemukan program komputer yang memiliki kemampuan

menangani masalah seperti aritmatik, sorting, searching. Bahkan komputer juga

dapat bermain beberapa board game seperti catur dan reversi lebih baik daripada

manusia.

Namun, masih banyak hal yang tidak dapat dilakukan dengan baik oleh

komputer. Seperti, mengenali wajah, berbicara bahasa manusia, menentukan

sendiri apa yang harus dilakukan, dan bertingkah kreatif. Hal itu semua

merupakan domain dari AI untuk mencoba menentukan algoritma apa yang

dibutuhkan untuk memenuhi kebutuhan diatas.

Dalam bidang akademik, beberapa peniliti AI termotivasi oleh filosofi,

yaitu memahami alam pikiran dan alam kecerdasan dan membangun program

untuk memodelkan bagaimana proses berpikir. Beberapa juga termotivasi oleh

psychology, bertujuan untuk memahami mekanisme otak manusia dan proses

mental. Dan lainya termotivasi oleh engineering, dengan tujuan membangun

algoritma untuk melakukan kegiatan seperti manusia atau hewan.

Dalam pembangunan game, umumnya akan cenderung hanya pada sisi

engineering yang bertujuan membangun algoritma yang dapat membuat game

karakter mengerjakan kegiatan seperti yang dilakukan manusia atau binatang [5].

2.3 Algoritma Fuzzy Logic

Logika fuzzy adalah peningkatan dari logika Boolean yang berhadapan

dengan konsep kebenaran sebagian. Dimana logika klasik (crisp) menyatakan

bahwa segala hal dapat diekspresikan dalam istilah binary (0 atau 1, hitam atau

putih, ya atau tidak). Logika fuzzy menggantikan kebenaran Boolean dengan

tingkat kebenaran. Logika fuzzy memungkinkan nilai keanggotaan antara 0 dan 1,

tingkat keabuan dan juga hitam dan putih, dan dalam bentuk linguistic, konsep

(24)

oleh Dr.Lotfi Zadeh dari Universitas California, Barkeley pada tahun 1965.

Logika fuzzy telah digunakan pada bidang-bidang seperti taksonomi, topologi,

linguistik, teori automata, teori pengendalian, psikologi, pattern recogniti on,

pengobatan, hukum, decision analysis, system theory and information

retrieval.Pendekatan fuzzy memiliki kelebihan pada hasil yang terkait dengan sifat

kognitif manusia, khususnya pada situasi yang melibatkan pembentukan konsep,

pengenalan pola, dan pengambilan keputusan dalam lingkungan yang tidak pasti

atau tidak jelas.[1]

2.3.1 Himpunan Fuzzy

Himpunan fuzzy merupakan suatu pengembangan lebih lanjut tentang

konsephimpunan dalam matematika. Himpunan Fuzzy adalah rentang nilai-nilai.

Masing-masing nilai mempunyai derajat keanggotaan (membership) antara 0

sampai dengan 1. Ungkapan logika Boolean menggambarkan nilai-nilai “benar”

atau “salah”. Logika fuzzy menggunakan ungkapan misalnya : “sangat lambat”,

”agak sedang”, “sangat cepat”dan lain-lain untuk mengungkapkan derajat

intensitasnya. Ilustrasi antara keanggotaan fuzzy dengan Boolean set dapat dilihat

pada gambar dibawah ini.

(25)

2.3.2 Fungsi – Fungsi Keanggotaan

Didalam fuzzy system, fungsi keanggotaan memainkan peranan yang

sangat penting untuk merepresentasikan masalah dan menghasilkan keputusan

yang akurat. Terdapat banyak sekali fungsi keanggotaan yang biasa digunakan.

Disini hanya membahas empat fungsi keanggotaan yang sering digunakan di

dunia nyata, yaitu :[3].

1. Fungsi sigmoid

Sesuai dengan namanya, fungsi ini berbentuk kurva sigmoidal seperti huruf S.

Setiap nilai x (anggota crisp set) dipetakan ke dalam interval [0,1]. Grafik dan

notasi matematika untuk fungsi sigmoid dapat dilihat pada Gambar 2.2.

Sigmoid (a,b,c)= (2.1)

Gambar 2.2 Grafik dan notasi fungsi sigmoid [3].

2. Fungsi phi

Pada fungsi keanggotaan ini, hanya terdapat satu nilai x yang memiliki derajat

keanggotaan yang sama dengan 1, yaitu ketika x=c. Nilai-nilai di sekitar c

memiliki derajat keanggotaan yang masih mendekati 1. Grafik dan notasi

(26)

Phi(x,b,c) = (2.2)

Gambar 2.3 Grafik dan notasi fungsi phi [3].

3. Fungsi segitiga

Sama seperti fungsi phi, pada fungsi ini juga terdapat hanya satu nilai x yang

memiliki derajat keanggotaan sama dengan 1, yaitu ketika x=b. Tetapi, nilai-nilai

di sekitar b memiliki derajat keanggotaan yang turun cukup tajam menjauhi 1.

Grafik dan notasi matematika untuk fungsi segitiga dapat dilihat pada Gambar 2.4.

Segitiga(x,a,b,c) = (2.3)

(27)

4. Fungsi trapesium

Berbeda dengan fungsi segitiga, pada fungsi ini terdapat beberapa nilai x yang

memiliki derajat keanggotaan sama dengan 1, yaitu ketika b≤ x ≤ c. Tetapi derajat

keanggotaan untuk a< x <b dan c< x ≤ d memiliki karakteristik yang sama

dengan fungsi segitiga. Grafik dan notasi matematika untuk fungsi ini dapat

dilihat pada Gambar 2.5.

Trapesium (x,a,b,c,d)=. (2.4)

Gambar 2.5 Garfik dan notasi fungsi trapesium [3].

Himpunan fuzzy memiliki 2 atribut, yaitu:

1. Linguistik, yaitu penamaan suatu grup yang mewakili suatu keadaan atau

kondisi tertentu dengan menggunakan bahasa alami, seperti: MUDA,

PAROBAYA, TUA

2. Numeris, yaitu suatu nilai (angka) yang menunjukkan ukuran dari suatu

(28)

2.3.3 Variabel Linguistik

Variabel linguistik adalah suatu interval numerik dan mempunyai nilai-

nilai linguistik , yang semantiknya di definisikan oleh fungsi keanggotaannya.

Misalnya, suhu adalah suatu variabel linguistik yang bisa di definisikan pada

interval [-10°C, 40°C]. Variabel tersebut bisa memiliki nilai – nilai linguistik

seperti ‘Dingin’, ‘Hangat’, ‘Panas’ yang semantiknya di definisikan oleh fungsi –

fungsi keanggotaan tertentu.

1. Fuzzyfication

Mengubah masukan – masukan yang nilai kebenarannya bersifat pasti

(Crips input) kedalam bentuk fuzzy input, yang berupa nilai linguistik

yang semantiknya ditentukan berdasarkan fungsi keanggotaan tertentu.

2. Inference

Melakukan penalaran menggunakan fuzzy infut dan fuzzy rules yang telah

di tentukan sehingga menghasilkan fuzzy output.

3. Defuzzyfication

Mengubah fuzzy output menjadi crisp value berdasarkan fungsi

(29)

Gambar 2.6 diagram blok untuk sistem berbasis aturan fuzzy [3].

2.3.4 Fuzzyfikasi

Fuzzifikasi yaitu suatu proses untuk mengubah suatu masukan dari bentuk

tegas (crisp) menjadi fuzzy (variabel linguistik) yang biasanya disajikan dalam

bentuk himpunan-himpunan fuzzy dengan suatu fungsi kenggotaannya

masing-masing. Contoh dari proses Fuzzification adalah seperti yang ditunjukkan di

gambar 2.2. Sebuah sistem fuzzy untuk mengukur suhu mempunyai 5 buah

membership function yang mempunyai label sangat dingin, dingin, hangat, panas,

sangat panas. Kemudian input yang diperoleh dari crisp input adalah 47° maka

(30)

Gambar 2.7 Proses perubahan dari crisp input menjadi fuzzy input [3].

2.3.5 Inference

Dalam suatu sistem aturan fuzzy, proses inference memperhitunkan semua

aturan yang ada dalam basis pengetahuan. Hasil dari proses inference

direpresentasikan oleh suatu fuzzy set untuk setiap variabel bebas (pada

consequent). Derajat keanggotaan untuk setiap nilai variabel tidak bebas

menyatakan ukuran kompatibilitas terhadap variabel bebas (pada antecdent).

Misalkan, terdapat suatu sistem dengan n variabel x1, ..., xn dan m variabel tidak

bebas y1,...,ym. Misalkan R adalah suatu basis dari sejumlah r aturan fuzzy.

IF P1(x1,...,xn) THEN Q1 (y1,...,ym),

IF Pr(x1,...,xn) THEN Qr (y1,...,ym),

Dimana p1,...pr menyatakan fuzzy predicate untuk variabel bebas, dan

Q1,...Qr menyatakan fuzzy predicate untuk variabel tidak bebas.

Struktur sistem inferensi fuzzy dapat dilihat pada gambar 2.1

(31)

Keterangan:

1) Basis Pengetahuan Fuzzy merupakan kumpulan rule-rule fuzzy dalam

bentuk pernyataan IF…THEN.

2) Fuzzyfikasi adalah proses untuk mengubah input sistem yang

mempunyai nilai tegas menjadi variabel linguistic menggunakan fungsi

keanggotaan yang disimpan dalam basis pengetahuan fuzzy.

3) Logika pengambil keputusan merupakan proses untuk mengubah input

fuzzy dengan cara mengikuti aturan-aturan (IF-THEN Rules) yang telah

ditetapkan pada basis pengetahuan fuzzy.

4) Defuzzyfikasi merupakan proses mengubah output fuzzy yang diperoleh

dari mesin inferensi menjadi nilai tegas menggunakan fungsi

keanggotaan yang sesuai dengan saat dilakukan fuzzyfikasi.

Terdapat dua model aturan fuzzy yang digunakan secara luas dalam

berbagai aplikasi.

1. Model Mamdani

Pada model ini, aturan fuzzy didefinisikan sebagai:

IF x1 is A1 AND …AND xn is An THEN y is B

di mana A1, …, An, dan B adalah nilai-nilai linguistik (atau fuzzy set) dan

“x1 is A1” menyatakan bahwa nilai x1 adalah anggota fuzzy set A1.

2. Model Sugeno

Model ini dikenal juga sebagai Takagi-Sugeno-Kang (TSK) model, yaitu

suatu varian dari Model Mamdani.

Model ini menggunakan aturan yang berbentuk:

IF x1 is A1 AND…AND xn is An THEN y=f(x1,…,xn)

di mana f bisa sembarang fungsi dari variabel-variabel input yang nilainya

berada dalam interval variabel output. Biasanya, fungsi ini dibatasi dengan

menyatakan f sebagai kombinasi linier dari variabel-variabel input:

(32)

di mana w0, w1,…,wn adalah konstanta yang berupa bilangan real yang

merupakan bagian dari spesifikasi aturan fuzzy.

2.3.6 Defuzzyfikasi

Defuzzification: mengubah fuzzy output menjadi crisp value berdasarkan

fungsi keanggotaan yang telah ditentukan.Terdapat berbagai metode

defuzzification yang telah berhasil diaplikasikan untuk berbagai macam masalah,

di sini dibahas 5 metode di antaranya, yaitu:[2]

1. Centroid method

Metode ini disebut juga sebagai Center of Area atau Center of Gravity. Metode ini

menghitung nilai crisp menggunakan rumus:

di mana y* suatu nilai crisp.

Fungsi integration dapat diganti dengan fungsi summation jika y bernilai diskrit,

sehingga menjadi:

di mana y* adalah nilai crisp dan µR(y) adalah derajat keanggotaan dari y.

2. Height method

Metode ini dikenal sebagai prinsip keanggotaan maksimum karena metode ini

secara sederhana memilih nilai crisp yang memiliki derajat keanggotaan

maksimum. Oleh karena itu, metode ini hanya bisa dipakai untuk fungsi

keanggotaan yang memiliki derajat keanggotaan 1 pada suatu nilai crisp tunggal

dan dan 0 pada semua nilai crisp yang lain. Fungsi seperti ini sering disebut

(33)

3. First (or Last) of Maxima

Metode ini juga merupakan generalisasi dari height method untuk kasus di mana

fungsi keanggotaan output memiliki lebih dari satu nilai maksimum.Sehingga

nilai crisp yang digunakan adalah salah satu dari nilai yang dihasilkan dari

maksimum pertama atau maksimum terakhir (tergantung pada aplikasi yang akan

dibangun).

4. Mean-Max Method

Metode ini disebut juga sebagai Middle of Maxima. Merupakan generalisasi dari

height method untuk kasus di mana terdapat lebih dari satu nilai crisp yang

memiliki derajat keanggotaan maksimum.Sehingga y* didefinisikan sebagai titik

tengah antara nilai crisp terkecil dan nilai crisp terbesar

di mana m adalah nilai crisp yang paling kecil dan M adalah nilai crisp yang

paling besar.

5. Weighted Average

Metode ini mengambil nilai rata-rata dengan menggunakan pembobotan berupa

derajat keanggotaan. Sehingga y* didefinisikan sebagai:

di mana y adalah nilai crisp dan µ(y) adalah derajat keanggotan dari nilai crisp y.

2.4 Pemrograman Berorientasi Objek

Objek adalah kesatuan entitas yang memiliki sifat dan tingkah laku.

Dalam kehidupan sehari-hari, objek adalah benda, baik benda berwujud nyata

seperti manusia, hewan, mobil, komputer, handphone, pena, ataupun benda yang

tidak nyata atau konsep, seperti halnya tabungan bank, sistem antrian, sistem

internet banking, dan sebagainya. Jadi pengertian OOP adalah konsep yang

(34)

Objek adalah benda, baik benda yang berwujud nyata maupun benda yang tidak

nyata (konsep). Jika menggunakan OOP maka akan ada enam keuntungan yang dapat

diperoleh, yaitu [6]:

1. Alami (Natural).

2. Dapat diandalkan (Reliable).

3. Dapat digunakan kembali (Reusable).

4. Mudah untuk dalam perawatan (Maintainable).

5. Dapat diperluas (Extendable).

6. Efisiensi waktu.

Berikut ini beberapa bahasa pemrograman yang sudah menggunakan konsep OOP,

adalah :

Orientasi objek merupakan teknik dalam menyelesaikan masalah yang

kerap muncul dalam pengembangan perangkat lunak. Teknik ini merupakan titik

kulminasi dalam menemukan cara yang efektif dalam membangun sistem dan

menjadi metode yang paling banyak dipakai oleh para pengembang perangkat

lunak saat ini. Orientasi objek merupakan teknik pemodelan sistem riil yang

berbasis objek. Inti dari konsep ini adalah objek yang merupakan model dari

sistem nyata.

Objek adalah entitas yang memiliki atribut, karakter dan kadangkala

disertai kondisi. Objek merepresentasikan sesuatu sistem nyata seperti siswa,

sistem kontrol permukaan sayap pesawat, sensor atau mesin. Objek juga

merepresentasikan sesuatu dalam bentuk konsep seperti nasabah bank, merek

dagang, pernikahan atau sekedar listing. Bahkan bisa juga mengatakan visualisasi

seperti, bentuk huruf, histogram, poligon, garis atau lingkaran. Semuanya

(35)

(memori), identitas dan tanggung jawab. Proses menjabarkan sistem nyata

menjadi objek dinamakan abstraksi (abstraction). Abstraksi mengeliminir aspek

yang tidak perlu dalam suatu objek.

2.4.2 Kelas (Class)

Kelas adalah penggambaran satu set objek yang memiliki atribut dan

behaviour yang sama. Kelas mirip tipe data pada pemrograman non objek, tapi

lebih komprehensif karena terdapat struktur sekaligus karakteristiknya.

Programmer dapat membentuk kelas baru yang lebih spesifik dari kelas general

-nya. Kelas dan objek merupakan jantung dari pemrograman berorientasi objek.

Untuk menghasilkan program jenis ini sangat penting untuk selalu berfikir dalam

bentuk objek.

2.4.3 Pembungkusan (Encapsulation)

Pembungkusan sebagai penggabungan potongan-potongan informasi dan

perilaku-perilaku spesifik yang bekerja pada informasi tersebut, kemudian

mengemasnya menjadi apa yang disebut sebagai objek. Dalam perbankan dikenal

objek rekening yang memiliki perilaku-perilaku misalnya buka, tutup, penarikan,

penyimpanan, ubah nama, ubah alamat, dan sebagainya. Akibatnya,

perubahan-perubahan pada sistem perbankan yang berkaitan dengan rekening-rekening dapat

secara sederhana diimplementasikan satu kali saja pada objek rekening.

Keuntungan lainnya adalah membatasi efek-efek perubahan pada sistem.

Misalnya, saat manajemen bank menentukan jika seseorang memiliki rekening

pinjaman di bank yang bersangkutan, rekening pinjaman itu harus dapat juga

digunakan sebagai sarana bagi penarikan rekening.

2.4.4 Pewarisan (Inheritance) dan Generalisasi/Spesialisasi

Konsep dimana metode dan atau atribut yang ditentukan di dalam sebuah

objek kelas dapat diwariskan atau digunakan lagi atau digunakan lagi oleh objek

kelas lainnya. Sedangkan generalisasi/spesialisasi merupakan teknik dimana

(36)

(atau diabstraksi) ke dalam kelasnya sendiri (dinamakan supertype). Atribut dan

metode kelas objek supertype kemudian diwariskan oleh kelas objek tersebut

(dinamakan subtype).

2.4.5 Polimorfisme

Polimorfisme berarti suatu fungsionalitas yang diimplementasikan dengan

berbagai cara yang berbeda. Pada terminologi berorientasi objek, ini berarti dapat

memiliki berbagai implementasi untuk sebagian fungsionalitas tertentu. Sebagai

contoh, misalkan pengembang akan mengembangkan sistem berbasis grafis. Saat

pengguna mau menggambar sesuatu, misalnya garis atau lingkaran, sistem akan

memunculkan perintah gambar. Sistem akan mengenali berbagai bentuk gambar,

masing-masing dengan perilakunya sendiri-sendiri. Manfaat dari polimorfisme

adalah kemudahan pemeliharaannya. Jika perlu menambahkan gambar baru

(misalnya segitiga) maka cukup menambahkan fungsi baru (fungsi menggambar

segitiga) sedangkan fungsi umumnya (fungsi gambar) tidak mengalami

perubahan.

2.5 UML (Unified Modeling Language)

UML adalah keluarga notasi grafis yang didukung oleh meta-model

tunggal, yang membantu pendeskripsian dan desain sistem perangkat lunak,

khususnya sistem yang dibangun menggunakan pemrograman berorientasi objek.

Definisi ini merupakan definisi sederhana. Pada kenyataannya, pendapat

orang-orang tentang UML berbeda satu sama lain. Hal ini dikarenakan oleh sejarahnya

sendiri dan oleh perbedaan persepsi tentang apa yang membuat sebuah proses

rancang bangun perangkat lunak efektif.

UML merupakan standar yang relatif terbuka yang dikontrol oleh Object

Management Group (OMG), sebuah konsorsium terbuka yang terdiri dari banyak

perusahaan. OMG dibentuk untuk membuat standar-standar yang mendukung

interoperabilitas, khususnya interoperabilitas sistem berorientasi objek. OMG

mungkin lebih dikenal dengan standar-standar COBRA (Common Object Request

(37)

UML lahir dari penggabungan banyak bahasa pemodelan grafis

berorientasi objek yang berkembang pesat pada akhir 1980-an dan awal 1990-an.

Sejak kehadirannya pada tahun 1997, UML menggantikan menara Babel yang

telah menjadi sejarah. UML merupakan dasar bagi perangkat (tool) desain

berorientasi objek dari IBM.

Bagian-bagian utama dari UML adalah view, diagram, modelelement, dan

general mechanism [7]. Diagram berbentuk grafik yang menunjukkan simbol

elemen model yang disusun untuk mengilustrasikan bagian atau aspek tertentu

dari sistem. Sebuah diagram merupakan bagian dari suatu view tertentu dan ketika

digambarkan biasanya.

2.6 Diagram UML

Pada UML 2.3 terdiri dari 13 macam diagram yang dikelompokkan dalam

3 kategori. Pembagian kategori dan macam-macam diagram tersebut dapat dilihat

(38)

UML 2.3 Diagram

Gambar 2.9 Diagram UML [7]

Berikut ini penjelasan singkat dari pembagian kategori tersebut.

1. Structure diagrams yaitu kumpulan diagram yang digunakan untuk

menggambarkan suatu struktur statis dari sistem yang dimodelkan.

2. Behavior diagrams yaitu kumpulan diagram yang digunakan untuk

menggambarkan kelakuan sistem atau rangkain perubahan yang terjadi

pada sebuah sistem.

3. Interaction diagrams yaitu kumpulan diagram yang digunakan untuk

menggambarkan interaksi sistem dengan sistem lain maupun interaksi

(39)

2.6.1 Diagram Kelas (Class Diagram)

Diagram kelas menggambarkan struktur sistem dari segi pendefinisian

kelas-kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang

disebut atribut dan metode atau operasi.

1. Atribut merupakan variabel-variabel yang dimiliki oleh suatu kelas.

2. Operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas.

Diagram kelas dibuat agar pembuat program atau programmer membuat

kelas-kelas sesuai rancangan di dalam diagram kelas-kelas agar antara dokumentasi

perancangan dan perangkat lunak sinkron. Berikut adalah contoh dari diagram

kelas.

2.6.2 Diagram Use Case

Diagram use case merupakan pemodelan untuk kelakuan (behaviour)

sistem informasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi

antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Secara

kasar, use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam

sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi

itu. Syarat penamaan pada use case adalah nama didefinisikan sesimpel mungkin

dan dapat dipahami. Ada dua hal utama pada use case yaitu pendefinisian apa

yang disebut aktor dan use case.

1. Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan

(40)

dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang,

tapi aktor belum tentu merupakan orang.

2. Use case merupakan fungsionalitas yang disediakan sistem sebagai

unit-unit yang saling bertukar pesan antar unit-unit atau aktor.

Gambar 2.11 Contoh Use Case Diagram [7]

2.6.3 Diagram Aktivitas (Activity Diagram)

Diagram aktivitas menggambarkan workflow (aliran kerja) atau aktivitas

dari sebuah sistem atau proses bisnis atau menu yang ada pada perangkat lunak.

Yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan

aktivitas sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat

dilakukan oleh sistem. Diagram aktivitas juga banyak digunakan untuk

mendefinisikan hal-hal berikut:

1. Rancangan proses bisnis dimana setiap urutan aktivitas yang digambarkan

merupakan proses bisnis sistem yang didefinisikan.

2. Urutan atau pengelompokkan tampilan dari sistem/user interface dimana

setiap aktivitas dianggap memiliki sebuah rancangan antarmuka tampilan.

3. Rancangan pengujian dimana setiap aktivitas dianggap memerlukan

(41)

4. Rancangan menu yang ditampilkan pada perangkat lunak.

Gambar 2.12 Contoh Activity Diagram [7]

2.6.4 Diagram State Machine

State machine diagram atau statechart diagram atau dalam bahasa

Indonesia disebut diagram mesin status atau sering juga disebut diagram status

digunakan untuk menggambarkan perubahan status atau transisi status dari sebuah

mesin atau sistem atau objek. Jika diagram sekuen digunakan untuk interaksi antar

objek maka diagram status digunakan untuk interaksi di dalam sebuah objek.

(42)

Gambar 2.13 Contoh Statechart Diagram [7]

2.6.5 Diagram Sekuen (Sequence Diagram)

Diagram sekuen menggambarkan kelakuan pada objek use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima

antar objek. Oleh karena itu untuk menggambar diagram sekuen maka harus

diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode

yang dimiliki kelas yang diinstansiasi menjadi objek itu. Membuat diagram

sekuen juga dibutuhkan untuk melihat skenario yang ada pada use case.

Banyaknya diagram sekuen yang harus digambar adalah minimal sebanyak

pendefinisian use case yang memiliki proses sendiri atau yang penting semua use

case yang telah didefinisikan interaksi jalannya pesan sudah dicakup pada

diagram sekuen sehingga semakin banyak use case yang didefinisikan maka

(43)

Pet ugas Pert ukaan m : Main an : Ant armuka v : Validasi k : KoneksiBasisDat a p : Pet ugas

1 : main()

2 : f ormLogin()

3 : username dan password

4 : login()

5 < < creat e> >

6 < < creat e> > 7 : open()

8 : queryCekLogin()

9 : execut e() 10 : get Result ()

11 : username dan password pet ugas 12 : close()

13 < < dest roy> > 14 < < dest roy> >

(44)
(45)

BAB III

ANALISIS DAN KEBUTUHAN ALGORITMA

3.1 Analisis Sistem

Analisis sistem merupakan proses penguraian konsep ke dalam

bagian-bagian yang lebih sederhana. Pada analisis sistem akan mencakup berbagai

macam analisis yang berhubungan dengan game yang akan dibangun seperti

analisis masalah, gameplay, analisis kecerdasan buatan yang dipakai, analisis

kebutuhan fungsional dan non-fungsional.

3.1.1 Analisis Masalah

Game Cigarette Killer memakai algoritma greedy yang diterapkan pada

NPC orang yang merokok untuk mematikan rokok dengan menggunakan senjata

air. Sedangkan pada game simulasi bahaya merokok untuk dapat berhenti

merokok harus melakukan aktivitas agar dapat menghasilkan keputusan merokok

dan tidak merokok.

3.1.2 Analisis Game

Game simulasi bahaya merokok adalah game simulasiyang menggunakan

grafik 2 dimensi. Misi utama dan gameplay dari game ini adalah karakter utama

yang ingin berhenti merokok. Karakter utama dapat melakukan kegiatan

sehari-hari agar menghilangkan rasa ingin merokok.

Game simulasi bahaya merokok mengimplementasikan algoritma logika

fuzzy untuk memberikan keputusan perilaku atau tingkah laku merokok dan tidak

merokok pada karakter utama.

3.1.3 Gameplay Game Simulasi Bahaya Merokok

Dari game simulasi bahaya merokok yaitu pemain bertugas memberikan

keputusan dalam kegiatan karakter sehari-hari yaitu setiap pemain harus

melakukan kegiatan kegiatan yang dapat mengurangi tingkat bosan dan stress.

Sebelum jam 9 pagi pemain harus sudah berada di kantor apabila terlambat maka

(46)

akan dikenakan finalti dengan nilai stress + 50. Setiap selesai bekerja waktu akan

di percepat ke jam 16.00 sehingga nilai bosan dan stress akan bertambah +20

sehingga pemain harus dapat mengurangi tingkat bosan dan stress. Pemain juga

harus dapat memperhatikan waktu tidur, waktu yang ideal adalah pukul 21.00 jika

melewati atau kurang maka akan terkena finalti bosan dan stress akan bertambah

+20.

3.2 Analisis Masukan

Analisis masukan yang dilakukan dalam penelitian ini adalah menganalisis

variabel dalam algoritma logika fuzzy pada game simulasi bahaya merokok,

variabel tersebut antara lain bosan, stress dan lingkungan.

1. Variabel bosan

Variabel ini terdapat pada karakter utama untuk menunjukan tingkat

bosan. Nilai bosan pertama kali dimulai dari nilai 30. Untuk setiap 5 detik

didalam game, nilai bosan akan bertambah +2, nilai ini juga akan

bertambah setiap kali pemain melakukan perpindhan seperti pada saat

keluar rumah akan bertambah +5, pergi ke kantor +5, dan pergi ke taman

+5. Untuk kegiatan bekerja parameter akan bertambah +20. Ketika

karakter utama menonton televisi, maka variabel bosan akan turun – 8,

ketika karakter utama bermain gitar, variabel bosan akan turun – 5, ketika

karakter utama minum/makan, variabel bosan turun kembli – 5, ketika

karakter utama membaca buku, parameter bosan turun – 15, pada saat

karakter utama bekerja, variabel bosan naik +15, dan ketika karakter

utama duduk di taman, variabel bosan akan turun – 30. Adapun proses

fuzzy dihasilkan dari proses permainan yang di lakukan secara realtime.

Dengan range nilai variabel bosan diantara 0 – 100 dengan penjelasan

sebagai berikut:

a. Rendah: memiliki nilai 0 – 40.

b. Cukup : memiliki nilai 30 - 70.

(47)

Pada range nilai yang sudah di jelaskan di atas, maka akan membentuk hasil

fungsi keanggotaan yang terdapat pada gambar 3.1.

Gambar 3.1 Fungsi keanggotaan variable Bosan

Fungsi Keanggotaan pada grafik derajat keanggotaan Bosan

a. Bosan dengan nilai 30 termasuk dalam himpunan Rendah dengan

µRendah[30] =1.

b. Bosan dengan nilai 35 termasuk dalam himpunan Rendah dan Cukup

dengan µRendah[35] dan µCukup[35] dihitung dengan rumus persamaan

(2.5).

c. Bosan dengan nilai 40 termasuk dalam himpunan Cukup dengan

µCukup[40] =1.

d. Bosan dengan nilai 60 termasuk dalam himpunan Cukup dengan

µCukup[60] =1.

e. Bosan dengan nilai 70 termasuk dalam himpunan Tinggi dengan

µTinggi[70] =1.

f. Bosan dengan nilai 100 termasuk dalam himpunan Tinggi dengan

(48)

2. Variabel stress

Variabel ini terdapat pada karakter utama untuk menunjukan tingkat stress.

Nilai stress pertama kali dimulai dari nilai 30. Untuk setiap 5 detik

didalam game, nilai akan bertambah +2, nilai ini juga bertambah setiap

kali pemain melakukan perpindahan seperti pada saat keluar rumah akan

bertambah +5, pergi ke kantor +5, dan pergi ke taman +5. Untuk kegiatan

bekerja parameter akan bertambah +20. Ketika karakter utama menonton

televisi, maka variabel stress akan turun – 8, ketika karakter utama

bermain gitar, variabel stress akan turun – 5, ketika karakter utama

minum/makan, variabel stress turun kembli – 5, ketika karakter utama

membaca buku, parameter stress turun – 15, pada saat karakter utama

bekerja, variabel stress naik +25, dan ketika karakter utama duduk di

taman, variabel bosan akan turun – 30. Adapun proses fuzzy dihasilkan

dari proses permainan yang di lakukan secara realtime.

Dengan range nilai variabel stress diantara 0 – 100 dengan penjelasan

sebagai berikut:

a. Rendah : memiliki nilai 0 – 40.

b. Cukup : memiliki nilai 30 - 70.

c. Tinggi : memiliki nilai 60 – 100.

Pada range nilai yang sudah di jelaskan di atas, maka akan membentuk

(49)

Gambar 3.2 Fungsi keanggotaan variable Stress

Fungsi Keanggotaan pada grafik derajat keanggotaan Stress

a. Stress dengan nilai 30 termasuk dalam himpunan Rendah dengan

µRendah[30] =1.

b. Stress dengan nilai 35 termasuk dalam himpunan Rendah dan Cukup

dengan µRendah[35] dan µCukup[35] dihitung dengan rumus persamaan

(2.5).

c. Stress dengan nilai 40 termasuk dalam himpunan Cukup dengan

µCukup[40] =1.

d. Stress dengan nilai 60 termasuk dalam himpunan Cukup dengan

µCukup[60] =1.

e. Stress dengan nilai 70 termasuk dalam himpunan Tinggi dengan

µTinggi[70] =1.

f. Stress dengan nilai 100 termasuk dalam himpunan Tinggi dengan

(50)

3. Variabel lingkungan

Parameter ini terdapat pada karakter utama untuk menahan agar tidak

merokok pada lingkungan sekitar.

Nilai lingkungan pertama kali mulai dengan nilai 0

Ketika karakter pemuda berada diluar rumah atau di lingkungan bebas,

variabel lingkungan akan naik +5. Adapun proses fuzzy dihasilkan dari

proses permainan yang di lakukan secara realtime.

Dengan range nilai variabel bosan diantara 0 – 100 dengan penjelasan

sebagai berikut:

a. Non Perokok: memiliki nilai 0 – 55.

b. Perokok : memiliki nilai 45 - 100.

Pada range nilai yang sudah di jelaskan di atas, maka akan membentuk

hasil fungsi keanggotaan yang terdapat pada gambar 3.3.

0.8

Gambar 3.3 Fungsi keanggotaan variable Lingkungan

(51)

a. Lingkungan dengan nilai 45 termasuk dalam himpunan Non Perokok

dengan µNon Perokok[45] =1.

b. Lingkungan dengan nilai 50 termasuk dalam himpunan Non Perokok dan

Perokok dengan µLingkungan[50] dan µPerokok[50] dihitung dengan

rumus persamaan (2.5).

c. Lingkungan dengan nilai 60 termasuk dalam himpunan Perokok dengan

µLingkungan[60] =1.

d. Lingkungan dengan nilai 100 termasuk dalam himpunan Perokok dengan

µPerokok[100] =1.

3.3 Analisis Algoritma logika fuzzy

Analisis algoritma yang dilakukan dalam penelitian ini adalah meneliti

bagaimana cara kerja algoritma logika fuzzy pada karakter utama di dalam game

simulasi bahaya merokok. Algoritma logika fuzzy ini memiliki 3 variabel yaitu

variabel stress, bosan dan lingkungan. Serta algoritma logika fuzzy memiliki 4

tahapan proses yaitu fuzzifikasi, pembentukan rule, mesin inferensi dan

defuzzifikasi. Berikut adalah ilustrasi logika fuzzy yang di peroleh dari 3 variabel

masukan dapat di lihat pada tabel input dan output algoritma logika fuzzy.

Tabel 3.1 Input dan Output Algoritma Logika Fuzzy

NO Bosan Stress Lingkungan Perilaku

13 Tinggi Rendah Non Perokok Tidak Merokok

(52)

15 Tinggi Cukup Non Perokok Merokok

16 Tinggi Cukup Perokok Merokok

17 Tinggi Tinggi Non Perokok Merokok

18 Tinggi Tinggi Perokok Merokok

Pada tabel input dan output digunakan untuk menentukan keputusan yang

dilakukan oleh karakter utama. Berikut penjelasan dari masing – masing input dan

output tersebut adalah:

Rule logika fuzzy pada game simulasi bahaya merokok.

(53)

12.IF bosan is cukup AND stress is tinggi AND lingkungan is perokok then merokok.

13.IF bosan is tinggi AND stress is rendah AND lingkungan is non perokok then tidak merokok.

14.IF bosan is tinggi AND stress is rendah AND lingkungan is perokok then merokok.

18.IF bosan is tinggi AND stress is tinggi AND lingkungan is perokok then merokok.

A. Tahapan Fuzzifikasi

Variabel bosan terdiri dari 3 himpunan fuzzy yaitu Rendah, Cukup, Tinggi.

1. Variabel bosan

Penjelasan variabel bosan terdapat pada karakter utama dalam

melakukan aktivitas. Diamana untuk mulai melakukan aktivitas, nilai

variabel bosan adalah 30.

Contoh kasus:

Misalkan didapatkan nilai bosan adalah 35, maka nilai 35 akan di

konversi kedalam nilai fuzzy, dimana nilai bosan 35 berada pada nilai

linguistik rendah dan cukup kemudian dihitung menggunakan rumus

(54)

Fungsi Keanggotaan :

(3.1)

(3.2)

(3.3)

(55)

Gambar 3.4 Contoh kasus Fungsi keanggotaan variable Bosan

Variabel stress terdiri dari 3 himpunan fuzzy yaitu Rendah, Cukup, Tinggi.

2. Variabel stress

Penjelasan variabel stress terdapat pada karakter utama dalam

melakukan aktivitas. Diamana untuk mulai melakukan aktivitas, nilai

variabel stress adalah 45.

Contoh kasus:

Misalkan didapatkan nilai stress adalah 45, maka nilai 45 akan di

konversi kedalam nilai fuzzy, dimana nilai stress 45 berada pada nilai

linguistik cukup kemudian dihitung menggunakan rumus fungsi

(56)

(3.5)

(3.6)

Derajat keanggotaan untuk Stress 45 adalah :

Gambar 3.5 Contoh kasus Fungsi keanggotaan variable Stress

Lingkungan terdiri dari 2 himpunan fuzzy yaitu Non Perokok dan

Perokok. 0.8

0,6

0.4

0.2

0

10 20 30 40 50 60 70 80 90 100

1

Rendah Cukup Tinggi

0,5

(57)

3. Variabel lingkungan

Penjelasan variabel lingkungan terdapat pada karakter utama pada

saat berada di lingkungan sekitar. Diamana untuk mulai melakukan

aktivitas, nilai variabel lingkungan adalah 50.

Contoh kasus:

Misalkan didapatkan nilai lingkungan adalah 50, maka nilai 50

akan di konversi kedalam nilai fuzzy, dimana nilai lingkungan 50 berada

pada nilai linguistik non perokok dan perokok kemudian dihitung

menggunakan rumus fungsi trapesium:

Fungsi Keanggotaan :

(3.4)

(3.5)

(58)

0.8

Gambar 3.6 Contoh kasus Fungsi keanggotaan variable Lingkungan

B. Tahap Pembentukan Rule

Dalam Hal ini, rule-rule dibentuk sesuai dengan yang memenuhi kondisi

Soal.

Tabel 3.2 Tahap Pembentukan Rule

NO IF Bosan AND Stress AND Lingkungan THEN Perilaku

1 IF Rendah AND Cukup AND

Non

Perokok THEN Tidak Merokok

2 IF Rendah AND Cukup AND Perokok THEN Tidak Merokok

3 IF Cukup AND Cukup AND

Non

Perokok THEN Tidak Merokok

4 IF Cukup AND Cukup AND Perokok THEN Merokok

C. Mesin Inferensi

[R1] IF Bosan Rendah and Stress Cukup and Lingkungan Non

Perokok then Perilaku Tidak Merokok α-pred1=µRendah ∩ Rendah ∩ Non Perokok

= MIN(µRendah [35]; µRendah[45]; µNonPerokok[50] )

= MIN ( 0.5 ; 1 ; 0,5)

(59)

[R2] IF Bosan Rendah and Stress Cukup and Lingkungan Perokok

then Perilaku Tidak Merokok

α-pred1=µRendah ∩ Rendah ∩ Perokok

= MIN(µRendah [35]; µRendah[45]; µPerokok[50] )

= MIN ( 0.5 ; 1; 0.5)

= 0,5

[R3] IF Bosan Cukup and Stress Cukup and Lingkungan Non

Perokok then Perilaku Tidak Merokok α-pred1=µRendah ∩ Cukup ∩ Non Perokok

= MIN(µRendah [35]; µCukup[45]; µNonPerokok[50] )

= MIN ( 0.5 ; 1 ; 0.5)

= 0.5

[R4] IF Bosan Cukup and Stress Cukup and Lingkungan Perokok

then Perilaku Merokok

α-pred1=µCukup ∩ Cukup ∩ Perokok

= MIN(µCukup [35]; µCukup[45]; µPerokok[50] )

= MIN ( 0.5 ; 1 ; 0.5)

= 0.5

D. Defuzzifikasi

= Nilai minimal dari derajat keanggotaan

= Nilai domain pada variabel linguistik

= Nilai defuzzifikasi

(60)

Kesimpulan

Nilai yang didapat dari proses defuzzyfication tersebut selanjutnya

digunakan untuk penentuan keputusan dengan aturan sebagai berikut :

1. Tidak Merokok 0 – 50

2. Merokok 51 – 100

Maka hasil nilai dari hasil = 75 adalah merokok

3.4 Analisis Kebutuhan Non Fungsional

Analisis non-fungsional merupakan analisis yang dibutuhkan untuk

menentukan spesifikasi kebutuhan sistem. Spesifikasi ini juga meliputi elemen

atau komponen-komponen apa saja yang dibutuhkan untuk sistem yang akan

dibangun sampai dengan sistem tersebut diimplementasikan. Analisis kebutuhan

ini juga menentukan spesifikasi masukan yang diperlukan sistem, keluaran yang

akan dihasilkan sistem dan proses yang dibutuhkan untuk mengolah masukan

sehingga menghasilkan suatu keluaran yang diinginkan. Pada analisis kebutuhan

sistem non fungsional ini dijelaskan analisis kebutuhan perangkat lunak, analisis

kebutuhan perangkat keras, dan analisis pengguna.

3.4.1 Analisis Kebutuhan Perangkat Lunak

Perangkat lunak yang dibutuhkan untuk implementasi algoritma pada

Game Edukasi Bahaya Merokokini adalah :

1. Sistem Operasi Microsoft Windows 8.

2. Unity version 4.3.4.

3. Adobe Photoshop CS3.

3.4.2 Analisis Kebutuhan Perangkat Keras

Komputer terdiri dari perangkat keras dan perangkat lunak yang saling

(61)

keras untuk melakukan suatu tugas tertentu, sehingga dapat menjalankan suatu

sistem di dalamnya.

Perangkat keras minimum bagi pengguna untuk dapat memainkan game

Edukasi Bahaya Merokok ini dengan baik adalah sebagai berikut :

1. Processor Pentium IV 1,50 Ghz

2. RAM 256 MB

3. VGA 128 MB

4. Harddisk kosong tersedia 50 MB

3.4.3 Analisis Pengguna

Setelah melakukan analisis target user dalam menggunakan game adalah

sebagai berikut :

1. Pengetahuan dan Pengalaman Pengguna

a. Computer Literacy : Memiliki pengalaman dalam mengoperasikan

sebuah komputer

b. System Experience : Memiliki pengetahuan berinteraksi dengan

komputer

c. Aplication Experience : Pernah memainkan game sejenis sebelumnya

d. Skills : Sudah bisa membaca

e. Taks Ekperience : Mengetahui cara menggunakan komputer

f. Native Language or Culture : Bahasa Indonesia

2. Karakteristik Psikologi Pengguna

a. Motivation : Mempunyai motivasi yang cukup dalam menyelesaikan

permainan

b. Pattience : Mempunyai kesabaran dalam menyelesaikan permainan

c. Stress Level : Tidak gampang stress

(62)

3.5 Analisis Kebutuhan Fungsional

Analisis kebutuhan fungsional menggambarkan proses kegiatan yang akan

diterapkan dalam sebuah sistem dan menjelaskan kebutuhan yang diperlukan

sistem agar sistem dapat berjalan dengan baik sesuai kebutuhan.

3.6 Use Case Diagram

Use Case atau diagram use case merupakan pemodelan untuk kelakuan

(behavior) sistem informasi yang akan dibuat. Use Case mendeskripsikan sebuah

interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat

[7].

Berikut ini adalah perancangan proses-proses yang terdapat pada game

Edukasi Bahaya Merokok, yang digambarkan dengan Use Case Diagram yang

dapat dilihat pada gambar 3.7

Gambar 3.7 Use Case Diagram

Use Case terdiri dari tiga bagian yaitu definisi actor, definisi Use Case dan

skenario Use Case.

3.6.1 Definisi Actor

Definisi Actor berfungsi untuk menjelaskan Actor yang terdapat pada Use

(63)

Tabel 3.3 Definisi Actor

No Actor Deskripsi

1 Pemain Pengguna atau orang yang

memainkan game.

1.1Definisi Use Case

Definisi Use Case berfungsi untuk menjelaskan fungsi Use Case yang

terdapat pada Use Case Diagram. Definisi Use Case diterangkan pada Tabel 3.2.

Tabel 3.4 Definisi Use Case

No Use Case Deskripsi

1 Memulai Permainan Proses untuk memulai permainan atau Game.

2 Memilih Petunjuk Proses untuk menampilkan petunjuk atau panduan cara bermain.

3 Memilih Aktifitas Proses untuk memilih aktifitas permaianan.

3.6.2 Skenario Use Case

Skenario setiap bagian pada use case menunjukkan proses apa yang

terjadi pada setiap bagian didalam use case tersebut, dimana pengguna

memberikan perintah pada setiap bagian dan respon apa yang diberikan oleh

sistem kepada pengguna setelah pengguna memberikan perintah pada setiap

bagian - bagian use case.

Tabel 3.5 Skenario Use Case Memulai Permaianan Identifikasi

No 1

Nama Memulai permainan

Tujuan Untuk memulai permainan Deskripsi Proses untuk memulai permainan

Aktor Pemain

Skenario Utama

Kondisi Awal Aktor berada di dalam permainan

Aksi Aktor Reaksi Sistem

1. Memulai permainan

2. Menampilkan layar menu utama 3. Memilih menu utama

Gambar

Gambar 4.3 Antarmuka Petunjuk (2)
Gambar 4.4 Antarmuka Petunjuk (3)
Gambar 4.6 Antarmuka interaksi karakter (1)
Gambar 4.9 Antarmuka interaksi karakter (4)
+7

Referensi

Dokumen terkait

NA Berdasarkan pemeriksaan terhadap dokumen LMHHOK periode bulan Agustus-Oktober 2015 dan dokumen legalitas perizinan, Auditee bukan merupakan ekspotir, produk yang

Kota Padang merupakan ibukota Provinsi Sumatera Barat dimana kegiatan ekonomi berpusat di Kota Padang ini.Perubahan struktur atau transformasi ekonomi dari

Penelitian ini bertujuan untuk menguji pengaruh pemberian ekstrak etanol putri malu (Mimosa pudica L.) terhadap jumlah sel makrofag dan neutrofil pada tikus galur

Judul : Perancangan Sistem Informasi Akuntansi Realisasi Anggaran Pada Kantor Badan Pelayanan Perizinan Terpadu (BPPT) Jawa Barat Menggunakan Microsoft Visual Basic

a) Meja bangku harus menggunakan ganjalan kaki padat yang disesuaikan dengan pekerjaan. c) Dibawah meja bangku harus steril dari perkengkapan, bahan-bahan lainnya. Hal

Tingginya gab tersebut disebabkan karena secara rata-rata mahasiswa Jurusan Teknik Sipil dan Elektro memiliki ekspektasi yang cukup tinggi atas pelayanan pendidikan

peneliti berlomba untuk mencari paduan uranium dengan paduan logam lain yang memiliki densitas uranium tinggi, mudah difabrikasi, stabil selama iradiasi, dapat digunakan sebagai

Sebagaimana yang dinyatakan oleh Djamarah (2010) bahwa taraf keberhasilan dinyatakan masih kurang apabila bahan pelajaran yang diajarkan dalam suatu proses belajar