Title: Analytical DE seems to be difficult to pinpoint due to oscillations Post by: mrrgu on January 10, 2010, 11:08:49 PM Hi
I wrote a new renderer that shows the process during rendering.. and I found that the analytical DE sometimes do not converge at all it simply oscillates. I think this is at the core of the problem of overestimating the distance. The oscillation seem to be then DE overshoots to negative values it then steps back to the positive side and overshoots to negative again. This is no matter how many iterations you do in the DE estimate, it helps adding more iterations though. I added a detection that checks if the previous step was negative and the current one positive..thus it must have overshoot and come back. If this is the case I added a reduction factor to the step with the factor initially set to 1.0. Every time oscillation is detected (for the same ray) I set reduction*=0.998 I think this causes convergence to the right spot since even though DE overshoots its sign correctly say if I you are infront of or behind the mandelbulb surface.. See this video of the mandelbrot generated with special case of the mandelbulb equation and the ordinary DE. The fluctuating area that lasts a long time is oscillating DE (I could make it converge faster..but that would ruin the illustration!) http://www.youtube.com/watch?v=z5eQbF6lEuI&feature=PlayList&p=F1D2C1C7D4E1C70D&index=6 (http://www.youtube.com/watch?v=z5eQbF6lEuI&feature=PlayList&p=F1D2C1C7D4E1C70D&index=6) DE can bcome negative then |Z| is less than 1.0, for instance log(0.5) = -0.30.. dist= 0.5*|Z|*log(|Z|)/|DZ| Title: Re: Analytical DE seems to be difficult to pinpoint due to oscillations Post by: mrrgu on January 11, 2010, 12:01:12 AM To show I really use mandelbulb equations I add this (slowed it down on purpose to show rendering progress)
http://www.youtube.com/watch?v=DM7umOWJD9g&feature=PlayList&p=F1D2C1C7D4E1C70D&index=7 (http://www.youtube.com/watch?v=DM7umOWJD9g&feature=PlayList&p=F1D2C1C7D4E1C70D&index=7) Title: Re: Analytical DE seems to be difficult to pinpoint due to oscillations Post by: David Makin on January 11, 2010, 12:46:55 AM Your results are correct and symptomatic of the misuse of DE.
The DE method you are using is *only* valid "outside" so if you hit maximum iterations then you should step backwards to find the exact boundary and *not* try and use the DE value from that position. Note that there are some posts on the "Mandeliers", these are artefacts produced by incorrectly using the outide DE algorithm "inside". Title: Re: Analytical DE seems to be difficult to pinpoint due to oscillations Post by: mrrgu on January 11, 2010, 02:51:26 PM I agree, but still the oscillation converges to a very good value if properly motivated.
And I wonder how good that value is? I have seen people talking about overstepping before.. But I argue that it is an oscillation that steps back if you iterate one more step.. If this is true, You do not need to force a step back to get a better value!!.. You only need to have a factor for each ray that scale the steps, and reduce said factor every time oscillation occurs. Of course if it does not step back again for every case of overstepping then I am wrong.. Did not Mandeliers have large holes in them ? Title: Re: Analytical DE seems to be difficult to pinpoint due to oscillations Post by: David Makin on January 11, 2010, 03:41:35 PM This DE value is only accurate for the infinite attractor i.e. only "outside" so although you can get negative values from "inside" they will not be the correct magnitude for stepping and you can also get positive values for "inside" points which effectively say that you haven't reached the solid threshold when in fact you've already passed it.
Title: Re: Analytical DE seems to be difficult to pinpoint due to oscillations Post by: mrrgu on January 11, 2010, 03:47:01 PM You missed my point I only relied on the sign of DE to be correct(not the size!) then oscillations starts.
And used oscillations detection to drive the convergence. But if inside points can be positive it will fail.. :( I thought I had found something that could simplify things. Title: Re: Analytical DE seems to be difficult to pinpoint due to oscillations Post by: mrrgu on January 11, 2010, 06:05:04 PM I realized that above method counts on the sign of the distance to be right relative to the starting point of each estimation..
Thus that it tries to go in the right direction... as long as this holds the method will converge to the right surface.. Even though distance can be both pos and neg inside and has the wrong magnitude. Remains to be proven though ;D Title: Re: Analytical DE seems to be difficult to pinpoint due to oscillations Post by: David Makin on January 12, 2010, 02:13:31 AM I realized that above method counts on the sign of the distance to be right relative to the starting point of each estimation.. Thus that it tries to go in the right direction... as long as this holds the method will converge to the right surface.. Even though distance can be both pos and neg inside and has the wrong magnitude. Remains to be proven though ;D The distance returned using the "outside" analytical DE will always be positive for an "outside" point and the distance value it gives is omni-directional i.e. it gives an estimated minimum distance to the "inside" in *any* direction from the given point, theoretically the actual inside should never be nearer than the value calculated but in practice you have to allow for some inaccuracy - mainly due to the fact that you haven't actually performed an infinite number of iterations :) Using higher bailouts and allowing higher maximum iteration values will make the DE more accurate at some speed cost. As to an inside point producing a positive value, this is bound to happen where (one or more values of) the attractor of the inside point has a magnitude >1 which of course is true for some points in the Mandelbrot Set. Title: Re: Analytical DE seems to be difficult to pinpoint due to oscillations Post by: David Makin on January 12, 2010, 02:18:45 AM I should add that the "delta DE" methods are directional unlike the analytical method.
Title: Re: Analytical DE seems to be difficult to pinpoint due to oscillations Post by: mrrgu on January 12, 2010, 07:56:49 PM Ohh BLAST! You are right it gives closest distance in all directions! And then it comes close it might get distance to a side point instead.. I did not think about that!! That could explain oscillations too.. Thanks! |