2012-1-00541-Mtif 2 PDF
2012-1-00541-Mtif 2 PDF
LANDASAN TEORI
Istilah problem solving sering digunakan dalam berbagai bidang ilmu dan
memiliki pengertian yang berbeda-beda pula. Tetapi problem solving dalam matematika
memiliki kekhasan tersendiri. Secara garis besar terdapat tiga macam interpretasi istilah
problem solving dalam pembelajaran matematika, yaitu problem solving sebagai tujuan
(as a goal), problem solving sebagai proses (as a process), dan problem solving sebagai
keterampilan dasar (as a basic skill). (Branca, N. A. dalam Krulik, S. & Reys, R. E.,
1980:3-6).
sebagai tujuan pengajaran maka ia tidak tergantung pada soal atau masalah yang
khusus, prosedur, atau metode, dan juga isi matematika. Anggapan yang penting
matematika.
10
Pengertian lain tentang problem solving adalah sebagai sebuah proses yang
dinamis. dalam aspek ini, problem solving dapat diartikan sebagai proses
mengaplikasikan segala pengetahuan yang dimiliki pada situasi yang baru dan
tidak biasa. Dalam interpretasi ini, yang perlu diperhatikan adalah metode,
prosedur, strategi dan heuristik yang digunakan siswa dalam menyelesaikan suatu
masalah. Masalah proses ini sangat penting dalam belajar matematika dan yang
untuk membuat dan menguji beberapa teori tentang pemrosesan informasi atau
proses problem solving telah banyak dilakukan. Dan semua ini memberikan
beberapa prinsip dasar atau petunjuk dalam belajar problem solving dan aplikasi
dalam pengajaran.
problem solving sebagai keterampilan dasar lebih dari sekedar menjawab tentang
pertanyaan: apa itu problem solving? Beberapa yang dikemukakan antara lain
keterampilan matematika, dan lainnya. Satu lagi yang baik secara implisit
suatu tugas tertentu. Algoritma merupakan urutan langkah instruksi yang logis. Setiap
langkah instruksi mengerjakan suatu tindakan aksi. Apabila suatu aksi dilaksanakan,
maka operasi atau sejumlah operasi yang bersesuaian dengan aksi itu dikerjakan oleh
pemroses. Bila data yang digunakan benar, maka algoritma akan selalu berhenti
dengan memberikan hasil yang benar pula. Pembuatan algoritma harus selalu
dikaitkan dengan :
a. kebenaran algoritma, yakni bila program selesai maka hasilnya juga benar
tepat sasaran
cepat waktu
didokumentasikan
12
masalah.
c. Goodman Hedetniemi
baik, yang masing-masin membutuhkan memory dan waktu yang terbatas untuk
Input
Sifat ini berarti algoritma harus memiliki kondisi awal sebelum dilaksanakan.
Output
Definitif
Sifat ini berarti langkah langkah dari algoritma sudah terdefinisi secara jelas.
13
Finit
Sifat ini berarti algoritma melakukan langkah yang terbatas jumlahnya dalam
Efektif
Sifat ini berarti algoritma dapat memberi sebuah solusi sesuai harapan.
General
Dewasa ini Artificial Intelligince (AI) banyak menarik minat dan perhatian dari
masyarakat luas. Menurut Kusumadewi (2003, pl), AI adalah salah satu bagian ilmu
komputer yang membuat agar komputer dapat melakukan pekerjaan seperti dan sebaik
yang dilakukan oleh manusia. Pada awal diciptakannya, komputer hanya dipakai
sebagai alat hitung saja. Namun, seiring perkembangan jaman maka peran komputer
dari belajar. Semakin banyak bekal pengehtahuan yang dimiliki seseorang, maka orang
tersebuat diharapkan dapat lebih mampu dalam menyelesaikan suatu persoalan. Agar
komputer pun dapat bertindah seperti dan sebaik manusia, maka komputer juga harus
diberi bekal pengehtahuan dan mempunyai kemampuan untuk berpikir. Pada AI,
komputer dibekali beberapa metode yang diharapkan agar komputer dapat menjadi
Program AI pertama yang bekerja ditulis pada 1951, yang saat itu
yaitu sebuah program permainan yang ditulis oleh Christopher Strachey dan program
permainan catur yang ditulis oleh Dietrich Prinz. John McCarthy membuat istilah
persoalan ini pada 1956, John McCarthy juga menemukan bahasa pemrograman
Lishp. Sedangkan Alan Turing memperkenalkan "Turing Test" sebagai sebuah cara
Macsyma, program berbasis pengehtahuan yang sukses pertama kali dalam bidang
dalam diagnosa serta terapi medis yang kadang kala disebut sebagai sistem pakar
algoritma pembuatan balik, yang pertaman kali diterangkan oleh Paul John Werbos
pada 1974. Di tahun 1990-an sebuah prestasi besar dalam bidang AI ditandai dengan
15
munculnya Deep Blue, sebuah komputer pemain catur yang mengalahkan Garry
Kasparov dalam pertandingan enam ronde yang terkenal pada tahun 1997.
bagaimana membuat komputer melakukan hal - hal yang pada saat ini dapat
sebagai seorang ahli dalam suatu bidang khusus. Namun sekarang sistem pakar
biasanya hanya digunakan untuk membantu para ahli dalam memecahkan suatu
masalah.
bahasa sehari-hari.
c. Pengenalan Pola
suara, dan sekaligus bias membedakan berbagai macam bentuk sinyal. Contoh
d. Computer Vision
pengolahan citra komputer seakan dapat melihat benda, terkait dengan teori
untuk membangun suatu sistem yang terdiri dari gambar. Contoh yang sering
e. Robotic
f. Automatic Programming
h. Soft Computing
dan kebenaran parsial untuk dapat diselesaikan dengan mudah, kuat, dan biaya
penyelesaiannya murah. Definisi ini pertama kali diungkapkan oleh Prof. Lofti
Zadeh pada tahun 1992. Soft Computing merupakan inovasi baru dalam
membangun sistem cerdas. Sistem cerdas ini merupakan sistem yang memiliki
keahlian seperti manusia pada domain tertentu, mampu beradaptasi dan belajar
SDLC adalah tahapan-tahapan pekerjaan yang dilakukan oleh analis sistem dan
programmer dalam membangun sistem informasi. Ada beberapa model SDLC. Model
yang cukup populer dan banyak digunakan adalah waterfall. Model yang digunakan
pada penulisan skripsi ini adalah dengan model waterfall. Model ini adalah model yang
muncul pertama kali yaitu sekitar tahun 1970 sehingga sering dianggap kuno, tetapi
merupakan model yang paling banyak dipakai didalam Software Engineering (SE).
Model ini melakukan pendekatan secara sistematis dan urut mulai dari level kebutuhan
sistem lalu menuju ke tahap analisis, desain, coding, testing / verification, dan
maintenance. Disebut dengan waterfall karena tahap demi tahap yang dilalui harus
menunggu selesainya tahap sebelumnya dan berjalan berurutan. Sebagai contoh tahap
desain harus menunggu selesainya tahap sebelumnya yaitu tahap requirement. Secara
umum tahapan pada model waterfall dapat dilihat pada gambar 2.1.
Gambar di atas adalah tahapan umum dari waterfall model menurut Roger S.
berurutan bagi pengembangan piranti lunak. Berikut adalah penjelasan dari tahap-tahap
Permodelan ini diawali dengan mencari kebutuhan dari keseluruhan sistem yang
akan diaplikasikan ke dalam bentuk software. Hal ini sangat penting, mengingat
software harus dapat berinteraksi dengan elemen - elemen yang lain seperti
hardware, database, dsb. Tahap ini sering disebut dengan Project Definition.
2. Analisa Kebutuhan
mengetahui sifat dari program yang akan dibuat, maka para software engineer
harus mengerti tentang domain informasi dari software, misalnya fungsi yang
3. Design
tahap sebelumnya. Seperti 2 aktivitas sebelumnya, maka proses ini juga harus
4. Coding
Untuk dapat dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain
tadi harus diubah bentuknya menjadi bentuk yang dapat dimengerti oleh mesin,
yaitu ke dalam bahasa pemrograman melalui proses coding. Tahap ini merupakan
implementasi dari tahap design yang secara teknis nantinya dikerjakan oleh
programmer.
5. Testing / Verification
Semua fungsi - fungsi software harus diujicobakan, agar software bebas dari
error, dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah
didefinisikan sebelumnya.
6. Maintenance
pengembangan, karena software yang dibuat tidak selamanya hanya seperti itu.
Ketika dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan
sebelumnya, atau ada penambahan fitur-fitur yang belum ada pada software
perusahaan seperti ketika ada pergantian sistem operasi, atau perangkat lainnya.
Basis data atau database menurut Connolly (2002,p14) adalah kumpulan data
yang dihubungkan secara bersama-sama, dan gambaran dari data yang dirancang untuk
memenuhi kebutuhan informasi dari suatu organisasi. Berbeda dengan sistem file yang
21
menyimpan data secara terpisah, data pada basis data tersimpan secara terintegrasi. Basis
data bukan menjadi milik dari suatu departemen tetapi sebagai sumber daya perusahaan
Banyak terdapat aplikasi yang mengatur manajemen basis data, diantaranya SQL
dan Micorosft Access. Ada kalanya suatu program aplikasi memerlukan basis data untuk
mendukungnya. Basis data diperlukan jika data yang dimiliki terlalu banyak jumlahnya,
Menurut Shneiderman (2005, p74 75), sebuah sistem berbasis komputer selalu
mempunyai elemen manusia yang terkait di dalamnya. Elemen manusia ini berinteraksi
langsung dengan perangkat keras dan perangkat lunak melalui perantara sebuah
antarmuka (interface).
Penggunaan delapan aturan emas berasal dari prinsip prinsip yang didapatkan
dari pengalaman dan direvisi selama lebih dari 2 dekade. Aturan delapan emas yaitu :
Urutan aksi yang konsisten diperlukan pada situasi yang sama. Konsistensi juga
harus digunakan pada prompt, menu, layar bantu. Warna tampilan, kapitalisasi,
Untuk setiap tindakan yang dilakukan pemakai, diharapkan adanya respon dari
sistem. Untuk tindakan yang sering terjadi dan tidak membutuhkan banyak aksi,
respon yang ada bisa dibuat secara sederhana, sedangkan tindakan yang jarang
Urutan aksi harus disusun ke dalam kelompok awal, tengah, dan akhir. Suatu
umpan balik yang informatif pada akhir pekerjaan sebaiknya dibuat untuk
aksi berikutnya.
Sebisa mungkin dibuat sistem yang tidak akan menghasilkan kesalahan yang
serius jika digunakan oleh pemakai. Jika pemakai membuat kesalahan, sistem
Menjadikan pemakai sebagai pemberi aksi, bukan sebagai orang yang merespon
aksi.
dan harus ada waktu yang cukup untuk mempelajari kode, singkatan, serta urutan
Menurut Whitten (2004, p408) UML adalah suatu konvensi pemodelan yang
digunakan untuk menentukan atau menggambarkan sebuah sistem piranti lunak yang
UML terdiri dari berbagai tipe diagram, antara lain : (Joseph Schmuller, 1999)
Flowchart
adanya flowchart urutan poses kegiatan menjadi lebih jelas. Setelah flowchart
bentuk program dengan bahasa pemrograman. Pada gambar 2.2 dapat dilihat
sistem eksternal dan pangguna. Dengan kata lain, secara grafis mendeskripsikan
siapa yang akan menggunakan sistem dan dalam cara apa pengguna
mengharapkan interaksi dengan sistem itu. Use case adalah sebuah deskripsi dari
25
tingkah laku sebuah sistem yang dilihat dari sudut pandang user. Bagi para
pengembang, ini adalah tool yang sangat berharga : sebuah teknik tried and
true yang dipakai untuk mengumpulkan persyaratan sebuah sistem yang dilihat
dari sudut pandang user. Teknik pengumpulan tersebut penting jika tujuannya
adalah untuk membangun sebuah sistem yang bisa digunakan semua orang
(bukan hanya orang yang terbiasa dengan komputer) seperti pada contoh gambar
2.3.
Sequence Diagram
berinteraksi satu sama lain melalui pesan pada eksekusi sebuah use case atau
objek ada, peranan dari object tersebut digambarkan dengan garis putus putus.
Selama aktivasi prosedur pada sebuah object masih aktif, lifeline digambarkan
dengan garis ganda (double line). Pesan ditunjukkan dengan gambar anak panah
(arrow) dari lifeline suatu object menuju object yang lainnya. Anak panah
waktu. Sebagai contoh terdapat mesin cuci, komponen mesin tersebut meliputi
pipa air (untuk masuknya air bersih), sebuah drum (tempat menampung 18
pakaiannya), dan sebuah saluran (untuk membuang air kotor). Itu semua tentu
saja merupakan object. Apa yang akan terjadi jika kita menyertakan sebuah use
seperti ini:
4. Drum dengan arah kebalikan sebanyak empat kali selama lima belas
menit
27
10. Putaran drum menjadi hanya satu arah dan bertambah cepat selama lima
menit
Sequence diagram dari cara kerja mesin cuci dapat dilihat pada gambar 2.4.
28
dilakukan oleh Yi Lu, Shiyong Lu, dan Farshad Fotouhi di tahun 2004. Mereka
terinspirasi atas Genetik K-Means Algorithm (GKA) diusulkan oleh Krishna dan Murty
29
di tahun 1999. Perbedaan kedua algoritma adalah waktu kecepatan yang dipakai untuk
FGKA dimulai dengan fase inisialisasi, yang menghasilkan populasi awal P0.
berikut berurutan: seleksi, mutasi dan operator K-Means pada Pi populasi saat ini.
mungkin berakhir dengan ilegal string. Pada pengecekan pertama string yang ilegal tidak
diinginkan. Untuk alasan ini dari algoritma GKA dibuat upaya yang signifikan untuk
menghilangkan string ilegal. String ilegal apapun diizinkan di FGKA, tetapi tetap
dianggap sebagai solusi yang paling tidak diinginkan, dan oleh TWCVs mereka
didefinisikan sebagai + dan penugasan untuk mereka dengan nilai fitness yang lebih
rendah. Fleksibilitas ini yang memungkinkan string ilegal dalam proses evolusi
menghindari overhead dari string illegal eliminasi, dan dengan demikian meningkatkan
Ada tiga tahapan utama dalam pencarian gambar ini, yaitu ekstraksi fitur,
histogram dan hasil gabor, baik dari gambar database maupun gambar query. Klastering
Ekstraksi fitur adalah proses pengambilan histogram (warna) serta nilai mean
dan standard deviasi (untuk fitur tekstur), baik dari gambar database maupun gambar
query. Diagram urutan ekstrasi fitur dapat dilihat pada gambar 2.5.
a. Pengambilan nilai RGB tiap pixel yang kemudian langsung dikonversi ke HSV.
b. Kuantisasi warna dari yang semula berjumlah (360 x 255 x 255) atau 23409000
Dengan cara ini, nilai H berkisar antara 0 sampai dengan 3, S berkisar antara 0
c. Normalisasi.
31
icon.
2.8.2 Klastering
klasterisasi terhadap sejumlah HSV histogram yang di combine dengan nilai hasil
Operator Seleksi
percobaan acak independen. Setiap percobaan secara acak memilih solusi dari arus
populasi {S1, S2, ..., Sz} sesuai dengan distribusi probabilitas. Probabilitas {p1,
nilai fitness dari solusi Sz. Dari probabilitas ini, kemudian dilakukan penyeleksian
Dan =
generasi sekarang, Fmin adalah nilai string legal dengan fitness terkecil dalam
populasi saat ini jika mereka ada, jika tidak ada maka dianggap Fmin = 1.
operator mutasi melakukan mutasi pada suatu gen an (n = 1...N) dengan nilai baru
an yang dipilih secara random dari {1, 2, .. ,K) dengan distribusi (p1, p2, ..., pZ)
dimana d (Xn, ck) adalah jarak Euclidean antara pola Xn dengan titik pusat ck dari
ada dikodekan dengan a1 a2 ... aN. Operator ini akan mengganti isi dari gen an (n
= 1...N) dengan nilai baru an., dimana nilai yang baru merupakan klaster dengan
2.8.3 Matching
Setelah proses klastering selesai dilakukan, maka tiap klaster tersebut dihitung
nilai gabungan antara histogram dengan nilai gabor rata-ratanya (untuk dijadikan
centroid). Nilai centroid - centroid ini kemudian dibandingkan dengan HSV histogram
dan nilai gabor gambar query. Centroid yang memiliki jarak paling dekat merupakan
solusinya. Cara yang dipakai untuk mengukur jarak antar dua histogram adalah
Rumusnya: d(A,B) =
2.9 Game
mendapatkan kesenangan dan bahkan digunakan sebagai suatu edukasi. Namun, tidak
semua permainan bertujuan seperti diatas, adapun permainan yang dijadikan suatu
Jenis game yang ada saat ini sangat banyak, diantaranya adalah olahraga,
Personal computer game atau biasa dikenal juga dengan computer game.
Computer game adalah game yang dimainkan secara personal dengan menggunakan
nya. Jenis game yang ada saat ini sangat banyak, dan banyak diantaranya memiliki
kesamaan namum berbeda genre makan jenis game tidak selalu pasti. Berikut ini adalah
a. Action
tangan. Membutuhkan refleks antara mata dan gerakan tangan. Pada awalnya,
game action tidak berfokus pada strategi dan perhitungan dalam aksi, namun
game action saat ini telah mengadopsi cerita dan kebutuhan strategi.
b. Strategi
suatu objek atau banyak objek dibanding respon antara tangan dan mata.
Ketangkasan dalam mengatur taktik dan strategi sebelum aksi langsung sangat
ditekankan dalam permainan ini dan biasanya dimulai dengan resource yang
sedikit.
Mirip dengan strategi game, RPG memilik statistik yang banyak dan
pada game ini. Biasanya, game jenis ini memiliki dunia fantasi yang besar.
36
d. Action RPG
antara RPG dengan Action, dimana ketajaman mata dan refleks tangan serta
manajemen karakter pemain sangat ditekankan. Game jenis ini masih sangat
e. Simulation
dunia nyata. Game ini mengajak user untuk merasakan sebuah aktivitas tertentu
tanpa harus melakukannya pada dunia nyata. Realita menjadi kunci utama pada
f. Sport
realita.
Permainan ini tidak memerlukan kinerja berfikir yang berat. Lebih ditujukan
a. Judul Game
Judul game ini diisi dengan sebuah nama game. Judul game biasaya
dibuat dengan judul yang semenarik mungkin yang bisa mencerminkan game
itu. Judul biasa diperoleh dari nama tempat kejadian di permainan itu, nama
Platform game ini diisi dengan perangkat keras yang akan digunakan
untuk memainkan game tersebut, misalnya : computer, PS2, Nintendo dan lain
lain.
pembuat game tersebut. Nama bisa berasal dari nama tim, nama perusahaan,
d. Informasi Umum
1) Konsep Dasar
3) Objective
mencegah kesalahpahaman.
4) Gameplay
gameplay.
tersebut?
39
1) Karakter
Urutkan dan jelaskan karakter didalam game itu, jika ada. Tuliskan
2) Dunia
3) Kontrol
4) Grafis
Menjelaskan grafik secara umum. Game akan lebih bagus jika ada
visualisasi.
Puzzle adalah suatu masalah dimana dapat membuat orang yang mencoba
mengatasinya, sehingga mereka yang memiliki logika yang baik biasanya baik dengan
Puzzle. Bermain puzzle dapat mengasah otak kanan para pemainnya. Puzzle terdiri atas
Kali ini penulis akan membahas Jigsaw Puzzle sebagai topik yang akan
digunakan untuk skripsi. Jigsaw Puzzle adalah teka-teki yang mengharuskan pemain
untuk memasang kembali potongan potongan gambar sesuai dengan pola gambar
awal. Bila tiap - tiap potongan gambar diletakkan pada posisi yang tepat akan
Permainan Jigsaw Puzzle dapat memberikan kontribusi yang cukup besar untuk
aritmatika dan kemampuan numerik. Permainan puzzle ini tersedia secara online dengan
tema yang menarik seperti peta, tempat - tempat terkenal, hewan, alam dan kendaraan.
Teka teki ini diyakini meningkatkan kemampuan intelektual dari orang biasa.
Sekarang puzzle online telah dibuat menampilkan grafik warna-warni, gambar menarik
dan ikhtisar indah.. Jigsaw Puzzle online populer di kalangan pemain dari segala usia.
Tren baru dari game ini di internet termasuk teknik bermain klasik digunakan 300 tahun
lalu.
Bahasa Visual Basic adalah salah satu diantara sekian banyak bahasa
pemrograman yang cukup banyak digunakan oleh para programmer. Visual Basic adalah
bahasa pemrograman visual dengan dasar pemrograman bahasa Basic. Bahasa BASIC
awal 1950-an. Sementara bahasa Visual Basic, yang merupakan pengembangan bahasa
Visual Basic merupakan salah satu Development Tool yaitu alat bantu yang
dapat digunakan untuk membuat berbagai macam program komputer, khususnya yang
yang diikuti dengan pembuatan kode program tersebut. Berikuti ini merupakan tampilan
dasar - dasarnya dengan lebih baik dan kuat. Beberapa komponen utama dalam bahasa
Project
aplikasi itu sendiri. Didalamnya terdapat form beserta code nya. Project ini
disimpan dalam file berakhiran .vbp. File ini akan menyimpan seluruh komponen
program, termasuk pilihan proyek, pilihan environment, pilihan file EXE dan
Pada jendela proyek terdapat tiga icon, yaitu icon View Code, icon View
Object dan icon Toggle Folder. Icon View Code dipakai untuk menampilkan
jendela editor kode program. Icon View Object dipakai untuk menampilkan
bentuk formulir (form) dan icon Toggle Folders berguna untuk menampilkan
Form
aplikasi. Jadi bisa dikatakan di form inilah kita melakukan aktifitas perancangan
program. Biasanya pada saat mendesain Form, terdapat garis titik-titik yang
disebut grid. Grid sangat berguna untuk membantu pengaturan tata letak objek
yang dimasukkan dalam form, karena gerakan penunjuk mouse akan sesuai
Toolbox
Toolbox adalah kotak alat yang berisi icon-icon untuk memasukkan objek
menambah komponen icon dengan mengklik kanan pada toolbox, lalu memilih
Icon - icon pada toolbox ini seringkali disebut sebagai control. Setiap
kontrol memeiliki properti seperti warna, tulisan yang diletakkan pada control
dan properti lainnya. Control - control diletakkan pada toolbox untuk dipilih dan
Properti
biasanya mempunyai beberapa properti yang dapat diatur langsung dari jendela
Properties atau lewat kode program. Setting properti akan menentukan cara kerja
Kode Program
dilaksanakan jika suatu Objek dijalankan. Kode program ini akan mengontrol
Event
Event adalah peristiwa atau kejadian yang diterima oleh suatu objek,
misalnya klik, seret, tunjuk, dan lain-lain. Event yang diterima objek akan
Metoda (Method)
Metoda adalah suatu set perintah seperti halnya fungsi dan prosedur,
tetapi sudah tersedia di dalam suatu objek. Seperti halnya properti (yang juga
terdapat pada suatu objek), suatu metoda dapat dipanggil dengan menyebut nama