I am working on a project that involves Spatial Modulation for MIMO channels. This uses a ML (Maximum Likelihood) detector which is computationally intensive. Sphere Decoders are developed to reduce this computations by limiting the search spaces. I understand that it uses a radius (can be soft or hard) to determine this and that it uses QR decomposition where R is triangular and uses this to create a tree structure. This is where I'm lost as to how this tree is created. If any can explain this or provide a link which explains this I would be very grateful.
I am trying to learn the basics of sphere decoding so as to be able to implement the algorithm in this paper: http://arxiv.org/abs/1305.1478