2
$\begingroup$

I am trying to simulate an auction system in which a number of competitors, $N$, independently offer a discount from a reference price previously published by the buyer.

The order is awarded to the a certain competitor based on a complex formula involving the max discount not exceeding a certain threshold, the median of the bids, and other parameters.

I would like to generate a certain set of discounts by drawing them from a positive distribution, centered around a prescribed mean, and always between a given min and max discount.

  • The probability of having a value around min or max should be approximately $1/N$.

  • The normal distribution is not probably the best solution as it can give negative values.

    I could artificially “shrink” it between min and max by imposing $\text{std.dev}=(\text{max}-\text{min})/6$, but this would give a very low probability of occurrence for the extremes.

Do you have any suggestion for a distribution with the above properties? Ideally it should be easy to handle in MS Excel, where the simulation will be done.

$\endgroup$

2 Answers 2

3
$\begingroup$

Just use a uniform distribution, or possibly a discrete uniform. You can do this in Excel by using =rand(). (Note that the random number generator that lies behind this function is known to be pretty poor. There are also add-ons that can be purchased that beef up these sorts of capabilities in Excel if you want.) Moreover, you would take the functions outputs and multiply them by the distance between the max and min that you want, and then add your desired minimum value.

$\endgroup$
1
$\begingroup$

You might use a beta distribution. It has finite support, so that should satisfy the min and max discount constraints that you have. I'm not sure about your $1/N$ requirement, though. You will need to have a discrete distribution if you want to put positive probabilities on the extremes. Maybe you could discretize a continuous distribution, or use an empirical distribution.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.