Sampling from a preference table

13 Views Asked by At

Suppose we have a table of a group of friend's preferences for food. Each person will receive a unique meal. What is the approach to sample from this preference table so that each time this group visits the restaurant, we satisfy their preferences based on these probabilities? The sums of the rows add up to 1 (ie. it is a discrete distribution), but since pizza and pasta are always out of stock, I zero out their probabilities. I want this to be a sample based method (ie. Person3 will get bread most of the time, but very infrequently they might receive eggs. Person0 is likely to get Tuna, but Person1 and Person2 will probably get it quite often too, not as frequently as Person0).

How do I sample from the discrete distribution for each person, subject to the uniqueness constraint, in order to satisfy everyone's preferences with many repeated visits?

Tuna Pizza Bread Pasta Cake Eggs
Person 0 0.33 0 0.1 0 0.1 0.01
Person 1 0.3 0 0.2 0 0.1 0.01
Person 2 0.25 0 0.2 0 0.1 0.01
Person 3 0 0 0.9 0 0 0.01