in reply to
Pulling random elements from hash
I think the node named
Simulating Drawing From A Bag
contains useful discussion for your problem.
Comment on
Re: Pulling random elements from hash
In Section
Seekers of Perl Wisdom