You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(9) |
Sep
(14) |
Oct
(19) |
Nov
(38) |
Dec
(77) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(31) |
Feb
(59) |
Mar
(56) |
Apr
(35) |
May
(79) |
Jun
(90) |
Jul
(50) |
Aug
(141) |
Sep
(56) |
Oct
(132) |
Nov
(78) |
Dec
(158) |
2005 |
Jan
(90) |
Feb
(71) |
Mar
(77) |
Apr
(159) |
May
(183) |
Jun
(127) |
Jul
(253) |
Aug
(104) |
Sep
(110) |
Oct
(207) |
Nov
(149) |
Dec
(102) |
2006 |
Jan
(92) |
Feb
(165) |
Mar
(214) |
Apr
(227) |
May
(130) |
Jun
(139) |
Jul
(74) |
Aug
(110) |
Sep
(136) |
Oct
(114) |
Nov
(112) |
Dec
(131) |
2007 |
Jan
(135) |
Feb
(212) |
Mar
(302) |
Apr
(239) |
May
(210) |
Jun
(163) |
Jul
(181) |
Aug
(288) |
Sep
(134) |
Oct
(228) |
Nov
(177) |
Dec
(106) |
2008 |
Jan
(113) |
Feb
(199) |
Mar
(131) |
Apr
(215) |
May
(105) |
Jun
(119) |
Jul
(140) |
Aug
(126) |
Sep
(139) |
Oct
(157) |
Nov
(105) |
Dec
(103) |
2009 |
Jan
(185) |
Feb
(181) |
Mar
(201) |
Apr
(221) |
May
(175) |
Jun
(172) |
Jul
(153) |
Aug
(108) |
Sep
(87) |
Oct
(24) |
Nov
(21) |
Dec
(27) |
2010 |
Jan
(10) |
Feb
(52) |
Mar
(75) |
Apr
(128) |
May
(150) |
Jun
(110) |
Jul
(71) |
Aug
(75) |
Sep
(65) |
Oct
(88) |
Nov
(95) |
Dec
(55) |
2011 |
Jan
(35) |
Feb
(54) |
Mar
(67) |
Apr
(75) |
May
(49) |
Jun
(57) |
Jul
(36) |
Aug
(30) |
Sep
(42) |
Oct
(10) |
Nov
(28) |
Dec
(39) |
2012 |
Jan
(70) |
Feb
(20) |
Mar
(32) |
Apr
(65) |
May
(29) |
Jun
(11) |
Jul
(13) |
Aug
(23) |
Sep
(22) |
Oct
(9) |
Nov
(13) |
Dec
(10) |
2013 |
Jan
(9) |
Feb
(9) |
Mar
(9) |
Apr
(7) |
May
(7) |
Jun
(2) |
Jul
(10) |
Aug
(2) |
Sep
(6) |
Oct
(5) |
Nov
(8) |
Dec
(3) |
2014 |
Jan
(17) |
Feb
(8) |
Mar
|
Apr
(3) |
May
|
Jun
(6) |
Jul
(6) |
Aug
|
Sep
(1) |
Oct
(2) |
Nov
(3) |
Dec
(2) |
2015 |
Jan
(1) |
Feb
(2) |
Mar
(1) |
Apr
(4) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
From: Joshua O'M. <jos...@gm...> - 2014-01-20 17:12:54
|
You will need to contact the JenaJung developers; that's a different project that uses JUNG (https://github.com/shellac/JenaJung) and this is the first that I've heard of it. If you can't reach them directly, I'd try StackOverflow for this question. Good luck! Joshua On Mon Jan 20 2014 at 9:02:46 AM, MD.Rashedul Hasan <ras...@gm...> wrote: > Dear Concern, > > Using Jena Jung can I convert RDF file into Scatter graph? > > Thank you for your support > > Regards, > > Md. Rashedul Hasan > > > On Mon, Jan 20, 2014 at 5:59 PM, MD.Rashedul Hasan <ras...@gm...>wrote: > > Dear Concern, > > Using Jena Jung can I convert RDF file into Scatter graph? > > Thank you for your support > > Regards, > > Md. Rashedul Hasan > > > > > -- > Md. Rashedul Hasan > PhD Student > Department of Mechanical and Structural Engineering > University of Trento. > |
From: MD.Rashedul H. <ras...@gm...> - 2014-01-20 17:02:36
|
Dear Concern, Using Jena Jung can I convert RDF file into Scatter graph? Thank you for your support Regards, Md. Rashedul Hasan On Mon, Jan 20, 2014 at 5:59 PM, MD.Rashedul Hasan <ras...@gm...>wrote: > Dear Concern, > > Using Jena Jung can I convert RDF file into Scatter graph? > > Thank you for your support > > Regards, > > Md. Rashedul Hasan > -- Md. Rashedul Hasan PhD Student Department of Mechanical and Structural Engineering University of Trento. |
From: Mohamed a. h. t. <moh...@gm...> - 2014-01-11 07:43:59
|
I send this mail to ask you if it is possible to select a part of graphic and detect the nodes pertaining to the selected part. Thanks. |
From: Joshua O'M. <jos...@gm...> - 2014-01-07 22:39:37
|
On Tue, Jan 7, 2014 at 11:17 AM, Martin Pernollet < mar...@gm...> wrote: > > > > 2014/1/7 Joshua O'Madadhain <jos...@gm...> > >> Martin: >> >> Thanks for the notice! We're glad that the JUNG API is proving useful to >> you >> > > To me, Jung datamodel should be part of the standard java collection ;) > Thank you! It's a goal I've had my eye on for some time. > > >> , and wish you success with your project. >> > > Thank you > > >> >> Joshua >> for the JUNG Development Team >> >> >> On Tue, Jan 7, 2014 at 5:37 AM, Martin Pernollet < >> mar...@gm...> wrote: >> >>> Hi, >>> >>> I just would like to announce that I've released Datagr4m, a framework >>> dealing with graph visualisation. Why another one? It let you build >>> hierarchical clusters of nodes in a graph, which makes the layout more >>> readable than standard graph layouts. It has other advantages that you can >>> read/see here [1]. >>> >>> Despite the .com domain, all is open source [2] :) There is also a Neo4j >>> viewer application to let you navigate a hierarchical graph [3] and some >>> standalone demos. A few videos give an overview of navigating computer >>> networks graphs [4] >>> >>> The framework uses Jung for the graph datastructure, because I think it >>> is the most powerfull. It uses Gephi's ForceAtlas layout because it >>> empirically produced the most beautifull layouts. >>> >>> I hope you will enjoy this contribution, >>> >>> Cheers, >>> >>> Martin >>> @jzy3d >>> >>> [1] http://datagr4m.com/node/4 >>> [2] https://github.com/datagr4m/org.datagr4m >>> [3] http://datagr4m.com/node/9 >>> [4] http://datagr4m.com/node/5 >>> >>> >>> >>> ------------------------------------------------------------------------------ >>> Rapidly troubleshoot problems before they affect your business. Most IT >>> organizations don't have a clear picture of how application performance >>> affects their revenue. With AppDynamics, you get 100% visibility into >>> your >>> Java,.NET, & PHP application. Start your 15-day FREE TRIAL of >>> AppDynamics Pro! >>> >>> http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk >>> _______________________________________________ >>> Jung-support mailing list >>> Jun...@li... >>> https://lists.sourceforge.net/lists/listinfo/jung-support >>> >>> >> >> >> -- >> jos...@gm.........sites.google.com/site/joshuaomadadhain/ >> Joshua O'Madadhain: Information Scientist, Musician, >> Philosopher-At-Tall >> It's that moment of dawning comprehension that I live for. -- Bill >> Watterson >> My opinions are too rational and insightful to be those of any >> organization. >> > > -- jos...@gm.........sites.google.com/site/joshuaomadadhain/ Joshua O'Madadhain: Information Scientist, Musician, Philosopher-At-Tall It's that moment of dawning comprehension that I live for. -- Bill Watterson My opinions are too rational and insightful to be those of any organization. |
From: Martin P. <mar...@gm...> - 2014-01-07 19:17:59
|
2014/1/7 Joshua O'Madadhain <jos...@gm...> > Martin: > > Thanks for the notice! We're glad that the JUNG API is proving useful to > you > To me, Jung datamodel should be part of the standard java collection ;) > , and wish you success with your project. > Thank you > > Joshua > for the JUNG Development Team > > > On Tue, Jan 7, 2014 at 5:37 AM, Martin Pernollet < > mar...@gm...> wrote: > >> Hi, >> >> I just would like to announce that I've released Datagr4m, a framework >> dealing with graph visualisation. Why another one? It let you build >> hierarchical clusters of nodes in a graph, which makes the layout more >> readable than standard graph layouts. It has other advantages that you can >> read/see here [1]. >> >> Despite the .com domain, all is open source [2] :) There is also a Neo4j >> viewer application to let you navigate a hierarchical graph [3] and some >> standalone demos. A few videos give an overview of navigating computer >> networks graphs [4] >> >> The framework uses Jung for the graph datastructure, because I think it >> is the most powerfull. It uses Gephi's ForceAtlas layout because it >> empirically produced the most beautifull layouts. >> >> I hope you will enjoy this contribution, >> >> Cheers, >> >> Martin >> @jzy3d >> >> [1] http://datagr4m.com/node/4 >> [2] https://github.com/datagr4m/org.datagr4m >> [3] http://datagr4m.com/node/9 >> [4] http://datagr4m.com/node/5 >> >> >> >> ------------------------------------------------------------------------------ >> Rapidly troubleshoot problems before they affect your business. Most IT >> organizations don't have a clear picture of how application performance >> affects their revenue. With AppDynamics, you get 100% visibility into your >> Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics >> Pro! >> >> http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk >> _______________________________________________ >> Jung-support mailing list >> Jun...@li... >> https://lists.sourceforge.net/lists/listinfo/jung-support >> >> > > > -- > jos...@gm.........sites.google.com/site/joshuaomadadhain/ > Joshua O'Madadhain: Information Scientist, Musician, Philosopher-At-Tall > It's that moment of dawning comprehension that I live for. -- Bill > Watterson > My opinions are too rational and insightful to be those of any > organization. > |
From: Joshua O'M. <jos...@gm...> - 2014-01-07 17:02:15
|
Martin: Thanks for the notice! We're glad that the JUNG API is proving useful to you, and wish you success with your project. Joshua for the JUNG Development Team On Tue, Jan 7, 2014 at 5:37 AM, Martin Pernollet <mar...@gm... > wrote: > Hi, > > I just would like to announce that I've released Datagr4m, a framework > dealing with graph visualisation. Why another one? It let you build > hierarchical clusters of nodes in a graph, which makes the layout more > readable than standard graph layouts. It has other advantages that you can > read/see here [1]. > > Despite the .com domain, all is open source [2] :) There is also a Neo4j > viewer application to let you navigate a hierarchical graph [3] and some > standalone demos. A few videos give an overview of navigating computer > networks graphs [4] > > The framework uses Jung for the graph datastructure, because I think it is > the most powerfull. It uses Gephi's ForceAtlas layout because it > empirically produced the most beautifull layouts. > > I hope you will enjoy this contribution, > > Cheers, > > Martin > @jzy3d > > [1] http://datagr4m.com/node/4 > [2] https://github.com/datagr4m/org.datagr4m > [3] http://datagr4m.com/node/9 > [4] http://datagr4m.com/node/5 > > > > ------------------------------------------------------------------------------ > Rapidly troubleshoot problems before they affect your business. Most IT > organizations don't have a clear picture of how application performance > affects their revenue. With AppDynamics, you get 100% visibility into your > Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics > Pro! > http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk > _______________________________________________ > Jung-support mailing list > Jun...@li... > https://lists.sourceforge.net/lists/listinfo/jung-support > > -- jos...@gm.........sites.google.com/site/joshuaomadadhain/ Joshua O'Madadhain: Information Scientist, Musician, Philosopher-At-Tall It's that moment of dawning comprehension that I live for. -- Bill Watterson My opinions are too rational and insightful to be those of any organization. |
From: Martin P. <mar...@gm...> - 2014-01-07 13:37:49
|
Hi, I just would like to announce that I've released Datagr4m, a framework dealing with graph visualisation. Why another one? It let you build hierarchical clusters of nodes in a graph, which makes the layout more readable than standard graph layouts. It has other advantages that you can read/see here [1]. Despite the .com domain, all is open source [2] :) There is also a Neo4j viewer application to let you navigate a hierarchical graph [3] and some standalone demos. A few videos give an overview of navigating computer networks graphs [4] The framework uses Jung for the graph datastructure, because I think it is the most powerfull. It uses Gephi's ForceAtlas layout because it empirically produced the most beautifull layouts. I hope you will enjoy this contribution, Cheers, Martin @jzy3d [1] http://datagr4m.com/node/4 [2] https://github.com/datagr4m/org.datagr4m [3] http://datagr4m.com/node/9 [4] http://datagr4m.com/node/5 |
From: Siarhei <kom...@gm...> - 2013-12-24 19:42:10
|
Hello, My name is Siarhei and I have an improvement proposal for Jung2. I was looking for some java lib to work with graphs and google suggested Jung2 to me. When I tried to add Jung2 dependency to my project (it uses maven) I met some difficulties: 1. There is no description in FAQ ( http://jung.sourceforge.net/faq.html ) how to add jung2 to maven dependencies. 2. What artifacts should I add? Looking into internet I found that people encountered with similar difficulties: http://stackoverflow.com/questions/3854719/what-is-a-maven-repository-url-for-jung2-java-graph-framework Then I looked into pom.xml for jung2 ( http://repo1.maven.org/maven2/net/sf/jung/jung2/2.0.1/jung2-2.0.1.pom ) and found that all <module> are described inside of <profiles>. It's inconvinient. My improvement proposal: 1. Move <modules> out of <profiles> in the main pom.xml for jung2. It will let people use the following: |<dependency> <groupId>net.sf.jung</groupId> <artifactId>jung2</artifactId> <version>2.0.1</version> <type>pom</type> </dependency>| 2. Update FAQ with info how to add jung2 to maven project. BR, Siarhei Skavarodkin --- Это сообщение свободно от вирусов и вредоносного ПО благодаря защите от вирусов avast! http://www.avast.com |
From: Joshua O'M. <jos...@gm...> - 2013-12-16 22:12:06
|
For future reference, StackOverflow is a better place, at this point, to ask "how to?" JUNG-related questions such as this. There are two different BetweennessCentrality implementations; it looks like you're using the one in algorithms.importance (the old version) rather than the one in algorithms.scoring. I recommend the latter. Normalizing the BetweennessCentrality score is up to you; there are different ways of doing this depending on what you mean by "normalize". Two options: (1) divide all scores by the number of start/end pairs that could have used that vertex, i.e., (n-1)(n-2)/2 - this will get, for each node, the fraction of all shortest paths that use that node (2) find the maximum score, divide all scores by that value - this will get, for each node, the fraction of the maximum centrality score that that node has For all algorithms in algorithms.scoring, to get the score for each vertex you call [algorithm].getVertexScore([vertex]), just as you did above. The old way of doing this (algorithms.importance, which gives you printRankings()) didn't actually expose the scores. Good luck! Joshua On Mon Dec 16 2013 at 1:40:26 PM, Adeeb Noor <ade...@co...> wrote: > I am a graduate student who is doing a research on semantic web. I am > using the Jung library to calculate the closeness and betweenness for my > network and I have two questions: > > 1-Hers is my code to find betweenness: > > System.out.println("Applying BetweennessCentrality"); > > BetweennessCentrality<RDFNode, Statement> Betweenness > = new BetweennessCentrality<RDFNode, Statement>(graph); > > Betweenness.evaluate(); > > Betweenness.printRankings(true, true); > > I got the betweenness score but is there a function to normalize it ? if > not, what is the best way to do such a thing ? > > 2- How can I get the closeness score for all vertices on my graph ? below > is the code: > > System.out.println("Applying ClosenessCentrality"); > > ClosenessCentrality<RDFNode, Statement> closeness > = new ClosenessCentrality<RDFNode, Statement>(graph); > > closeness.getVertexScore(arg0); > > This function will give me the score for only one vertices, however and as > I said before I want to calculate the closeness score for all vertices in > my graph. How > > finally, I am using java 6 and JUNG 2.0.1 release as api. > > Thanks. > > -- > Adeeb Noor > Ph.D. Candidate > Dept of Computer Science > University of Colorado at Boulder > Cell: 571-484-3303 > Email: Ade...@co... > |
From: Adeeb N. <ade...@co...> - 2013-12-16 21:40:12
|
I am a graduate student who is doing a research on semantic web. I am using the Jung library to calculate the closeness and betweenness for my network and I have two questions: 1-Hers is my code to find betweenness: System.out.println("Applying BetweennessCentrality"); BetweennessCentrality<RDFNode, Statement> Betweenness = new BetweennessCentrality<RDFNode, Statement>(graph); Betweenness.evaluate(); Betweenness.printRankings(true, true); I got the betweenness score but is there a function to normalize it ? if not, what is the best way to do such a thing ? 2- How can I get the closeness score for all vertices on my graph ? below is the code: System.out.println("Applying ClosenessCentrality"); ClosenessCentrality<RDFNode, Statement> closeness = new ClosenessCentrality<RDFNode, Statement>(graph); closeness.getVertexScore(arg0); This function will give me the score for only one vertices, however and as I said before I want to calculate the closeness score for all vertices in my graph. How finally, I am using java 6 and JUNG 2.0.1 release as api. Thanks. -- Adeeb Noor Ph.D. Candidate Dept of Computer Science University of Colorado at Boulder Cell: 571-484-3303 Email: Ade...@co... |
From: Ahmed A. H. <ahm...@gm...> - 2013-11-25 09:46:29
|
Thanks for this Hussain. I really appreciate your help. I will give it a try and let you know what it is doing for me. Sincerely, -Ahmed On Mon, Nov 11, 2013 at 5:26 PM, Hussain Al-Mutawa <hus...@gm... > wrote: > You may look at this implementation of PathFinder which enumerates all > paths between every pair of vertices. Not so efficient. > > > https://code.google.com/p/tanglez/source/browse/trunk/src/nz/ac/massey/cs/tanglez/scc/PathFinder.java > > cheers, Hussain > > > On Sat, Nov 9, 2013 at 4:01 PM, Ahmed Abdeen Hamed < > ahm...@gm...> wrote: > >> Hey guys, >> >> Does JUNG have an implementation of a Longest Path algorithm? >> >> Thanks in Advance! >> >> -Ahmed >> >> >> ------------------------------------------------------------------------------ >> November Webinars for C, C++, Fortran Developers >> Accelerate application performance with scalable programming models. >> Explore >> techniques for threading, error checking, porting, and tuning. Get the >> most >> from the latest Intel processors and coprocessors. See abstracts and >> register >> >> http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk >> _______________________________________________ >> Jung-support mailing list >> Jun...@li... >> https://lists.sourceforge.net/lists/listinfo/jung-support >> >> > > > -- > (\__/) > (='.'=) > (")_(") > > > ------------------------------------------------------------------------------ > November Webinars for C, C++, Fortran Developers > Accelerate application performance with scalable programming models. > Explore > techniques for threading, error checking, porting, and tuning. Get the most > from the latest Intel processors and coprocessors. See abstracts and > register > http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk > _______________________________________________ > Jung-support mailing list > Jun...@li... > https://lists.sourceforge.net/lists/listinfo/jung-support > > |
From: Hussain Al-M. <hus...@gm...> - 2013-11-11 22:27:17
|
You may look at this implementation of PathFinder which enumerates all paths between every pair of vertices. Not so efficient. https://code.google.com/p/tanglez/source/browse/trunk/src/nz/ac/massey/cs/tanglez/scc/PathFinder.java cheers, Hussain On Sat, Nov 9, 2013 at 4:01 PM, Ahmed Abdeen Hamed <ahm...@gm...>wrote: > Hey guys, > > Does JUNG have an implementation of a Longest Path algorithm? > > Thanks in Advance! > > -Ahmed > > > ------------------------------------------------------------------------------ > November Webinars for C, C++, Fortran Developers > Accelerate application performance with scalable programming models. > Explore > techniques for threading, error checking, porting, and tuning. Get the most > from the latest Intel processors and coprocessors. See abstracts and > register > http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk > _______________________________________________ > Jung-support mailing list > Jun...@li... > https://lists.sourceforge.net/lists/listinfo/jung-support > > -- (\__/) (='.'=) (")_(") |
From: Joshua O'M. <jos...@gm...> - 2013-11-11 17:15:50
|
I would be interested in more details, yes. "Better than" in the context of networks admits of many possible interpretations, which usually depend on the problem domain. On Nov 11, 2013 8:38 AM, "Ahmed Abdeen Hamed" <ahm...@gm...> wrote: > I have a network of a sort that I am trying to compare with another. I am > trying to see if there is one network that's better than the other by > exploring paths in both networks. My initial step is to test the following > hypothesis: The more nodes/links in the path the more details "we gain", > the better one network over the other. I am open to other ideas but I need > a concrete mathematical model that can be used as a base of this comparison. > > If this is not clear enough, I can give more specific details offline. > > Thanks very much! > > -Ahmed > > > > > On Mon, Nov 11, 2013 at 11:32 AM, Joshua O'Madadhain < > jos...@gm...> wrote: > >> The implementation of Dijkstra's algorithm will give you a shortest >> path. It will not find all possible shortest paths, which is also >> exponential in time in the worst case. >> >> What problem are you trying to solve? >> On Nov 11, 2013 8:00 AM, "Ahmed Abdeen Hamed" <ahm...@gm...> >> wrote: >> >>> Thanks for this! >>> >>> Is there another path finding algorithm that takes a start node and an >>> end node to determine whether there is a path, and also returns possible >>> paths? Does the current implementation of Dijkstra's provide this? >>> >>> Thanks again! >>> >>> >>> -Ahmed >>> >>> >>> On Mon, Nov 11, 2013 at 12:06 AM, Joshua O'Madadhain < >>> jos...@gm...> wrote: >>> >>>> No, JUNG does not provide implementations of any worst-case >>>> exponential-time algorithms: >>>> http://en.wikipedia.org/wiki/Longest_path_problem >>>> >>>> Joshua >>>> >>>> >>>> On Fri, Nov 8, 2013 at 7:01 PM, Ahmed Abdeen Hamed < >>>> ahm...@gm...> wrote: >>>> >>>>> Hey guys, >>>>> >>>>> Does JUNG have an implementation of a Longest Path algorithm? >>>>> >>>>> Thanks in Advance! >>>>> >>>>> -Ahmed >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> November Webinars for C, C++, Fortran Developers >>>>> Accelerate application performance with scalable programming models. >>>>> Explore >>>>> techniques for threading, error checking, porting, and tuning. Get the >>>>> most >>>>> from the latest Intel processors and coprocessors. See abstracts and >>>>> register >>>>> >>>>> http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk >>>>> _______________________________________________ >>>>> Jung-support mailing list >>>>> Jun...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/jung-support >>>>> >>>>> >>>> >>>> >>>> -- >>>> jos...@gm......... >>>> sites.google.com/site/joshuaomadadhain/ >>>> Joshua O'Madadhain: Information Scientist, Musician, >>>> Philosopher-At-Tall >>>> It's that moment of dawning comprehension that I live for. -- Bill >>>> Watterson >>>> My opinions are too rational and insightful to be those of any >>>> organization. >>>> >>> >>> > |
From: Ahmed A. H. <ahm...@gm...> - 2013-11-11 16:38:41
|
I have a network of a sort that I am trying to compare with another. I am trying to see if there is one network that's better than the other by exploring paths in both networks. My initial step is to test the following hypothesis: The more nodes/links in the path the more details "we gain", the better one network over the other. I am open to other ideas but I need a concrete mathematical model that can be used as a base of this comparison. If this is not clear enough, I can give more specific details offline. Thanks very much! -Ahmed On Mon, Nov 11, 2013 at 11:32 AM, Joshua O'Madadhain < jos...@gm...> wrote: > The implementation of Dijkstra's algorithm will give you a shortest > path. It will not find all possible shortest paths, which is also > exponential in time in the worst case. > > What problem are you trying to solve? > On Nov 11, 2013 8:00 AM, "Ahmed Abdeen Hamed" <ahm...@gm...> > wrote: > >> Thanks for this! >> >> Is there another path finding algorithm that takes a start node and an >> end node to determine whether there is a path, and also returns possible >> paths? Does the current implementation of Dijkstra's provide this? >> >> Thanks again! >> >> >> -Ahmed >> >> >> On Mon, Nov 11, 2013 at 12:06 AM, Joshua O'Madadhain < >> jos...@gm...> wrote: >> >>> No, JUNG does not provide implementations of any worst-case >>> exponential-time algorithms: >>> http://en.wikipedia.org/wiki/Longest_path_problem >>> >>> Joshua >>> >>> >>> On Fri, Nov 8, 2013 at 7:01 PM, Ahmed Abdeen Hamed < >>> ahm...@gm...> wrote: >>> >>>> Hey guys, >>>> >>>> Does JUNG have an implementation of a Longest Path algorithm? >>>> >>>> Thanks in Advance! >>>> >>>> -Ahmed >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> November Webinars for C, C++, Fortran Developers >>>> Accelerate application performance with scalable programming models. >>>> Explore >>>> techniques for threading, error checking, porting, and tuning. Get the >>>> most >>>> from the latest Intel processors and coprocessors. See abstracts and >>>> register >>>> >>>> http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk >>>> _______________________________________________ >>>> Jung-support mailing list >>>> Jun...@li... >>>> https://lists.sourceforge.net/lists/listinfo/jung-support >>>> >>>> >>> >>> >>> -- >>> jos...@gm.........sites.google.com/site/joshuaomadadhain/ >>> Joshua O'Madadhain: Information Scientist, Musician, >>> Philosopher-At-Tall >>> It's that moment of dawning comprehension that I live for. -- Bill >>> Watterson >>> My opinions are too rational and insightful to be those of any >>> organization. >>> >> >> |
From: Joshua O'M. <jos...@gm...> - 2013-11-11 16:32:48
|
The implementation of Dijkstra's algorithm will give you a shortest path. It will not find all possible shortest paths, which is also exponential in time in the worst case. What problem are you trying to solve? On Nov 11, 2013 8:00 AM, "Ahmed Abdeen Hamed" <ahm...@gm...> wrote: > Thanks for this! > > Is there another path finding algorithm that takes a start node and an end > node to determine whether there is a path, and also returns possible paths? > Does the current implementation of Dijkstra's provide this? > > Thanks again! > > > -Ahmed > > > On Mon, Nov 11, 2013 at 12:06 AM, Joshua O'Madadhain < > jos...@gm...> wrote: > >> No, JUNG does not provide implementations of any worst-case >> exponential-time algorithms: >> http://en.wikipedia.org/wiki/Longest_path_problem >> >> Joshua >> >> >> On Fri, Nov 8, 2013 at 7:01 PM, Ahmed Abdeen Hamed < >> ahm...@gm...> wrote: >> >>> Hey guys, >>> >>> Does JUNG have an implementation of a Longest Path algorithm? >>> >>> Thanks in Advance! >>> >>> -Ahmed >>> >>> >>> ------------------------------------------------------------------------------ >>> November Webinars for C, C++, Fortran Developers >>> Accelerate application performance with scalable programming models. >>> Explore >>> techniques for threading, error checking, porting, and tuning. Get the >>> most >>> from the latest Intel processors and coprocessors. See abstracts and >>> register >>> >>> http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk >>> _______________________________________________ >>> Jung-support mailing list >>> Jun...@li... >>> https://lists.sourceforge.net/lists/listinfo/jung-support >>> >>> >> >> >> -- >> jos...@gm.........sites.google.com/site/joshuaomadadhain/ >> Joshua O'Madadhain: Information Scientist, Musician, >> Philosopher-At-Tall >> It's that moment of dawning comprehension that I live for. -- Bill >> Watterson >> My opinions are too rational and insightful to be those of any >> organization. >> > > |
From: Ahmed A. H. <ahm...@gm...> - 2013-11-11 16:00:19
|
Thanks for this! Is there another path finding algorithm that takes a start node and an end node to determine whether there is a path, and also returns possible paths? Does the current implementation of Dijkstra's provide this? Thanks again! -Ahmed On Mon, Nov 11, 2013 at 12:06 AM, Joshua O'Madadhain < jos...@gm...> wrote: > No, JUNG does not provide implementations of any worst-case > exponential-time algorithms: > http://en.wikipedia.org/wiki/Longest_path_problem > > Joshua > > > On Fri, Nov 8, 2013 at 7:01 PM, Ahmed Abdeen Hamed < > ahm...@gm...> wrote: > >> Hey guys, >> >> Does JUNG have an implementation of a Longest Path algorithm? >> >> Thanks in Advance! >> >> -Ahmed >> >> >> ------------------------------------------------------------------------------ >> November Webinars for C, C++, Fortran Developers >> Accelerate application performance with scalable programming models. >> Explore >> techniques for threading, error checking, porting, and tuning. Get the >> most >> from the latest Intel processors and coprocessors. See abstracts and >> register >> >> http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk >> _______________________________________________ >> Jung-support mailing list >> Jun...@li... >> https://lists.sourceforge.net/lists/listinfo/jung-support >> >> > > > -- > jos...@gm.........sites.google.com/site/joshuaomadadhain/ > Joshua O'Madadhain: Information Scientist, Musician, Philosopher-At-Tall > It's that moment of dawning comprehension that I live for. -- Bill > Watterson > My opinions are too rational and insightful to be those of any > organization. > |
From: Joshua O'M. <jos...@gm...> - 2013-11-11 05:06:12
|
No, JUNG does not provide implementations of any worst-case exponential-time algorithms: http://en.wikipedia.org/wiki/Longest_path_problem Joshua On Fri, Nov 8, 2013 at 7:01 PM, Ahmed Abdeen Hamed <ahm...@gm...>wrote: > Hey guys, > > Does JUNG have an implementation of a Longest Path algorithm? > > Thanks in Advance! > > -Ahmed > > > ------------------------------------------------------------------------------ > November Webinars for C, C++, Fortran Developers > Accelerate application performance with scalable programming models. > Explore > techniques for threading, error checking, porting, and tuning. Get the most > from the latest Intel processors and coprocessors. See abstracts and > register > http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk > _______________________________________________ > Jung-support mailing list > Jun...@li... > https://lists.sourceforge.net/lists/listinfo/jung-support > > -- jos...@gm.........sites.google.com/site/joshuaomadadhain/ Joshua O'Madadhain: Information Scientist, Musician, Philosopher-At-Tall It's that moment of dawning comprehension that I live for. -- Bill Watterson My opinions are too rational and insightful to be those of any organization. |
From: Ahmed A. H. <ahm...@gm...> - 2013-11-09 03:01:50
|
Hey guys, Does JUNG have an implementation of a Longest Path algorithm? Thanks in Advance! -Ahmed |
From: Joshua O'M. <jos...@gm...> - 2013-10-28 18:04:32
|
Luc: I don't know how to answer this question, because you don't define "efficient", nor "performance techniques". I mean, I can certainly talk about decisions that JUNG has made on several levels in terms of the data structures that it uses, or the algorithmic approaches in various contexts. (And I can talk about approaches that we don't currently use, but should.) But that's potentially a very lengthy discussion/lecture and I don't have the time right now to go into all of that. Some of it, perhaps...if I knew which parts were of interest. Also, of course, I assume you're aware that the code is there for the reading. :) So if you are particularly interested in this topic, please make it more clear what you're interested in. Joshua On Mon, Oct 28, 2013 at 2:56 AM, Luc Hogie <Luc...@in...> wrote: > Good morning, > > I'm interested in performance techniques for graph algorithms. In > particular I would like to know what have been made into the Jung > library to make it efficient. > > Regards, > Luc. > > > > ------------------------------------------------------------------------------ > October Webinars: Code for Performance > Free Intel webinars can help you accelerate application performance. > Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most > from > the latest Intel processors and coprocessors. See abstracts and register > > http://pubads.g.doubleclick.net/gampad/clk?id=60135991&iu=/4140/ostg.clktrk > _______________________________________________ > Jung-support mailing list > Jun...@li... > https://lists.sourceforge.net/lists/listinfo/jung-support > -- jos...@gm.........sites.google.com/site/joshuaomadadhain/ Joshua O'Madadhain: Information Scientist, Musician, Philosopher-At-Tall It's that moment of dawning comprehension that I live for. -- Bill Watterson My opinions are too rational and insightful to be those of any organization. |
From: Luc H. <Luc...@in...> - 2013-10-28 09:56:43
|
Good morning, I'm interested in performance techniques for graph algorithms. In particular I would like to know what have been made into the Jung library to make it efficient. Regards, Luc. |
From: ken c. <kch...@gm...> - 2013-10-19 17:44:10
|
Hi All, According to the link http://jung.sourceforge.net/doc/JUNGVisualizationGuide.html When use *DefaultModalGraphMouse* a it supports multiple selection on the vertices and edge. Is there any way to disable multiple selection when use * DefaultModalGraphMouse* ? Thanks, Ken |
From: Joshua O'M. <jos...@gm...> - 2013-10-14 17:09:18
|
Parisa: (0) StackOverflow, these days, is a better place to post questions like this. (1) The name of the class is "PageRankWithPriors". Using the correct class name in your questions will speed things up, generally. :) (2) I'm not sure why you're calling setHyperEdgesAreSelfLoops()--you're not working with a hypergraph. But the fact that the resultant numbers are weird suggests that yes, there might be a bug there. (It looks like we're not guarding against the possibility that the graph is not a hypergraph when that method is called. :P ) (3) I think that this may be the problem: g.addVertex((Integer)0); I believe that casting 0 (or any other integer) to Integer is not the same thing as 'new Integer(0)' or 'Integer.valueOf(0)'. What you're doing is actually casting the number 0 to a Integer reference. So I'll bet that if you ask your graph how many vertices it has, it will report '6' rather than '3'. The good news is that addEdge() will automatically add the vertex arguments to the graph as needed, so you can just remove the addVertex() calls entirely. Let us know if that works for you. Good luck! Joshua O'Madadhain On Mon, Oct 14, 2013 at 1:00 AM, parisa berangi <par...@gm...>wrote: > Hi , > I am using JUNG library for its "PersonalizedPageRank class". I used a > very small graph (with just 3 nodes) to test this class. when there isn't > any node with self-edge the output is OK, but if the graph contains a node > with a self-edge the output becomes incorrect (the final rank of nodes is > not in the form of probability value and their sum is not equal to 1). the > output is : > 0.2997601918465228 > 0.1247002398081535 > 0.1918465227817746 > > i used "setHyperedgesAreSelfLoops(true)" but the outputs are still > incorrect: > 320751.99531359226 > 609574.2619040733 > 2554381.251484884 > > my code is attached to this email. > why "PersonalizedPageRank class" does not work correctly? Is there a bug > inside it or i do something wrong? > > your help is greatly appreciated. > > -- > Parisa Berangi > M.Sc. Student, Natural Language Processing Lab, > School of Electrical and Computer Engineering > University Of Tehran > Tehran ,Iran > > > ------------------------------------------------------------------------------ > October Webinars: Code for Performance > Free Intel webinars can help you accelerate application performance. > Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most > from > the latest Intel processors and coprocessors. See abstracts and register > > http://pubads.g.doubleclick.net/gampad/clk?id=60134071&iu=/4140/ostg.clktrk > _______________________________________________ > Jung-support mailing list > Jun...@li... > https://lists.sourceforge.net/lists/listinfo/jung-support > > -- jos...@gm.........sites.google.com/site/joshuaomadadhain/ Joshua O'Madadhain: Information Scientist, Musician, Philosopher-At-Tall It's that moment of dawning comprehension that I live for. -- Bill Watterson My opinions are too rational and insightful to be those of any organization. |
From: Joshua O'M. <jos...@gm...> - 2013-09-25 16:46:19
|
Actually, it does explain it. There are lots of articles on what happens if equals() and hashCode() are not consistent; please go take a look. On Wed, Sep 25, 2013 at 6:14 AM, Han Qi <shm...@gm...> wrote: > HI Tom, you are right about equals and hashcode. > But that still does not explain why g.findedge() throw Nullpoiner > execption and for edge in g.getIncidentEdges(v), g.edges.get(edge) returns > null. > And why change the type of Graph make it ok. > > Best > Qi > > > On Wed, Sep 25, 2013 at 2:57 PM, Tom Nelson <tho...@gm...>wrote: > >> My guess is that your Tweet class does not override equals and hashcode, >> so the new ones you create are never 'equal' to the ones in your graph. You >> would have the same error with any Java collection, not just the Jung >> graphs. >> >> Tom Nelson >> >> >> On Wed, Sep 25, 2013 at 8:41 AM, Han Qi <shm...@gm...> wrote: >> >>> Hi, Joshua, >>> >>> thanks for the quick reply. What I mean ist that: >>> >>> I find sometimes g.findEdge throw java.lang. >>> NullPointerException. With >>> I then look at the source code of findEdge, it seems thatI that for some >>> edges it get from g.getIncidentEdges(v), edges.get(edge) returns null. >>> And this happens when the graph type is UndirectedSparseMultigraph, if I >>> change it to UndirectedSparseGraph everything goes fine but the programm >>> becomes much slower. >>> >>> Here is the code I use: the graph is pretty big 512,262 notes. >>> >>> Graph<String, List<Tweet[]>> g = new >>> UndirectedSparseMultigraph<String, List<Tweet[]>>(); >>> >>> // add vertexes >>> Set<String> UIDs = twitterData2.getRawDataUIDMap().keySet(); >>> for (String uid : UIDs) { >>> g.addVertex(uid); >>> } >>> >>> // add edges >>> long count = 0; >>> for (Tweet aTweet : twitterData2.getRawData()) { >>> String thisAuthor = aTweet.getAuthorId(); >>> >>> Collection<Tweet> result = query(thisAuthor) >>> for (Tweet tweet : result) { >>> String thatAuthor = tweet.getAuthorId(); >>> Tweet[] pair = new Tweet[] { aTweet, tweet }; >>> Tweet[] pair1 = new Tweet[] { tweet, aTweet }; >>> >>> if (!thisAuthor.equals(thatAuthor)) { >>> >>> try { >>> List<Tweet[]> anEdge; >>> if ((anEdge = g.findEdge(thisAuthor, >>> thatAuthor)) == null) { // if there is no links between the two, then add a >>> new one >>> anEdge = new ArrayList<Tweet[]>(); >>> g.addEdge(anEdge , thisAuthor, >>> thatAuthor); >>> } >>> >>> if (!(anEdge.contains(pair) || >>> anEdge.contains(pair1))) { >>> anEdge.add(new Tweet[] { aTweet, tweet }); >>> } >>> } catch (Exception e) { >>> >>> // TODO: handle exception >>> count++; >>> // e.printStackTrace(); >>> // if (!g.containsVertex(thisAuthor) || >>> // !g.containsVertex(thatAuthor)) >>> // return null; >>> // for (List<Tweet[]> edge : >>> // g.getIncidentEdges(thisAuthor)) >>> // g.getEdges().contains(edge); >>> // if (g.getOpposite(thisAuthor, >>> // edge).equals(thatAuthor)) >>> // System.out.println(edge.toString()); >>> // throw e; >>> >>> } >>> >>> } >>> } >>> } >>> >>> >>> >>> On Tue, Sep 24, 2013 at 6:22 PM, Joshua O'Madadhain < >>> jos...@gm...> wrote: >>> >>>> Your report is confusing. You start out talking about g.findEdge() and >>>> then talk about the return collection you get from g.getIncidentEdges(). >>>> Please post a self-contained snippet that has the problem you're >>>> describing. >>>> >>>> >>>> On Tue, Sep 24, 2013 at 4:05 AM, Han Qi <shm...@gm...> wrote: >>>> >>>>> Hallo guys, I am using JUNG in a project. I find sometimes g.findEdge >>>>> throw java.lang.NullPointerException. >>>>> I find that for some edges I get from g.getIncidentEdges(v), >>>>> edges.get(edge) returns null. >>>>> It is a bug? >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> October Webinars: Code for Performance >>>>> Free Intel webinars can help you accelerate application performance. >>>>> Explore tips for MPI, OpenMP, advanced profiling, and more. Get the >>>>> most from >>>>> the latest Intel processors and coprocessors. See abstracts and >>>>> register > >>>>> >>>>> http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk >>>>> _______________________________________________ >>>>> Jung-support mailing list >>>>> Jun...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/jung-support >>>>> >>>>> >>>> >>>> >>>> -- >>>> jos...@gm......... >>>> sites.google.com/site/joshuaomadadhain/ >>>> Joshua O'Madadhain: Information Scientist, Musician, >>>> Philosopher-At-Tall >>>> It's that moment of dawning comprehension that I live for. -- Bill >>>> Watterson >>>> My opinions are too rational and insightful to be those of any >>>> organization. >>>> >>> >>> >>> >>> ------------------------------------------------------------------------------ >>> October Webinars: Code for Performance >>> Free Intel webinars can help you accelerate application performance. >>> Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most >>> from >>> the latest Intel processors and coprocessors. See abstracts and register >>> > >>> >>> http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk >>> _______________________________________________ >>> Jung-support mailing list >>> Jun...@li... >>> https://lists.sourceforge.net/lists/listinfo/jung-support >>> >>> >> >> >> ------------------------------------------------------------------------------ >> October Webinars: Code for Performance >> Free Intel webinars can help you accelerate application performance. >> Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most >> from >> the latest Intel processors and coprocessors. See abstracts and register > >> >> http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk >> _______________________________________________ >> Jung-support mailing list >> Jun...@li... >> https://lists.sourceforge.net/lists/listinfo/jung-support >> >> > > > ------------------------------------------------------------------------------ > October Webinars: Code for Performance > Free Intel webinars can help you accelerate application performance. > Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most > from > the latest Intel processors and coprocessors. See abstracts and register > > http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk > _______________________________________________ > Jung-support mailing list > Jun...@li... > https://lists.sourceforge.net/lists/listinfo/jung-support > > -- jos...@gm.........sites.google.com/site/joshuaomadadhain/ Joshua O'Madadhain: Information Scientist, Musician, Philosopher-At-Tall It's that moment of dawning comprehension that I live for. -- Bill Watterson My opinions are too rational and insightful to be those of any organization. |
From: Han Qi <shm...@gm...> - 2013-09-25 13:14:41
|
HI Tom, you are right about equals and hashcode. But that still does not explain why g.findedge() throw Nullpoiner execption and for edge in g.getIncidentEdges(v), g.edges.get(edge) returns null. And why change the type of Graph make it ok. Best Qi On Wed, Sep 25, 2013 at 2:57 PM, Tom Nelson <tho...@gm...>wrote: > My guess is that your Tweet class does not override equals and hashcode, > so the new ones you create are never 'equal' to the ones in your graph. You > would have the same error with any Java collection, not just the Jung > graphs. > > Tom Nelson > > > On Wed, Sep 25, 2013 at 8:41 AM, Han Qi <shm...@gm...> wrote: > >> Hi, Joshua, >> >> thanks for the quick reply. What I mean ist that: >> >> I find sometimes g.findEdge throw java.lang. >> NullPointerException. With >> I then look at the source code of findEdge, it seems thatI that for some >> edges it get from g.getIncidentEdges(v), edges.get(edge) returns null. >> And this happens when the graph type is UndirectedSparseMultigraph, if I >> change it to UndirectedSparseGraph everything goes fine but the programm >> becomes much slower. >> >> Here is the code I use: the graph is pretty big 512,262 notes. >> >> Graph<String, List<Tweet[]>> g = new >> UndirectedSparseMultigraph<String, List<Tweet[]>>(); >> >> // add vertexes >> Set<String> UIDs = twitterData2.getRawDataUIDMap().keySet(); >> for (String uid : UIDs) { >> g.addVertex(uid); >> } >> >> // add edges >> long count = 0; >> for (Tweet aTweet : twitterData2.getRawData()) { >> String thisAuthor = aTweet.getAuthorId(); >> >> Collection<Tweet> result = query(thisAuthor) >> for (Tweet tweet : result) { >> String thatAuthor = tweet.getAuthorId(); >> Tweet[] pair = new Tweet[] { aTweet, tweet }; >> Tweet[] pair1 = new Tweet[] { tweet, aTweet }; >> >> if (!thisAuthor.equals(thatAuthor)) { >> >> try { >> List<Tweet[]> anEdge; >> if ((anEdge = g.findEdge(thisAuthor, thatAuthor)) >> == null) { // if there is no links between the two, then add a new one >> anEdge = new ArrayList<Tweet[]>(); >> g.addEdge(anEdge , thisAuthor, >> thatAuthor); >> } >> >> if (!(anEdge.contains(pair) || >> anEdge.contains(pair1))) { >> anEdge.add(new Tweet[] { aTweet, tweet }); >> } >> } catch (Exception e) { >> >> // TODO: handle exception >> count++; >> // e.printStackTrace(); >> // if (!g.containsVertex(thisAuthor) || >> // !g.containsVertex(thatAuthor)) >> // return null; >> // for (List<Tweet[]> edge : >> // g.getIncidentEdges(thisAuthor)) >> // g.getEdges().contains(edge); >> // if (g.getOpposite(thisAuthor, >> // edge).equals(thatAuthor)) >> // System.out.println(edge.toString()); >> // throw e; >> >> } >> >> } >> } >> } >> >> >> >> On Tue, Sep 24, 2013 at 6:22 PM, Joshua O'Madadhain < >> jos...@gm...> wrote: >> >>> Your report is confusing. You start out talking about g.findEdge() and >>> then talk about the return collection you get from g.getIncidentEdges(). >>> Please post a self-contained snippet that has the problem you're >>> describing. >>> >>> >>> On Tue, Sep 24, 2013 at 4:05 AM, Han Qi <shm...@gm...> wrote: >>> >>>> Hallo guys, I am using JUNG in a project. I find sometimes g.findEdge >>>> throw java.lang.NullPointerException. >>>> I find that for some edges I get from g.getIncidentEdges(v), >>>> edges.get(edge) returns null. >>>> It is a bug? >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> October Webinars: Code for Performance >>>> Free Intel webinars can help you accelerate application performance. >>>> Explore tips for MPI, OpenMP, advanced profiling, and more. Get the >>>> most from >>>> the latest Intel processors and coprocessors. See abstracts and >>>> register > >>>> >>>> http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk >>>> _______________________________________________ >>>> Jung-support mailing list >>>> Jun...@li... >>>> https://lists.sourceforge.net/lists/listinfo/jung-support >>>> >>>> >>> >>> >>> -- >>> jos...@gm.........sites.google.com/site/joshuaomadadhain/ >>> Joshua O'Madadhain: Information Scientist, Musician, >>> Philosopher-At-Tall >>> It's that moment of dawning comprehension that I live for. -- Bill >>> Watterson >>> My opinions are too rational and insightful to be those of any >>> organization. >>> >> >> >> >> ------------------------------------------------------------------------------ >> October Webinars: Code for Performance >> Free Intel webinars can help you accelerate application performance. >> Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most >> from >> the latest Intel processors and coprocessors. See abstracts and register > >> >> http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk >> _______________________________________________ >> Jung-support mailing list >> Jun...@li... >> https://lists.sourceforge.net/lists/listinfo/jung-support >> >> > > > ------------------------------------------------------------------------------ > October Webinars: Code for Performance > Free Intel webinars can help you accelerate application performance. > Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most > from > the latest Intel processors and coprocessors. See abstracts and register > > http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk > _______________________________________________ > Jung-support mailing list > Jun...@li... > https://lists.sourceforge.net/lists/listinfo/jung-support > > |
From: Tom N. <tho...@gm...> - 2013-09-25 12:57:36
|
My guess is that your Tweet class does not override equals and hashcode, so the new ones you create are never 'equal' to the ones in your graph. You would have the same error with any Java collection, not just the Jung graphs. Tom Nelson On Wed, Sep 25, 2013 at 8:41 AM, Han Qi <shm...@gm...> wrote: > Hi, Joshua, > > thanks for the quick reply. What I mean ist that: > > I find sometimes g.findEdge throw java.lang. > NullPointerException. With > I then look at the source code of findEdge, it seems thatI that for some > edges it get from g.getIncidentEdges(v), edges.get(edge) returns null. > And this happens when the graph type is UndirectedSparseMultigraph, if I > change it to UndirectedSparseGraph everything goes fine but the programm > becomes much slower. > > Here is the code I use: the graph is pretty big 512,262 notes. > > Graph<String, List<Tweet[]>> g = new > UndirectedSparseMultigraph<String, List<Tweet[]>>(); > > // add vertexes > Set<String> UIDs = twitterData2.getRawDataUIDMap().keySet(); > for (String uid : UIDs) { > g.addVertex(uid); > } > > // add edges > long count = 0; > for (Tweet aTweet : twitterData2.getRawData()) { > String thisAuthor = aTweet.getAuthorId(); > > Collection<Tweet> result = query(thisAuthor) > for (Tweet tweet : result) { > String thatAuthor = tweet.getAuthorId(); > Tweet[] pair = new Tweet[] { aTweet, tweet }; > Tweet[] pair1 = new Tweet[] { tweet, aTweet }; > > if (!thisAuthor.equals(thatAuthor)) { > > try { > List<Tweet[]> anEdge; > if ((anEdge = g.findEdge(thisAuthor, thatAuthor)) > == null) { // if there is no links between the two, then add a new one > anEdge = new ArrayList<Tweet[]>(); > g.addEdge(anEdge , thisAuthor, > thatAuthor); > } > > if (!(anEdge.contains(pair) || > anEdge.contains(pair1))) { > anEdge.add(new Tweet[] { aTweet, tweet }); > } > } catch (Exception e) { > > // TODO: handle exception > count++; > // e.printStackTrace(); > // if (!g.containsVertex(thisAuthor) || > // !g.containsVertex(thatAuthor)) > // return null; > // for (List<Tweet[]> edge : > // g.getIncidentEdges(thisAuthor)) > // g.getEdges().contains(edge); > // if (g.getOpposite(thisAuthor, > // edge).equals(thatAuthor)) > // System.out.println(edge.toString()); > // throw e; > > } > > } > } > } > > > > On Tue, Sep 24, 2013 at 6:22 PM, Joshua O'Madadhain < > jos...@gm...> wrote: > >> Your report is confusing. You start out talking about g.findEdge() and >> then talk about the return collection you get from g.getIncidentEdges(). >> Please post a self-contained snippet that has the problem you're >> describing. >> >> >> On Tue, Sep 24, 2013 at 4:05 AM, Han Qi <shm...@gm...> wrote: >> >>> Hallo guys, I am using JUNG in a project. I find sometimes g.findEdge >>> throw java.lang.NullPointerException. >>> I find that for some edges I get from g.getIncidentEdges(v), >>> edges.get(edge) returns null. >>> It is a bug? >>> >>> >>> ------------------------------------------------------------------------------ >>> October Webinars: Code for Performance >>> Free Intel webinars can help you accelerate application performance. >>> Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most >>> from >>> the latest Intel processors and coprocessors. See abstracts and register >>> > >>> >>> http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk >>> _______________________________________________ >>> Jung-support mailing list >>> Jun...@li... >>> https://lists.sourceforge.net/lists/listinfo/jung-support >>> >>> >> >> >> -- >> jos...@gm.........sites.google.com/site/joshuaomadadhain/ >> Joshua O'Madadhain: Information Scientist, Musician, >> Philosopher-At-Tall >> It's that moment of dawning comprehension that I live for. -- Bill >> Watterson >> My opinions are too rational and insightful to be those of any >> organization. >> > > > > ------------------------------------------------------------------------------ > October Webinars: Code for Performance > Free Intel webinars can help you accelerate application performance. > Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most > from > the latest Intel processors and coprocessors. See abstracts and register > > http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk > _______________________________________________ > Jung-support mailing list > Jun...@li... > https://lists.sourceforge.net/lists/listinfo/jung-support > > |