• Tidak ada hasil yang ditemukan

BAB III METODE PEMBANGUNAN SOCIAL NETWORK

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB III METODE PEMBANGUNAN SOCIAL NETWORK"

Copied!
19
0
0

Teks penuh

(1)

III-1

BAB III

METODE PEMBANGUNAN SOCIAL NETWORK

Pada bab tiga ini dibahas mengenai pembangunan social network dari dokumen web. Pembahasan meliputi analisis teknik SNE, algoritma lintasan terpendek, dan contoh perhitungan SNA. Analisis teknik SNE berisi pembahasan mengenai berbagai teknik yang digunakan untuk menentukan keterhubungan antara sepasang individu dan berbagai teknik text classification yang digunakan untuk menentukan jenis relasi yang terjadi antara sepasang individu tersebut. Algoritma lintasan terpendek berisi pembahasan mengenai algoritma untuk menentukan lintasan terpendek antara seorang individu ke semua individu yang lain dalam social network. Algoritma lintasan terpendek ini nantinya akan digunakan untuk melakukan SNA. Yang terakhir, contoh perhitungan SNA berisi pembahasan mengenai penggunaan rumus dan algoritma lintasan terpendek untuk melakukan perhitungan-perhitungan yang terdapat pada SNA. Pembahasan pada bab tiga dimaksudkan untuk menyelesaikan masalah-masalah yang terdapat pada bagian Rumusan Masalah.

3.1 Analisis Teknik SNE

Pembahasan teknik SNE akan mengikuti langkah-langkah teknik SNE yang dijelaskan pada bagian 2.2.4.1. Langkah pertama, yaitu penentuan nama individu, tidak dibahas secara detail karena sesuai dengan bagian 1.4 nomor 4, nama-nama individu pada Tugas Akhir ini didapatkan secara manual dari sociogram pada Gambar II-4. Sociogram tersebut merupakan hasil penelitian yang dilakukan oleh [MIK04]. Jumlah nama individu yang akan diekstrak social network-nya adalah 93. Daftar nama individu tersebut dapat dilihat pada Lampiran A.

Pada langkah kedua, yaitu penentuan keterhubungan antar individu, digunakan search

engine Google. Kemudian dilakukan eksperimen terhadap parameter Google yang akan

digunakan untuk penentuan keterhubungan antar individu. Koefisien co-occurrence yang digunakan adalah overlap coefficient.

Pada langkah ketiga, yaitu penentuan jenis relasi sosial, diselesaikan dengan menerapkan pendekatan text classification. Pemilihan atribut klasifikasi dilakukan dengan pendekatan

(2)

III-2

Mutual Information yang dipadukan dengan pendekatan subjektif, seperti pada

Polyphonet. Kemudian dilakukan eksperimen untuk menentukan algoritma klasifikasi yang memberikan akurasi maksimal.

3.1.1 Penentuan Keterhubungan antar Individu

3.1.1.1 Pemilihan Parameter Google

Analisis terhadap parameter Google dilakukan dengan membandingkan cara kerja algoritma SNE dari kedua parameter tersebut. Perbandingan dilakukan dari segi banyaknya akses ke Google dan pemrosesan lanjut terhadap dokumen-dokumen hasil pencarian. Gambar III-1dan Gambar III-2 menunjukkan contoh query dan hasil pencarian yang ditampilkan oleh Google.

Dari segi banyaknya akses ke Google, teknik SNE yang menggunakan parameter Google

hit memerlukan jumlah akses yang sangat banyak seiring dengan meningkatnya jumlah

individu. Jika jumlah individu adalah n, maka berdasarkan Algoritma II-2, jumlah akses ke Google yang diperlukan adalah n + C(n,2). Di sisi lain, teknik SNE yang menggunakan parameter Google top hanya memerlukan jumlah akses ke Google sebanyak n. Namun, berdasarkan Algoritma II-3, teknik ini memerlukan akses terhadap dokumen-dokumen hasil query sebanyak k untuk setiap nama individu. Hal ini berarti teknik SNE dengan parameter Google top juga memerlukan akses ke World Wide Web (WWW) yang cukup banyak. Secara keseluruhan, teknik ini memerlukan akses ke WWW sebanyak n + nk kali. Semakin besar nilai k, semakin tinggi akurasi social network yang didapatkan. Percobaan yang dilakukan oleh [MAT06] menggunakan nilai k = 20, dan didapatkan akurasi 90%.

Sebagai contoh perbandingan, untuk jumlah nama individu sebesar 93, maka jumlah akses ke Google yang diperlukan untuk teknik SNE dengan parameter Google hit adalah 93+C(93,2) = 4371. Sedangkan teknik SNE dengan menggunakan parameter Google top hanya memerlukan 93 akses ke Google dan 93k akses ke WWW. Jika digunakan nilai k sebesar 20, maka secara keseluruhan dibutuhkan 93+ (93*20) = 1953 akses ke WWW untuk teknik SNE dengan parameter Google top. Hal ini menunjukkan bahwa teknik SNE yang menggunakan parameter Google hit memerlukan jumlah akses yang jauh lebih banyak dibandingkan dengan teknik SNE yang menggunakan parameter Google top.

(3)

III-3

Gambar III-1 Contoh Query untuk Satu Buah Nama

(4)

III-4

Dari segi pemrosesan terhadap dokumen-dokumen hasil pencarian, teknik SNE yang menggunakan parameter Google hit tidak memerlukan pemrosesan terhadap dokumen-dokumen tersebut. Teknik SNE yang menggunakan parameter Google hit hanya memerlukan proses pengambilan nilai Google hit, seperti yang ditunjukkan pada Gambar III-1 dan Gambar III-2. Di sisi lain, teknik SNE yang menggunakan parameter Google top mutlak memerlukan proses ekstraksi nama-nama individu yang terdapat pada setiap dokumen hasil pencarian. Hal ini ditunjukkan pada Algoritma II-3. Proses ekstraksi tersebut bertujuan untuk mendapatkan jumlah kemunculan nama individu tertentu dalam koleksi dokumen hasil pencarian. Hal ini berarti teknik SNE yang menggunakan parameter Google hit memerlukan proses komputasi yang relatif lebih sedikit daripada teknik SNE yang menggunakan parameter Google top.

Selanjutnya, khusus untuk teknik SNE yang menggunakan parameter Google top, sulit untuk menentukan parameter k secara global untuk individu yang namanya banyak muncul di WWW dan individu yang namanya jarang muncul di WWW. Sebagai contoh,

query “Tom Mitchell” menghasilkan 228.000 dokumen, sedangkan query “Agus Salim

Ridwan” menghasilkan 196 dokumen. Perbedaan yang relatif jauh terhadap banyaknya dokumen yang dihasilkan oleh kedua query tersebut mengakibatkan sulitnya menentukan nilai parameter k yang dapat mencakup semua dokumen. Selain itu, berdasarkan Algoritma II-3, dilakukan pencarian nama pasangan individu yang muncul secara bersama-sama pada koleksi dokumen. Hal ini akan menimbulkan masalah jika nama pasangan individu ternyata muncul bersama-sama pada dokumen ke-k+i dimana i ≥ 1. Jika kondisi ini terjadi, maka akan didapatkan hasil deteksi bahwa tidak ada relasi antara pasangan individu tersebut walaupun jika dilakukan query yang memuat nama pasangan individu tersebut akan dihasilkan jumlah dokumen yang cukup banyak.

Berdasarkan perbandingan di atas, maka dikembangkan kombinasi antara teknik SNE dengan menggunakan parameter Google hit dan teknik SNE dengan menggunakan parameter Google top. Kombinasi tersebut dinyatakan pada Algoritma III-1. GetNames

(D,L) pada Algoritma III-1 merupakan fungsi yang bertugas mencari nama-nama individu

pada L yang terdapat di D. Dengan menggunakan teknik kombinasi ini, maka banyaknya akses ke Google dapat diminimalkan. Selain itu, co-occurrence antara sepasang individu tidak lagi bergantung pada sejumlah k dokumen, tetapi secara global dengan menggunakan algoritma GoogleCoocHit. Penentuan nilai k yang tepat tetap menjadi

(5)

III-5

masalah utama pada teknik kombinasi Google top dan Google hit. Namun, penentuan nilai k yang tepat dapat dicapai dengan melakukan eksperimen dengan berbagai nilai k hingga didapatkan akurasi yang memuaskan.

GoogleTopHit(L,k)

/*masukan berupa daftar nama individu L, mengembalikan co-occurrence pasangan nama individu */

Array result = new Array() i=0 for each X Є L D  GoogleTop(“X”,k) E  GetNames(D,L) for each Y Є E do rx,y  GoogleCoocHit(X,Y) result[i]  rx,y i++ return result

Algoritma III-1 Algoritma Kombinasi Google Top dan Google Hit

3.1.1.2 Pemilihan Koefisien Co-occurrence

Berdasarkan bagian 2.2.4, terdapat enam buah koefisien co-occurrence. Pemilihan koefisien occurrence dilakukan dengan mempertimbangkan kemampuan koefisien

co-occurrence tersebut untuk diterapkan pada berbagai kondisi. Kondisi yang dimaksud

adalah kondisi di mana terdapat variasi jenis individu yang akan diekstrak social network-nya. Terdapat individu yang namanya banyak muncul di WWW dan individu yang namanya jarang muncul di WWW. Hal ini akan berpengaruh terhadap jumlah dokumen yang dihasilkan oleh search engine. Untuk mempermudah, maka pembahasan selanjutnya menggunakan nilai Google hit sebagai masukan bagi rumusan koefisien co-occurrrence.

Berdasarkan rumusan Matching Coefficient pada persamaan II.8, maka koefisien ini akan menghasilkan nilai yang sangat bervariasi untuk pasangan individu yang sering muncul di WWW dan pasangan individu yang jarang muncul di WWW. Hal ini akan mengakibatkan kesulitan dalam menentukan threshold. Sebagai contoh, query “Tom Mitchell” “Kamal Nigam” menghasilkan 17.200 dokumen sedangkan query “Dwi Hendratmo Widyantoro” “Inggriani Liem” hanya menghasilkan tujuh dokumen. Jika dikenakan threshold yang terlalu tinggi, terdapat kemungkinan pasangan “Dwi Hendratmo Widyantoro” dan “Inggriani Liem” dideteksi tidak memiliki relasi sosial. Hal

(6)

III-6

ini bertentangan dengan kenyataan yang sebenarnya. Sebaliknya, jika nilai threshold diatur terlalu rendah, maka terdapat kemungkinan adanya pasangan individu yang dideteksi memiliki relasi sosial namun pada kenyataannya pasangan tersebut tidak memiliki relasi sosial.

Rumusan Mutual Information, Dice Coefficient, Overlap Coefficient, Jaccard

Coefficient, dan Cosine Coefficient berturut-turut pada persamaan II.9, II.10, II.11, II.12,

dan II.13 merupakan koefisien yang telah dinormalisasi sehingga tidak menghasilkan nilai yang bervariasi untuk pasangan individu yang sering muncul di WWW dan pasangan individu yang jarang muncul di WWW. Akan tetapi, Mutual Information, Dice

Coefficient, Jaccard Coefficient, dan Cosine Coefficient melibatkan kalkulasi nilai

Google hit untuk kedua individu pada penyebutnya. Akibatnya, semakin sering suatu individu muncul di WWW, semakin besar nilai penyebutnya. Hal ini berakibat pada semakin kecilnya nilai yang dihasilkan oleh koefisien-koefisien tersebut. Dengan demikian, individu yang sering muncul di WWW akan memiliki jumlah relasi sosial yang lebih sedikit daripada individu yang jarang muncul di WWW [MAT06]. Masalah ini kemudian diatasi oleh Overlap Coefficient yang meminimalkan nilai penyebut dengan mengambil nilai Google hit terkecil dari kedua individu yang terlibat. Dengan demikian individu yang sering muncul di WWW akan memiliki jumlah relasi sosial yang banyak. Sebagai contoh, query “Tom Mitchell” menghasilkan 228.000 hit, query “Tom Mitchell” “Kamal Nigam” menghasilkan 17.200 hit, dan query “Kamal Nigam” menghasilkan 35.300 hit. Dengan mensubstitusikan data tersebut ke dalam persamaan II.10, didapatkan nilai Overlap Coefficient untuk ”Tom Mitchell” dan ”Kamal Nigam” sebanyak 0.4873.

Berdasarkan analisis di atas, maka pada Tugas Akhir ini, digunakan Overlap Coefficient untuk menentukan co-occurence antara sepasang individu. Koefisien ini juga digunakan pada Polyphonet [MAT06].

3.1.1.3 Penentuan Threshold

Berdasarkan [MAT06], threshold ditentukan melalui eksperimen-eksperimen hingga dicapai performansi yang memuaskan. Dari hasil eksperimen yang dilakukan pada

Polyphonet, didapatkan nilai threshold untuk Overlap Coefficient sebesar 0.4 [MAT06].

[MIK05] menentukan nilai threshold berdasarkan standar deviasi dari nilai yang dihasilkan oleh koefisien co-occurrence. Sepasang individu dideteksi memiliki hubungan

(7)

III-7

jika nilai koefisien co-occurrence-nya minimal satu standar deviasi lebih tinggi daripada rata-rata seluruh nilai koefisien co-occurrence. Pendekatan ini merupakan rule-of-thumb pada SNE [MIK05].

Tugas Akhir ini memadukan rule of thumb tersebut dengan eksperimen-eksperimen. Karena itu, terdapat dua macam threshold, yaitu threshold awal dan threshold setelah disesuaikan. Threshold awal merupakan standar deviasi dari Overlap Coefficient.

Threshold ini kemudian akan disesuaikan jika social network yang dihasilkan belum

memenuhi tingkat akurasi yang memuaskan.

3.1.2 Teknik Text Classification untuk Penentuan Jenis Relasi Sosial

Pada Tugas Akhir ini, jenis relasi antar individu telah ditentukan sebelumnya berdasarkan domain komunitas yang digunakan. Hal ini telah dinyatakan pada bagian 1.4 nomor tiga. Karena domain yang digunakan adalah domain akademis, maka jenis relasi sosial yang mungkin adalah relasi course, project, dan co-author. Relasi course merupakan relasi terjadi antara sepasang individu yang mengajar mata kuliah yang sama. Relasi project merupakan relasi yang terjadi antara sepasang individu yang terlibat dalam suatu proyek yang sama. Sedangkan relasi co-author merupakan relasi yang terjadi antara sepasang individu yang menulis suatu makalah ilmiah bersama-sama.

3.1.2.1 Feature Selection untuk Representasi Dokumen Web

Pada Tugas Akhir ini, pemilihan atribut klasifikasi dilakukan dengan memadukan pendekatan bags-of-words dan pendekatan subjektif seperti pada Polyphonet. Pendekatan subjektif pada Polyphonet digunakan karena pendekatan tersebut memberikan hasil akurasi yang tinggi dan tujuan klasifikasinya sama dengan tujuan klasifikasi pada Tugas Akhir ini, yaitu untuk menentukan jenis relasi antar individu. Penggunaan pendekatan

bags-of-words dimaksudkan untuk menyempurnakan pendekatan subjektif sehingga

diharapkan akan dicapai tingkat akurasi klasifikasi yang lebih tinggi. Karena itu, akan dibahas analisis terhadap kedua pendekatan tersebut.

Pembahasan didahului dengan analisis terhadap atribut klasifikasi pada Tabel II-4. a. NumCo

NumCo tidak signifikan sebagai pengklasifikasi karena hanya muncul sebagai

(8)

III-8

Hal ini dapat dilihat pada Tabel II-5. Selain itu, nilainya akan selalu one atau

more_than_one untuk setiap dokumen web karena dokumen tersebut merupakan

hasil query pasangan nama individu. b. SameLine

SameLine merupakan satu-satunya atribut yang menentukan aturan klasifikasi

untuk kelas target co-author sehingga SameLine merupakan pengklasifikasi yang signifikan. Hal ini sesuai dengan kenyataannya, yaitu kebanyakan nama penulis pada makalah ilmiah dinyatakan dalam satu baris yang sama.

c. FreqX

FreqX tidak signifikan sebagai pengklasifikasi karena hanya muncul sebagai

kombinasi atribut-atribut klasifikasi pada aturan klasifikasi bagi kelas target Lab. Hal ini dapat dilihat pada Tabel II-5. Selain itu, nilainya akan selalu one atau

more_than_two untuk setiap dokumen web karena dokumen tersebut merupakan

hasil query pasangan nama individu yang sudah tentu mengandung salah satu nama individu.

d. FreqY

Analisis terhadap atribut klasifikasi FreqY sama dengan analisis terhadap atribut

FreqY.

e. GroTitle

GroTitle cukup signifikan sebagai pengklasifikasi karena muncul sebagai

kombinasi atribut-atribut klasifikasi pada aturan klasifikasi bagi kelas target Lab,

Proj, dan Conf. Namun, atribut ini tidak dapat diterapkan pada dokumen web

yang tidak memiliki judul. f. GroFFive

GroFFive cukup signifikan sebagai pengklasifikasi karena muncul sebagai

kombinasi atribut-atribut klasifikasi pada aturan klasifikasi bagi kelas target Lab,

Proj, dan Conf. Atribut ini juga dapat dikenakan pada seluruh dokumen web.

Penentuan kata-kata untuk kelompok kata seperti yang terdapat pada Tabel II-3 juga berpengaruh terhadap akurasi klasifikasi. Jika dikaitkan dengan aturan klasifikasi untuk setiap kelas target pada Tabel II-4, maka pengelompokkan kata-kata tersebut kurang tepat karena suatu kelompok kata untuk suatu kelas target dapat muncul pada aturan klasifikasi untuk kelas target yang lain. Selain itu, terdapat juga kasus di mana kelompok kata tersebut justru tidak muncul pada aturan klasifikasi untuk menentukan kelas target yang

(9)

III-9

diwakilinya. Hal ini dapat dilihat pada aturan klasifikasi untuk menentukan kelas target

Lab dan Proj. Dengan demikian, pemilihan kata-kata pada setiap kelompok atau kelas

target dengan pendekatan TF-IDF kurang tepat untuk mendeskripsikan kelas target yang bersangkutan.

Untuk mengatasi masalah pemilihan kelompok kata tersebut, maka digunakan pendekatan

bags-of-words pada bagian 2.3.2. Pendekatan yang digunakan pada Tugas Akhir ini

adalah Mutual Information karena pendekatan tersebut paling tepat untuk menentukan kata-kata yang mendeskripsikan suatu kelas target tertentu. Pendekatan Mutual

Information ini juga merupakan pendekatan yang paling banyak digunakan dalam

penelitian-penelitian mengenai text classification, misalnya pada [JOA96] dan [GUY03]. Jumlah kata yang diambil untuk setiap kelas target adalah sepuluh buah kata yang memiliki nilai Mutual Information tertinggi.

Dari hasil analisis terhadap atribut klasifikasi pada Polyphonet, maka Tugas Akhir ini mengadopsi atribut klasifikasi SameLine. Atribut klasifikasi GroFFive juga digunakan, namun akan dimodifikasi menjadi GroupFirstTen. Kemudian, untuk memperluas

coverage, ditambahkan atribut klasifikasi GroupAll. Nilai atribut GroupFirstTen dan GroupAll merupakan TF yang telah dinormalisasi. Nilai TF yang telah dinormalisasi

untuk kata w dalam dokumen d dinyatakan sebagai TXC (w,d) pada persamaan II.20. Pada persamaan tersebut, TF (wj,d) merupakan TF untuk semua kata pada dokumen d.

Secara ringkas, atribut klasifikasi yang digunakan pada Tugas Akhir ini dapat dilihat pada Tabel III-1.

(II.20)

3.1.2.2 Penentuan Algoritma Klasifikasi

Algoritma klasifikasi yang digunakan pada Tugas Akhir ini adalah Naive Bayes dan SVM. Dari kedua algoritma tersebut, akan dilakukan ekperimen untuk menentukan algoritma yang memberikan performansi maksimum untuk masalah text classification. Hal ini sesuai dengan tujuan Tugas Akhir nomor dua pada bagian 1.3.

(10)

III-10

Naive Bayes digunakan karena komputasinya sederhana dan memberikan akurasi yang memuaskan [MIT97], [THO96]. Sedangkan SVM dipilih karena merupakan metode pembelajaran baru yang memiliki performansi memuaskan untuk masalah text

classification [JOA98]. SVM mampu memproses data yang sangat banyak dalam waktu

relatif singkat. Berdasarkan hasil percobaan yang dilakukan [JOA98], SVM memiliki nilai precision dan recall rata-rata melebihi Naive Bayes, k-Nearest Neighbour, C4.5 dan metode Rocchio.

Tabel III-1 Atribut Klasifikasi pada Tugas Akhir

Atribut Klasifikasi Keterangan Nilai

SameLine Apakah nama individu X dan Y muncul pada baris yang sama pada dokumen

yes, no

GroupFirstTenCourse

TXC kata-kata pada sepuluh baris pertama dokumen dimana kata-kata tersebut terdapat pada kelompok kata Course

0-?

GroupFirstTenProject

TXC kata-kata pada sepuluh baris pertama dokumen dimana kata-kata tersebut terdapat pada kelompok kata Project

0-?

GroupFirstTenCoAuthor

TXC kata-kata pada sepuluh baris pertama dokumen dimana kata-kata tersebut terdapat pada kelompok kata Co-Author

0-?

GroupAllCourse TXC kata pada keseluruhan dokumen dimana

kata-kata tersebut terdapat pada kelompok kata-kata Course 0-?

GroupAllProject TXC kata pada keseluruhan dokumen dimana

kata-kata tersebut terdapat pada kelompok kata-kata Project 0-?

GroupAllCoAuthor TXC kata pada keseluruhan dokumen dimana

(11)

III-11

3.2 Algoritma Lintasan Terpendek

shortestPath(input m:matriks)

(Mencari semua lintasan terpendek dari setiap pasangan simpul pada matriks m (nxn). Masukan: sociomatrix, Keluaran: lintasan terpendek semua pasangan simpul)

Deklarasi

p : hashtable[1..max] of <String,integer> /*max=Kombinasi(n,2)*/

result : hashtable[1..n-1] of <integer,array> listPath : array[1..n-1] of String

i,j,k : integer temp, direct : array of String Algoritma

{langkah 0: mendaftarkan semua pasangan simpul ke p dan nilai hash-nya diberi angka 0)

initCouple(p)

{langkah 1: mendaftarkan semua pasangan simpul yang memiliki lintasan langsung}

i0 k1;

for each (pasangan simpul atau key di p) do

if (m[x][y]==1) then /*x dan y adalah pasangan simpul */ p((“x,y”)= 0)  p((“x,y”)=1)

listPath[i]  “x,y” i++

addresult(k,listPath) direct  listPath

{langkah 3: mencari semua lintasan terpendek untuk semua pasangan simpul}

while(isExist(p((“x,y”)=0)) do listPathnull

i0 j0

for each p((“x,y”)=0) do j++

temp  result(k) /*temp berisi solusi terakhir*/ for each temp do

for each direct do

if (concat(temp,direct)==”x,y”)) then listPath[i]  concat(temp,direct) i++ p((“x,y”)=0)  p((“x,y”)=1) if (j == max) then if (listPath.length > 0) then k++; addresult(k,listPath) else clear(p) return result

(12)

III-12

Pada SNA, permasalahan lintasan terpendek digunakan untuk menyelesaikan perhitungan

betweenness dan closeness. Permasalahan lintasan terpendek pada konteks SNA

didefinisikan sebagai jumlah minimum sisi yang dilalui oleh semua pasangan simpul pada

sociogram. Definisi tersebut mengakibatkan terdapatnya lebih dari satu jalur geodesic

yang unik karena ukuran geodesic distance-nya adalah jumlah sisi yang dilalui bukan bobot sisi. Sebagai contoh, dapat dilihat pada Tabel III-4 nomor 4. Algoritma untuk mencari lintasan terpendek yang sering digunakan adalah algoritma Dijkstra [MUN03]. Namun algoritma Dijkstra ditujukan pada graf yang berbobot sehingga hanya menghasilkan satu solusi jalur geodesic untuk sepasang simpul. Karena itu, algoritma Dijkstra tidak dapat diterapkan pada konteks SNA. Untuk menyelesaikan permasalahan lintasan terpendek tersebut, maka digunakan Algoritma III-2.

Algoritma III-2 membentuk semua pasangan simpul yang mungkin terlebih dahulu, lalu mencari lintasan terpendek untuk setiap pasangan simpul tersebut. Proses pencarian dimulai dengan membentuk lintasan terpendek untuk semua pasangan simpul yang memiliki lintasan langsung. Kemudian, lintasan terpendek untuk pasangan simpul yang lain dibentuk dengan cara menelusuri dan memadukan solusi-solusi lintasan terpendek yang dihasilkan dari iterasi terakhir dengan lintasan langsung hingga ditemukan lintasan terpendek untuk pasangan simpul yang bersangkutan. Jika solusi yang telah ada belum menghasilkan lintasan terpendek, maka pencarian akan dilanjutkan untuk pasangan simpul selanjutnya. Pencarian akan berhenti jika semua pasangan simpul telah memiliki lintasan terpendek.

Berikut akan dijelaskan properti-properti pada Algoritma III-2. Matriks m merupakan

sociomatrix berukuran n x n dimana n adalah jumlah individu atau simpul. Hashtable p

digunakan untuk menyimpan pasangan simpul dan penanda telah ditemukan (1) atau belum ditemukan (0) lintasan terpendek antara kedua simpul tersebut. Pasangan simpul merupakan kunci (key) dan penanda merupakan nilai (value) pada hashtable. Hashtable

result digunakan untuk menyimpan jarak lintasan terpendek dan daftar lintasan terpendek

untuk jarak yang bersangkutan. Jarak lintasan terpendek merupakan kunci dan daftar lintasan terpendeknya merupakan nilai pada hashtable. Array listPath digunakan untuk menyimpan semua solusi lintasan terpendek untuk jarak lintasan terpendek tertentu.

Array temp merupakan array yang menyimpan solusi lintasan terpendek yang dihasilkan

(13)

III-13

langsung dari sociomatrix m. initCouple(p) merupakan prosedur untuk mendaftarkan semua pasangan simpul yang mungkin dan disimpan pada hashtable p. Semua nilai pada

hashtable tersebut diinisialisasi dengan angka 0. isExist(p((x,y),0) merupakan fungsi yang

mengembalikan true jika masih terdapat pasangan individu yang belum memilliki lintasan terpendek. concat(temp,direct) merupakan fungsi yang mengembalikan lintasan yang terbentuk dari elemen array temp dan elemen array direct. Sebagai contoh, jika elemen array temp = “a,b,c” dan elemen array direct = ”c,d”, maka concat(temp,direct) = ”a,b,c,d”. addResult(k,listPath) merupakan prosedur untuk menambahkan solusi lintasan terpendek pada listPath ke dalam hashtable result. clear(p) merupakan prosedur untuk mengubah semua nilai hash 0 pada p menjadi 1. Prosedur clear (p) bertujuan untuk menghentikan proses iterasi karena lintasan terpendek dari pasangan simpul yang bersangkutan tidak ditemukan. Hal ini mungkin terjadi sebagai akibat adanya simpul terpencil.

3.3 Contoh Perhitungan SNA

Pada bagian ini akan dibahas cara untuk menghitung centrality, betweennes, closeness, dan density. Sebagai contoh kasus, terdapat sociogram pada Gambar III-3 yang diambil dari situs www.orgnet.com. Untuk melakukan SNA terhadap sociogram tersebut, maka akan dihitung nilai centrality, betweenness, closeness, dan density. Guna mempermudah perhitungan, maka sociogram pada Gambar III-3 diubah menjadi sociomatrix pada Tabel III-2. Karena relasi sosial pada sociogram tersebut merupakan relasi tak-berbobot, maka isi sel pada sociomatrix bernilai 0 dan 1.

3.3.1 Centrality

Berdasarkan persamaan II.1 dan persamaan II.2, maka absolute centrality dan relative

centrality untuk setiap individu pada Tabel III-2 dapat dilihat pada Tabel III-3. Dari hasil

perhitungan pada Tabel III-3, diketahui bahwa “Diane” merupakan pusat dari social

network.

Contoh perhitungan akan dijelaskan untuk aktor ”Andre”. Nilai absolute centrality sebesar 4 didapatkan dengan menjumlahkan isi sel sociomatrix secara mendatar untuk baris dengan label ”Andre”. Nilai absolute centrality juga bisa didapatkan dengan menjumlahkan seluruh isi sel sociomatrix secara menurun untuk kolom dengan label ”Andre”. Selanjutnya, relative centrality (”Andre”) sebesar 0.44 didapat dengan

(14)

III-14

perhitungan sebagai berikut. Relative centrality (”Andre”) = 4/(10-1). Pembilang 4 merupakan absolute centrality (”Andre”) sedangkan 10 merupakan jumlah individu pada

sociomatrix. Hal ini sesuai dengan persamaan II.2.

Gambar III-3 Contoh Sociogram

Tabel III-2 Sociomatrix untuk Sociogram Gambar III-3

Andre Beverly Carol Diane Ed Fernando Garth Heather Ike Jane

Andre 0 1 1 1 0 1 0 0 0 0 Beverly 1 0 0 1 1 0 1 0 0 0 Carol 1 0 0 1 0 1 0 0 0 0 Diane 1 1 1 0 1 1 1 0 0 0 Ed 0 1 0 1 0 0 1 0 0 0 Fernando 1 0 1 1 0 0 1 1 0 0 Garth 0 1 0 1 1 1 0 1 0 0 Heather 0 0 0 0 0 1 1 0 1 0 Ike 0 0 0 0 0 0 0 1 0 1 Jane 0 0 0 0 0 0 0 0 1 0

(15)

III-15

Tabel III-3 Centrality untuk Sociogram pada Gambar III-3

Individu (i) Andre Beverly Carol Diane Ed Fernando Garth Heather Ike Jane

Absolute

Centrality (i) 4 4 3 6 3 5 5 3 2 1

Relative

Centrality (i) 0,44 0,44 0,33 0,67 0,33 0,56 0,56 0,33 0,22 0,11

Tabel III-4 Geodesic Setiap Pasangan Individu untuk Sociogram pada Gambar III-3

No. Pasangan Individu Geodesic Geodesic Distance 1 A-B A-B 1 2 A-C A-C 1 3 A-D A-D 1 4 A-E A-D-E A-B-E 2 2 5 A-F A-F 1 6 A-G A-D-G A-B-G A-F-G 2 2 2 7 A-H A-F-H 2 8 A-I A-F-H-I 3 9 A-J A-F-H-I-J 4 10 B-C B-D-C B-A-C 2 2 11 B-D B-D 1 12 B-E B-E 1 13 B-F B-D-F B-A-F B-G-F 2 2 2 14 B-G B-G 1 15 B-H B-G-H 2 16 B-I B-G-H-I 3 17 B-J B-G-H-I-J 4 18 C-D C-D 1 19 C-E C-D-E 2 20 C-F C-F 1 21 C-G C-F-G C-D-G 2 2 22 C-H C-F-H 2 23 C-I C-F-H-I 3 24 C-J C-F-H-I-J 4 25 D-E D-E 1 26 D-F D-F 1 27 D-G D-G 1 28 D-H D-F-H D-G-H 2 2 29 D-I D-F-H-I D-G-H-I 3 3 30 D-J D-F-H-I-J D-G-H-I-J 4 4

(16)

III-16

No. Pasangan Individu Geodesic Geodesic Distance 31 E-F E-D-F E-G-F 2 2 32 E-G E-G 1 33 E-H E-G-H 2 34 E-I E-G-H-I 3 35 E-J E-G-H-I-J 4 36 F-G F-G 1 37 F-H F-H 1 3 8 F-I F-H-I 2 39 F-J F-H-I-J 3 40 G-H G-H 1 41 G-I G-H-I 2 42 G-J G-H-I-J 3 43 H-I H-I 1 44 H-J H-I-J 2 45 I-J I-J 1

3.3.2 Betweenness

Untuk mengukur betweenness, maka terlebih dahulu harus didapatkan geodesic dari setiap pasangan individu. Dengan menerapkan Algoritma III-2, maka didapatkan

geodesic setiap pasang individu pada Tabel III-4. Pada Tabel III-4 tersebut, nama setiap

individu direpresentasikan dengan huruf awalnya. Berdasarkan persamaan II.3 dan persamaan II.4, didapatkan nilai absolute betweenness dan relative betweenness untuk setiap individu pada Tabel III-6. Dari hasil perhitungan pada Tabel III-6, diketahui bahwa “Heather” merupakan individu yang berperan sebagai penghubung pada social network.

Contoh perhitungan akan dijelaskan untuk aktor ”Andre”. Berdasarkan Tabel III-4, diketahui geodesic yang mengandung ”Andre” sebagai perantara adalah geodesic dari pasangan simpul BC dan BF. Perbandingan geodesic yang mengandung ”Andre” dengan total geodesic untuk pasangan BC adalah 0,5. Sedangkan Perbandingan geodesic yang mengandung ”Andre” dengan total geodesic untuk pasangan BF adalah 0,33. Dengan menerapkan persamaan II.3, didapatkan absolute betweenness (”Andre”) sebesar 0,5+0,33 = 0,83. Secara lebih rinci, proses perhitungan absolute betweenness (”Andre”) dapat dilihat pada Tabel III-5. Selanjutnya, berdasarkan persamaan II.4 akan dihitung

relative betweenness (”Andre”) sebagai berikut. Relative betweenness (”Andre”) =

0,83/((10-1)(10-2)/2). Maka, relative betweenness (”Andre”) = 0,02. Pembilang sebesar 0,83 merupakan absolute betweenness (”Andre”) sedangkan 10 merupakan jumlah individu pada sociomatrix.

(17)

III-17

Tabel III-5 Perhitungan Absolute Betweenness (“Andre”)

Pasangan

Simpul Geodesic

Geodesic #Geodesic Mengandung ”Andre”

# Total Geodesic #fdfdfdfdfd

Total Mengandung ”Andre”

B-C B-D-C B-A-C 2 1 0,5 B-D B-D 1 0 0 B-E B-E 1 0 0 B-F B-D-F B-A-F B-G-F 3 1 0.33 B-G B-G 1 0 0 B-H B-G-H 1 0 0 B-I B-G-H-I 1 0 0 B-J B-G-H-I-J 1 0 0 C-D C-D 1 0 0 C-E C-D-E 1 0 0 C-F C-F 1 0 0 C-G C-F-G C-D-G 2 0 0 C-H C-F-H 1 0 0 C-I C-F-H-I 1 0 0 C-J C-F-H-I-J 1 0 0 D-E D-E 1 0 0 D-F D-F 1 0 0 D-G D-G 1 0 0 D-H D-F-H D-G-H 2 0 0

D-I D-F-H-I D-G-H-I 2 0 0

D-J D-F-H-I-J D-G-H-I-J 2 0 0 E-F E-D-F E-G-F 2 0 0 E-G E-G 1 0 0 E-H E-G-H 1 0 0 E-I E-G-H-I 1 0 0 E-J E-G-H-I-J 1 0 0 F-G F-G 1 0 0 F-H F-H 1 0 0 F-I F-H-I 1 0 0 F-J F-H-I-J 1 0 0 G-H G-H 1 0 0 G-I G-H-I 1 0 0 G-J G-H-I-J 1 0 0 H-I H-I 1 0 0 H-J H-I-J 1 0 0 I-J I-J 1 0 0

(18)

III-18

Tabel III-6 Betweenness untuk Sociogram pada Gambar III-3

Individu (i) Andre Beverly Carol Diane Ed Fernando Garth Heather Ike Jane

Absolute Betweenness (i) 0,83 0,83 0 3,67 0 8,33 8,33 14 8 0 Relative Betweenness (i) 0,02 0,02 0 0,10 0 0,23 0,23 0,39 0,22 0

3.3.3 Closeness

Untuk mengukur closeness, maka terlebih dahulu harus didapatkan geodesic distance dari setiap pasangan individu. Geodesic distance tersebut dapat dilihat pada Tabel III-4. Berdasarkan persamaan II.5 dan persamaan II.6, maka absolute closeness dan relative

closeness untuk setiap individu pada Tabel III-2 dapat dilihat pada Tabel III-8. Dari hasil

perhitungan pada Tabel III-8, diketahui bahwa “Fernando” dan “Garth” merupakan individu yang paling dekat dengan semua individu lain dalam social nework.

Tabel III-7 Perhitungan Absolute Closeness ("Andre")

Pasangan Simpul dari “Andre” ke semua simpul Geodesic Distance

A-B 1 A-C 1 A-D 1 A-E 2 A-F 1 A-G 2 A-H 2 A-I 3 A-J 4

Total Geodesic Distance dari “Andre” ke semua simpul 17

Contoh perhitungan akan dijelaskan untuk aktor ”Andre”. Berdasarkan Tabel III-4 nomor 1-9, didapatkan total geodesic distance dari pasangan simpul ”Andre” ke semua pasangan simpul lainnya adalah 17. Hal ini dapat dilihat secara lebih detail pada Tabel III-7. Berdasarkan persamaan II.5, maka absolute closeness (”Andre”) = 17-1. Jadi, absolute

closeness (”Andre”) = 0,059. Selanjutnya, berdasarkan persamaan II.6 akan dihitung relative closeness (”Andre”) sebagai berikut. Relative closeness (”Andre”) = (10-1) *

(19)

III-19

0,059. Maka, relative closeness (”Andre”) = 0,531. Angka 10 merupakan jumlah individu pada sociomatrix sedangkan angka 0,059 merupakan absolute closeness (”Andre”).

Tabel III-8 Closeness untuk Sociogram pada Gambar III-3

Individu (i) Andre Beverly Carol Diane Ed Fernando Garth Heather Ike Jane

Absolute

Closeness (i) 0,059 0,059 0,056 0,067 0,056 0,071 0,071 0,067 0,048 0,034 Relative

Closeness (i) 0,531 0,531 0,504 0,603 0,504 0,639 0,639 0,603 0,432 0,306

3.3.4 Density

Berdasarkan persamaan II.7, density sociogram pada Gambar III-3= 36/(10*(10-1)). Maka, density = 0,4. Pembilang merupakan jumlah seluruh isi sel sociomatrix, yaitu 36. Sedangkan angka 10 pada penyebut merupakan jumlah seluruh individu pada

sociomatrix.

Dengan nilai density sebesar 0.4, dapat disimpulkan bahwa social network tersebut kurang rapat. Hal ini disebabkan jumlah relasi sosial yang terjalin pada social network tersebut sangatlah minim (yaitu sebanyak 36) jika dibandingkan dengan jumlah maksimal relasi sosial yang dimungkinkan terjadi (yaitu sebanyak 90).

Gambar

Gambar III-2 Contoh Query untuk Dua Buah Nama
Tabel III-1 Atribut Klasifikasi pada Tugas Akhir
Gambar III-3 Contoh Sociogram
Tabel III-3 Centrality untuk Sociogram pada Gambar III-3
+4

Referensi

Dokumen terkait

Apabila pada awal tahun polis ke-37 Bapak Riko meninggal dunia (pada usia 60 dan setelah memasuki Usia Mapan), maka Pemegang Polis/Penerima Manfaat akan menerima Manfaat

- Aliran lumpur di annulus drill collar dengan casing yang sudah terpasang 2.5.1 Kecepatan Aliran dalam Annulus Drill Pipe dengan lubang terbuka Q Vandp = --- 

Kesimpulan dari kasus yaitu 7 langkah Varney dan SOAP yang digunakan untuk proses penyelesaian masalah kebidanan telah dilaksanakan pengkajian berupa pemantauan dan

Sebagai ragam hias simbolis, maksudnya karya ornamen yang dibuat selain mempunyai fungsi sebagai penghias suatu benda juga memiliki nilai simbolis tertentu di dalamnya,

Berdasarkan tabel pengukuran kinerja kegiatan, menurut Badan Lingkungan Hidup Kabupaten Pasuruan dapat diketahui bahwa kinerja badan lingkungan hidup kabupaten

Hal ini dapat diliha tdari tahapan pelaksanaan tradisi pambakaan, dalam persiapan pelaksanaan tradisi pambakaan sudah terlihat bentuk kerjasama masyarakat dan bisa

Konsep-konsep tersebut antara lain meliputi Pengertian Matriks, Operasi Aljabar dan Sifat-sifat Operasi Matriks, Macam-macam Matriks, Matriks Bagian Sub Matriks, Partisi

Uji yang dilakukan dalam penelitian ini adalah: (1) uji perbedaan dua rata-rata untuk melihat (a) perbedaan self-efficacy terhadap matematika pada mahasiswa yang