CPSC 641: Performance Issues in High Speed Networks

Professor Carey Williamson

Winter 2020

Assignment 1: Holy Craps! (30 marks)

Due Date: Thursday, January 30, 2019 (11:59pm)

The purpose of this assignment is to gain experience with experimental methods, analytical methods, and simulation methods as used in computer systems performance evaluation. You will do so in the context of a simple casino game called Craps.

Background

Craps is a simple dice game that is popular in casinos around the world. It uses two six-sided dice, which are rolled one or more times in succession to determine the outcome of the game (win or lose) based on the sum of the dice values rolled.

The rules for Craps are extremely simple. If the opening roll by a player is 7 or 11, then the player wins. If the opening roll is 2, 3, or 12, then the player loses. If any other value occurs during the opening roll, then this value is recorded as the point value, which becomes the target value for subsequent rolls. The goal of the player is then to roll the target point value again, before rolling a 7. If they roll the point value, then they win, but if they roll a 7, they lose. If any other value is rolled, it is ignored, and the game continues with successive rolls until either the point value (win) or a 7 (lose) occur. Note that a game of Craps requires at least one roll of the dice, but might need many more rolls to determine the final outcome of the game.

There are several aspects of the Craps game that make it appealing. First, it is an extremely simple game of chance that is easy to learn and understand, with minimal or no strategy involved. Second, it is well-suited for wagering, both by players themselves (i.e., betting that they will win) and by spectators (i.e., betting whether the player will win or lose). Third, and perhaps most important, the winning probablity is ≈ 0.493. These odds are much better than most casino games, and tantalizingly close to the 50% level at which a player could expect to break even (or win) in the long run. In short, the odds are still in favour of the casino, but not by much.

The latter observation is the primary motivation for this assignment. In particular, we are interested in finding out how much cheating is required in order to turn the odds in favour of the Craps player, rather than the casino. More specifically, we consider the possibility of loaded dice, which are biased to produce certain roll outcomes slightly more frequently than expected with fair dice.

Your Task

Your task in this assignment is to use your skills as a performance analyst to answer the following questions about how best to cheat at Craps:

You will do so using three different performance evaluation methodologies, namely experimentation, mathematical modeling, and simulation modeling. Each approach is worth 10 marks, and you can do them in any order, since they are largely independent of each other.

For the experimental component of the assignment (10 marks), please do the following:

For the analytical component of the assignment (10 marks), please do the following:

For the simulation component of the assignment (10 marks), please do the following:

Optional Bonus (3 marks)

Construct a Markov chain to represent the game of Craps with two heterogeneous biased dice. In particular, consider the same biased dice model as described above, but for which the two dice are independent. That is, the p and v values for the big dice could be different from those for the small dice. Label the arcs with probabilities, and simplify the Markov chain as you deem appropriate. Then use your Markov chain to estimate the winning probability for Craps as a function of p and v. State any observations or insights that you have about this Markov chain, and its differences (if any) from the Markov chain for two homogeneous biased dice. Feel free to use your simulation to validate your analytical results.

Assignment Submission

When you are finished, please submit your assignment solution in hardcopy form to your instructor, on or before the stated deadline.