Looking at some of the discussion on this and previous page, I think there are a few interesting questions related to randomizers. I have not thought through this very well so there could be mistakes in what I have written. I also don't have any knowledge of specific randomizers as such. I am assuming in this discussion that there is no interaction between the randomization and any other part of the game. The more specific or stringent one randomizer is compared to another (in a strict sense), the more specific conclusions one can draw. But there is some value in doing an analysis for a completely memoryless randomizer, since it encapsulates every other randomizer. But, on the other hand, there is also something that is not natural about this kind of randomizer. One can intuitively say that such a randomizer is not "balanced". Any reasonable randomizer should first be balanced, one could say. I think this a fairly open question in itself. Two decent definitions of "balanced randomizers" that come to my mind are: 1- The number of pieces handed over must all be equal within some bounded time interval repeatedly. One could also bring in number of variations into this type of definition. 2- Consider the difference between the piece that is the handed over the most and the least. This difference should not be able to increase without bound under any possibility (let the maximum of this difference be D for example). It is worth noting that any randomizer that satisfies the second condition would also satisfy the first automatically. I feel that the second definition is more natural and I will take it as a reference point from here on. Now, in my opinion, any randomizer that is balanced in this way satisfies a certain criteria of being fair. Now any specific randomizer will always generate a sequence that is regular. This means that one can also test the criteria of being unbalanced or balanced (and value of D if it is so) on any particular randomizer without too much difficulty (and some trial and error). It would be nice to figure out a simple and general method for doing so for once and for all though. Consider the most general possible sequence with value of maximum difference as 7, say D7. It isn't too difficult to see that this would be regular too. Now suppose we take any randomizer R from a more modern tetris game and find the value of D for it (lets say it turns out to be 7). Then D7 would encapsulate R, by its definition. Also, we can note that D8 would encapsulate D7 and D9 would encapsulate D8 and so on. Now normally we would set the maximum value of difference by keeping it in some relation with field area. For example, for a field of 200, we could have something like D=10. So what I am saying very roughly is that in some sense the idea of a reasonable/balanced randomizer provides a demarcation between general and the specific.
I was looking at some randomizers in wiki, so a few more points to add about specific randomizers (as I understood how they work). --TGM Randomizer Purely from the point of view of possibility TGM Randomizer = Memoryless But if one were intent on looking at this randomizer from probabilistic point of view, it could be viewed as assigning different 'probability distribution' for all the pieces depending on configuration it is in. Specifics would depend on initial history and number of tries. --TGM Randomizer (with infinite tries) This would belong to class of unbalanced randomizers too (as I used the word in the previous post), since, for example, it is entirely possible to repeat a repeated sequence of six pieces forever without ever repeating the seventh. Actually it is possible to continue indefinitely with just five pieces. --Bag Randomizers As I understood it, a 7-Bag is simply taking the unique set of pieces (L,J,S,Z,I,T,O) and then drawing them out one by one. Similarly, 14-Bag would be taking two such unique sets, putting them in a bag, and then drawing out one by one until the bag is empty? And then this process is repeated again? With this definition, it would be For 7-bag, D=1 (actually D1=7-bag) For 14-bag, D=2 That means D2 would encapsulate 14-bag. So actually, number of modern randomizers don't fit into the description I was giving. As for what I said in the second paragraph of the original post, an example of it would be that if one could show (for the sake of discussion) that it is possible to play forever with D2 randomizer, then this would automatically follow for 14-bag. Actually this can be taken further than this and isn't just limited to playing forever. A relatively simple point, but still worth re-iterating.
What bothers me is that all this research (including what you're doing right now) fails to account for the specific algorithm used as the baseline PRNG. Since (for instance) all TGM games use the standard ANSI C PRNG, you can eliminate a lot of statistical what-ifs because the PRNG follows a fixed model with certain guaranteed uniformity. Assuming any PRNG to be "truly random" is a big mistake that can seriously skew your results.
I don't know about the terms you are using. From what I can gather roughly, here is what I think. Results can be skewed if they make statistical predictions. And if someone were trying to make statistical predictions, then yes, specific implementation of randomness would need to be taken carefully. Obviously the randomizer, on the basis of its principle alone, doesn't and can't make any such predictions. But you can't discount categorically the value in doing analysis without assuming a specific implementation. I will try to explain my reasoning. If one is concerned with specific questions then, on the very least, you can be sure (based on the nature of the question alone) that either it will still hold under any specific implementation or the answer 'may' change. After all any specific implementation of randomness, no matter what its statistical basis or justification may be, would still remain within the basic rules of the randomizer (I hope I am making sense). In particular, it would be nice to see someone taking up a randomizer that is reasonably interesting and then trying to show some properties. Also, it seems that any analysis based on TGM Randomizer would be more useful under a specific implementation since otherwise it becomes too basic. It would just be better to assume a memoryless randomizer in that case.
PRNG = Pseudo-Random Number Generator. Basically, the baseline "memoryless" randomiser that all the specific randomisers are based on. Bag randomiser uses it to fill the bag, and the TGM randomiser uses it to roll and re-roll piece choices, etc. If your rand() function can be guaranteed to (or guaranteed not to) exhibit certain behaviour, then it's pointless to carry the possibility over into your analysis. What mainly triggered me was your statement of "Actually it is possible to continue indefinitely with just five pieces". I'm fairly sure that most programmatical pseudorandom generators can guarantee that for any given seed, all 7 numbers will show up at least x times in every n generated numbers. That wipes out a lot of stupid assumptions about the remote possibility of edge cases like only 5 out of 7 tetrominoes appearing in an entire random sequence. EDIT: You might also be interested in checking out these threads: Randomizer theory Questions about Randomizers
My academic field is in the humanities rather than the social or natural sciences (so there's no scientific-mathematical experiments or technical data presented here), but here is a nonetheless "academic Tetris paper" that I published in 2009 and presented at the Digital Games Research Association conference: Evolution of the tetromino-stacking game: An historical design study of Tetris Not much substance that those frequenting forums such as this won't already be aware of, but it advances an alternative business-legal perspective on Tetris history (and more generally in digital game studies) that I believe is still relatively underrepresented in the mainstream.
I googled the filename. https://circle.ubc.ca/bitstream/handle/2429/3263/ubc_1992_spring_brzustowski_john.pdf?sequence=1