Anda di halaman 1dari 6

PENERAPAN ALGORITMA FORCE-DIRECTED GRAPH

UNTUK PEMBUATAN SITUS MUSIC-MAP


Indra Maryati

Ir. Edwin Pramana, M.AppSc.

Abstrak–Music-map merupakan seperti lagu, album, video, lirik,


salah satu aplikasi berbasis graf bahkan download melalui satu situs
dimana terdapat hubungan antara saja tanpa harus membuka berbagai
musik yang dicari. Music-map situs pencarian informasi musik.
ditampikan secara interaktif karena
penggunaan algoritma Force- Kata Kunci–force-directed graph,
Directed Graph. Selain itu untuk music-map, similarity, graf
mencari informasi musik user
biasanya harus membuka berbagai I. Pendahuluan
halaman situs untuk mendapatkan
informasi yang dicari. Aplikasi Musik merupakan hal yang sangat
music-map yang akan dibuat berkembang dalam dunia internet,
merupakan sebuah aplikasi yang tentunya selain penjualan secara
berbasis situs. Situs music-map ini elektronik. Musik di dalam internet
akan direlasikan hubungan dapat berupa membagikan informasi
kemiripan atau similarity yang tentang lagu, penjualan lagu tersebut,
didapatkan melalui web service milik dan juga dapat dibagi-bagikan secara
Amazon. Algoritma Force-Directed gratis melalui internet. Saat ini musik
Graph juga digunakan sebagai sebagai salah satu kebutuhan dasar bagi
algoritma dalam penggambaran graf manusia, hampir semua kegiatan setiap
yang akan digunakan dalam music- harinya diiringi dengan musik. Menurut
map. Selain itu, user dapat Aristoteles, musik mempunyai
melakukan pencarian informasi kemampuan mendamaikan hati yang
musik berupa album, lagu, video, dan gundah, mempunyai terapi rekreatif dan
lirik secara bersamaan. User juga menumbuhkan jiwa patriotisme.
dapat mendownload musik yang Sehingga musik digunakan mulai dari
diinginkan atau dicarinya tersebut, sarana hiburan sampai sarana kesehatan.
memberikan komentar tentang situs, Oleh karena itu, pencarian musik yang
bahkan user dapat membantu user efektif dan efisien sangat dibutuhkan.
dalam proses pengembangan Internet dapat menyediakan sarana yang
berikutnya dengan menjawab dapat mendukung perkembangan dunia
kuesioner pada situs ini. Diharapkan musik. Pencarian informasi melalui
hasil dari Tugas Akhir ini, dengan Internet atau online lebih lengkap
penggunaan music-map yang dipakai dibandingkan dengan pencarian
dapat membantu pengguna untuk informasi secara offline, yaitu dengan
dapat dengan mudah mencari cara pergi ke toko musik. Pembelian
hubungan relasi antara musik. Selain melalui Internet juga memberikan
itu, situs yang dibuat ini juga dapat banyak kelebihan dibandingkan dengan
membantu user untuk mencari pembelian melalui toko-toko musik,
informasi musik yang diinginkan, diantaranya penghematan waktu dan

1
material, kerahasiaan pembeli, dan lain- Untuk memenuhi semua kriteria
lain. tersebut, ada 2 prinsip penerapan
Melihat adanya permasalahan sebuah metode FDG. Yang pertama,
tersebut, maka terciptalah ide untuk verteks terhubung dengan sebuah edge
membuat situs music service yang harus digambar dekat satu sama lain
dilengkapi dengan Music-Map dengan dan yang kedua adalah verteks tidak
algoritma Force-Directed Graph yang seharusnya digambar dekat satu sama
dapat membantu penikmat musik dalam lain. Seberapa dekat verteks harus
mencari musik yang diinginkan dan ditempatkan tergantung berapa banyak
informasi seperti lirik dan video yang verteksnya dan berapa besar ruang yang
berhubungan dengan musik tersebut. tersedia.
Pengguna juga dapat dengan mudah
mencari hubungan antara musik yang Algoritma Force-Directed Graph [1]
satu dengan musik lainnya yang 1: area := W * L; {W and L are
direpresentasikan dengan music-map. the width and length of the
frame}
2: G := (V, E); {the vertices
II. ALGORITMA FORCE- are assigned random initial
positions}
DIRECTED GRAPH
3: k := √area/|V|;
Untuk pengaturan tata letak verteks 4: function fa(z) := begin
dalam penggambaran graph, aplikasi ini return z2/k end;
menggunakan metode Force Directed 5: function fr(z) := begin
return k2/z end;
Graph (FDG). Secara umum, metode ini 6: for i := 1 to iterations do
melakukan 3 langkah utama. Langkah begin
pertama adalah melakukan penolakan 7: {calculate repulsive
antar verteks (repulsion force). forces}
Kemudian langkah kedua yaitu gaya 8: for v in V do begin
saling tarik antar verteks yang 9: {each vertex has two
vectors: .pos and .disp}
berhubungan (attraction force). Setelah
10: v.disp := 0;
itu langkah terakhir adalah penggantian 11: for u in V do
posisi lama dengan yang baru. 12: if (u # v) then begin
Tujuan umum metode FDG adalah 13: {∆ is short hand for
bagaimana pengguna seharusnya the difference}
mendapatkan informasi dari sebuah 14: {vector between the
graph dengan tampilan yang lebih positions of the two
vertices)
menarik dan mudah dimengerti.
15: ∆ := v.pos - u.pos;
Beberapa kriteria untuk sebuah 16: v.disp := v.disp +
representasi graph yang baik yaitu: (∆/|∆|) * fr(|∆|)
1. Verteks harus seimbang 17: end
peletakannya pada gambar. 18: end
2. Kemungkinan kecil penyilangan 19: {calculate attractive
antara edge. forces}
20: for e in E do begin
3. Panjang tiap edge harus seimbang.
21: {each edge is an ordered
4. Kesimetrisan pada struktur graf pair of vertices .v
harus divisualisasikan. and .u}
5. Graf harus dibatasi di dalam sebuah 22: ∆ := e.v.pos – e.u.pos;
frame/bingkai. 23: e.v.disp := e.v.disp –
(∆/|∆|) * fa(|∆|);

2
24: e.u.disp := e.u.disp + ActionScript, mengenali control,
(∆/|∆|) * fa(|∆|); container, dan manager yang didesain
25: end
untuk mempermudah pembuatan Rich
26: {limit the maximum
displacement to the Internet Application (RIA).
temperature t} Aplikasi Flex pada umumnya men-
27: {and then prevent from compile hanya satu file .swf yang kemudian
being displaced outside dideploy ke server ketika diminta akan
frame} dijalankan kembali di Flash Player. Tidak
28: for v in V do begin seperti aplikasi yang berbasis HTML, pada
29: v.pos := v.pos + Flex file source code tetap berada pada
(v.disp/|v.disp|) * development machine dan tidak dideploy
min(v.disp, t); ke dalam server produksi. File-file aset
30: v.pos.x := min(W/2, seperti MP3, dokumen-dokumen CSS dan
max(-W/2, v.pos.x)); PNG dapat dimasukkan ke dalam .swf
31: v.pos.y := min(L/2, ataupun diload saat run time. Gambar
max(–L/2, v.pos.y));
dibawah ini merupakan gambar yang
32: end
menjelaskan tentang konsep dasar dari cara
33: {reduce the temperature as
the layout approaches a
kerja Flex atau Flex workflow.
better configuration}
34: t := cool(t);
35: end

III. ADOBE FLEX


Pada dasarnya Flex adalah
kumpulan dari beberapa teknologi yang Gambar 1. Flex Workflow [2]
membuat kita dapat membangun sebuah
aplikasi yang Flash Player sebagai 3.1 Flex Web Service
compilernya, sebuah runtime Web service merupakan sebuah cara
enviroment untuk mewujudkan user terstandarisasi yang digunakan untuk
interface dan interactivity yang lebih mengintegrasikan aplikasi-aplikasi pada
baik. Flex telah memberikan pengaruh Web dengan menggunakan Extensible
terhadap beberapa teknologi dan standar Markup Language (XML), Simple
yaitu seperti MXML, Web Service, Object Access Protocol (SOAP), Web
HTTP, Flash Player, dan ActionScript Service Description Language (WSDL),
[2]. dan Universal Description Discovery
Flex merupakan bagian dari Adobe and Integration (UDDI). XML
Flash Platform dimana merupakan digunakan untuk menandai data, SOAP
kumpulan teknologi dengan Flash digunakan untuk mentransfer data,
Player sebagai intinya. Aplikasi-aplikasi WSDL digunakan untuk
Flex ditujukan untuk menggunakan mendeskripsikan service yang tersedia,
Flash Player sebagai compiler yang dan UDDI digunakan untuk menyusun
berarti Flash Player yang menjalankan daftar seluruh service-service yang
semua aplikasi Flex. Framework dari tersedia. Karena tujuan utama web
Flex terdiri dari Flex class library dan service adalah membuat pihak-pihak
sekumpulan class ActionScript yang mampu berkomunikasi sehingga tidak
digunakan dalam aplikasi Flex. Flex diperlukan untuk mengetahui secara
framework yang ditulis secara detil tentang seluk beluk sistem pihak
keseluruhan dalam bentuk class-class lain di balik firewall.

3
Komponen web service pada Flex administrator diharuskan melakukan
mengirim dan menerima pesan SOAP proses login terlebih dahulu. 3.Situs
lewat HTTP. Untuk dapat berhubungan user mengakses database situs untuk
dengan web service dan memanggil melakukan proses login dan proses
operasi dari web service maka objek pemberian feedback. Saat user
pada client harus dihubungkan dengan melakukan proses pencarian dan proses
Web Service Description Language download, data ini nantinya juga akan
(WSDL) dari web service dengan cara disimpan didalam database. 5. Untuk
mengisi nilai dari WSDL dari web proses pencarian, situs user melakukan
service dengan URI-nya. pencarian data musik melalui web
service. Web service yang dipakai
adalah web service dari Amazon,
LyricWiki, dan YouTube. Hasil
pencarian melalui web service akan
kembali ditampilkan pada halaman
situs.

V. UJI COBA
Gambar 2. Flex Web Service [3] Setelah melakukan pengembangan
program dilakukan proses uji coba atau
IV. ARSITEKTUR SISTEM testing. Hasil yang diharapakan untuk
uji coba adalah dapat berfungsinya
Pada bagian ini akan dijelaskan aplikasi atau situs dengan baik. Selain
mengenai arsitektu sistem secara umum itu, situs ini juga diharapkan dapat
yang ada pada situs music-map. Desain membantu user atau pengguna dalam
arsitektural dari situs music-map ini melakukan pencarian musik yang
menggunakan database sendiri dan diinginkannya. Segi efektifitas juga
database dari Amazon, LyricWiki, dan diharapkan dapat meningkat, karena
YouTube yang di akses melalui web sebelumnya user harus membuka
service. banyak halaman yang berbeda.
Situs Situs User
Administrat YouTube 5.1 Uji Coba Music-Map
or Music-map diuji coba dengan
3 5
7
1
6
1 melakukan pencarian musik yang akan
1 6 1
YouTube
2 4
5 direpresentasikan dengan menggunakan
Web 1 1 LyricsFly graf atau yang disebut music-map. Uji
Service 8 9
Database 2 coba dilakukan dengan mencari musik
Situs 21 2 2
7 1 4 1 0 dengan jumlah node pada graf sebanyak
LyricsFly
0
Amazon LyricWiki
101 node. Berikut dapat dilihat gambar
dari hasil uji coba tersebut.
8 9 1 1
2 3
Amazon LyricWiki 5.2 Uji Coba Pada Browser Berbeda
Untuk uji coba situs dilakukan pada
Gambar 3. Arsitektur Situs Secara
Umum banyak browser yang berbeda. Hasil
dari uji coba tersebut akan dijabarkan
Sebelum administrator dapat pada tabel dibawah ini.
melihat laporan-laporan tersebut,

4
VI. KESIMPULAN
Berdasarkan pembahasan yang ada
pada bagian sebelumnya maka dapat
diambil beberapa kesimpulan sebagai
berikut:
 Music-map dengan jumlah node
lebih dari 100, maka akan memiliki
respon yang lambat baik dalam
melakukan pengaksesan data
Gambar 4. Pencarian pada Music-map kembali maupun proses pergerakan
dengan Jumlah Node = 100 graf.
 Pemakaian software Flex dalam
Tabel 1 pembuatan situs membuat tampilan
Hasil Uji Coba Browser situs terlihat lebih interaktif dan
Nama menarik, namun tidak kompatibel
Hasil Keterangan dengan PHP.
Browser
Mozilla Sukses Situs dapat berjalan  Pembuatan situs untuk user dengan
Firefox dengan baik dan menggunakan Adobe Flex 3.0 yang
sesuai dengan yang merupakan tool pembuatan situs
diharapkan. dengan konsep web v2.0 yang
Opera Gagal Aplikasi dapat berbasis Rich Internet Application
menampilkan atau RIA sangat menunjang
halaman situs tampilan interface tapi di sisi lain
beserta dengan supaya dapat beroperasi dengan
aplikasi Flash. baik maka dibutuhkan koneksi
Namun jika aplikasi internet yang stabil dan cepat.
Flash tersebut  Perubahan web service yang sangat
terdapat sebuah cepat. Pada perkembangan situs
operasi untuk yang digunakan yaitu Amazon dan
melakukan akses ke LyricsWiki mengalami perubahan
web service akan struktur dalam pengaksesan atau
muncul pesan error penggunaan web servicenya. Untuk
seperti berikut dapat melakukan akses ke web
“Security error service Amazon dibutuhkan
accessing url”. parameter baru.
Google Sukses Situs dapat berjalan
Chrome dengan baik dan Referensi
sesuai dengan yang
[1] Thomas M. J. Fruchterman & Edward M.
diharapkan. Reingold. Graph Drawing by Force-
Internet Gagal Aplikasi dapat Directed Placement. Software – Practice
Explorer mengakses halaman and Experience, 1991
PHP dengan [2] Chafic Kazoun and Joey Lott.
sempurna, namun Programming Flex 3. O’Reilly Media Inc.
2008
tidak dapat [3] Flex Architecture Fundamental.
mengakses aplikasi http://www.dehats.com/drupal/?q=node/33.
Flash yang ada. 2009

5
[4] Gilmore, W.Jason. Beginning PHP and
MySQL 5: From Novice to Professional,
Second Edition (Paperback). 2004
[5] Yenatan, Yohana. Pembuatan Situs
Bioskop dengan Fasilitas Online Booking
Menggunakan Adobe Flex 2.0. Sekolah
Tinggi Teknik Surabaya. 2008
[6] Korhonen, Chris, David Hassoun, John
Crosby. Creating Mashups with Adobe
Flex & AIR. FriendsofED. 2008
[7] Lin, Chun-Cheng, Hsu-Chen Yen. A New
Force-Directed Graph Drawing Method
Based on Edge-Edge Repulsion.
http://cobra.ee.ntu.edu.tw/~sanlin/sanlin/sli
des/IV2005-EEReplusion.ppt. 2008
[8] Matsubayashi, T., T. Yamada. A Force-
Directed Graph Drawing Based on The
Hierarchical Individual Timestep Method.
http://www.waset.org/pwaset/v21/v21-
39.pdf. 2007
[9] Mueller, Christopher, Douglas Gregor,
Andrew Lumdaine. Distributed Force-
Directed Graph Layout and Visualization.
http://www.osl.iu.edu/publications/prints/2
006/mueller_egpgv06.pdf. 2006
[10] Pulo, K. J. Recursive Space
Decompositions in Force-Directed Graph
Drawing Algortithms.
http://crpit.com/confpapers/CRPITV9Pulo.
pdf. 2006
[11] Reinhardt, Robert, Snow Dowd. Adobe
Flash CS3 Professional Bible. 2007
[12] Tikhonova, Anna, Kwan-Liu Ma. A
Scalable Parallel Force-Directed Graph
Layout Algorithm.
http://vidi.cs.ucdavis.edu/EGPGV08/pages/
tikhonova.pdf
[13] Walshaw, C. A Multilevel Algorithm for
Force-Directed Graph Drawing.
http://staffweb.cms.gre.ac.uk/~c.walshaw/p
apers/fulltext/WalshawTR6000.pdf. 2000

Anda mungkin juga menyukai