Although the concept choice models is widely understood and practiced these days, it is often difficult to acquire hands-on knowledge in simulating choice models. While many stat packages provide useful tools to simulate, researchers attempting to test and simulate new choice models with data often encounter problems from as simple as scaling parameter to misspecification. This article goes beyond simply defining discrete choice models. Rather, it aims at providing a comprehensive overview of how to simulate such models in computer. Defining choice set When a researcher has some consumer choice data in his/her hand and tries to construct a choice model and simulate it against the data, he/she needs to first define a choice set. A Choice Set in discrete choice models is defined to be finite, exhaustive, and mutually exclusive. For instance, consider households' choice of how many laptops to own. The researcher can define the choice set depending on the nature of the data and the interpretation they wish to draw, as long as it satisfies three properties mentioned above. Some examples of choice sets that meet the categories are the following: 0, 1, More than 1 laptop 0, 1, 2, More than 2 laptops Less than 2, 2, 3, 4, More than 4 laptops Defining consumer utility Suppose a student is trying to decide which pub he/she should go for a beer after his/her last final exam. Suppose there are two pubs in the town of the college: an Irish pub and an American pub. The researcher wishes to predict which pub he/she will choose based on the price (P) of beer and the distance (D) to each pub, assuming they are known to the researcher. Then, the consumer utilities for choosing the Irish pub and the American pub can be defined: (1) (2) where captures unobserved variables that affect consumer utilities. Defining choice probabilities Once the consumer utilities have been specified, the researcher can derive choice probabilities. Namely, the probability of the student choosing the Irish pub over the American pub is Denoting the observed portion of the utility function as V, (3) In the end, discrete choice modeling comes down to specifying the distribution of (or ) and solving the integral over the range of to calculate . Extending this to more general situations with N consumers (n = 1, 2, ..., N), J choices of consumption (j = 1, 2, ... , J), The