I use Java to implement this algorithm. This can simulate the communication between tags and reader, and statistics can be collected in each cycle or slot.
It is still unclear about when to update tag's Q parameter. This algorithm assumes it updating each collision or some empty cycles.
The performance is mentioned in previous blog entry. Basically, three cycles for identifying one tag.