Klasifikasi posisi pemain NBA menggunakan algoritma decision tree - USD Repository
KLASIFIKASI POSISI PEMAIN NBA
MENGGUNAKAN ALGORITMA DECISION
TREE
SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Informatika
Oleh:
Hieronymus Dimas Febrianto
065314024
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2010
POSITION CLASSIFICATION NBA PLAYERS
USE THE DECISION TREE ALGORITHM
A Thesis
Presented as Partial Fulfillment of the Requirements To Obtain the Sarjana Teknik Degree
In Department of Informatics Engineering
By:
Hieronymus Dimas Febrianto
065314024
INFORMATICS ENGINEERING STUDY PROGRAM
INFORMATICS ENGINEERING DEPARTMENT
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2010
HALAMAN PERSEMBAHAN
JANGAN MENYESAL MELIHAT MASA LALU JANGAN TAKUT MELIHAT MASA DEPAN TETAPI LIHATLAH SEKELILINGMU DENGAN PENUH KESADARAN
Skripsi ini saya persembahkan untuk: Yesus Kristus
Keluarga, Kekasih, Sahabat dan Temen-Temen Terima Kasih Semua…..
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini
tidak memuat karya orang lain, kecuali yang telah disebutkan dalam
kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.Yogyakarta, 22 September 2010 Penulis
Hieronymus Dimas Febrianto
“Klasifikasi Posisi Pemain NBA Menggunakan
Algoritma Decision Tree”
AbstraksiBasket merupakan olah raga yang terdiri dari dua tim yang masing-masing tim terdiri dari lima orang yang bertanding mencetak poin dengan cara memasukan bola kedalam keranjang lawan. NBA (National Basketball
Association) adalah liga Untuk dapat
memenangkan kompetisi, dibutuhkan strategi dan penempatan posisi dengan tepat agar setiap pemain dapat melakukan tugasnya dengan maksimal.
Untuk mencari posisi yang terbaik dari seorang pemain dapat menggunakan teknik data mining untuk keperluan klasifikasi. Klasifikasi adalah penggolongan data ke dalam kelas tertentu berdasarkan nilai atribut atau
supervised classification. Salah satu metode dari klasifikasi adalah decision tree menggunakan struktur pohon atau struktur berhirarki.
Pada TGA ini, algoritma decision tree yang digunakan adalah C 4.5 dengan mengunakan atribut: point per game, presentase free throw, presentase
field goal, presentase 3 point, assist per game, blok per game, steal per game, turn over per game, personal foul per game, offensive rebound, defensive rebound, total rebound,
berat badan dan tinggi badan. Masing-masing atribut dibagi menjadi 3 kelompok: jelek, sedang dan bagus. Data yang digunakan diambil daripada tanggal 11 September 2009 yang merupakan data musim kompetisi 2008/2009.
Proses pengujian menggunakan teknik 5 cross validation dan akurasi dihitung dengan membandingkan data hasil output program dengan data asli. Hasil pengujian akurasi yaitu 86.3%, 86.3%, 77.5%, 87.8%, 73.8% den menghasilkan rerata 82,2%. Berdasar hasil akurasi, sistem bekerja cukup baik.
"Position Classification NBA Players Use the
Decision Tree Algorithm"
AbstractionBasketball is a sport which consists of two teams, each consisting of five members who played scored points by way of entering the ball into the opponent's basket. NBA (National Basketball Association) is a male basketball league in the United States. To be able to win the competition, needed a strategy and placement of the appropriately so that each player can perform their duties with maximum. To find the best position of a player can use data mining.
To search best position from player can use data mining technique for classification. One method of classification is a decision tree using the tree structure or hierarchy.
In this thesis, the decision tree algorithm used is C 4.5 that have attributes: points per game, free throw percentage, field goal percentage, three percentage points, assists per game, blocks per game, steals per game, turn over per game, personal Foul-per game, offensive rebounds, defensive rebounds, total rebounds, the body weight and height. Each attribute is divided into three groups: poor, moderate and good. Data was taken from www.nba.com at September 11, 2009. The used data is data in season competition 2008/2009.
Testing process using five cross validation technique and accuracy is counted by comparing the output data from the program with the original data. Results of accuracy testing is 86, 3%, 86.3%, 77.5%, 87.8% , 73.8% which give average 82.2%. Based on test result, the system worked pretty well.
HALAMAN PERSETUJUAN
PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma: Nama : Hieronymus Dimas Febrianto No : 065314024
Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul:
Klasifikasi Posisi Pemain NBA
Menggunakan Algoritma Decision Tree
Beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan mempublikasikannya di internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya maupun memberikan royalti kepada saya selama tetap mencantumkan nama saya sebagai penulis.
Demikian pernyataan ini saya buat dengan sebenarnya. Dibuat di Yogyakarta Pada tanggal: 22 September 2010 Yang menyatakan (Hieronymus Dimas Febrianto)
Kata Pengantar
Puji syukur kepada Yesus Kristus yang telah memberikan karunia dan kesempatan sehingga penulis dapat menyelesaikan skripsi dengan judul “Klasifikasi pemain basket NBA dengan menggunakan Decision Tree”.
Terima kasih sebesar-besarnya kepda semua pihak yang turut memberikan dukungan, semangat dan bantuan sehingga selesainya skripsi ini:
1. Tuhan Yesus Kristus yang telah memberikan semuanya sehingga penulis bisa menyelesaikan tugas akhir ini.
2. Bapak Puspaningtyas Sanjoyo Adi S.T., M.T. selaku dosen pembimbing atas kesabaran, bimbingan, waktu dan saran yang diberikan.
3. Laboran komputer atas bantuan kepada penulis ketika melakukan ujian akhir.
4. Kedua orang tua, papa Sri Sumanto, S.E., M.M. dan mama Wiwing Mardewi, S. Sos, M.Sos yang telah memberikan semangat, perhatian dan doa sehingga penulis dapat menyelesaikan tugas akhir ini.
5. Semua saudara, kakak Pricila Prima Devinta, S.Psi dan mas Untoro Adi, S.S., M.S yang telah memberikan semangat, perhatian dan doa sehingga penulis dapat menyelesaikan tugas akhir ini.
6. Kekasihku tercinta, Agatha Widyastuti, atas semangat, perhatian, dan motivasinya.
7. Sahabat dan teman-teman, A. Cahyo Ridho dan Andreas Hermawan
8. Semua pihak yang berperan baik secara langsung maupun tidak langsung sehingga penulis dapat menyelesaikan tugas akhir ini Penulis menyadari bahwa masih banyak kekurangan yang terdapat pada laporan tugas akhir ini. Saran dan kritik saya harapkan untuk perbaikan-perbaikan pada masa yang akan datang. Semoga bermanfaat.
Yogyakarta, 22 September 2010 Penulis
(Hieronymus Dimas Febrianto)
DAFTAR ISI
Bab Judul Halaman
Halaman i Judul……………………………………………………………... ii Halaman Judul……………………………………………………………... iii
Halaman Persetujuaan……………………………………………………… iv Halaman Pengesahan……………………………………………………..... v Halaman Persembahan……………………………………………………... Pernyataan Keaslian vi
Karya………………………………………………… vii Abstraksi…………………………………………………………………… viii Abstract…………………………………………………………………….. ix Halaman Persetujuan Publikasi……………………………………………. x Kata Pengantar……………………………………………………………... xii Dafar Isi……………………………………………………………………. xvi Daftar Gambar……………………………………………………………... xix Daftar Tabel………………………………………………………………...
1
1 Pendahuluan………………………………………………………………...
1.1
1 Latar Belakang Masalah…………………………………………………...
1.2
2 Rumusan Masalah…………………………………………………………..
1.3 Batasan
2 Masalah……………………………………………………………
1.4
3 Tujuan ……………………………………………………………………...
1.5
3 Metodologi………………………………………………………………….
1.6
4 Sistematika Penulisan………………………………………………………
2
5 Landasan Teori……………………………………………………………..
2.1
5 Basket……………………………………………………………………….
2.2
8 Klasifikasi…………………………………………………………………..
2.3
9 Metode Decision Tree………………………………………………………
2.3.1
9 Pengertian Decision Tree…………………………………………………...
2.3.2
10 Konsep Decision Tree………………………………………………………
2.3.3 Jenis-jenis Decision Tree…………………………………………………...
4.1 Implementasi……………………………………………………………….
36
3.5.1 Atribut dan Method…………………………………………………………
36
3.5.2 Rancangan Interface.……………………………………………………….
37
3.6 Metode Evaluasi Tree………………………………………………………
37
3.7 Metode Evaluasi 5 Cross Validation……………………………………….
38
4 Implementasi dan Analisa Sistem………………………………………….
40
40
36
4.1.1 Implementasi Data...………………………………………………………..
40
4.1.2 Implementasi File…………………………………………………………..
40
4.1.3 Implementasi Antar Muka………………………………………………….
41
4.2 Pengujian Hasil Tree………………………………………………………..
41
4.2.1 Pengelompokan Data……………………………………………………….
41
4.2.2 Hasil Tree dari Perhitungan Manual………………………………………..
3.5 Model Desain……………………………………………………………….
3.4.2 Diagram Kelas Analisis Keseluruhan………………………………………
10
30
2.3.4 Algoritma C.4.5…………………………………………………………….
11
2.3.5 Contoh Pembuatan Tree dengan Algoritma Decicoin Tree………………...
14
2.4 Model Evaluasi 5 Cross Validation………………………………………...
25
3 Analisa dan Perancangan…………………………………………………...
29
3.1 Analisa Sistem Secara Umum………………………………………………
29
3.1.1 Analisa Preprocessing………………………………………………………
3.2 Analisa Algoritma C.4.5……………………………………………………
36
32
3.3 Use Case……………………………………………………………………
34
3.3.1 Diagram Use Case………………………………………………………….
34
3.3.2 Narasi Use Case…………………………………………………………….
35
3.3.3 Activity Diagram…………………………………………………………...
35
3.4 Model Analisis……………………………………………………………...
36
3.4.1 Realisasi Use Case………………………………………………………….
43
4.2.3 Hasil Tre dari Program……………………………………………………..
3.1 Sequnence Create Tree……….………..…………………………………...
67
2.1 Activity Diagram Create Tree……….………..…………………………….
68
2.2 Activity Diagram Personal Klasifikasi…….….……………………………
69
2.3 Activity Diagram Group Klasifikasi…………..……………………………
70
2.4 Activity Diagram Setting Atribut….…………………….…………………
71
3 Lampiran 3: Model Analisis………………………………………………..
72
73
65
3.2 Sequnence Personal Klasifikasi…….….…………………………………...
74
3.3 Sequnence Group Klasifikasi…………..…………………………………..
76
3.4 Sequnence Setting Atribut….…………………….………………………...
77
4 Lampiran 4: Diagram Kelas Keseluruhan………………………………….
79
4.1 Diagram Kelas Keseluruhan…………….………………………………….
79
5 Lampiran 5: Atribut dan Method…………………………………………...
2 Lampiran 2: Activity Diagram……………………………………………..
1.4 Narasi Use Case Setting Atribut…..…..……………………………………
48
56
4.2.4 Perbandingan Hasil Tree……………………………………………………
53
4.2.5 Analisa Tree………………………………………………………………...
53
4.3 5 Cross Validation………………………………………………………….
54
4.3.1 Penentuan 5 Kelompok Data……………………………………………….
54
4.3.2 Pengujian dan Perhitungan Akurasi………………………………………..
54
5 Kesimpulan dan Saran……………………………………………………...
5.1 Kesimpulan…………………………………………………………………
63
56
5.2 Saran………………………………………………………………………..
57 Daftar Pustaka………………………………………………………………
58
1 Lampiran 1: Narasi Use Case………………………………………………
59
1.1 Narasi Use Case Create Tree……………………………………………….
60
1.2 Narasi Use Case Personal Klasifikasi………………………………………
62
1.3 Narasi Use Case Group Klasifikasi...………………………………………
80
5.1 Player……………………………………………………………………….
6 Lampiran 6: Rancangan Interface…………………………………………..
130
6.3 Halaman Personal Klasifikasi………………………………………………
125
6.4 Halaman Group Klasifiaksi………………………………………………...
126
6.5 Halaman Setting…………………………………………………………….
127
129
7.1 Halaman Home……………………………………………………………..
129
7.2 Halaman Create Tree……………………………………………………….
7.3 Halaman View Tree………………………………………………………...
6.2 Halaman Create Tree……………………………………………………….
134
7.4 Halaman Personal Klasifikasi……………………………………………… 135
7.5 Halaman Group Klasifikasi………………………………………………...
136
7.6 Halaman Settng…………………………………………………………….
139
7.7 Halaman About…………………………………………………………….
140
7.8 Halaman Help……………………………………………………………… 141
8 Lampiran 8: Tabel Keputusan……………………………………………… 142
125
124
81
5.7 Tools………………………………………………………………………..
5.2 PlayerK……………………………………………………………………..
83
5.3 Tree…………………………………………………………………………
86
5.4 enumData…………………………………………………………………..
86
5.5 enumKategori………………………………………………………………
87
5.6 enumPosisi………………………………………………………………….
87
87
6.1 Halaman Home……………………………………………………………..
5.8 HomeForm………………………………………………………………….
94
5.9 Create TreeForm……………………………………………………………
96
5.10 Personal Klasifikasi Form………………………………………………….
106
5.11 Group Klasifikasi Form…………………………………………………….
111
5.12 Setting Form………………………………………………………………..
119
123
7 Lampiran 7: Implementasi Interface……………………………………….
DAFTAR GAMBAR
44
34
3.6 Pengelompokan Data Untuk Proses Evaluasi Tree……………...
37
3.7 Pengelompokan Data Untuk Proses Evaluasi…………………...
38
4.1 Pengelompokan Data Untuk Proses Evaluasi Tree……………...
41
4.2 Tree manual 1……………………………………………………
43
4.3 Tree manual 2……………………………………………………
4.4 Tree manual 3……………………………………………………
33
45
4.5 Tree manual 4……………………………………………………
46
4.6 Tree manual 5……………………………………………………
47
4.7 Tree program 1…………..………………………………………
48
4.8 Tree program 2……………..……………………………………
49
4.9 Tree program 3…………………………………………………..
3.5 Use Case ………………………………………………………...
3.3 Algoritma Decision Tree C 4.5 ………………………………….
Gambar Keterangan Halaman
26
2.1 Konsep Decision Tree …………………………………………...
10
2.2 Tree Node 1……………………………………………………...
19 2.3 Tree Node 2……………………………………………………...
22
2.4 Tree Node 3……………………………………………………...
24
2.5 Pembagian data statistic pemain ke dalam 5 kelompok data ……
25
2.6 Metode Evaluasi 5 Cross Validation pengujian 1……………….
2.7 Metode Evaluasi 5 Cross Validation pengujian 2……………….
30
26
2.8 Metode Evaluasi 5 Cross Validation pengujian 3……………….
27
2.9 Metode Evaluasi 5 Cross Validation pengujian 4……………….
27
2.10 Metode Evaluasi 5 Cross Validation pengujian 5……………….
28
3.1 Alur sistem klasifikasi pemain secara umum……………………
29
3.2 Alur pre- processing……………………………………………...
50
4.10 Tree program 4…………………………………………………..
7.6 Pemberitahuan file telah selesai di-preprocessing ………………
6.4 Design Interface Setting………………………………………… 128
7.1 Halaman Home………………………………………………….
131
7.2 Halaman Create Tree (sebelum data diinputkan) ……………….
131
7.3 Kotak file selector untuk mengambil data ………………………
132
7.4 Pemberitahuan file sudah diinputkan ……………………………
132
7.5 Halaman Create Tree (setelah data diinputkan) …………………
133
133
6.3 Design Interface Personal Klasifikasi…………………………...
7.7 Halaman Create Tree (setelah dilakukan preprocessing) ………..
134
7.8 Pemberitahuan Tree sudah terbentuk ……………………………
134
7.9 Halaman View Tree ……………………………………………..
135
7.10 Halaman Personal Klasifikasi …………………………………...
136
7.11 Halaman Group Klasifikasi Gambar …………………………….
137
7.12 File selector untuk memilih file yang akan diklasifikasi ………..
127
126
51
72
4.11 Tree program 5…………………………………………………..
52
4.12 Pengelompokan Data Untuk Proses Evaluasi…………………...
54
2.1 Diagram Activity Create Tree…………………………………...
69
2.2 Diagram Activity Personal Klasifikasi…………………………..
70
2.3 Diagram Activity Group Klasifikasi…………………………….
71
2.4 Diagram Activity Setting………………………………………..
3.1 Sequence Create Tree……………………………………………
6.2 Design Interface Group Klasifikasi……………………………...
75
3.2 Sequence Personal Klasifikasi…………………………………..
76
3.3 Sequence Group Klasifikasi……………………………………..
78
3.4 Sequence Setting………………………………………………...
79
4.1 Diagram Kelas Keseluruhan…………………………………….
80
6.1 Design Interface Home………………………………………….
125
137
7.13 Pemberitahuan File telah diinputkan …………………………….
138
7.14 Halaman Group Klasifikasi ( Setelah file diinputkan) …………..
138
7.15 Pemberitahuan file telah diinputkan ……………………………..
138
7.16 Halaman Group Klasifikasi ( Setelah proses Klasifikasi) ……….
139
7.17 Pemberitahuan telah dilakukan preses Klasifikasi ………………
139
7.18 Halaman Setting …………………………………………………
140
7.19 Halaman About ………………………………………………….
141
7.20 Halaman Help ……………………………………………………
142
DAFTAR TABEL
5.1 Implementasi File…………………………………………
3.4 Kelas Analisis Setting……………………………………...
77
3.3 Kelas Analisis Group Klasifikasi…………………………..
76
3.2 Kelas Analisis Personal Klasifikasi………………………..
74
3.1 Kelas Analisis Create Tree………………………………...
55 Lampiran :
5.3 Akurasi Program…………………………………………...
53
5.2 Perbandingan Tree ………………………………………...
41
35
Tabel Keterangan Halaman
3.2 Tabel Use Case ……………………………………………
30
3.1 Pengelompokan Data Statistik Pemain…………………….
23
2.5 Data Pengelompokan Statistik Pemain node 3…………….
20
2.4 Data Pengelompokan Statistik Pemain Node 2……………
16
2.3 Data Pengelompokan Statistik Pemain Node 1……………
15
2.2 Data Preprocessing Statistik Pemain………………………
13
2.1 Data Asli Statistik Pemain………………………………..
78 L8 Tabel Keputusan…………………………………………... 143
BAB I PENDAHULUAN ATAR ELAKANG ASALAH
1.1 B M L
Bola basket adalahbola berkelompok yang terdiri atas dua tim beranggotakan masing-masing lima orang yang saling bertanding mencetak poin dengan memasukkake dalam keranjang lawan. Sekarang hampir di setiap negara telah mempunyai team basket dan liga basket, seperti NBA (national
basketball association) . NBA adalah liga
Untuk memenangkan kompetisi, meraih banyak kemenangan merupakan syarat penting. Tetapi dalam pertandingan bola basket banyak faktor yang menentukan menang kalah suatu team, baik dari segi strategi maupun penempatan posisi pemain. Tetapi tidak semua pelatih mampu menempatan posisi pemainnya dengan tepat sehingga pemain tidak dapat melakukan tugasnya dengan maksimal.
Data mining adalah teknik untuk menambang (mining) pengetahuan dari
sekumpulan data yang sangat besar. Data mining diterapkan untuk menarik pengetahuan yang tersembunyi. Teknik data mining terdiri dari: asosiasi, klastering dan klasifikasi. Asosiasi digunakan untuk mengenali kelakuan dari kejadian-kejadian khusus atau proses dimana link asosiasi muncul pada setiap kejadian. Klastering adalah memaksimalkan kesamaan antar anggota satu kelas dan meminimumkan kesamaan antar cluster. Klasifikasi adalah menggolongkan data ke dalam kelas tertentu berdasarkan nilai atribut atau supervised