You are on page 1of 10

Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST)2014

Yogyakarta, 15 November 2014

ISSN: 1979-911X

VISUALISASI GRAF DAN ALGORITMA-ALGORITMA DALAM TEORI GRAF


MENGGUNAKAN BEBERAPA PAKET SOFTWARE
Yudi Setyawan1
Jurusan Matematika Fakultas Sains Terapan IST AKPRIND YOGYAKARTA
e-mail :1yudista2003@yahoo.com

ABSTRACT
Graph theory is a branch of mathematics frequently used to solve real problems because they
can be understood, formulated and solved easier when stated as graph forms. The development of
graph theory is done by scientist from diverse area along with their needs. As a result, there are new
terminologies and concepts where they often use different terms for the same meaning and vice versa.
Basically problems in graph theory relate to the existence of a certain property or extreem value of a
graph. Graph properties are easier to study if it is drawn or visualized. To find extreem values of a
graph, usually one makes use of a certain algorithm and both of them mostly are not easy to do. This
research serves the use of softwares to visualize graphs and generate algorithms related to graph
theory. Open source or shareware softwares such as Graph Magics, Gephi dan Graphviz are used.
Research concludes that those softwares are very useful to visualize graphs and generate graph
algorithms as well and noted that each of them has advantages and disadvantages. Graph Magics can
be used to draw and edit graphs easily and it is equipped with various algorithms. Gephi is a suitable
software to visualize big graphs fast and its results are nice and beatiful. Graphviz can be use to
visualize various graphs, however the understanding of programming is required.
Keywords: graph visualization and algorithm, Graph Magics, Gephi, Graphviz
PENDAHULUAN
Teori graf merupakan cabang ilmu yang relatif baru, karena baru mulai dikembangkan pada
awal abad ke delapan belas. Namun demikian, perkembangan cabang ilmu ini sangat pesat. Hal ini
disebabkan oleh manfaat teori graf yang sangat luas, dapat dikatakan bahwa semua cabang ilmu lain
dapat memanfaatkannya. Bidang kedokteran dan biologi, teori graf dapat digunakan untuk
menjelaskan pola kode genetika makhluk hidup (Seffens, W., 2002). Di bidang elektronika dan
komputer, graf banyak sekali dimanfaatkan seperti untuk pengembangan jaringan berjalan (mobile adhoc networks-MANETs). Konsep-konsep graf seperti ketersambungan (connectivity), kesebandingan
(scalability), penentuan jalur dan topologi (routing and topology) banyak dimanfaatkan untuk
pengembangan jaringan mobile ad hoc yang ekonomis dan tangguh (M. A. Rajan et al., 2008 dan
Shrinivas, S., G. et. al., 2010). Konsep tentang struktur pohon (tree) dalam graf sering digunakan
dalam analisis data biologi dan arkeologi guna merepresentasikan pembagian satu spesies menjadi
dua atau lebih spesies, atau pemecahan satu artefak menjadi beberapa artefak. Dalam bidang
manajemen, masalah penjadwalan skala besar juga dapat diselesaikan secara lebih mudah dengan
graf.
Di lain pihak, teori graf berkembang melalui pendefinisian konsep-konsep baru yang
diturunkan berdasarkan konsep-konsep yang sudah ada serta kebutuhan praktis sehingga keterkaitan
antar konsep-konsep tersebut semakin kompleks dan muncullah teorema-teorema. Beberapa teorema
mungkin dapat dibuktikan dengan cara sederhana, namun banyak juga teorema yang pembuktiannya
memerlukan algoritma tertentu yang seringkali tidak mudah dipahami, apalagi oleh pengguna berlatar
belakang matematika kurang kuat. Melalui visualisasi dengan software komputer, pemahaman konsep
dan algoritma teori graf dapat menjadi lebih mudah.
Mengingat pentingnya teori graf bagi bidang ilmu lain, maka sudah seharusnya pemahaman
tentang konsep-konsep dan algoritma-algoritma dalam teori graf dibuat lebih mudah dan praktis.
Masalah ini dapat diatasi dengan penyediaan software komputer atau paket program yang sesuai
dengan kebutuhannya. Meskipun terdapat banyak software komputer yang bersifat umum seperti
Matlab, Maple (Ebrahimi, M.A. et al., 2006), yang dapat digunakan untuk menyelesaikan berbagai
permasalahan dalam teori graf, hal ini kurang praktis dan memerlukan biaya karena software tersebut
C-259

Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST)2014


Yogyakarta, 15 November 2014

ISSN: 1979-911X

bersifat proprietary. Oleh karena itu perlu dicari software berukuran kecil, bersifat open source atau
shareware namun sesuai dengan kebutuhan. Beberapa software open source khusus untuk teori graf
dapat ditemukan dengan mudah di internet seperti Graph Magics, Graphviz, Gephi, GraphTea,
Graphalg, Gograph, Connectivity dan sebagainya, sedangkan software open source umum yang dapat
digunakan adalah seperti Scilab dan Maxima. Beberapa software teori graf tersebut dapat
dimanfaatkan
untuk
mempermudah
pemahaman
konsep-konsep
teori
graf,
menggambarkan/memvisualisasikan sebuah graf, menentukan sifat-sifat graf, maupun melakukan
algoritma-algoritma dalam teori graf.
Berdasarkan alasan tersebut, dipilih beberapa software komputer yang cocok digunakan untuk
membantu pemahaman konsep dan algoritma dalam teori graf dan selanjutnya dikaji pemanfaatannya
untuk membantu menyelesaikan beberapa permasalahan dalam teori graf terutama yang berkaitan
dengan visualisasi dan algoritma graf. Dengan demikian diharapkan penyampaian pemahaman konsep
dan algoritma dalam teori graf dapat dilakukan dengan lebih mudah melalui pemberian contoh-contoh
nyata. Selain itu, software tersebut dapat dimanfaatkan untuk membantu menyelesaian permasalahan
nyata yang sering dihadapi sehingga dapat memberikan kontribusi nyata dalam pembelajaran dan
penelitian teori graf serta lebih memperkenalkan software-software yang dapat digunakan dalam
pembelajaran dan penelitian teori graf.
PEMBAHASAN
Graf terdiri atas himpunan simpul V dan himpunan sisi E dengan setiap sisi memiliki ujungujung yang berupa simpul. Graf dapat digunakan untuk merepresentasikan berbagai macam sistem
nyata, dengan simpul menyatakan unsur dalam sistem tersebut dan unsur-unsur yang saling
berhubungan digambarkan dengan adanya sisi yang menghubungkan unsur-unsur itu. Dalam
sejarahnya, graf digunakan oleh Euler untuk memecahkan masalah jembatan Konigsberg. Masalah
jembatan Konigsberg merupakan teka-teki yakni dari salah satu tempat tertentu apakah kita dapat
berjalan dengan melalui ke tujuh jembatan itu masing-masing tepat satu kali.

Gambar 1. Jembatan Konigsberg


Banyak orang sudah mencoba melakukannya dengan berbagai cara namun tidak ada yang
berhasil. Hal ini menarik Leonard Euler untuk memecahkan masalah tersebut dengan menggunakan
konsep yang sekarang dikenal sebagai teori graf. Jika setiap tempat diwakili oleh simpul dan setiap
jembatan diwakili oleh sisi, maka masalah tersebut dapat digambarkan sebagai graf dengan empat
simpul dan tujuh sisi seperti Gambar 2 berikut.

Gambar 2. Representasi masalah jembatan Konigsberg sebagai graf


Dalam representasi graf dari masalah jembatan Konigsberg ternyata keempat simpul tersebut
semuanya memiliki derajat ganjil. Dengan latar belakang matematika yang dimilikinya, Euler
membuktikan bahwa kita tidak mungkin pergi dari suatu simpul tertentu dengan melalui ke tujuh sisi
dari graf itu masing-masing tepat satu kali dan kembali ke simpul awal. Euler membuktikan bahwa ini
dilakukan jika sebanyak-banyaknya ada dua simpul dengan derajat ganjil, yakni simpul awal dan
simpul akhir. Dalam perkembangan teori graf, konsep ini dikenal dengan trail Euler (Eulerian trail).
C-260

Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST)2014


Yogyakarta, 15 November 2014

ISSN: 1979-911X

Sebagai cabang matematika terapan yang banyak digunakan untuk menyelesaikan masalah
nyata dalam berbagai bidang, konsep-konsep dalam teori graf biasanya muncul sesuai dengan
kebutuhan dan kenyataan yang terjadi pada bidang tersebut. Seiring perkembangan kebutuhan
masing-masing bidang ilmu, dikembangkan konsep-konsep atau istilah baru. Hal pertama yang perlu
diperhatikan adalah masalah pendefinisian dari konsep-konsep tersebut karena definisi yang tepat
dapat menjelaskan secara lebih dalam tentang apa yang dimaksudkannya. Hal ini perlu ditekankan
karena di lapangan sering ditemukan dua istilah berbeda untuk menyatakan satu konsep. Istilah yang
paling pokok dalam graf yakni vertex dan edge. Beberapa padanan atau terjemahan yang sering
digunakan untuk vertex adalah node yang biasa diterjemahkan menjadi simpul, titik, atau tijung.
Sedangkan edge sering disebut dengan arc dan diterjemahkan sebagai sisi, tepi, atau garis.
Graf G = G(V,E) = G(V(G),E(G)) adalah sistem yang terdiri atas himpunan simpul V = V(G)
dan himpunan sisi E=E(G), dengan EVxV. Graf dibedakan menjadi graf tak berarah dan graf
berarah. Dalam graf tak berarah, sisi e=(vi,vj) dapat ditulis secara singkat dengan e=vivj saja. Dalam
pembahasan ini seluruh graf diasumsikan tak berarah, kecuali apabila dinyatakan khusus. Dua buah
simpul vi dan vj dikatakan adjacent (bertetangga) jika vivj=eE. Dalam hal ini dikatakan bahwa e
berinsiden dengan vi dan vj. Untuk suatu vV, himpunan tetangga v didefinisikan dengan
N(v)={wV:vwE} dan derajat v didefinisikan dengan d(v)=|N(v)|. Maksimum dan minimum derajat
simpul-simpul dalam G berturut-turut disimbulkan dengan (G) dan (G). Graf G disebut regular
dengan derajat r atau dikatakan r-regular jika (G)=(G)=r. Graf H disebut subgraf dari graf G jika
V(H) V(G) dan E(H) E(G). Graf F=F(V2,E2) disebut induced subgraph (subgraf yang
dibangkitkan oleh) G=G(V,E) jika V2V dan memenuhi: v1,v2V2, v1v2E v1v2E2. Dalam suatu
graf G=G(V,E) selalu berlaku handshaking lemma yakni
2| |. Akibatnya jumlah semua
derajat dari simpul-simpulnya selalu genap. Jadi banyak simpul berderajat ganjil juga selalu genap.
Lebih lanjut lagi, jika G regular dan |V|=n, maka |E|=nr/2. Graf G disebut lengkap jika setiap simpul
selalu adjacent dengan simpul-simpul lainnya, sehingga jumlah sisi dari graf lengkap berukuran n
adalah n(n-1)/2. Graf G=G(V,E) disebut bipartit jika V dapat dipartisi menjadi dua himpunan tak
kosong dan saling asing V1 dan V2 sedemikian hingga setiap sisi e dari G dapat dinyatakan dengan
e=v1v2 dengan v1V1 dan v2V2. Dalam hal ini V1 dan V2 disebut partisi dari V. Jika dalam graf
bipartit G setiap simpul dalam suatu partisi adjacent dengan setiap simpul dalam partisi lainnya maka
G disebut bipartit lengkap dan disimbulkan dengan Km,n, dimana m dan n berturut-turut adalah banyak
anggota dari V1 dan V2. Jika sisi-sisi dari graf diberikan bobot maka disebut graf terbobot. Pada
prakteknya bobot dapat mewakili jarak atau waktu tempuh dari kedua simpul.
Graf G(V,E), walk atau langkah merupakan pasangan berurutan yang berselang-seling antara
simpul-simpul v di V dan sisi-sisi e di E, yang dimulai dan diakhiri dengan simpul, dimana setiap sisi
berinsiden dengan simpul-simpul di depan dan dibelakangnya dan simpul serta sisi boleh muncul
lebih dari satu kali. Apabila dalam suatu walk tidak ada sisi yang muncul lebih dari dua kali, maka
walk itu disebut trail atau jejak. Suatu trail yang simpul awalnya sama dengan simpul akhir disebut
sirkuit atau tour atau kalang. Suatu trail yang memiliki semua simpul berbeda disebut path atau
lintasan. Suatu kalang yang semua simpulnya berbeda kecuali simpul awal dan simpul akhirnya
disebut cycle atau daur. Suatu trail yang melewati seluruh sisi dalam graf G tepat satu kali disebut trail
Euler. Lintasan Hamilton adalah lintasan dalam graf G yang melalui semua simpul dari G.
Menentukan eksistensi dari trail Euler dan lintasan Hamilton dari graf G merupakan suatu hal yang
menarik. Dalam graf yang sederhana (tidak berarah, tanpa loop dan tidak multiple edges), hanya ada
satu sisi yang menghubungkan dua simpul yang berinsiden. Karena itu, untuk menyatakan suatu
langkah, trail, sirkuit, lintasan, atau daur, hanya perlu dituliskan simpul-simpul yang dilewatinya
secara terurut. Graf G dikatakan tersambung (connected) jika untuk setiap pasang simpul v dan w dari
V(G) terdapat lintasan yang ujung-ujungnya adalah simpul v dan w. Jika tidak demikian, maka G
disebut tak tersambung. Suatu graf tak tersambung terdiri dari beberapa graf tersambung maksimal
yang disebut komponen. Suatu graf tersambung dan tidak memiliki daur disebut pohon (tree).
Berikut ini adalah contoh dari Walk, trail, sirkuit, path, dan cycle dalam graf G. Misal G
adalah graf seperti di bawah ini:

C-261

Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST)2014


Yogyakarta, 15 November 2014

ISSN: 1979-911X

Gambar 3. Graf G terhubung dengan sembilan simpul


Berdasarkan graf G di atas, maka himpunan terurut simpul-simpul (v1,v2,v4,v5,v2, v5) adalah suatu
walk. Himpunan terurut simpul-simpul (v1,v2,v4,v5,v2,v3) adalah suatu trail. Himpunan terurut
simpul-simpul (v1,v2,v4,v5,v2,v3,v1) adalah suatu kalang. Himpunan terurut simpul-simpul
(v1,v2,v4,v5,v3) adalah suatu lintasan. Himpunan terurut simpul-simpul (v1,v2,v4,v5,v3,v2) adalah
suatu
daur.
Himpunan
terurut
simpul-simpul
(v7,v4,v9,v7,v5,v4,v2,v5,v3,v2,v1,v3,v6,v5,v8,v7,v6,v8,v9) adalah suatu trail Euler. Lintasan
(v1,v2,v4,v9,v7,v8,v6,v5,v3) adalah suatu lintasan Hamilton.
Subgraf H dari graf G disebut subgraf penjangkau atau perentang (spanning subgraph) jika H
memuat semua simpul dari G. Tree atau pohon T disebut pohon penjangkau atau perentang (spanning
tree) dari graf terhubung G jika T suatu subgraf perentang dari G. Jika G graf terhubung yang
terbobot, yakni graf dimana sisi-sisinya diberikan bobot tertentu, maka dapat dicari pohon penjangkau
yang memiliki total bobot minimum (minimum spanning tree).

Gambar 4. Graf penjangkau dari G

Gambar 5. Pohon penjangkau dari G

Pemanfaatan teori graf di dunia nyata banyak digunakan untuk menyelesaikan permasalahan
eksistensi, non eksistensi dan ekstrematilas dari yang sederhana sampai yang kompleks dan bersifat
terbuka. Beberapa permasalahan yang berkaitan dengan eksistensi misalnya masalah eksistensi trail
Euler dan daur Hamilton, pelabelan simpul atau sisi dengan sifat tertentu, dekomposisi dan packing
suatu graf tertentu atas daur dan pohon. Masalah ekstremalitas dalam teori graf banyak menarik minat
para praktisi karena biasanya berkaitan dengan persoalan optimasi dari permasalahan nyata, misalnya
tentang bilangan warna pada bidang, maksimum ukuran graf lengkap dengan bilangan warna p,
matching (penjodohan) dan himpunan independen maksimum dari suatu graf dan sebagainya. Banyak
masalah open problems terkait eksistensi dan ektremalitas dalam teori graf. Dengan demikian
penelitian dalam teori graf terus dikembangkan dengan berbagai cara baik analitis maupun numeris
dengan bantuan komputer melalui algoritma yang diciptakan. Dalam teori graf dikenal banyak
algoritma untuk menjawab permasalahan terkait ekstremalitas atau untuk menunjukkan eksistensi
suatu sifat.
Beberapa algoritma yang ditemui dalam teori graf misalnya algoritma Brent (Brent, R.P.,
1980) dan Floyd (Knuth, D., E., 1969), untuk menentukan adanya daur dalam graf. Algoritma untuk
penjodohan maksimum misalnya algoritma Hopcroft-Karp (Hopcroft,J., E., 1973), dan algoritma
Hungaria untuk penjodohan sempurna. Dalam masalah pewarnaan, digunakan coloring algorithm.
Untuk menentukan pohon penjangkau minimum dapat digunakan algoritma Boruvska, Kruskal
(Kuskal, J., 1956, Proceeding of AMS pp 48-50), Prim atau algoritm balik-hapus (reverse-delete
algorithm). Untuk masalah jaringan berkapasitas ada algoritma Ford-Fulkerson, Edmons-Karp, Dinic,
Karger dan push-relabel algorithm. Untuk menemukan lintasan terpendek digunakan algoritma
Bellman-Ford, Dijkstra, Floyd-Warshall atau Johnson. Untuk menyelesaikan masalah penjaja keliling
(traveling salesman problem) tersedia algoritma tetangga terdekat (nearest neighbor) dan algoritma
Christofides.
Algoritma ini muncul dari masalah praktis untuk menentukan jarak terpendek dari tempat A
ke tempat B dimana ada beberapa alternatif ruas jalan yang dapat ditempuh. Masalah ini dapat
C-262

Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST)2014


Yogyakarta, 15 November 2014

ISSN: 1979-911X

direpresentasikan dengan penentuan lintasan terpendek antara dua buah simpul dalam suatu graf
terbobot. Sebagai contoh, apabila dimiliki graf terbobot seperti berikut:

Gambar 6 Graf terbobot G dengan 9 simpul


Bagaimana menentukan lintasan terpendek dari simpul 1 ke simpul 9? Untuk itu dapat digunakan
beberapa algoritma seperti algoritma Dijkstra. Simpul 1 disebut simpul sumber dan simpul 9 disebut
simpul tujuan. Langkahnya adalah:
1. Setel jarak ke simpul sumber sama dengan nol dan jarak ke simpul-simpul lainnya sama dengan
tak hingga.
2. Di antara semua simpul yang belum diproses, temukan satu simpul yang memiliki jarak minimum
dan namakan sebagai i. Jika i merupakan simpul tujuan, maka jarak minimum/lintasan terpendek
simpul sumber ke simpul tujuan sudah ditemukan dan selesai. Jika bukan, maka tandai simpul
tersebut dan lanjutkan ke langkah 3. (jika jarak ke semua simpul yang belum diproses sama
dengan tak hingga maka tidak ada lintasan dari simpul sumber ke simpul tujuan)
3. Periksa semua simpul j yang belum terproses dan berinsiden dengan simpul i. Jika jarak terpendek
ke simpul j lebih besar dari jarak terpendek ke i ditambah bobot sisi antara ke dua simpul tersebut,
maka jarak/lintasan terpendek ke j diperbarui dengan nilai tersebut dan tandai bahwa simpul itu
telah dicapai dari i.
4. Kembali ke langkah 2.
Algoritma dalam graf dapat dimanfaatkan untuk penyelesaian masalah praktis sehari-hari di
berbagai bidang. Agar pemakai teori graf dapat memanfaatkan algoritma dengan mudah, perlu
disediakan paket program yang bersifat user friendly. Banyak paket program untuk menyelesaikan
permasalahan dalam teori graf baik yang bersifat proprietary maupun open source. Paket tersebut ada
yang merupakan bagian dari paket software umum seperti paket atau toolbox seperti Networks dan
GraphTheory yang merupakan salah satu toolbox dari software Maple. Dalam software Matlab dapat
digunakan toolbox Matgraph atau Bioinformatics. Namun demikian ada beberapa paket program
berukuran kecil yang khusus dibuat untuk menyelesaikan masalah-masalah dalam graf. Paket-paket
tersebut antara lain Graph Magics, Gephi, Graphviz, Graphalg, Connectifity, dan Gograph. Berikut ini
dibahas beberapa paket program yang tersedia untuk penyelesaian masalah graf serta contoh
penggunaannya.
Graph Magics merupakan software teori graf yang bersifat shareware dan dikembangkan oleh
Dumitru Ciubatii. Softaware ini dapat didownload di www.graph-magics.com. Graph Magics dapat
menyusun, memodifikasi dan melakukan operasi dan algoritma graf. Tersedia tool graph generator
dan algoritma-algoritma seperti lintasan terpendek, pohon penjangkau minimum, max flow-min cut,
lintasan Euler dan Hamilton. Software ini cocok digunakan dalam belajar teori graf. Visualisasi graf
yang bagus dapat disimpan dalam file atau dicetak.
Untuk membuat suatu graf baru dimulai dengan membuat file baru (pilih menu File New),
menambahkan simpul baru (klik icon +), serta menambah/menghapus sisi-sisi sesuai keinginan
kita. Untuk menambah/menghapus sisi antara dua simpul atau lebih, lakukan ctrl+klik simpul-simpul
tersebut, klik kanan, dan pilih opsi yang sesuai. Apabila diperlukan dapat juga ditambahkan bobot
atau kapasitas dari sisi-sisinya.

C-263

Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST)2014


Yogyakarta, 15 November 2014

ISSN: 1979-911X

Gambar 7 Tampilan program Graph Magics dengan menu dan sub menunya
Hasil yang diperoleh dapat diedit simpul, sisi, bobot dan kapasitas sisi, serta layoutnya.
Pilihan layout yang tersedia adalah free, circle, bipartit, tree dan grid dilakukan dengan perintah
Graph Vertices Layout pilihan layout. Graf yang baru juga dapat dibuat dengan menggunakan
fasilitas Generate. Untuk menggenerate graf, klik File Generate a New Graph isi jumlah simpul,
jumlah sisi, jenis graf dan pilihannya Generate pilih editor dan append to existing graph klik
export klik OK. Proses pengeditan simpul, sisi, bobot dan kapasitas sisi dapat dilakukan melalui
data grafnya dengan memilih menu View Data atau Graph-Data, kemudian ubah nilainya dan refresh
grafnya.

Gambar 8 Graf yang dibuat dengan menempatkan simpul secara bebas dan layout circle

(a)

(b)

Gambar 9 (a) Pilihan jumlah simpul dan sisi, bobot dan kapasitas sisi, serta jenis graf
(b) Graf yang dibuat dengan menggunakan fasilitas Generate dengan pilihan (a)
Gephi merupakan sotware yang dapat digunakan untuk memvisualiasikan graf atau jaringan
yang berukuran besar. Software ini cocok untuk pengguna graf di bidang manajemen dan pemasaran
(Walia, L and Bhatia, P.S., 2012). Software ini bersifat open source dan user friendly. Tersedia menumenu File, Workspace, View, Tool, Window, Plugins dan Help yang mudah digunakan. Graf yang
dibuat dengan Gephi dapat direkayasa sehingga memiliki tampilan bentuk dan warna yang menarik
dan hasilnya dapat diekspor dalam file pdf, PNG atau SVG. Gephi dapat membuka contoh graf yang
ada, mengimpor graf atau mengenerate graf sendiri. Contoh Graf Les Miserables yang
menggambarkan hubungan tokoh-tokoh dalam novel les Miserables:
C-264

Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST)2014


Yogyakarta, 15 November 2014

ISSN: 1979-911X

Gambar 10 Graf Les Miserables


Untuk melihat beberapa karakteristik dari graf, pilih sub menu Statistics dari menu Window dan klik
Run. Statistik yang tersedia adalah average degree, average weighted degree, nerwork diameter, graph
density, dan sebagainya.

Gambar 11 Beberapa pilihan untuk melihat karakteristik dari graf dengan Gephi.
Gephi dapat mengimport graf dari spigot atau database. Untuk menggenerate graf dengan
sifat tertentu, klik menu File generate pilihan graf (random atau dinamic graf). Berikut ini
contohnya:

Gambar 12 Graf random dengan 200 simpul yang digenerate dengan Gephi
Graphviz merupakan software open source yang baik untuk memvisualisasikan masalah
jaringan dengan ukuran sampai satu juta simpul. Karena itu cocok digunakan di bidang jaringan, basis
data, bioinformatika, rekayasa perangkat lunak, bahasa dan alat pemrograman, dan machine learning.
Graphviz dapat didownload di www. Graphviz.org. Graphviz dapat menggambarkan dan mengedit
graf sesuai keinginan. Untuk keperluan itu perlu dipelajari pemrogramannya karena Graphviz
menggunakan pemrograman berbasis text. Berikut contohnya:
C-265

Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST)2014


Yogyakarta, 15 November 2014

Program
digraph {
1 -> 2;
1 -> 3;
}

Visualisasi

Program
graph {
1 -- 2;
1 -- 3;
}

ISSN: 1979-911X

Visualisasi

Gambar 13 kode program dan visualisasi graf berarah dan tak berarah dengan 3 simpul
Untuk menggambarkan graf yang lebih detil, dapat dilakukan dengan menuliskan programnya
berdasar panduan penggunaan (user guide) yang dapat kita peroleh di website Graphviz.
Algoritma graf dengan menggunakan Software
Graph Magics merupakan software yang dilengkapi dengan banyak algoritma. Dengan Graph
Magics dapat ditentukan nilai tertentu dari graf dengan memilih algoritma yang sesuai. Beberapa
algoritma yang dapat dilakukan dengan menggunakan Graph Magics adalah Shortest path algorithm,
Minimal Spanning tree, Trail Euler, Lintasan Hamilton, dan Chinese Postman Problem.
Misal ingin ditentukan shortest path dari simpul 1 ke simpul 9 dalam graph G berikut.

Gambar 14 Graf terbobot G dengan 9 simpul, simpul 1 : simpul sumber dan simpul 2 : simpul tujuan
Setelah graf G digambarkan, simpul sumber dan simpul tujuan harus ditandai terlebih dahulu
dengan mengklik kanan simpulnya dan memilih set/unset as start vertex (untuk simpul sumber) atau
set/unset as end vertex (untuk simpul tujuan). Selanjutnya tinggal dipilih algoritmanya dengan
mengklik Graph Find Shortest Path (From start to end vertex). Hasilnya akan ditunjukkan
seperti berikut:

Gambar 15 lintasan terpendek dari simpul 1 ke simpul 9.


Terlihat bahwa lintasan (1,2,4,7,9) merupakan lintasan terpendek dari simpul 1 ke simpul 9 dengan
total jarak/bobot 2+1+4+4=11. Nilai ini juga dapat dilihat jika diklik pilihan View Data:

Gambar 16 Tampilan data dari lintasan terpendek dalam G


C-266

Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST)2014


Yogyakarta, 15 November 2014

ISSN: 1979-911X

Jika ingin dicari semua lintasan terpendek dari simpul 1 ke simpul-simpul lainnya, maka
dapat dilakukan dengan menset simpul 1 sebagai start vertex dan dipilih algoritmanya: Graph Find
All Shortest paths: Data panjang lintasan terpendek dari simpul 1 ke simpul-simpul lainnya juga
dapat ditampilkan

Gambar 17 Lintasan terpendek dari simpul 1 ke simpul-simpul lainnya


Minimal Spanning tree
Graph magics juga memiliki algoritma untuk menentukan minimal spanning tree dari suatu
graf. Untuk mencari minimal spanning tree dari graf G di atas, pilih menu Graf Find Minimal
Spanning Tree. Untuk menampilkan data bobot dari minimal spanning tree tersebut, klik Graph Data.

Gambar 18 minimal spanning tree dari graf G dan data bobotnya


Trail Euler
Dalam Graph Magics, istilah trail Euler disamakan dengan lintasan Euler. Untuk mencari
trail Euler dengan Graph Magics, caranya juga mudah. Pilih menu Graph Find Eulerian
Path/Circuit

Gambar 19 Trail Euler dari dan data sisi-sisi dari trail Euler G
Lintasan Hamilton
Untuk mencari lintasan Hamilton, pilih menu Graph Find Hamitonian Path. Hasilnya
adalah seperti berikut:

Gambar 20 Lintasan Hamilton beserta data lintasan Hamilton dari G


Chinese Postman Problem
Salah satu permasalahan nyata yang sangat terkenal adalah Chinese Postman Problem, yakni
masalah tentang bagaimana seorang tukang pos menemukan jalur (kalang) terpendek yang harus
dilewati berawal dari kantor pos menuju ke semua alamat tujuan dan kembali ke kantor pos lagi (atau
langsung ke rumahnya). Dengan menggunakan Graph Magics, pilih menu Graph Find Chinese
C-267

Prosiding Seminar Nasional Aplikasi Sains & Teknologi (SNAST)2014


Yogyakarta, 15 November 2014

ISSN: 1979-911X

Postman Problem. Untuk melihat jalur mana yang harus dilewati dapat dilihat dengan klik Graph
Data.

Gambar 21 Jalur (kalang) terpendek dari simpul 1 ke simpul-simpul lainnya dan kembali ke simpul 1
beserta data urutan simpul-simpul yang dilewati
KESIMPULAN
Dari penelitian yang telah dilakukan diperoleh beberapa kesimpulan. Teori graf perlu
dipelajari dan dikembangkan karena dapat digunakan untuk menyelesaikan beberapa permasalahan
nyata dalam berbagai bidang. Untuk mempermudah dalam memahami istilah, konsep, teorema dalam
teori graf dibutuhkan software yang dapat digunakan untuk memvisualisasikan graf serta melakukan
algoritma dalam graf dengan mudah. Ada berbagai software open sorce yang dapat digunakan untuk
visualisasi dan algoritma dalam teori graf. Software-software Graph Magics, Gephi dan Graphviz
dapat dimanfaatkan untuk mengatasi permasalahan tersebut.
DAFTAR PUSTAKA
Bass, D.W., 2002, Hamilton Decompositions and (n/2)-Factorizations of Hypercubes, Journal of
Graph Algorithms and Applications vol. 6, no. 3, pp. 174194 (2002)
Brent, R.P., 1980, An Improved Monte Carlo Factorization Algorithm, BIT 20 (1980), pp 176-184.
Ciubatii, D., 2013, Graph Magics, http://www.graph-magics.com/index.php, diakses 14 Februari
2013.
Ebrahimi, M.A. et al., 2006, A Graph Theory Package for Maple, Part II: Graph Coloring, Graph
Drawing, Support Tools, and Networks, Department of Mathematics, Simon Fraser University
Burnaby, BC, Canada, V5A 1S6
Guerrieri, B., Solving the Traveling Salesman Problem, Florida A&M University
Hopcrof, J., E., and R.M. Karp, An n2.5 Algorithm for Maximum Matchings in Bipartite Graphs, SIAM
Journal of Computing, Vol. 2, No. 4, 1973, 225-231
Knuth, D., E., 1969, The Art of Computer Programming, vol. II: Seminumerical Algorithms,
Addison-Wesley.
Kuskal, J., 1956, Proceeding of the American Mathematical Society pp 48-50 (1956).
Lacey, L.L.,2004, Max Flow-Min Cut, Schenectady County Community College, Schenectady, NY,
USA.
Mawata, C., P., Graph Theory Lessons, 2013, http://www.mathcove.net/petersen/lessons, diakses 18
Februari 2013.
Rajan, M. A., M. Girish Chandra, Lokanatha C. Reddy, Prakash Hiremath, 2008, Concepts of Graph
Theory Relevant to Ad-hoc Networks, Int. J. of Computers, Communications & Control,
ISSN 1841-9836, E-ISSN 1841-9844 Vol. III (2008)
Seffens, W., 2002, Graph Theory Patterns in the Genetic Codes, Forma, 17, 309320, 2002
Shrinivas, S., G. et.al., 2010,Applications of Graph Theory in Computer Science an Overview,
International Journal of Engineering Science and Technology Vol. 2(9), 2010, 4610-4621.
Walia, L and Bhatia, P.S., 2012, Data Visualization with Gephi, Vinot Gupta Scchool of Managemen,
IIT Karagpur
.............., 2013, Graphviz -Graph Visualization Software, http://graphviz.org/, diakses 14 Februari
2013.
C-268

You might also like