Wednesday, February 20, 2013

Using a Biased Coin to make Unbiased Tosses

Q: You have a coin that is biased to either heads or tails with probability \(p\) and you don't which way. How do you generate fair tosses using just this coin?

Fifty Challenging Problems in Probability with Solutions (Dover Books on Mathematics)

A: There exists a fairly simple and elegant solution to this puzzle. Instead of using just the out come of the toss, use the outcomes of pairs of tosses that result in the patterns HT or TH. All other patterns should be ignored. The first instance of \(\{\ldots HT\ldots\}\) should be treated as a "heads" and if the first instance in series is \(\{\ldots TH\ldots\}\) then it should be treated as "tails". Here is why it works. Assume \(P(Heads) = p\) and \( P(Tails) = 1 - p\). The probability of getting a head followed by a tails is \(p\times(1-p)\). Likewise the probability of getting a tails followed by a heads is \((1-p)\times p\) which is the exact same and is completely independent of \(p\)!

Some good books to learn probability

Introduction to Algorithms
This is a book on algorithms, some of them are probabilistic. But the book is a must have for students, job candidates even full time engineers & data scientists

Introduction to Probability Theory

An Introduction to Probability Theory and Its Applications, Vol. 1, 3rd Edition

The Probability Tutoring Book: An Intuitive Course for Engineers and Scientists (and Everyone Else!)

Introduction to Probability, 2nd Edition

The Mathematics of Poker
Good read. Overall Poker/Blackjack type card games are a good way to get introduced to probability theory

Let There Be Range!: Crushing SSNL/MSNL No-Limit Hold'em Games
Easily the most expensive book out there. So if the item above piques your interest and you want to go pro, go for it.

Quantum Poker
Well written and easy to read mathematics. For the Poker beginner.

Bundle of Algorithms in Java, Third Edition, Parts 1-5: Fundamentals, Data Structures, Sorting, Searching, and Graph Algorithms (3rd Edition) (Pts. 1-5)
An excellent resource (students/engineers/entrepreneurs) if you are looking for some code that you can take and implement directly on the job.

Understanding Probability: Chance Rules in Everyday Life A bit pricy when compared to the first one, but I like the look and feel of the text used. It is simple to read and understand which is vital especially if you are trying to get into the subject

Data Mining: Practical Machine Learning Tools and Techniques, Third Edition (The Morgan Kaufmann Series in Data Management Systems) This one is a must have if you want to learn machine learning. The book is beautifully written and ideal for the engineer/student who doesn't want to get too much into the details of a machine learned approach but wants a working knowledge of it. There are some great examples and test data in the text book too.

Discovering Statistics Using R
This is a good book if you are new to statistics & probability while simultaneously getting started with a programming language. The book supports R and is written in a casual humorous way making it an easy read. Great for beginners. Some of the data on the companion website could be missing.


  1. This comment has been removed by the author.

  2. If the coin is 100% biased your method does not work because you will never see the other side. Thus you forgot to state 0<p<1

    1. Not sure how one would bias a coin 100%, is that possible. Would you still describe it as a bias?