It would be simple for the game to do something like "if the player is in Boost mode, add a 10% chance of getting more rings" or "add a 2% chance of getting more rings for each enemy the player has killed in the level". Until someone disassembles the game's instructions to see what it's really doing, it's hard to know or notice that sort of thing.
As for bosses, I know that a surprising number of the Sonic Advance 1/3 bosses use a random number generator to determine their actions, and aren't reacting to the player in any meaningful way. Even if you somehow do the exact same things during the fight, the boss can still do completely different things as a result of whatever happened before the boss fight. (Ice Mountain, Angel Island, Sunset Hill, Ocean Base, Toy Kingdom, Chaos Angel, are the only ones I am sure do that.)