What is the optimal strategy to marry the best one ?
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

Consider a young girl who knows that he will not meet thousands of men willing to marry her (actually, one can consider the opposite point of view, with young man who can find only




From a mathematical point of view, we need to find the optimal stopping time.
Here, the problem is slightly different compared with that one (with optimal time to get a bonus) or this one (with the optimal
time to sit in a bar and have a beer). Here, we do not give “grades” to
guy. The only thing that is observed is their relative ranks. Our girl
cannot know if she’s meting the best of all men (out of ),
but she
knows if this one is better than the ones she already met. From a
mathematical point of view, at time
, she knows the relative rank of
(compared with the first
), not his absolute rank. We also assume that
is known.
The optimal strategy is that she has to reject automatically the first (some kind of calibration period), and then, starting at time
, she will marry the best over the ones she has already met.
So assume that our girl already met guys, and decided to reject all of
them. So now she’s trying to see if the
can be the optimal time to stop, and start looking seriously ….For an arbitrary cut-off
, the probability that the best applicant will show up at some time
is

i.e.




i.e.



Hence, the best strategy is to reject automatically the first =37% of
the candidates (which is the maximum value of the function above), and then to select the first one (if possible) that is
better than all previous candidates.
Consider the following Monte Carlo procedure: assume that she rejects – automatically – the first
(we consider a loop with all possible values for
) and then gets married with the first one who is the best one she’s seen during the calibration period (or overall, which is the same),
n=100 ns=1000000 MOY1=MOY2=rep(NA,n) for(m in 2:(n-1)){ WHICH=rep(NA,ns); MARIAGE=rep(0,ns) for(s in 1:ns){ Z=sample(1:n,size=n,replace=FALSE) mx=max(Z[1:m]) STOP=FALSE for(k in (m+1):n){ if((Z[k]>mx)&(STOP==FALSE)){ WHICH[s]=k STOP=TRUE MARIAGE[s]=1 } } } HIS=WHICH[is.na(WHICH)==FALSE] TH=table(HIS) MOY1[m]=mean(HIS) MOY2[m]=mean(HIS)*mean(MARIAGE) THH=rep(NA,100) THH[as.numeric(names(TH))]=as.numeric(TH)/ns }
If we run it over all possible we get





Now to go further, I have to admit that this model is known in academic literature as the secretary problem. In 1989, Thomas Ferguson wrote a nice paper in Statistical Science entitled who solved the secretary problem (here). Anthony Mucci published also an article in the Annals of Probability on possible extensions, in 1973 (here), or Thomas Lorenzen (there) in 1981. This problem is definitively an interesting one !
R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.