So, you didn't address the problem of "There's no obvious raytracing algorithm." All of the above algorithms have tradeoffs that make them ill advised in some sense. None of the above algorithms can handle displacement mapping or dynamic scenery with any speed. Get back to me when you solve those ridiculously combinatorial problem—any object can interact with any other object. And when you can animate objects in constant time between frames (as opposed to, at best, O(log(n)), and at worst, O(n)), maybe it'll be useful for realtime.
This covers about 100 different algorithms. Pick one.