Mastermind (board game)

From Wikipedia, the free encyclopedia

Jump to: navigation, search
Mastermind

A game of Mastermind completed.
Players 2
Age range 8 and up
Setup time < 5 minutes
Playing time 20 minutes
Random chance Some
Skills required Deduction

Mastermind or Master Mind is a simple code-breaking board game for two players. The modern game with pegs was invented in 1970 by Mordecai Meirowitz, an Israeli postmaster and telecommunications expert, but the game resembles an earlier pencil and paper game called bulls and cows that may date back a century or more.

Contents

[edit] Gameplay and rules

The game is played using:

  • a decoding board, with a shield at one end covering a row of four large holes, and ten or twelve additional rows containing four large holes next to a set of four small holes;
  • code pegs of six (or more; see Variations below) different colors, with round heads, which will be placed in the large holes on the board; and
  • key pegs, some colored (often black), some white, which are flat-headed and smaller than the code pegs; they will be placed in the small holes on the board.

The two players decide in advance how many games they will play, which must be an even number. One player becomes the codemaker, the other the codebreaker. The codemaker chooses a pattern of four code pegs. Duplicates are allowed, so the player could even choose four code pegs of the same color. The chosen pattern is placed in the four holes covered by the shield, visible to the codemaker but not to the codebreaker.

The codebreaker tries to guess the pattern, in both order and color, within twelve (sometimes eight or ten) turns. Each guess is made by placing a row of code pegs on the decoding board. Once placed, the codemaker provides feedback by placing from zero to four key pegs in the small holes of the row with the guess. A colored (often black) key peg is placed for each code peg from the guess which is correct in both color and position. A white peg indicates the existence of a correct color peg placed in the wrong position.

If there are duplicate colours in the guess, they cannot all be awarded a key peg unless they correspond to the same number of duplicate colours in the hidden code. For example, if the hidden code is white-white-black-black and the player guesses white-white-white-black, the codemaker will award two colored pegs for the two correct whites, nothing for the third white as there is not a third white in the code, and a colored peg for the black. No indication is given of the fact that the code also includes a second black.

Once feedback is provided, another guess is made; guesses and feedback continue to alternate until either the codebreaker guesses correctly, or ten incorrect guesses are made.

The codemaker gets one point for each guess a codebreaker makes. An extra point is earned by the codemaker if the codebreaker doesn't guess the pattern exactly in the last guess. (An alternative is to score based on the number of colored key pegs placed.) The winner is the one who has the most points after the agreed-upon number of games are played.

[edit] History

Since 1971, the rights to Mastermind have been held by Invicta Plastics of Oadby, near Leicester, UK. (Invicta always named the game Master Mind.) They originally manufactured it themselves, though they have since licensed its manufacture to Hasbro in most of the world, and two other manufacturers who have the United States and Israel manufacturing rights.

Starting in 1973, the game box featured a photograph of a well-dressed, distinguished-looking white man seated in the foreground, with an attractive Asian woman standing behind him. The two amateur models (Bill Woodward and Cecilia Fung) reunited in June 2003 to pose for another publicity photo.[1]

[edit] Algorithms

With four pegs and six colors, there are 64 = 1296 different patterns.

[edit] Six-guess algorithm

The following algorithm solves the (six-color) game in six or fewer guesses. It has a general procedure and a few listed exceptions. In this section the six colours are referred to as letters a through f.

Divide the 1296 possible games into four categories:

  • 0 duplicates (eg abcd)
  • 1 duplicate (eg aabc)
  • 2 duplicates (eg aabb or aaab)
  • 3 duplicates (eg aaaa)

The general process is to list all the games that could be correct with the data so far. The list should be sorted by ascending number of duplicates and within each duplicate level alphabetically. Before guess 1, the list is all 1296 games; thus guess 1 is always "abcd." If the reply to guess 1 is "0 0," for example, then the list afterwards comprises the 16 games involving only e and f. Each subsequent guess is the first game remaining in the list, with the following exceptions:

  • Guess 2 is always "bcde"
  • Guess 3 is always "cdef"
  • If the list for guess 4 starts with a game on the left side of the list below, then use the game to its right instead:
    • "acfb" → "dcad"
    • "aebf" → "edfd"
    • "aefb" → "eacc"
    • "afbe" → "bfcd"
    • "bafe" → "eadc"
    • "beaf" → "edae"
    • "befa" → "eeda"
    • "eabf" → "fdfb"
    • "aadb" → "babd"
    • "abae" → "bbcc"
    • "aeaf" → "cffd"
    • "cafa" → "fdfa"
    • "aaee" → "dddf"

[edit] Five-guess algorithm

In 1977, Donald Knuth demonstrated that the codebreaker can solve the pattern in five moves or fewer, using an algorithm that progressively reduced the number of possible patterns.[2] The algorithm works as follows:

  1. The first guess is aabb.
  2. Calculate which possibilities (from the 1296) would give the same score of colored and white pegs if they were the answer. Remove all the others.
  3. For each possible guess (not necessarily one of the remaining possibilities) and for each possible colored/white score, calculate how many possibilities would be eliminated. The score of the guess is the least of such values. Play the guess with the highest score (minimax).
  4. Go back to step 2 until you have got it right.
while coloredScore != 0
   if numberOfTries == 0
       guess("aabb")
   else
       maximumGuess = ""
       maximumGuessScore = 0
       foreach possibleGuess
           thisScore = 9999 
           foreach possibleScore
               number_of_removals = count_removals(guess, score)
               thisScore = min(number_of_removals, thisScore)
           if thisScore > maximumGuessScore
               maximumGuessScore = thisScore
               maximumGuess = guess
       guess(maximumGuess)

Subsequent mathematicians have been finding various algorithms that reduce the average number of turns needed to solve the pattern: in 1993, Kenji Koyama and Tony W. Lai found a method that required an average of 4.340 turns to solve, with a worst case scenario of six turns.[3]

[edit] Variations

Varying the number of colors and the number of peg positions results in a spectrum of Mastermind games of different sizes and shapes. A common variation is with 8 different colors, which can also be played as 9 different colors using an empty slot as the ninth "color".

In December 2005, Jeff Stuckman and Guo-Qiang Zhang showed in an arXiv article that the Mastermind Satisfiability Problem is NP-complete.[4]

Computer and Internet versions of the game have also been made, sometimes with variations in the number and type of pieces involved and often under different names to avoid trademark infringement. It can also be played with paper and pencil[citation needed].

[edit] See also

[edit] References

  1. ^ "Landmark Reunion for Mastermind Box Models". http://www.le.ac.uk/press/press/landmarkreunion.html. Retrieved on 2006-10-05. 
  2. ^ Knuth, Donald (1976-77), "The Computer as a Master Mind", Journal of Recreational Mathematics (9): 1-6 
  3. ^ Koyama, Mami; Lai, Tony (1993), "An Optimal Mastermind Strategy", Journal of Recreational Mathematics (25): 251-256 
  4. ^ http://arxiv.org/abs/cs.CC/0512049

[edit] External links

Personal tools