2
$\begingroup$

As described in PBRT 14.5, the path tracer stops bouncing rays at a probability q, which is determined by the throughput of the path.

<<Possibly terminate the path with Russian roulette>>= 
if (bounces > 3) {
    Float q = std::max((Float).05, 1 - beta.y());
    if (sampler.Get1D() < q)
        break;
    beta /= 1 - q;
}

In my understanding, the probability q should be a constant for paths of the same length, so that the Russian roulette estimator is unbiased. Would such a dynamic termination probability still produce biased results?

Update:

Given an estimator F, its corresponding Russian roulette estimator is defined to be

R = (F - qc) / (1 - q) , if xi > q
R = c                  , otherwise

Since E[R] = (1 - q)(E[F] - qc) / (1 - q) + qc = E[F], as long as F is a unbiased estimator, R is a unbiased estimator as well.

Specific to a path tracer, its path-integral form of LTE with Russian roulette can be written as

1 / (1 - q1)(P(p1) + 1 / (1 - q2)(P(p2) + 1 / (1 - q3)(P(p3) + ...

if q1, q2, qc, ... is not a constant, then the estimator for each path length is not an unbiased estimator, I think.

$\endgroup$
  • $\begingroup$ Where did that come from: the probability q should be a constant for paths of the same length, so that the Russian roulette estimator is unbiased.? $\endgroup$ – lightxbulb Jul 30 at 15:44
  • $\begingroup$ @lightxbulb I added extra explanation for my confusion in the question $\endgroup$ – Zhe Chen Jul 31 at 4:47
  • $\begingroup$ What you wrote makes no sense. Even you E[R] expression is wrong. Look for better resources regarding it. $\endgroup$ – lightxbulb Jul 31 at 9:36
  • $\begingroup$ @lightxbulb Can you elaborate what's wrong here? It's the same as the one on PBRT. $\endgroup$ – Zhe Chen Jul 31 at 12:40
  • $\begingroup$ What they wrote is correct only if $E[F] = c$ or $c=0$. Since you mentioned neither of those assumptions - it is incorrect. $\endgroup$ – lightxbulb Jul 31 at 13:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.