Friday, 14 October 2011

3D testing

This week I have processed the results for my 2D implementations of different graph drawing techniques (specifically, different approximations for graph drawing), and the results have been good. I am now aware that size of the viewing plane (directly relating to the size of k) has an effect on both quality and speed, and am also aware that my own approximation algorithm has issues with large scaling of repulsive forces between vertices.

Unfortunately, results are based purely on quantitative data in the hope it is related to the quality of the actual drawing; meaning I have no graphic representations of the results I have been comparing, in order to gauge the accuracy and readability of output. Running the algorithms with the same parameters gives me similar results but due to the stochastic nature of the repulsive forces between levels, it is unlikely to get exactly the same output.

Now, I have finished implementing a "cheats" version of 'inertia bisection' for use with finding a good viewpoint. Instead of calculating eigenvectors, I have found the most prominent axes of a graph based on the vectors of edges. In practise, this appears to work well, though results vary between graphs (As to be expected).

With this technique, instead of using the normal line intersection used before, I have to calculate the projected positions of the vertices onto a 2D plane from this view.

As mentioned so many times before, the greatest issue is that the current technique for gauging readability is its portability (or lack of) to 3D. With many of the graphs I have sampled, the 3-dimensional rotation of the graph makes it significantly easier to read than a 2D image, as folds are better defined and the overall structure can begin to make sense. In the tests, these folds, amongst creases and overlapping layers, will give bad results.

I have therefore chosen to continue with the tests but I acknowledge the variance in physical results is not as important as it once was, instead, memory footprint and runtime are more important, along with any subjective results made.

ALSO: finan512... seriously... how does it take so long to run tests on you... 

No comments:

Post a Comment