If the process involves iterating through a HashMap or HashSet at any point that could be the cause of the non-determinism.
Switching to a CCG-like algorithm will make the non-determinism worse. As I understand it, their layout algorithm is inherently random: the structure is fragmented into component blocks - rings, chains, groups etc, and sets of constraints/possible layouts generated for each block. As the number of blocks increases this rapidly leads to an explosion in the number of possible combinations of layouts, so a reasonable solution is found by stochastic sampling. Sam On 25/03/2010 00:35, Christoph Steinbeck wrote: > Hi, > > this is a known problem with my SDG code. In fact, if you do the layout > a couple of times in a row, you might get different results. I assume > that this is due to rounding errors. Definitely, there is no intended > random element. > The algorithm should, in theory, be deterministic. > We have advertised a student project to get the layout closer to > something like the CCG people published in JCIM some years ago. > (http://www.ebi.ac.uk/steinbeck/projects.html) > > Cheers, > > Chris > > > > On 22/03/2010 13:41, JEAN MARC NUZILLARD wrote: >> Hi, >> >> I created two identical molecules by calling addAtoms and addBonds >> in the same order with the same arguments and then I generated coordinates >> using a StructureDiagramGenerator. >> Looking with Jmol at the molecules in the corresponding SD file, >> it appeared that the graphs were different. >> Repeting the whole process, I sometimes get the same graphs, >> but sometimes different ones. >> The molecule is camphor. I am usign CDK-1.2.5. >> >> Is there a non-deterministic part in the SDG algorithm? >> Is there a way to purposely get different graphs for the same molecule, >> thus allowing the user to choose the best looking one? >> >> Jean-Marc Nuzillard >> www.univ-reims.fr/LSD >> >> >> >> ------------------------------------------------------------------------------ >> Download Intel® Parallel Studio Eval >> Try the new software tools for yourself. Speed compiling, find bugs >> proactively, and fine-tune applications for parallel performance. >> See why Intel Parallel Studio got high marks during beta. >> http://p.sf.net/sfu/intel-sw-dev >> _______________________________________________ >> Cdk-user mailing list >> Cdk-user@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/cdk-user > ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Cdk-user mailing list Cdk-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/cdk-user