From 252fa5f10048f25e22d5bd2f55b6772fee884fb3 Mon Sep 17 00:00:00 2001 From: danl573 Date: Mon, 11 Apr 2022 23:02:44 -0500 Subject: [PATCH] completed README file --- README.md | 90 ++++++++++++++++++++++++++++++++++++++++++- images/graph_ex1.png | Bin 0 -> 37160 bytes images/graph_ex2.png | Bin 0 -> 37575 bytes images/graph_ex3.png | Bin 0 -> 35377 bytes src/Graph_helper.cpp | 2 + 5 files changed, 91 insertions(+), 1 deletion(-) create mode 100644 images/graph_ex1.png create mode 100644 images/graph_ex2.png create mode 100644 images/graph_ex3.png diff --git a/README.md b/README.md index e05cf35..91a23f9 100644 --- a/README.md +++ b/README.md @@ -43,7 +43,7 @@ $ ./a.out data/dataset_1.graphml ## Datasets The program uses files formatted using graphml, which is a way to organize vertices, edges, and their respective properties. It is formatted with properties defined on the top of file, nodes listed below -with distincive keys, and edges defined underneath. +with distinctive keys, and edges defined underneath. An example of a small Graphml file with 2 nodes and 1 edge is shown below: ```text @@ -67,8 +67,96 @@ An example of a small Graphml file with 2 nodes and 1 edge is shown below: ``` +Note that the graphs used are undirected, unweighted graphs. Randomly generated .graphml graphs were generated using the NetworkX python library and tested using the algorithm. The final testing dataset was converted from gml to graphml using the same library. +## Algorithm Analysis +The process in which the algorithm determines the separate partitions is with the help of edge +betweeness centrality, which is the frequency each node is used in all the shortest paths for each +pair of nodes. Once a new partition is created, resulting in more unconnected clusters, a modularity +is calculated, which measures the degree to which the partition is densely connected and can be separated +in to communities. We want a cluster that interacts more with itself more than other communities. + +The equation is shown as follows: + +![modularity](https://latex.codecogs.com/svg.image?Q&space;=&space;\frac{1}{2m}\sum_{i,j}^{}[A_{ij}-\frac{k_{1}k_{2}}{2m}]\delta(c_{i},&space;c_{j})) + +In basic terms, the modularity subtracts the total random or expected edges from each node in the community from +every actual edge. This is achieved by getting the sum of the current degrees of every node in the cluster +minus the sum of the original degrees of every node in the cluster divided by 2 times the total original edge count. +This value is summed for every cluster and all divided by 2 times the total original edge count. + +The modularity is calculated for the graph every time a new component is formed and is saved if larger than the current +max. In general, a modularity between 0.3-0.7 is considered a good division of communities. + +### Edge Betweeness +Here is an example of how edges are removed in the algorithm. For each pair of nodes, the shortest path is calculated +using Breadth First Search and path reconstruction. +![graph1](images/graph_ex1.png) +Simple unweighted, undirected graph +```text +1-2 +1-3 +1-3-4 +1-3-5 +... +5-6 +``` +When following through these paths, the frequency is tracked to find the highest used path. This highest path is +then removed from the graph and the number of total components is calculated. Since the number of components +increased, the edge betweeness loop ends and the modularity is calculated and compared with the current max. This process +repeats until there are no more edges remaining, where the partition with the highest modularity is picked and is +printed in the report. + +![graph2](images/graph_ex2.png) +Graph with edge frequency + +![graph3](images/graph_ex3.png) +Graph after max edge is removed + +### Testing +This implementation was tested using the Football Conference 2000 dataset provided by Girvan and Newman, which is a +network containing American football games between colleges in 2000. Each node printed is accompanied by +a value to indicate the correct conference they belong to (formatted as nodeID-conference). Here is the resulting clustering as reported by the +algorithm: + +```text +Community Report +community #0: [0-7, 4-7, 9-7, 11-10, 16-7, 23-7, 24-10, 28-11, 41-7, 50-10, 69-10, 90-5, 93-7, 104-7] +community #1: [1-0, 25-0, 33-0, 37-0, 45-0, 89-0, 103-0, 105-0, 109-0] +community #2: [2-2, 6-2, 13-2, 15-2, 32-2, 39-2, 47-2, 60-2, 64-2, 100-2, 106-2] +community #3: [3-3, 5-3, 10-3, 40-3, 52-3, 72-3, 74-3, 81-3, 84-3, 98-3, 102-3, 107-3] +community #4: [7-8, 8-8, 21-8, 22-8, 51-8, 68-8, 77-8, 78-8, 108-8, 111-8] +community #5: [12-6, 14-6, 18-6, 26-6, 31-6, 34-6, 38-6, 42-5, 43-6, 54-6, 61-6, 71-6, 85-6, 99-6] +community #6: [17-9, 20-9, 27-9, 56-9, 62-9, 65-9, 70-9, 76-9, 87-9, 95-9, 96-9, 113-9] +community #7: [19-1, 29-1, 30-1, 35-1, 55-1, 79-1, 80-5, 82-5, 94-1, 101-1] +community #8: [36-5, 58-11, 59-10, 63-10, 97-10] +community #9: [44-4, 48-4, 57-4, 66-4, 75-4, 86-4, 91-4, 92-4, 112-4] +community #10: [46-11, 49-11, 53-11, 67-11, 73-11, 83-11, 88-11, 110-4, 114-11] +Modularity: 0.595356 +``` + +For the most part, the algorithm was able to correctly cluster the teams with their respective groups. However, +some flaws are shown, mainly due to the presence of independent teams which don't belong in a formal conference. +The algorithm also calculated a modularity score that is relatively high. Nevertheless, this output provides a +good starting point with many opportunities for optimization. + +## Credits + +This project was completed entirely by Daniel Ryan and +Zachary Suzuki for CS3353, Fundamentals of Algorithms taught by Dr. Fontenot. + + + + + + + + + + + + diff --git a/images/graph_ex1.png b/images/graph_ex1.png new file mode 100644 index 0000000000000000000000000000000000000000..bfe2218de49dd9034f4dd5a53425ddf702e75623 GIT binary patch literal 37160 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 GoBs!ywsN=t literal 0 HcmV?d00001 diff --git a/images/graph_ex2.png b/images/graph_ex2.png new file mode 100644 index 0000000000000000000000000000000000000000..0c2ef50f806b2d0de7c10956b70f84b078b9b5b2 GIT binary patch literal 37575 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 literal 0 HcmV?d00001 diff --git a/images/graph_ex3.png b/images/graph_ex3.png new file mode 100644 index 0000000000000000000000000000000000000000..93e94184755dddb7a68a0b108518c7cb10d7c0d8 GIT binary patch literal 35377 zcmeEubySpn*Dj58Hh4wXeO0AX#ZKBzSyyFfcHr5ATKLz`!8wz`(%mUcdln%HHqvf`K8Ln+gfZ zeh?BOk+rinGPN)S1A8A7qYSGe--n&5{xvdk6yp1PxF$HVruT5)p;04gXI^|D`Q90i zs$ijljiu2Ls3W2*f~ko>5)wQ!kTG+oCn%zdgAkl?O8F{%ulcm;%)@@W#d!EWcOk*; z2rPYeAm+W@M+UId&YK_C$2wax6K^Pg(g=XT?LbPTcWw5)DguE_zzoZt8X8-`i@$3) z%Go^F-?s!KYm=;ldxr+R^cNzbRe`HVT5h7=+Nm-Wa<^EDwoiLWfM}BwPbajT{J2LAyI{ zZ0v*AKrVk-6(@kW4!(r9Y-{uo#;+fkHZX+W-roo#%pm;g+lF24Q(E@T^4B;z;&WX{ z0!8YuK;;b-a~C>eyJ!e`(nECP&Q4l0B-_%!(jsm!Y7y#)_i}TY-8^^%Qz*Uvf&PT z8*}fH^NOGGBOaAj{7_h^e77GH?3g#wJ1~r1-2t#~g6yc(PLs}U+?(%lS0HG5As|+= zejpCN$HPVIFo&Rq@_P3Qtm3`JmQdQ#Q#OJ*egjKJ;pbG_}buwr0T78CH z@pO692-CI|?6%J5=jvWb#Y0hrMub*^F$Y&m6}0uiE70zZNx;2sftrE4Ho^jo-KUi{ z5Whjd;9E!z2x$=ac}F|scVm=1!@@Ns1^*k!t7Vq!L({zdUPgoHA{k_|`G>di9fBSD zfg&IGj`lJ`+4S?4_P<9FKUB69@)2KtLj=}wfO$Vo(9G<7D zJ{7U3M9}&K@?=ARXpH~fR*?@YCc16{iR2U|u@w8_PTkiVv=^t%B;$gIHn3Qz|^m6M=l`39BszXJ_t>(Iu- zZTafS!pHitr9)UisJBU%!S2Ieq{9)y=C(oG;Ay}*ukQW?V-n|XIKh*@6+@)ojysP$gXETpn6lwCWXc57^+|?g|M}6yJMO6)R#rPMax~6T!1TCdBFp>y()h^ zdyU=*u^cqLN_A3rE!0TxB%Y2I3KtHg4H3W`8z~YmPE8q&R)c|zCf(LFA?PCW3LQ^a zJp*SUB)`*Q4RH;94Q5SCkF`API(|loEDG^M_$x0t`XGsZDy(l)QBL2&qe>#V-Zz=; zni-junCY6Cn(0-$ni-lkOoSI`ess&35}P7Z|K`zGZouct<%;J@P#5JMv>~bWR_G!^;bj42jMPh+82LCk zXW69u+I(x%H;G6Lfw7_kxeVEg+!^Fe5!szfz-}EI;CDIQC zCHf~CCc?g9GIcVIs-gm{E*Fy;i|F!m7}!HZ?r8L91fvO_O*N z`KJTKP~DCdW;?tA+&erD+_ZD4bJbgjhpyY|Tjg_pTtwCvEU38Axch7%tK+^%Q(Uun zeNcPZ(s47I)rQWSZj*vB(M)+!%?^iv8>Dq4I=mXMnV0$#Gi`5|T)vzrt%r2;Qsz*u zQlfuzq@oQAgkW zn_lH;&eB$0u@6H}&1g;cW$Mcz#!;(a&6q_tw~VG*kMIYWy8+}pzW~3{?>|<*lJD;P zq_$gFnPE?6UN8o^xJ(`=Nh?sr%KONNjSCrnv9CJg+5WVxOkO0K6{hlfZ7{Huk%+O5 zabDvvd;$-T({8D^JIY$)rG{%sOv&_uiIuLE{Q~}iRs(lE!U9MA@@cwT=%vce*xE_g z_<;Pb>fY>6!_An(>ZQG$+7jpFEA*pEKBzREG)_J#K4K4Ek28;}yT{G#jkxvNfukGh z`H#LI=S6uhYmc{Ytxv2`bYQYzEs#x6-k@y2C_(eVS0JvzTB3aFt}r&NbgI;XZh(^T zLxJ|vxvMZPPZBDNJdXStIVGDinl&0c3ag8)tE$VUySPfU%G#bp{sQeI8XcLHo#a~{ zX|`PMA9Qv~8-3Jf3hxv|CNfO|OiUftO&lCHb`&#@x>R}s^>_6J>8YF)_aENQgJ^79 z!brn|2;@1pOz(TI6HbiLci_IEJ5e;sAWCb*x^VO{en_48T9m-USI2cDB>uj?Kl-wq zyn7hmjdYS)F?udiR9r%OK6Q$f(P1Ic_T@TnH%>&$>o%wMD!6S*e5t_{7lW@`uMV>y ze||oXKG*!2R#(12Yb66irSBoi5iz7b;MRw-R=VX3e-BLuJ;L(9s%*qJayp_GGf9Jp z84K4SZ1K^5$I(gnGG`x!vz(LL?$%!3?rJN4Gkg0b_FkZUClytabSitD)EYHSY?aJO zN`;Yl?HloW%`d%_z4)h&t1=HFbt(5$Hyys-zWu&S`F-*zlH;kAsZO@_9p_!+X;@#d z9$6sM+LFdt#@)9T5>SlGjVu$w28ZJpS$gb-eK}u>tcq}N%WZ89K6s=KG{&4Q4ap=d zgIWy)$9#ME{ht)%i$2mbG}nzGd!xbGjVF~%Bd;cy24ra-K2>< zYCPIM{TR$H9^i?y)R5L-)bi99SqV;|t5(J?ac?v`FQ}g!oTMmRE>5W0(nxTd&8d#A zKCM339NR?NE1F`^zN&ktV%x+5vOD^;ei1V5HPgCmW2iscJtsw(B+lV6M?dFoE^!@O zPn%RwQQTP!t)6BjvE;OcbEI8ROJK>g_-Gj5B6c@?okCUER8Z)QcciA|H`Qy- z;VRRc`b8~wj=>GjP2$SORRNbi{ zC%eJEDfy4N!>P#J9&3nugXNWv#!16Bsod^MckU0+BM6Q-yo^M*i|bcH#i_-PagB^@ z8kcnoGwcNiJ29)jOnu# zkEOe26pE%VP2BvSym-!NHpeTQ^V2@04YbU7ncm}HTxfY|d9{3|+eE&H*D3p+kO0;= z3l7GB1;)iw`>~s5#23<+dZZNc#XVIK4-;}A6kk`&s;7pW73G+ZcI zj@s`z=&CtMg_3aD|t?W Womno}YxXd9P{@28K=X{09FZ_v#pE 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 literal 0 HcmV?d00001 diff --git a/src/Graph_helper.cpp b/src/Graph_helper.cpp index 308b3d5..0f6e575 100644 --- a/src/Graph_helper.cpp +++ b/src/Graph_helper.cpp @@ -83,6 +83,8 @@ void Graph_helper::girvan_newman() { for(auto& c : max_comp) { // std::cout << c.first << " in community " << c.second << std::endl; report[c.second] += std::to_string(c.first); + report[c.second] += "-"; + report[c.second] += std::to_string(graph[c.first].community); report[c.second] += ", "; } print_report(report);