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”

Abstraksi

  Basket 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"

Abstraction

  Basketball 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