減少時間複雜度——歐拉的37%法則

前段時間, 我兄弟揹着我偷偷脫單了......他爹媽說神馬如今該好好學習亂七八糟的......學習

忽想起37%法則, 遂與諸君分享:優化

咱們可能都聽過掰玉米的哲學故事: 一片玉米地, 你須要從裏面摘一個最大的玉米。但只能摘一次, 並且不能回頭。

你第一次走進玉米地, 發現不少大玉米, 很快摘下了你看到的第一個比較大的玉米棒子, 而後繼續往前走, 然而越走越失望, 你沮喪地發現前面還有不少比你手裏的大得多的玉米棒子。可是你已經不可以選擇了。這種選擇, 名字叫「後悔」。spa

你第二次走進玉米地, 一樣也發現了不少很好的玉米棒子, 可是這一次你吸收「後悔」的教訓——前面必定有更好的。你一直向前走, 直到發現本身差很少走出了玉米地。按照規則, 你回不去了。就這樣, 你錯過了最好的玉米棒子。這種選擇, 名字叫「錯過」。對象

這個問題, 不正是咱們面臨的擇偶, 找工做等抉擇問題簡化版嗎?blog

誰都不想"後悔", 誰也不想"錯過", 咱們該選擇何種策略去優化咱們的生活呢?ip

數學家歐拉前輩, 給出了一個重要的數字:37%數學

也就是說:
對於選擇玉米棒子的問題, 要按數字37%將玉米地分紅兩個階段:it

前37%的路程爲第一階段。在這個階段, 你只看不選, 就是認真觀察比較這個階段最大的玉米棒子, 記住那個玉米棒子的大小。

等過了37%, 進入第二階段。從這個階段開始, 你一旦遇到一個比第一階段那個最大的玉米棒子還要大的玉米, 或者差很少大的玉米, 就堅決果斷地選擇它。class

分兩個階段這個策略和37%這個數字, 或許又是數學家歐拉某次旅行時算出來的, 這其實是一個隨機選擇優化問題——這個辦法叫37%法則。cli

37%的規則並不能保證你必定能選擇到最大的玉米, 由於在這片玉米地裏, 玉米棒子大小是隨機出現的。在這種隨機出現的狀況下, 它是一個可以選到一個足夠大玉米的好辦法。

從機率的角度來說
若是你看了不到37%的玉米就開始選擇, 你未來極可能會後悔
若是你看了超過37%的玉米纔開始選, 你未來可能會錯過

咱們來看下37%的求解過程:

問題提出:

假設這片玉米地有 n個玉米
數學模型上說
就是先拒掉前面 k 個玉米(不去管這些玉米有多大)
而後從第 k+1 個玉米開始, 一旦看到比以前全部玉米都要大的, 就堅決果斷地選擇它

不難看出, k 的取值很講究, 過小了達不到試的效果, 太大了又會致使真正可選的餘地很少了。
這就變成了一個純數學問題: 在玉米總數 n 已知的狀況下, 當 k 等於何值時, 按上述策略選中最大玉米的機率最大?

如何優雅地求出最優的 k 值?

k是定值, 若是最適合的玉米出如今了第 i 個位置, k的機率記做P(k)

$$ p(k)=\sum_{i=k+1}^{n}\frac{1}{n}*\frac{k}{i-1}=\frac{k}{n}\sum_{i=k+1}^{n}\frac{1}{i-1} $$

x表示 k/n 的值, 而且假設n充分大, 則上述公式爲:

$$ P(k)=x\int\nolimits_1^x \frac{1}{t} dt=-x*lnx $$

-x·lnx 求導, 並令這個導數爲 0, 能夠解出 x 的最優值, 它就是歐拉研究的神祕常數的倒數—— 1/e

因爲 1/e 大約等於 0.37(e ≈2.718281828459), 所以這條法則也叫作 37% 法則。

如今, 你知道了37%法則是你做爲一個理性的人在這個不肯定的世界中所能作的最佳策略, 那麼你能夠無怨無悔, 沒有那麼多糾結和痛苦了。

好比買房子和擇偶, 均可以應用37%法則。

對於買房子, 這個問題的條件以下:

你隨機遇到各類房子, 但你只打算買一個。
遇到一個房子, 若是你買下來, 這個房子就是你的。
若是你選擇不買, 很快別人就會把它買走, 你沒有第二次機會。
你應該給本身設定一個看房總數的限度, 或者一個時間期限。(好比在一個月內必定要買到房子)
根據37%法則, 將一個月時間分爲兩個階段。前11天爲第一階段, 這個階段只看不買, 瞭解市場上的狀況, 你喜歡和不喜歡的房子。這個階段你必定要記住你最滿意的房子。

等從第12天開始, 你一旦遇到一個比第一階段那個最滿意的房子要好, 或者相似的, 就要堅決果斷買下來。

對於擇偶, 一樣能夠運用37%法則。好比, 一個女性從20歲開始找對象, 設定的目標是30歲以前結婚, 那麼根據37%法則, 兩個階段的分割點就在23.7歲。

在20歲到23.7歲之間是觀察期, 只交往不結婚, 可是必須記住在交往的男生中最喜歡的那一個。23.7歲以後是決策期, 一旦遇到一個比那我的還好或者差很少好的男生, 就應該選擇和他結婚。

可是對於擇偶, 這個數學模型會更復雜, 由於假定的是你選擇他, 他就必須答應。實際生活中可能不會如此, 若是有被拒絕的可能性, 那麼分割點就不是37%

假設被拒絕的可能性是一半, 那麼要把37%變成25%。也就是說, 條件很差的人要縮短觀察期。

若是你的條件很是好, 就算一開始你錯過了一我的, 過了一段時間去找他, 他還有可能答應你的話, 那麼你的觀察期應該延長。假設這個贊成的可能性是一半, 那麼你能夠把觀察期延長到61%。

總的來講, 條件好就多等等, 不要急於決定;條件差就趕忙行動。數學模型計算的結果, 跟咱們的常識是相符合的。

這個37%法則, 說的是面對一個不肯定的世界, 在你根本不知道命運會怎樣的狀況下, 所能採起的最佳策略。

在生活中, 不少人就敗在不知道何時中止選擇。理性的人, 應該知道何時中止。由於, 當選擇以後更重要的是去經營咱們的選擇。

但我是個感性的人。。。。。。

祝諸位找到本身玉米棒:

clipboard.png

相關文章
相關標籤/搜索