Download presentation
Presentation is loading. Please wait.
Published byAileen Georgiana King Modified over 9 years ago
1
Games, Hats, and Codes Mira Bernstein Wellesley College SUMS 2005
2
A game with hats (N=3) Each player is randomly assigned a red or blue hat.
3
A game with hats (N=3) Each player can see the color of his teammates’ hats but not his own.
4
A game with hats (N=3) BLUEREDPASS Players simultaneously guess the colors of their own hats. Passing is allowed.
5
A game with hats (N=3) BLUEREDPASS At least one correct guess No incorrect guesses WIN!
6
Some observations A player gets NO information about his own hat from looking at his teammates’ hats NO strategy can guarantee victory Easy strategy: one player guesses, everyone else passes. Can the players do better than 50%?
7
A better strategy for N=3 Instructions for all players: If you see two hats of the same color, guess the other color. If you see two different colors, pass.
8
Possible hat configurations Guesses #1 #2#3
9
Possible hat configurations Guesses RED #1 #2#3
10
Possible hat configurations Guesses RED BLUE #1 #2#3
11
Possible hat configurations Guesses RED BLUE RED #1 #2#3
12
Possible hat configurations Guesses RED BLUE RED BLUE #1 #2#3
13
Possible hat configurations Guesses RED BLUE RED BLUE #1 #2#3
14
Possible hat configurations Guesses RED BLUE RED BLUE #1 #2#3 √ √ √ √ √ √ X X
15
Possible hat configurations √ √ √ √ √ √ X X Probability of winning: 75% How is this possible? Can we do better? What about N >3?
16
Possible hat configurations Guesses RED BLUE RED BLUE #1 #2#3
17
6 correct guesses 6 incorrect guesses # correct = # incorrect RED BLUE RED BLUE #1 #2#3 Guesses
18
Why? The same instructions that lead to a correct guess in one situation… … will lead to an incorrect guess in another. BLUE Player #3 BLUE Player #3
19
In general… If the game is played once with each possible configuration of hats, then # correct guesses = # incorrect guesses True for any number of people N True for any deterministic strategy S
20
Why does the N=3 strategy work? It takes only one correct guess to win! Strategy: Spread out the good guesses. Concentrate the bad guesses. #1 #2#3
21
In general… When played over all hat combinations with N players, any strategy produces k correct guesses and k incorrect guesses. (The value of k depends on the strategy.) Best possible guess arrangement: –1 correct guess per winning combination –N incorrect guesses per losing combination A strategy which achieves this is called a perfect strategy.
22
Do perfect strategies actually exist? N = 3: Yes! Other N? #1 #2#3
23
Some terminology H: set of all possible hat configurations (sequences of 0s and 1s) Distance in H: number of places in which two elements of H differ. 1 0 0 1 0 1 1 0 1 1 0 1 1 0 1 0 0 1 Distance: 2
24
Some terminology Ball of radius r around h H: the set of all configurations whose distance from h is at most r. h: 1 0 0 1 B 1 (h):0 0 0 1 1 1 0 1 1 0 1 1 1 0 0 0 | B 1 (h)| = N+1 center 1 0 0 1
25
Some terminology S: a (deterministic) strategy L: set of all hat configurations where a team playing according to S loses W: set of all hat configurations where a team playing according to S wins L W = H
26
An important fact Suppose h and h’ are elements of H that differ only in the i th entry. If, according to strategy S, Player i guesses correctly in h, then he guesses incorrectly in h’, and vice versa. 4 th player’s guess h: 0 1 0 0 10 √ h’: 0 1 0 1 10 X
27
Corollaries Theorem 1: Every element h W is within distance 1 of some element of h’ L. Proof: Suppose Player j guesses correctly in h. Let h’ be the hat configuration that differs from h only in the j th entry. Then Player j must guess incorrectly in h’, so h’ is in L.
28
Corollaries Theorem 2: In a perfect strategy S, every element h W is within distance 1 of exactly one element of L. Proof: Suppose h differs from h 1 L in the i th entry and from h 2 L in the j th entry. Since S is a perfect strategy, all players guess incorrectly in h 1 and h 2. But then Players i and j must both guess correctly in h, which cannot happen in a perfect strategy.
29
Corollaries In other words…. Theorem 1: Every element h H is contained in a ball of radius 1 around some element of L. Theorem 2: In a perfect strategy S, the balls of radius 1 around elements of L do not overlap.
30
Codes A perfect code of length N is a subset L in H such that the balls of radius 1 around points of L include all of H do not overlap A perfect strategy yields a perfect code!
31
H A perfect code
32
H = points of L A perfect code
33
H = points of L A perfect code
34
Perfect code perfect strategy Instructions for Player i: –If the hat configuration might be in L: Guess so that if it’s in L, you’ll be wrong. –If you can tell that the hat configuration is not in L: Pass
35
Results (for hat configuration h): –If h is in L: Every player guesses wrong. –If the hat configuration h is not in L: There is a unique element h’ of L which differs from h in one place -- say the i th place.The i th player can’t tell if the configuration is h or h’, so he guesses away from h’, correctly. All others pass. Perfect code perfect strategy
36
000 111 100 010 001 101 110 011 Example: N=3 L = {000,111}
37
000 111 100 010 001101 110 011
38
Instructions for Player i: –If the hat configuration might be in L, guess so that if it’s in L you’ll be wrong. Translation: If you see two 0’s or two 1’s, guess the opposite number. Example: N=3 L = {000,111}
39
Instructions for Player i: –If you can tell that the hat configuration is not in L, pass. Translation: If you see two different numbers, pass. Example: N=3 L = {000,111}
40
How good are perfect strategies? Theorem: If S is a perfect strategy for N players then the probability of winning is N / N+1. Proof: In every ball, N out of the N+1 points correspond to winning configurations. Example: If N=3, the probability of winning with a perfect strategy is ¾. There can be no better strategy than the one we found.
41
Do perfect codes exist for N>3? Theorem: A perfect code of length N can exist only if N=2 m -1 for some integer m. Proof: A perfect code splits H into disjoint balls of radius 1. Each of the balls has N+1 points and H has 2 N points, so 2 N is divisible by N+1. Thus N+1 is a power of 2, so N=2 m -1. Example: We know a perfect code of length 3 = 2 2 -1. But what about 7, 15, 31,…?
42
Error-correcting codes I love you! 11010 … I love you too!
43
Error-correcting codes I love you! 11010 … 10010 … You what?
44
Error-correcting codes I love you! 1001100
45
Error-correcting codes I love you! 1001100 1000100
46
Error-correcting codes I love you! 1001100 1000100
47
Error-correcting codes I love you! I love you too! 1001100
48
A different game: Nim Rules Take any number of stones from any one pile A B
49
A different game: Nim Rules Whoever takes the last stone wins the game A B
50
A different game: Nim A B
51
A B
52
A B
53
A B
54
A B Two equal piles: bad news for whoever is next to move.
55
A different game: Nim A B Two equal piles: bad news for whoever is next to move.
56
A different game: Nim A B From now on, B simply imitates A’s moves…
57
A different game: Nim A B From now on, B simply imitates A’s moves…
58
A different game: Nim A B From now on, B simply imitates A’s moves…
59
A different game: Nim A B From now on, B simply imitates A’s moves…
60
A different game: Nim A B WINLOSE … so B is guaranteed to take the last stone.
61
Nim is… Combinatorial: no element of chance Impartial: same moves available to each player Finite: must end after a finite number of moves In any Nim position, exactly one of the players has a winning strategy.
62
Who wins? P-position: Previous player wins N-position: Next player wins e.g. the empty game is a P-position e.g. two equal piles is a P-position e.g. two unequal piles is an N-position Nim strategy: Figure out which positions are P-positions and move to them!
63
More on P and N P-position: cannot move to a P-position; move only to an N-position (or not at all) N-position: can move to at least one P- position If you combine two Nim games into one: P + P = P: cannot move to another P+P N + P = N: can move to P+P N + N = ? (depends on the games)
64
Position vectors A Nim position with all heaps of size N can be described by a vector of length N. (1,0,0,2,3) 1 heap of size 5 2 heaps of size 2 3 heaps of size 1
65
Position vectors Two equal heaps are a P-position, so we can ignore them (P+P=P, N+P=N). (1,0,0,2,3) 1 heap of size 5 2 heaps of size 2 3 heaps of size 1
66
Position vectors Thus we can replace all the entries in the position vector with 0’s and 1’s. Binary vector 1 heap of size 5 2 heaps of size 2 3 heaps of size 1 (1,0,0,0,1)
67
Legal moves Let X, Y be binary position vectors for Nim. One can move from X to Y if X >Y (as binary numbers) Distance from X to Y is 1 or 2 Examples: 1 0 1 0 1 1
68
Legal moves Let X, Y be binary position vectors for Nim. One can move from X to Y if X >Y (as binary numbers) Distance from X to Y is 1 or 2 Examples: 1 0 1 0 0 1
69
Legal moves Let X, Y be binary position vectors for Nim. One can move from X to Y if and only if X >Y (as binary numbers) The distance from X to Y is 1 or 2 Examples: 1 0 1 0 0 0
70
P and N: review P-position: cannot move to a P-position; move only to an N-position (or not at all) N-position: can move to at least one P- position
71
P and N revisited Theorem: The distance between two P- position vectors is ≥ 3. Proof: If the distance were 1 or 2, you could move from the larger vector to the smaller one. However, it is impossible to move from a P-position to a P-position. Corollary: Balls of radius 1 around P- positions do not overlap.
72
P and N revisited Theorem: Any vector X with distance ≥ 3 from all smaller P-positions is a P-position. Proof: Since you cannot move from X to any P-position, X itself must be a P- position. Corollary: We can look for P-positions inductively.
73
How to look for P-positions Start with (…,0,0) At each step, look for the next smallest sequence that has distance ≥ 3 from every previously-found P-position. The preceding theorems guarantee that this procedure will give you all and only P- positions!
74
Why look for P-positions? To win at Nim. The set of all P-positions with heaps of size N will give us non-overlapping balls of radius 1. If N=2 m -1,we may get a perfect code. To find perfect strategies for the hat game.
75
P-positions for heaps of size 7 0 0 0 0 0 0 0Start with 0 0 0 0 0 1 1 1Smallest v with three 1’s 0 0 0 1 ? ? ?Impossible!
76
P-positions for heaps of size 7 0 0 0 0 0 0 0Start with 0 0 0 0 0 1 1 1Smallest v with three 1’s 0 0 1 0 ? ? ?Impossible!
77
P-positions for heaps of size 7 0 0 0 0 0 0 0Start with 0 0 0 0 0 1 1 1Smallest v with three 1’s 0 0 1 1 ? ? ?
78
P-positions for heaps of size 7 0 0 0 0 0 0 0Start with 0 0 0 0 0 1 1 1Smallest v with three 1’s 0 0 1 1 0 0 1Next smallest 0 0 1 1 ? ? ?
79
P-positions for heaps of size 7 0 0 0 0 0 0 00 0 0 0 0 1 1 1A 0 0 1 1 0 0 1B 0 0 1 1 ? ? ?
80
P-positions for heaps of size 7 0 0 0 0 0 0 00 0 0 0 0 1 1 1A 0 0 1 1 0 0 1B 0 0 1 1 1 1 0A+B 0 1 0 0 ? ? ?Impossible!
81
P-positions for heaps of size 7 0 0 0 0 0 0 00 0 0 0 0 1 1 1A 0 0 1 1 0 0 1B 0 0 1 1 1 1 0A+B 0 1 0 1 ? ? ?
82
P-positions for heaps of size 7 0 0 0 0 0 0 00 0 0 0 0 1 1 1A 0 0 1 1 0 0 1B 0 0 1 1 1 1 0A+B 0 1 0 1 0 1 0C 0 1 ? ? ? ? ?
83
P-positions for heaps of size 7 0 0 0 0 0 0 00 0 0 0 0 1 1 1A 0 0 1 1 0 0 1B 0 0 1 1 1 1 0A+B 0 1 0 1 0 1 0C 0 1 0 1 1 0 1C+A 0 1 1 0 0 1 1C+B 0 1 1 0 1 0 0C+A+B
84
P-positions for heaps of size 7 Can we have any other P-positions that begin 0 1 X X X X X ?D Then we would have D+A, D+B, etc: 16 total Can we have 16 P-positions with heaps 6? (16 balls of radius 1) (7 points per ball) > 2 6 Impossible!
85
P-positions for heaps of size 7 0 0 0 0 0 0 00 0 0 0 0 1 1 1A 0 0 1 1 0 0 1B 0 0 1 1 1 1 0A+B 0 1 0 1 0 1 0C 0 1 0 1 1 0 1C+A 0 1 1 0 0 1 1C+B 0 1 1 0 1 0 0C+A+B
86
P-positions for heaps of size 7 0 0 0 0 0 0 001 0 0 0 ? ? ?No! 0 0 0 0 1 1 1A 0 0 1 1 0 0 1B 0 0 1 1 1 1 0A+B 0 1 0 1 0 1 0C 0 1 0 1 1 0 1C+A 0 1 1 0 0 1 1C+B 0 1 1 0 1 0 0C+A+B
87
P-positions for heaps of size 7 0 0 0 0 0 0 001 0 0 1 ? ? ? 0 0 0 0 1 1 1A 0 0 1 1 0 0 1B 0 0 1 1 1 1 0A+B 0 1 0 1 0 1 0C 0 1 0 1 1 0 1C+A 0 1 1 0 0 1 1C+B 0 1 1 0 1 0 0C+A+B
88
P-positions for heaps of size 7 0 0 0 0 0 0 001 0 0 1 0 1 1 D 0 0 0 0 1 1 1A 0 0 1 1 0 0 1B 0 0 1 1 1 1 0A+B 0 1 0 1 0 1 0C 0 1 0 1 1 0 1C+A 0 1 1 0 0 1 1C+B 0 1 1 0 1 0 0C+A+B
89
P-positions for heaps of size 7 0 0 0 0 0 0 001 0 0 1 0 1 1 D 0 0 0 0 1 1 1A1 0 0 1 1 0 0 D+A 0 0 1 1 0 0 1B1 0 1 0 0 1 0D+B 0 0 1 1 1 1 0A+Betc. 0 1 0 1 0 1 0C 0 1 0 1 1 0 1C+A 0 1 1 0 0 1 1C+B 0 1 1 0 1 0 0C+A+B
90
P-positions for heaps of size 7 16 P-positions 8 points per ballA perfect code! 128 = 2 7 points A vector space over Z 2 with basis 0 0 0 0 1 1 1A 0 0 1 1 0 0 1B 0 1 0 1 0 1 0C 1 0 0 1 0 1 1 D
91
The Hamming Code for N=7 Our code is the kernel of the matrix 1 1 1 1 0 0 0 A =1 1 0 0 1 1 0 1 0 1 0 1 0 1 over Z 2 The columns are the numbers 1-7 in binary! This code is called the Hamming Code.
92
The Hamming Code for N=7 A quick way to check if v ker(A): Record the numbers corresponding to the positions where v has a 1 Write these numbers in binary, with leading zeros if necessary Add the numbers as binary vectors: 1+1 = 0, no carry! v ker(A) iff you get 0
93
The Hamming Code for N=7 Example: v = ( 1 0 1 0 0 0 1 ) v has 1’s in positions 7,5,1 7 = 1 1 1 5 = 1 0 1 1 = 0 0 1 padding 0 1 1 addition with no carry The answer is not 0, so v is not in the code.
94
Finding the nearest code vector v = ( 1 0 1 0 0 0 1 ) Which coordinate of v should we change? When we “added” 7,5, and 1, we got 0 1 1. If we change the “3” coordinate of v from 0 to 1, we’ll have to “add” another 0 1 1. 0 1 1 + 0 1 1 = 0 0 0 ! v’ = ( 1 0 1 0 1 0 1 ) is in the code.
95
The Hamming Code for N=2 m -1 Let A be the m N matrix whose columns are the numbers 1 through N, written in binary. For N=15: 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 A =1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 ker(A) is called the Hamming code of length N.
96
The Hamming Code for N=2 m -1 Every N-vector v is within distance 1 of exactly one code vector v’. A(v), read as a binary number, gives the coordinate in which v and v’ differ! The Hamming code is a perfect code, which makes error-correction especially simple!
97
Homework Prove that the Hamming Code really is perfect and that A(v) gives the coordinate of the error. Using the Hamming code, find a practical strategy for Nim. Using the Hamming code, find a practical strategy for the hat game for 7 players.
98
A bit more about codes Not all codes are perfect: – In a general error-correcting code, the balls around the code points are disjoint, but do not necessarily include every point in the space. –In a general covering code, the balls cover the whole space, but may overlap. –A perfect code is both an error-correcting code and a covering code.
99
A bit more about codes In a general error-correcting code, the balls around the code points may have radius r>1. The Hamming codes are (essentially) the only perfect codes with radius 1. The is only one other perfect code: the Golay code for N=23, with radius 3.
100
Lexicodes We used the P-positions of a game (Nim) to construct a code (the Hamming code). In general, the P-positions of many impartial games correspond to well-known codes! These can be constructed in increasing lexicographic order, starting at 0 -- hence the name lexicodes!
101
References Lexicographic Codes: Error-Correcting Codes from Game Theory, John H. Conway and N.J.A. Sloane, IEEE Trans. Inform. Theory, 1986 http://www.research.att.com/~njas/doc/lex.pdf On Hats and Other Covers, H. Lenstra and G. Seroussi, 2002 (preprint) www.hpl.hp.com/infotheory/hats_extsum.pdf
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.