in reply to Drawing samples from a set

I have not yet used it, but Algorthm::Evolutionary::Wheel sounds a lot like what you are looking for. (I looked at it for a similar application, but found a different solution).

HTH, --traveler