Weighted random sampling with a reservoir

In this work, a new algorithm for drawing a weighted random sample of size m from a population of n weighted items, where m ≤ n, is presented. The algorithm can generate a weighted random sample in one-pass over unknown populations.