
On 16/04/13 00:59, Krzysztof Kosiński wrote:
You are entirely correct. I don't know what I thought when I wrote this.
It happens to everyone. I just figured out that I mixed up Bernstein basis polynomials when calculating the gradient. Now I get convergence in more cases than before and it's 4 times faster.
By the way - some things I wrote, such as caching the number of selected nodes in the path _num_selected, are a big mistake (pointless premature optimization) and should be removed. I know there is at least one bug caused by not updating _num_selected correctly which leads to an infinite loop.
I will have a look at this.
I'm now wondering how I should address performance. I want the whole process to finish within 0.1s because that's what seems to be considered a instant reaction by most humans. I don't like the idea of stopping after 0.1s passed or convergence whatever happens first because it would lead to worse fits on slower machines / non-deterministic behaviour on machines under heavy load. But I also don't want users on slow machines having to wait a second for the result of a simple node deletion. Thoughts?
Alexander