• Tidak ada hasil yang ditemukan

Analisis perbandingan beban komputasi algoritma dijkstra,a*, dan floyd-warshall dalam topologi jaringan mesh

N/A
N/A
Protected

Academic year: 2021

Membagikan "Analisis perbandingan beban komputasi algoritma dijkstra,a*, dan floyd-warshall dalam topologi jaringan mesh"

Copied!
32
0
0

Teks penuh

(1)Hak cipta dan penggunaan kembali: Lisensi ini mengizinkan setiap orang untuk menggubah, memperbaiki, dan membuat ciptaan turunan bukan untuk kepentingan komersial, selama anda mencantumkan nama penulis dan melisensikan ciptaan turunan dengan syarat yang serupa dengan ciptaan asli. Copyright and reuse: This license lets you remix, tweak, and build upon work non-commercially, as long as you credit the origin creator and license it on your new creations under the identical terms.. Team project ©2017 Dony Pratidana S. Hum | Bima Agus Setyawan S. IIP.

(2) LAMPIRAN. LAMPIRAN A SOURCE CODE APLIKASI OMNeT++ Perhatian: Source code dilampirkan hanya bertujuan untuk analisa dan ilustrasi, untuk memberi pembaca gambaran yang lebih jelas tentang pekerjaan yang sedang dibahas dalam skripsi.. mesh.ned simple node { parameters: @display("i=misc/node_vs,gold"); gates: inout port[]; } network mesh { parameters: // parameter for number of layer int layer @prompt("Number of layers"); // parameter for number of nodes per layer int sublayer @prompt("Number of nodes per layer"); // display configuration @display("bgb=,,grey"); types: // channel configuration channel Channel extends ned.DelayChannel { delay = 0.01ms; @display("ls=white,1,solid"); } submodules: node[layer*sublayer+2]: node { }. 41 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(3) mesh.ned (lanjutan) connections: // connection from source for i=1..sublayer { node[0].port++ <--> Channel <--> node[i].port++ if uniform(0,100) < 65; } // connection in mesh network for i=0..layer-2, for j=i*sublayer+1..i*sublayer+sublayer, for k=(i+1)*sublayer+1..(i+1)*sublayer+sublayer { node[j].port++ <--> Channel <--> node[k].port++ if uniform(0,100) < 65; } // connection to destination for i=layer*sublayer-sublayer+1..layer*sublayer { node[layer*sublayer+1].port++ <--> Channel <--> node[i].port++ if uniform(0,100) < 65; } }. 42 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(4) node.cc #include <rdtsc.h> #include <time.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <omnetpp.h> //define algorithms #define DIJKSTRA 0 #define ASTAR 1 #define FLOYDWARSHALL 2 #define MAX 999999 // node global variable static int nodeCount = 0; // Dijkstra global variable static int dijkstraAddition = 0; static int dijkstraComparison = 0; static int dijkstraAssignment = 0; static double dijkstraStart, dijkstraEnd; // Floyd-Warshall global variable static int floydAddition = 0; static int floydComparison = 0; static int floydAssignment = 0; static double floydStart, floydEnd; // A* global variable static int astarAddition = 0; static int astarComparison = 0; static int astarAssignment = 0; static double astarStart, astarEnd; class node : public cSimpleModule { private: // node data int *channelWeight; public: // constructor node(); // destructor virtual ~node();. 43 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(5) node.cc (lanjutan) protected: virtual void initialize(); virtual void channelInitialize(); virtual void astarMessage(int nodeCount); virtual void floydMessage(int nodeCount); virtual void dijkstraMessage(int nodeCount); virtual void handleMessage(cMessage *message); // A* helper function virtual bool isEmptySet(bool set[]); virtual int lessWeight(bool set[],int weight[]); }; Define_Module(node); node::node() { } node::~node() { } void node::initialize() { // count available node nodeCount++; channelInitialize(); // generate starter message if (getIndex() == 0) { // main message cMessage *mainMessage; char textMessage[5]; // Dijkstra message sprintf(textMessage, "%d", DIJKSTRA); mainMessage = new cMessage(textMessage); scheduleAt(1, mainMessage); // Floyd-Warshall message sprintf(textMessage, "%d", FLOYDWARSHALL); mainMessage = new cMessage(textMessage); scheduleAt(2, mainMessage);. 44 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(6) node.cc (lanjutan) // A* message sprintf(textMessage, "%d", ASTAR); mainMessage = new cMessage(textMessage); scheduleAt(3, mainMessage); } } void node::channelInitialize() { // get gate size value int gateCount = gateSize("port"); channelWeight = new int[gateCount]; // randomize srand(time(NULL)); // define channel weight for (int x = 0; x < gateCount; x++) { // random between 1 to 10 //channelWeight[x] = 1 + rand() % 100; channelWeight[x] = 1; } } void node::handleMessage(cMessage *message) { // receive message int code; sscanf(message->getFullName(),"%d", &code); // Dijkstra algorithm if (code == DIJKSTRA) { cancelAndDelete(message); dijkstraMessage(nodeCount); } // Floyd-Warshall algorithm else if (code == FLOYDWARSHALL) { cancelAndDelete(message); floydMessage(nodeCount); }. 45 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(7) node.cc (lanjutan) // A* algorithm else if (code == ASTAR) { cancelAndDelete(message); astarMessage(nodeCount); } } void node::dijkstraMessage(int nodeCount) { cModule *thisNodeModule; node *thisNode = NULL; cModule *nextNodeModule; node *nextNode = NULL; // initialize int nextWeight; bool set[nodeCount]; int weight[nodeCount]; int parent[nodeCount]; // start clock cycle counter and timer unsigned long rdtscStart, rdtscEnd; rdtscStart = rdtsc(); dijkstraStart = (double)clock(); for(int x = 0; x < nodeCount; x++) { set[x] = true; weight[x] = MAX; parent[x] = -1; } weight[0] = 0; while (!isEmptySet(set)) { int current = lessWeight(set, weight); if (current == -1) break; set[current] = false; // get pointing node thisNodeModule = getParentModule()->getSubmodule("node", current); thisNode = check_and_cast<node *>(thisNodeModule); // get gate size int gateCount = thisNode->gateSize("port");. 46 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(8) node.cc (lanjutan) // for each neighbour for (int x = 0; x < gateCount; x++) { // get next module index nextNodeModule = thisNode->gate("port$o", x)->getNextGate()>getOwnerModule(); nextNode = check_and_cast<node *>(nextNodeModule); nextWeight = weight[current] + thisNode->channelWeight[x]; if (nextWeight < weight[nextNode->getIndex()]) { weight[nextNode->getIndex()] = nextWeight; parent[nextNode->getIndex()] = current; } } } // print result rdtscEnd = rdtsc(); dijkstraEnd = (double)clock(); EV << "Dijkstra : addition(" << dijkstraAddition << ") assignment(" << dijkstraAssignment << ") comparison(" << dijkstraComparison << ") weight(" << weight[nodeCount-1] << ") clock(" << rdtscEnd-rdtscStart << ") time(" << (dijkstraEnd-dijkstraStart)/CLOCKS_PER_SEC << ")"; } void node::floydMessage(int nodeCount) { cModule *thisNodeModule; node *thisNode; cModule *nextNodeModule; cModule *nextNode; // initialize int **floydWeight; floydWeight = new int*[nodeCount]; for(int x = 0; x < nodeCount; x++) { floydWeight[x] = new int[nodeCount]; for(int y = 0; y < nodeCount; y++) { floydWeight[x][y] = MAX; } }. 47 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(9) node.cc (lanjutan) // get floydWeight data from channel for (int x = 0; x < nodeCount; x++) { // get pointing node thisNodeModule = getParentModule()->getSubmodule("node", x); thisNode = check_and_cast<node *>(thisNodeModule); // get gate size int gateCount = thisNode->gateSize("port"); // loop sending for (int y = 0; y < gateCount; y++) { // get next module index nextNodeModule = thisNode->gate("port$o", y)->getNextGate()>getOwnerModule(); nextNode = getParentModule()->getSubmodule("node", nextNodeModule>getIndex()); // no backward if (nextNode->getIndex() > x) { floydWeight[x][nextNode->getIndex()] = thisNode->channelWeight[y]; } } } // start clock cycle counter and timer unsigned long rdtscStart, rdtscEnd; rdtscStart = rdtsc(); floydStart = (double)clock(); // main looping programs for (int z = 0; z < nodeCount; z++) { for (int x = 0; x < nodeCount; x++) { for (int y = 0; y < nodeCount; y++) { if (floydWeight[x][y] > floydWeight[x][z] + floydWeight[z][y]) { floydWeight[x][y] = floydWeight[x][z] + floydWeight[z][y]; } } } }. 48 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(10) node.cc (lanjutan) // result rdtscEnd = rdtsc(); floydEnd = (double)clock(); EV << "Floyd-Warshall : addition(" << floydAddition << ") assignment(" << floydAssignment << ") comparison(" << floydComparison << ") floydWeight(" << floydWeight[0][nodeCount-1] << ") clock(" << rdtscEnd-rdtscStart << ") time(" << (floydEndfloydStart)/CLOCKS_PER_SEC << ")"; // destoying the array for(int x = 0; x < nodeCount; x++) { delete floydWeight[x]; } delete floydWeight; } void node::astarMessage(int nodeCount) { cModule *thisNodeModule; node *thisNode = NULL; cModule *nextNodeModule; node *nextNode = NULL; bool *closedSet; closedSet = new bool[nodeCount]; bool *openSet; openSet = new bool[nodeCount]; int *fromSet; fromSet = new int[nodeCount]; int *gScore; gScore = new int[nodeCount]; int *fScore; fScore = new int[nodeCount]; // initialize for (int x = 0; x < nodeCount; x++) { gScore[x] = MAX; fScore[x] = MAX; openSet[x] = false; closedSet[x] = false; } openSet[0] = true; gScore[0] = 0; fScore[0] = gScore[0];. 49 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(11) node.cc (lanjutan) // start clock cycle counter and timer unsigned long rdtscStart, rdtscEnd; rdtscStart = rdtsc(); astarStart = (double)clock(); while (!isEmptySet(openSet)) { int current = lessWeight(openSet, fScore); // destination if (current == nodeCount-1) { // result rdtscEnd = rdtsc(); astarEnd = (double)clock(); EV << "A Star : addition(" << astarAddition << ") assignment(" << astarAssignment << ") comparison(" << astarComparison << ") weight(" << gScore[nodeCount-1] << ") clock(" << rdtscEnd-rdtscStart << ") time(" << (astarEnd-astarStart)/CLOCKS_PER_SEC << ")"; } openSet[current] = false; closedSet[current] = true; // get pointing node thisNodeModule = getParentModule()->getSubmodule("node", current); thisNode = check_and_cast<node *>(thisNodeModule); // get gate size int gateCount = thisNode->gateSize("port"); // for each neighbour for (int x = 0; x < gateCount; x++) { // get next module index nextNodeModule = thisNode->gate("port$o", x)->getNextGate()>getOwnerModule(); nextNode = check_and_cast<node *>(nextNodeModule); // no backward if (nextNode->getIndex() > thisNode->getIndex()) { // not in open set if (closedSet[nextNode->getIndex()]) continue; int nextIndex = nextNode->getIndex(); int gScoreTentative = gScore[current] + thisNode->channelWeight[x];. 50 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(12) node.cc (lanjutan) if (!openSet[nextIndex] || gScoreTentative <= gScore[nextIndex]) { //fromSet[nextNode->getIndex()] = current; gScore[nextIndex] = gScoreTentative; fScore[nextIndex] = gScore[nextIndex]; // not in open set if (!openSet[nextIndex]) { openSet[nextIndex] = true; } } } } } // destoying the array delete closedSet; delete openSet; delete fromSet; delete fScore; } bool node::isEmptySet(bool set[]) { for (int x = 0; x < nodeCount; x++) { if (set[x]) return false; } return true; } int node::lessWeight(bool set[], int weight[]) { int node = -1; int score = MAX; for (int x = 0; x < nodeCount; x++) { if (set[x]) if (weight[x] < score) { score = weight[x]; node = x; } } return node; }. 51 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(13) LAMPIRAN B SOURCE CODE APLIKASI ANDROID Node.java package com.example.acalculator; import java.util.ArrayList; public class Node { ArrayList<Integer> ChannelNext = new ArrayList<Integer>(); ArrayList<Integer> ChannelWeight = new ArrayList<Integer>(); public int weight; }. 52 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(14) MeshNetwork.java package com.example.acalculator; import java.util.Random; public class MeshNetwork { public Random rand = new Random(); public Node [] node = null; public MeshNetwork(int layer, int sublayer) { node = new Node[layer*sublayer+2]; for (int x = 0; x < layer*sublayer+2; x++) node[x] = new Node(); // connection from source for (int x = 1; x <= sublayer; x++) { if (rand.nextInt(100)+1 < 65) { node[0].ChannelNext.add(x); // channel weight (1 to 100). node[0].ChannelWeight.add(rand.nextInt(100)+1); } } // connection in mesh network for (int x = 0; x <= layer-2; x++) { for (int y = x*sublayer+1; y <= x*sublayer+sublayer; y++) { for (int z = (x+1)*sublayer+1; z <= (x+1)*sublayer+sublayer; z++) { if (rand.nextInt(100)+1 < 65) { node[y].ChannelNext.add(z); // channel weight (1 to 100). node[y].ChannelWeight.add(rand.nextInt(100)+1); } } } // connection to destination for (int x = layer*sublayer-sublayer+1; x < layer*sublayer; x++) { if (rand.nextInt(100)+1 < 65) { node[x].ChannelNext.add(layer*sublayer+1); // channel weight (1 to 100). node[x].ChannelWeight.add(rand.nextInt(100)+1); } } } }. 53 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(15) LAMPIRAN C HASIL PENGUJIAN Tabel 1 Hasil pengujian algoritma Dijkstra Node 10 10 10 10 10 10 10 10 10 10 20 20 20 20 20 20 20 20 20 20 40 40 40 40 40 40 40 40 40 40 80 80 80 80 80 80. Addition 9 9 8 9 9 9 9 9 9 9 36 40 41 29 30 32 41 31 26 31 91 70 112 102 90 76 61 83 87 84 186 173 217 137 206 409. Assignment 58 58 54 58 58 58 58 58 58 58 154 159 164 133 143 144 166 142 128 144 354 301 367 360 342 322 262 337 347 340 734 682 767 608 741 1274. Comparison 9 9 8 9 9 9 9 9 9 9 36 40 41 29 30 32 41 31 26 31 91 70 112 102 90 76 61 83 87 84 186 173 217 137 206 409. Weight 378 123 225 402 333 98 288 447 462 377 219 339 407 175 156 182 294 121 116 202 189 67 330 284 299 191 82 154 232 195 184 324 325 86 658 218. 54 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013. Clock 51890 53160 18550 43410 47680 38600 47900 43040 43740 39950 91120 95190 108130 75070 89430 83740 111040 81450 92040 82830 274750 193820 310990 277240 321300 276320 167510 279070 260910 247540 597450 606540 762000 552190 623540 2002850. Time (s) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.001 0 0 0 0 0 0 0 0 0 0 0 0 0.

(16) 80 80 80 80 150 150 150 150 150 150 150 150 150 150 250 250 250 250 250 250 250 250 250 250 500 500 500 500 500 500 500 500 500 500 1000 1000 1000 1000 1000 1000 1000. 199 189 203 199 601 584 561 585 657 823 769 794 797 558 1136 1371 988 1106 1329 1503 838 1129 942 899 2095 1928 2718 2724 2863 2200 2177 1798 3056 2447 5009 4354 5193 4666 4973 3789 5103. 723 765 730 728 1710 1562 1595 1673 1744 1964 1901 1905 1946 1652 2971 3242 2906 2880 3066 3400 2572 2935 2689 2748 5865 5597 6494 6555 6824 6051 5967 5579 6827 6246 12686 11646 13100 11782 12560 11133 13160. 199 189 203 199 601 584 561 585 657 823 769 794 797 558 1136 1371 988 1106 1329 1503 838 1129 942 899 2095 1928 2718 2724 2863 2200 2177 1798 3056 2447 5009 4354 5193 4666 4973 3789 5103. 438 224 528 505 137 251 114 145 307 168 226 395 300 129 324 649 215 343 674 659 79 524 249 219 594 296 1062 747 486 266 650 119 1413 772 1077 1133 489 1809 921 632 823. 627410 702850 722340 717500 2100690 2207890 2224930 2327390 2656760 2029920 2049860 2056680 2045710 2128510 5212890 5154000 4639670 4888750 4758380 4753190 5341380 5067870 4789980 5059650 22551980 15924170 17128970 17426360 24474330 16421610 16169860 15678330 18284020 16402780 60233080 58154580 62312430 60922380 62189570 57558190 60975850. 55 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.016 0 0.016 0 0 0 0 0 0 0 0 0.015 0.009 0.015 0 0.016 0.015 0 0.016 0.008 0.03 0.029 0.031 0.031 0.031 0.029 0.032.

(17) 1000 1000 1000. 4174 3992 4913. 11913 11464 12448. 4174 3992 4913. 153 907 1844. 56474110 63321520 62288020. 0.016 0.032 0.031. Tabel 2 Hasil pengujian algoritma A* Node 10 10 10 10 10 10 10 10 10 10 20 20 20 20 20 20 20 20 20 20 40 40 40 40 40 40 40 40 40 40 80 80 80 80. Addition 9 9 8 9 9 9 9 9 9 9 36 40 41 29 30 32 41 31 26 31 91 70 112 102 90 76 61 83 87 84 186 173 217 137. Assignment 58 58 54 58 58 58 58 58 58 58 154 159 164 133 143 144 166 142 128 144 354 301 367 360 342 322 262 337 347 340 734 682 767 608. Comparison 9 9 8 9 9 9 9 9 9 9 36 40 41 29 30 32 41 31 26 31 91 70 112 102 90 76 61 83 87 84 186 173 217 137. Weight 378 123 225 402 333 98 288 447 462 377 219 339 407 175 156 182 294 121 116 202 189 67 330 284 299 191 82 154 232 195 184 324 325 86. Clock 51890 53160 18550 43410 47680 38600 47900 43040 43740 39950 91120 95190 108130 75070 89430 83740 111040 81450 92040 82830 274750 193820 310990 277240 321300 276320 167510 279070 260910 247540 597450 606540 762000 552190. 56 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013. Time (s) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.001 0 0 0 0 0 0 0 0 0 0 0.

(18) 80 80 80 80 80 80 150 150 150 150 150 150 150 150 150 150 250 250 250 250 250 250 250 250 250 250 500 500 500 500 500 500 500 500 500 500 1000 1000 1000 1000 1000. 206 409 199 189 203 199 601 584 561 585 657 823 769 794 797 558 1136 1371 988 1106 1329 1503 838 1129 942 899 2095 1928 2718 2724 2863 2200 2177 1798 3056 2447 5009 4354 5193 4666 4973. 741 1274 723 765 730 728 1710 1562 1595 1673 1744 1964 1901 1905 1946 1652 2971 3242 2906 2880 3066 3400 2572 2935 2689 2748 5865 5597 6494 6555 6824 6051 5967 5579 6827 6246 12686 11646 13100 11782 12560. 206 409 199 189 203 199 601 584 561 585 657 823 769 794 797 558 1136 1371 988 1106 1329 1503 838 1129 942 899 2095 1928 2718 2724 2863 2200 2177 1798 3056 2447 5009 4354 5193 4666 4973. 658 218 438 224 528 505 137 251 114 145 307 168 226 395 300 129 324 649 215 343 674 659 79 524 249 219 594 296 1062 747 486 266 650 119 1413 772 1077 1133 489 1809 921. 623540 2002850 627410 702850 722340 717500 2100690 2207890 2224930 2327390 2656760 2029920 2049860 2056680 2045710 2128510 5212890 5154000 4639670 4888750 4758380 4753190 5341380 5067870 4789980 5059650 22551980 15924170 17128970 17426360 24474330 16421610 16169860 15678330 18284020 16402780 60233080 58154580 62312430 60922380 62189570. 57 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.016 0 0.016 0 0 0 0 0 0 0 0 0.015 0.009 0.015 0 0.016 0.015 0 0.016 0.008 0.03 0.029 0.031 0.031 0.031.

(19) 1000 1000 1000 1000 1000. 3789 5103 4174 3992 4913. 11133 13160 11913 11464 12448. 3789 5103 4174 3992 4913. 632 823 153 907 1844. 57558190 60975850 56474110 63321520 62288020. 0.029 0.032 0.016 0.032 0.031. Tabel 3 Hasil pengujian algoritma Floyd-Warshall Node 10 10 10 10 10 10 10 10 10 10 20 20 20 20 20 20 20 20 20 20 40 40 40 40 40 40 40 40 40 40 80 80. Addition 1759 1759 1755 1755 1759 1759 1756 1755 1754 1758 10834 10838 10863 10814 10850 10831 10832 10839 10813 10845 74912 75001 74925 75056 75131 75037 75067 75309 75151 75171 555505 556593. Assignment 31 31 27 27 31 31 28 27 26 30 186 190 215 166 202 183 184 191 165 197 824 913 837 968 1043 949 979 1221 1063 1083 4137 5225. Comparison 1728 1728 1728 1728 1728 1728 1728 1728 1728 1728 10648 10648 10648 10648 10648 10648 10648 10648 10648 10648 74088 74088 74088 74088 74088 74088 74088 74088 74088 74088 551368 551368. Weight 378 123 225 402 333 98 288 447 462 377 219 339 407 175 156 182 294 121 116 202 189 67 330 284 299 191 82 154 232 195 184 324. Clock 40860 42300 40050 41970 40500 40560 40480 42080 40470 40410 238430 239820 239040 237660 241020 237920 239920 240410 237310 238770 1612290 1620840 1902830 1634580 1626280 1623880 1647100 1636200 1627810 1684360 11995140 12366110. 58 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013. Time (s) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.001 0 0 0 0 0 0 0.016 0.016 0.015.

(20) 80 556699 80 556073 80 557026 80 556321 80 556804 80 556983 80 556086 80 556760 150 3531215 150 3530189 150 3534954 150 3535007 150 3537547 150 3531730 150 3533960 150 3537640 150 3533558 150 3537314 250 16065110 250 16058633 250 16065039 250 16086285 250 16079891 250 16074941 250 16068756 250 16074246 250 16083802 250 16070999 500 126772152 500 126756342 500 126779140 500 126805767 500 126795070 500 126778841 500 126800681 500 126775695 500 126802643 500 126774499 1000 1006930259 1000 1007298492 1000 1007152151. 5331 4705 5658 4953 5436 5615 4718 4734 19407 18381 23146 23199 25739 19922 22152 25832 21750 25506 62102 55625 62031 83277 76883 71933 65748 71238 80794 67991 266144 250334 273132 299759 289062 272833 294673 269687 296635 268491 918251 1286484 1140143. 551368 551368 551368 551368 551368 551368 551368 551368 3511808 3511808 3511808 3511808 3511808 3511808 3511808 3511808 3511808 3511808 16003008 16003008 16003008 16003008 16003008 16003008 16003008 16003008 16003008 16003008 126506008 126506008 126506008 126506008 126506008 126506008 126506008 126506008 126506008 126506008 1006012008 1006012008 1006012008. 325 86 658 438 224 528 505 102 137 251 114 145 307 168 226 395 300 129 324 649 215 343 674 659 79 524 249 219 594 296 1062 747 486 266 650 119 1413 772 1133 489 1809. 12041870 12246340 12576240 12043500 12577900 12649490 12242270 12043500 76885290 80008540 76884160 77585190 79039180 77788170 76848390 76843650 76858900 76782270 357785640 348557330 346989270 358597740 357919120 351499820 349672560 350804430 353052900 346087290 2821816340 2814452000 2815551800 2803209650 2799964040 2814515610 2789129500 2820584290 2809829960 2822104650 871867660 655470280 887733110. 59 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013. 0 0 0.015 0 0 0.006 0.016 0 0.031 0.047 0.047 0.046 0.046 0.047 0.031 0.046 0.031 0.046 0.172 0.172 0.171 0.188 0.187 0.188 0.187 0.187 0.171 0.171 1.42 1.404 1.411 1.398 1.404 1.399 1.386 1.42 1.409 1.428 11.212 11.092 11.218.

(21) 1000 1000 1000 1000 1000 1000 1000. 1007214048 1007098822 1007321687 1007152426 1007389762 1007288398 1007219527. 1202040 1086814 1309679 1140418 1377754 1276390 1207518. 1006012008 1006012008 1006012008 1006012008 1006012008 1006012008 1006012008. 921 632 823 153 907 1844 978. 858782850 889256560 983339230 952313040 799588300 988883520 871672345. 11.181 11.21 11.244 11.24 11.169 11.265 11.2011. Tabel 4 Hasil pengujian algoritma Dijkstra pada Android Node 10 10 10 10 10 10 10 10 10 10 20 20 20 20 20 20 20 20 20 20 40 40 40 40 40 40 40 40 40 40. Addition 18 19 13 12 14 18 15 11 17 16 60 58 48 58 59 54 60 59 55 50 162 147 152 156 163 150 158 155 145 139. Assignment 30 31 25 23 26 30 27 22 29 28 82 80 68 80 81 76 82 81 77 72 204 189 194 198 205 191 200 197 185 179. Comparison 105 106 95 90 94 105 101 89 102 99 231 216 212 223 227 224 233 227 221 218 493 481 504 488 287 464 494 512 453 459. Weight 241 210 282 287 280 241 248 144 217 218 80 101 222 71 184 231 133 143 173 208 106 186 156 126 188 158 133 162 129 167. 60 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013. Time (ms) 2 0 0 0 1 0 0 0 0 1 1 0 2 0 2 1 1 1 0 1 1 1 1 0 1 2 1 1 1 1.

(22) 80 80 80 80 80 80 80 80 80 80 150 150 150 150 150 150 150 150 150 150 250 250 250 250 250 250 250 250 250 250 500 500 500 500 500 500 500 500 500 500 1000. 485 492 458 480 500 471 489 504 488 462 115 1138 1175 1176 1184 1143 1185 1199 1184 1189 4641 4709 4681 4703 4734 4600 4700 4675 4715 4681 9945 9882 9912 9949 9900 8040 8033 8048 7960 8031 16338. 565 574 537 562 582 552 570 586 570 543 1305 1286 1326 1327 1336 1292 1336 1351 1335 1340 4887 4960 4932 4952 4985 4847 4950 4924 4965 4930 10444 10392 10412 10447 10398 8542 8533 8549 8462 8533 17335. 1179 1185 1118 1198 1215 1199 1203 1223 1201 1150 2567 2506 2515 2574 2526 2519 2539 2555 2562 2543 7119 7241 7155 7295 7234 7090 7290 7209 7263 7177 15177 15100 15316 15183 15276 13237 13155 12142 12996 13127 26758. 126 98 176 119 103 193 106 105 150 100 210 123 105 125 128 136 127 156 120 110 47 38 36 60 46 40 61 42 39 33 79 67 73 75 57 128 106 103 92 123 180. 61 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013. 2 1 0 1 1 1 1 0 1 0 1 1 2 2 1 1 2 1 1 2 4 3 7 18 3 9 3 3 3 29 9 31 8 14 31 10 9 8 11 8 26.

(23) 1000 1000 1000 1000 1000 1000 1000 1000 1000. 8274 8329 8261 8291 8320 8330 8311 8372 8322. 9275 9331 9263 9290 9321 9331 9313 9374 9324. 17574 17724 17541 17595 17656 17626 17757 17681 17496. 746 709 725 735 707 697 729 763 654. 23 27 23 18 21 69 28 30 39. Tabel 5 Hasil pengujian algoritma A* pada Android Node 10 10 10 10 10 10 10 10 10 10 20 20 20 20 20 20 20 20 20 20 40 40 40 40 40 40 40 40. Addition 17 15 12 11 11 14 15 11 13 13 45 37 39 41 46 48 44 42 42 44 114 106 118 118 120 102 108 118. Assignment Comparison 17 90 15 88 12 77 11 70 11 74 14 87 15 84 11 70 13 84 13 82 45 192 37 168 39 172 41 182 46 187 48 191 44 195 42 183 42 181 44 185 114 401 106 393 118 427 118 407 120 399 102 367 108 399 118 431. Weight 241 210 282 287 280 241 248 144 217 218 80 101 222 71 184 231 133 143 173 208 106 186 156 126 188 158 133 162. 62 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013. Time (ms) 1 0 1 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0.

(24) 40 40 80 80 80 80 80 80 80 80 80 80 150 150 150 150 150 150 150 150 150 150 250 250 250 250 250 250 250 250 250 250 500 500 500 500 500 500 500 500 500. 92 90 316 308 318 333 331 340 308 317 346 306 830 748 744 805 765 754 773 755 737 756 2829 2574 2492 2860 2423 2755 2887 2797 2717 2554 6106 5926 6414 6251 6191 5400 5051 5244 5079. 92 90 316 308 318 333 331 340 308 217 346 306 830 748 744 805 765 754 773 755 737 756 2829 2574 2492 2860 2423 2755 2887 2797 2717 2554 6106 5926 6414 6251 6191 5400 5051 5244 5079. 351 361 929 917 889 976 970 983 935 952 979 911 2107 1957 1935 2054 1956 1985 1974 1964 1972 1973 5154 4897 4763 5251 4716 5038 5278 5126 5066 4823 10931 10729 11419 11064 11178 10183 9748 9905 9678. 129 167 126 98 176 119 103 193 106 105 150 100 210 123 105 125 128 136 127 156 120 110 47 38 36 60 46 40 61 42 39 33 79 67 73 75 57 128 106 103 92. 63 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013. 0 1 1 0 0 0 0 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 4 2 3 3 3 3 3 3 3 3 9 11 9 27 24 9 8 8 8.

(25) 500 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000. 5353 10928 5703 5726 5606 5590 5602 5604 5673 5712 5543. 5353 10928 5703 5726 5606 5590 5602 5604 5673 5712 5543. 10042 20517 14078 14211 13973 13981 14015 13985 14200 14105 13824. 123 180 746 709 725 735 707 697 729 763 654. 8 26 28 24 25 22 25 53 33 28 38. Tabel 6 Hasil pengujian algoritma Dijkstra pada Android Node 10 10 10 10 10 10 10 10 10 10 20 20 20 20 20 20 20 20 20 20 40 40 40 40 40 40. Addition 1778 1781 1766 1773 1772 1779 1768 1768 1780 1774 10864 10920 10847 10823 10874 10872 10856 10847 10865 10870 75152 75278 75374 75406 75483 75325. Assignment 1728 1728 1728 1728 1728 1728 1728 1728 1728 1728 106448 10648 10648 10648 10648 10648 10648 10648 10648 10648 74088 74088 74088 74008 74088 74088. Comparison 50 53 38 45 44 51 40 40 52 46 216 272 199 175 226 224 208 199 217 222 1064 1190 1286 1318 1395 1237. Weight 241 210 282 287 280 241 248 144 217 218 80 101 222 71 184 231 133 143 173 208 106 186 156 126 188 158. 64 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013. Time (ms) 2 2 1 0 0 0 0 0 1 2 1 1 1 1 2 1 1 1 1 1 4 8 3 5 5 3.

(26) 40 40 40 40 80 80 80 80 80 80 80 80 80 80 150 150 150 150 150 150 150 150 150 150 250 250 250 250 250 250 250 250 250 250 500 500 500 500 500 500 500. 75456 75295 75483 75256 557573 557924 556941 556823 557766 557490 557419 557548 557826 556781 3536710 3537339 3535480 3537944 2525957 3536403 3538740 2527856 3538482 3537268 16087516 16084120 16085735 16084433 16084851 16087403 16081622 16088097 16088147 16085939 126880550 128902307 126905323 126885614 126886747 126876411 126890537. 74088 74088 74088 74088 551368 551368 551368 551368 551368 551368 551368 551368 551368 551368 3511808 3511808 3511808 3511808 3511808 3511808 3511808 3511808 3511808 3511808 16003008 16003008 16003008 16003008 16003008 16003008 16003008 16003008 16003008 16003008 126506008 126506008 126506008 126506008 126506008 126506008 126506008. 1368 1207 1395 1268 6205 6556 5573 5455 6398 6122 6051 6180 6458 5413 24902 25531 23672 26136 24149 24595 26932 26048 26674 25460 84508 81112 82727 81425 81843 84395 78614 85089 85139 82931 374542 384229 399315 379606 380739 370403 384529. 133 162 129 167 126 98 176 119 103 193 106 105 150 100 210 123 105 125 128 136 127 156 120 110 47 38 36 60 46 40 61 42 39 33 79 67 73 75 57 128 106. 65 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013. 4 3 4 8 22 28 24 26 23 26 23 24 25 23 133 140 152 153 133 150 143 153 187 142 617 604 581 588 665 610 599 607 637 705 4754 4764 4912 4784 4764 4865 4746.

(27) 500 500 500 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000. 126894145 126864970 126895102 1007583221 1007283623 1007347085 1007312335 1007366484 1007379152 1007306130 1007358000 1007324461 1007335621. 126506008 126506008 126506008 1006012008 1006012008 1006012008 1006012008 1006012008 1006012008 1006012008 1006012008 1006012008 1006012008. 388137 358962 389094 1571213 127615 1335077 1300327 1354476 1367144 1294122 1345992 1312453 1323613. 103 92 123 180 746 709 725 735 707 697 729 763 654. 66 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013. 4779 4954 4776 37580 38575 46511 38291 38329 38062 42531 53508 38591 37928.

(28) LAMPIRAN D GAMBAR. Gambar 1 Jendela pop-up input parameter pada OMNeT++. Gambar 2 Contoh keluaran simulasi shortest path. 67 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(29) Gambar 3 Contoh keluaran hasil validasi. Gambar 4 Tampilan awal aplikasi berbasis Android 68 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(30) 69 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(31) RIWAYAT HIDUP DATA PRIBADI 1.. Nama lengkap. : Michael Alexander Djojo. 2.. Tempat, tgl. lahir. : Surabaya, 14 Mei 1991. 3.. Jenis kelamin. : Laki-laki. 4.. Status. : Belum menikah. 5.. Agama. : Kristen. 6.. Kewarganegaraan. : Indonesia. 7.. Alamat. : Jalan Artzimar II No. 90, Bogor 16152. 8.. Telepon. : 081574723505. 9.. E-mail. : djojo.alexander@gmail.com. PENDIDIKAN 1.. 2009 - sekarang. Universitas Multimedia Nusantara, Tangerang Semester 7, Prodi Sistem Komputer, Fakultas ICT. Lulus 127 SKS, IPK 3.82.. 2.. 2004 - 2009. SMA Mardi Yuana, Bogor. 3.. 2001 - 2004. SMP Mardi Yuana, Bogor. 4.. 1996 - 2001. SD Mardi Yuana, Bogor. 5.. 1995 - 1996. SD Santo Carolus, Surabaya. 70 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(32) PENGALAMAN KERJA DAN ORGANISASI 1.. 2010. Ketua Himpunan Mahasiswa Jurusan Sistem Komputer Universitas Multimedia Nusantara. 2.. 2010. Part time di SMP Candle Tree sebagai pengajar arsitektur komputer. 3.. 2010 - 2011. Asisten laboratorium Algoritma dan Pemrograman di Universitas Multimedia Nisantara. 4.. 2011. Kerja magang di Divisi Application Development PT Dynaplast, Appliacation Development Support. 71 Analisis Perbandingan..., Michael Alexander Djojo, FTI UMN, 2013.

(33)

Gambar

Tabel 1 Hasil pengujian algoritma Dijkstra
Tabel 2 Hasil pengujian algoritma A*
Tabel 3 Hasil pengujian algoritma Floyd-Warshall
Tabel 4 Hasil pengujian algoritma Dijkstra pada Android
+5

Referensi

Dokumen terkait

Berdasarkan beberapa analisis yang telah dilakukan dapat disimpulkan bahwa media pembelajaran menggunakan kokami (kotak dan kartu misterius) dapat

Aspal di area parkir yang rusak, hal ini sudah masuk dalam program investasi Divisi Teknik pelabuhan tahun 2016, bukan lagi pengaspalan akan tetapi dengan

Pada tanggal 12 Agustus 1945, Jepang melalui Marsekal Terauchi di Dalat, Vietnam, mengatakan kepada Soekarno, Hatta dan Radjiman bahwa pemerintah Jepang akan segera

Spesies dengan produksi serasah daun terbesar adalah Bruguiera cylindrica, yakni sebesar 1,72 g.m - Gambar 5 Hubungan antara musim (frekuensi hujan) dan produksi

Jenis penelitian ini tergolong Kualitatif dengan pendekatan penelitian yang digunakan adalah: yuridis sosiologis, adapun sumber data penelitian ini bersumber dari

Ske ma Eksp lisit... Ske ma

However, 7 days feeding of CS at both dosages didn’t have any effect on the weights of testis, seminal vesicle and prostate gland compared to control in immature mice (p &gt;

menunjang program pengembangna lembaga ekonomi pedesaan P1 B terselenggarany a Pengadaan pelatihan ketrampilan peternakan ayam 35 Pagu Indikatif Kecamatan Desa Tegalarum 2 Kelomp