Lecture 13: Global Illumination & Path Tracing (85)
dhruvchowdhary

Using Russian Roulette cleverly balances computational efficiency with accuracy. By deciding randomly when to stop following a light ray, we avoid endless calculations but still get a realistic depiction of light in our scenes. This shows that sometimes, adding a bit of randomness can make our simulations both practical and precise, especially in simulating how light behaves in real life.

snowshoes7

I think this is pretty clever as a means to prevent making simulations unpractical, but I do wonder if it would make code a little simpler to simply have a maximum depth that looks "okay"? I can't imagine that this kind of weighting is an optimal solution to the problem of expensive lighting, just a practical one

jinweiwong

This is a cool application of randomized algorithms that theoretically allows it to never terminate but whose probability is negligible. This reminds me of an infinite Markov chains which can almost never reach some of the later states.

sparky-ed

I think I am a bit confused in Prr and how it is decided. How is the probability Prr determined for each recursive step in this algorithm and how it is determine. It does not really say about what value should it be and I think knowing how it is determine would help in understanding this algorithm.

agao25

@sparky-ed I think we just start with a Prr value we arbitrarily choose and then based on the results/data we collect, we can redefine our Prr and try to optimize for a better result. I think you just don't want to pick a Prr that is too high where the algorithm might end unusually shorter?

https://www.investopedia.com/terms/m/montecarlosimulation.asp

You must be enrolled in the course to comment