[gephi-dev] Generators

Mathieu Bastian mathieu.bastian at gmail.com
Mon Dec 20 01:20:31 CET 2010


Hi Cezary,

Thought it is an awesome work, I think the new long list of generators in
the UI could make new users feel a bit lost. That's why I think it would be
better to have these 'scientific' generators as a plug-in and keep the list
very simple, with Random Graph.

There is a new branch
https://code.launchpad.net/~gephi.team/gephi/generators

Could you please create a new module for that, ComplexGenerator?
ScienceGenerators?

As for other plug-ins that have a UI module, the best would be to create a
third 'empty' module that depends on both UI and business modules, with the
description. I also count on you to document and upload these candies on the
plug-in center :-) Many researchers will be happy about this new plug-in.

Mathieu

On Sat, Dec 18, 2010 at 2:43 PM, Cezary Bartosiak <
cezary.bartosiak at gmail.com> wrote:

> OK, fixed. Unfortunately my i7 processor can't process YifanHu's algorithm
> in reasonable time for 62500 nodes. But for 10k it's ok :P
>
>
> On 18 December 2010 14:58, Cezary Bartosiak <cezary.bartosiak at gmail.com>wrote:
>
>> Oh, progress uses integer. I'll fix it.
>>
>>
>> On 18 December 2010 07:31, Mathieu Bastian <mathieu.bastian at gmail.com>wrote:
>>
>>> Hi Cezary, I merged the new generators into the trunk. The code looks
>>> clean and the validators for the UI is great! Congrats.
>>>
>>> Small exception when running Kleinberg with 250 - 1 - 0 - 0
>>>
>>> java.lang.IllegalArgumentException: Cannot decrease processed workunit
>>> count (-1) to lower value than before (0)
>>>     at
>>> org.netbeans.modules.progress.spi.InternalHandle.progress(InternalHandle.java:260)
>>>     at
>>> org.netbeans.api.progress.ProgressHandle.progress(ProgressHandle.java:174)
>>>     at
>>> org.netbeans.api.progress.ProgressHandle.progress(ProgressHandle.java:156)
>>>     at
>>> org.gephi.desktop.progress.ProgressTicketImpl.progress(ProgressTicketImpl.java:74)
>>>     at
>>> org.gephi.desktop.progress.ProgressTicketImpl.progress(ProgressTicketImpl.java:61)
>>>     at org.gephi.utils.progress.Progress.progress(Progress.java:46)
>>>     at
>>> org.gephi.io.generator.plugin.Kleinberg.generate(Kleinberg.java:109)
>>> ...
>>>
>>> ps: The effect with Yifan Hu multilevel is not bad either :-)
>>>
>>>
>>>
>>> On Wed, Dec 15, 2010 at 6:38 PM, Cezary Bartosiak <
>>> cezary.bartosiak at gmail.com> wrote:
>>>
>>>> OK, it's finished and waiting for the review ;)
>>>>
>>>>
>>>>  On 15 December 2010 17:17, Cezary Bartosiak <
>>>> cezary.bartosiak at gmail.com> wrote:
>>>>
>>>>> I have provided some changes:
>>>>>
>>>>> * changed EdgeDefault to undirected in most generators (excepting
>>>>> Kleinberg)
>>>>>
>>>>> * removed the old Watts-Strogatz beta model generator and added the new
>>>>> one
>>>>>
>>>>> I removed the old Watts-Strogatz generator, because it generated a beta
>>>>> model (which I create in another generator) and I discovered it "too late".
>>>>> Anyway, I would like to create also alpha model and write some hierarchical
>>>>> generator (probably balanced tree generator because it meets my needs). When
>>>>> I finish I'll let you know.
>>>>>
>>>>> On 15 December 2010 14:31, Cezary Bartosiak <
>>>>> cezary.bartosiak at gmail.com> wrote:
>>>>>
>>>>>> Yes, you can add this line:
>>>>>>> container.setEdgeDefault(EdgeDefault.UNDIRECTED)
>>>>>>>
>>>>>>
>>>>>> So, for instance, container.edgeExists(nodes[*i*], nodes[*j*]) should
>>>>>> return true even if I add edge this way: edge.setSource(nodes[*j*]),
>>>>>> edge.setTarget(nodes[*i*])?
>>>>>>
>>>>>> On 13 December 2010 07:57, Mathieu Bastian <mathieu.bastian at gmail.com
>>>>>> > wrote:
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Sun, Dec 12, 2010 at 7:41 PM, Cezary Bartosiak <
>>>>>>> cezary.bartosiak at gmail.com> wrote:
>>>>>>>
>>>>>>>> Merging with 0.7 works perfectly :P
>>>>>>>>
>>>>>>>> By the way:
>>>>>>>>
>>>>>>>> 1. Is it enough to change a version number for Generator Plugin and
>>>>>>>> Generator Plugin UI modules to let people get updates? (of course I would do
>>>>>>>> it after I finish and my branch should be merged firstly :P)
>>>>>>>>
>>>>>>>
>>>>>>> Yes
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> 2. Is it possible to generate undirected edges? And, even if they
>>>>>>>> are directed, if I set network interpretation to undirected (in metrics) all
>>>>>>>> edges are treated as undirected, right?
>>>>>>>>
>>>>>>>
>>>>>>> Yes, you can add this line:
>>>>>>> container.setEdgeDefault(EdgeDefault.UNDIRECTED)
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> 3. To sum up generators, we need to develop the following things (in
>>>>>>>> the future :P):
>>>>>>>>
>>>>>>>> a) some small graph structure to make generators more optimal (and
>>>>>>>> easier to implement :P)
>>>>>>>>
>>>>>>>>  b) better UIs (with descriptions and so on)
>>>>>>>>
>>>>>>>
>>>>>>> Agree
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> On 13 December 2010 04:23, Mathieu Bastian <
>>>>>>>> mathieu.bastian at gmail.com> wrote:
>>>>>>>>
>>>>>>>>> Awesome! That looks great...
>>>>>>>>>
>>>>>>>>> Regarding the repository format, Sebastien may have better
>>>>>>>>> explanation but it's probably because the trunk is now from the 0.8 branch,
>>>>>>>>> which has been created recently and therefore with the latest bazaar
>>>>>>>>> repository version. Did you tried to merge with the 0.7 branch "bzr pull
>>>>>>>>> lp:gephi/0.7" ?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Sun, Dec 12, 2010 at 7:08 PM, Cezary Bartosiak <
>>>>>>>>> cezary.bartosiak at gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> Hi,
>>>>>>>>>>
>>>>>>>>>> I have implemented all generators mentioned earlier excepting
>>>>>>>>>> Watts-Strogatz ones. I'll implement them as soon as possible. I pushed them
>>>>>>>>>> into repository. Unfortunately I can't merge with trunk because there is
>>>>>>>>>> another repository format (mine is KnitPack). Could you do something with it
>>>>>>>>>> Sébastien? You probably need to upgrade repo format.
>>>>>>>>>>
>>>>>>>>>> Some info:
>>>>>>>>>>
>>>>>>>>>> 1. These generators could be faster not only because of
>>>>>>>>>> optimizations, but also by reducing complexity. Unfortunately now I don't
>>>>>>>>>> have time to play with it :P Anyway they are good enough for my experiments.
>>>>>>>>>>
>>>>>>>>>> 2. Some of them may seem to work "strangely". For instance BA
>>>>>>>>>> Simplified B model generator for complete graphs will be very slow, much
>>>>>>>>>> slower than ER model generators because it is created for generating network
>>>>>>>>>> whose degree distribution follows a power law, so if you can see 99 % for a
>>>>>>>>>> long time in case of very dense or even complete graphs - it's normal :P
>>>>>>>>>>
>>>>>>>>>> 3. Create Kleinberg graph with such parameters (n = 25, p = 1, q =
>>>>>>>>>> 0, r = 0) and then fire some Yifan-Hu layout algorithm (if it stops run it
>>>>>>>>>> again until it creates a grid). The effect is very nice :P
>>>>>>>>>>
>>>>>>>>>> PS. As for dynamic-attr-stats branch I will work on it after I
>>>>>>>>>> finish similarity-plugin branch. It will take probably 3 weeks until I do
>>>>>>>>>> it. So lacking dynamic statistics will be created (probably) in January.
>>>>>>>>>>
>>>>>>>>>> On 11 December 2010 17:27, Sébastien Heymann <
>>>>>>>>>> sebastien.heymann at gephi.org> wrote:
>>>>>>>>>>
>>>>>>>>>>> Classic :P
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> 2010/12/11 Cezary Bartosiak <cezary.bartosiak at gmail.com>
>>>>>>>>>>>
>>>>>>>>>>>> Maybe in the future because of time constraints :P
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On 11 December 2010 16:56, Sébastien Heymann <
>>>>>>>>>>>> sebastien.heymann at gephi.org> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> That's cool!
>>>>>>>>>>>>>
>>>>>>>>>>>>> Maybe you should find a way to create a unified GUI for each
>>>>>>>>>>>>> generator. For instance the user select "Barabási–Albert" item on the
>>>>>>>>>>>>> Generator menu, then choose a version between the 4 available as 4 different
>>>>>>>>>>>>> tabs in the window.
>>>>>>>>>>>>>
>>>>>>>>>>>>> What do you think about it?
>>>>>>>>>>>>>
>>>>>>>>>>>>> Seb
>>>>>>>>>>>>>
>>>>>>>>>>>>> 2010/12/11 Cezary Bartosiak <cezary.bartosiak at gmail.com>
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Hi,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I need to make some generators for my work at the university,
>>>>>>>>>>>>>> so I'll create a branch for this purpose. Probably I'll commit them
>>>>>>>>>>>>>> tomorrow.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> For now I need a subset of generators presented in my post
>>>>>>>>>>>>>> written before GSoC:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> a) Erdős-Rényi model in two versions G(n, p) and G(n, m)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> b) Alpha and Beta models of Watts and Strogatz (from what I
>>>>>>>>>>>>>> can see Mathieu implemented some generator of this model which takes other
>>>>>>>>>>>>>> parameters I plan to use ;) - so we will have got three different generators
>>>>>>>>>>>>>> :P)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> c) Kleinberg model
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> d) Barabási–Albert model in 4 versions: basic, generalized
>>>>>>>>>>>>>> generator with probabilities of adding new edges and rewiring existing ones,
>>>>>>>>>>>>>> simplified models: A (uniform attachment) and B (no growth)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> In the close future I also plan to add HierarchicalGraph
>>>>>>>>>>>>>> generator.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>> gephi-dev mailing list
>>>>>>>>>>>>>> gephi-dev at lists.gephi.org
>>>>>>>>>>>>>> http://gephi.org/mailman/listinfo/gephi-dev
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>> gephi-dev mailing list
>>>>>>>>>>>> gephi-dev at lists.gephi.org
>>>>>>>>>>>> http://gephi.org/mailman/listinfo/gephi-dev
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> gephi-dev mailing list
>>>>>>>>>> gephi-dev at lists.gephi.org
>>>>>>>>>> http://gephi.org/mailman/listinfo/gephi-dev
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> gephi-dev mailing list
>>>>>>>>> gephi-dev at lists.gephi.org
>>>>>>>>> http://gephi.org/mailman/listinfo/gephi-dev
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> gephi-dev mailing list
>>>>>>>> gephi-dev at lists.gephi.org
>>>>>>>> http://gephi.org/mailman/listinfo/gephi-dev
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> gephi-dev mailing list
>>>>>>> gephi-dev at lists.gephi.org
>>>>>>> http://gephi.org/mailman/listinfo/gephi-dev
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> gephi-dev mailing list
>>>> gephi-dev at lists.gephi.org
>>>> http://gephi.org/mailman/listinfo/gephi-dev
>>>>
>>>>
>>>
>>
>
> _______________________________________________
> gephi-dev mailing list
> gephi-dev at lists.gephi.org
> http://gephi.org/mailman/listinfo/gephi-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://gephi.org/pipermail/gephi-dev/attachments/20101219/2f730a44/attachment-0001.html>


More information about the gephi-dev mailing list