有兩個盒子,一個裡面的錢數是另一個的三倍,打開一個盒子看到錢數後決定拿哪個盒子。是換好還是不換好?

不考慮錢數是否能被3整除的問題,單純看期望收益。一種說法是換了以後另一個盒子里的錢數有一半可能性是3倍一半可能性是1/3,一種說法是不管換不換都是一樣的。那該換還是不該換,或者有其他策略么?

補充說明一下:一開始的回答都說明了換和不換結果是一樣的,這個結論和道理我覺得可以認可。那麼我希望能得到進一步的回答:有可能提出更好的策略么?謝謝。


很明顯,那些說選完箱子收益就已經確定的說法是錯誤的,這些人甚至不知道貝葉斯公式,只能把確定的原因歸因於上帝。

是否換應該取決於n的先驗概率分布。而這個悖論產生的原因就是默認存在n的先驗概率分布,對於任意x,p(x)=p(1/3*x)

下面證不存在某種概率分布 使得對於任意x,p(x)=p(1/3*x),無論是離散的還是連續的,

離散的很容易證,若存在p(x)&>0,存在n,p(x)+p(3x)+..p(3^n*x)=np(x)&>1,矛盾。故而任意p(x)=0,矛盾

連續的需要一些實變函數中測度和勒貝格積分的知識,可證對於任意P&>0 ,若mE(p(x)&>P且x&<1)&>0,那麼mE(p(x)&>P且x&<1)+mE(p(x)&>P且3&>x&>1)+...趨於無窮&>1,矛盾,所以mE(p(x)&>P且x&<1)=0,而{[0,1),[1,3),[3,9),[9,27)...},這個集合是可數集,E(p(x)&>P)=E(p(x)&>P且x&<1)並上mE(p(x)&>P且3&>x&>=1)並上... 可數個測度為0的集合的並集的測度依然是0,所以對於任意P&>0,mE(p(x)&>P)=0,由勒貝格積分的定義,可知其勒貝格積分必然為0,而應當為1,矛盾

好吧,其實離散是連續的特殊情況。。歡迎各位來挑刺

如果是面試題的話,我敢打賭,面試官自己也沒弄懂!


第一次回答的時候完全錯了,謝謝 @Pint Box指正。中午忘贊了,現在補一下。

實際上,這個是經典的Two-Envelope Problem。

【換還是不換?】堪比三門問題的信封問題,這次,是兩個。

這是一個印度同學問某留學生的問題:

有兩個信封,你可以選擇其中一個。其中一個裡面裝著一定數量的錢,另外一個裝著之前那個信封二倍的錢。你並不知道哪個信封裝著的錢更多。假設你現在隨機選擇了一個信封,如果你被允許給你改變你的選擇的話,你會選擇另一封嗎?

(ps:從信封上看不出也感覺不出厚度等因素的)

第一直覺是不會,因為你感覺這兩個信封拿到一定數量的錢的概率都是1/2,拿到二倍錢的概率也是1/2。

但是,概率是個神奇的東西:假使你拿到的信封里的錢是A,那麼如果你拿到的是錢較少的那個信封,那麼另外個信封的錢則是2A,發生這種事件的可能性是1/2。

如果你拿到的是錢較多的那個信封,那麼另外個信封的錢則是1/2A, 發生這種事件的可能性也是1/2。

所以,綜上,換信封的話,拿到錢的期望是(2A)*1/2+(1/2A)*1/2=5/4A!!!

換言之,你的期望比你繼續持有你現有信封的期望要高,所以結論是你要換信封!

但是更神奇的事情在於,整個推理過程我們用的是一個未知數A,也就是說,換過以後,如果再給你次機會,那麼仍然是你再換信封獲得的期望比你繼續持有那個信封的期望要高!而且這個過程是無限的,所以,理論上,如果給予你無數次可以改變的機會的話,你應該不停的選擇換信封.

------------------------------------------------------

下文作者:@Albert_JIAO

網上查了下,這個悖論是經典的Two-Envelope Problem,已經被討論了幾十年,背後的水其實很深。

(1)對於這個詭異的結果,一個最簡單的解釋就是:假設你拿到的信封里的錢是A,那麼另外一個信封的錢則是2A,可能性是1/2,此時我們假設A是兩個信封里錢比較少的那個數額;假設你拿到的信封里的錢是A,那麼另外一個信封的錢則是A/2,可能性是1/2,此時我們假設A是兩個信封里錢比較多的那個數額。A一會兒表示錢多的那個信封,一會兒表示錢少的那個信封,兩次沒有明確的表示同一個數量,所以期望的計算不成立。

或者這樣說,有兩個信封擺在那裡,一個有錢A,另一個有錢2A,任意拿一個的期望值都是1.5A,不管拿哪個,因為你也不知道信封裡面是A還是2A。

(2)但是上面的解釋並不完善,僅適用於對於信封裡面是什麼一無所知的情況。假設你已經拿了一個信封,並且已經打開,裡面的錢為10元(這些都是既定事實),那麼另外一個信封里到底是5元還是20元,是不確定的,如果5元和20元的可能性真的各是50%,你應不應該換呢?

答案是應該換,因為在這些條件下,換之後的期望值的確是1.25倍,不過這種情況下最多只有換一次的機會,因為信封已經都打開了。那麼,是不是在任何時候打開第一個信封之後,都應該把第一個信封扔掉,要第二個信封呢?(起碼直覺上講這沒有道理)

如果前提條件是不管你打開的信封數額A是多少,另一個信封2A和0.5A的可能性相等,比如第一個打開一看是100萬元,另一個50萬元和200萬元可能性相等;第一個打開一看是0.001元,第二個是0.0005元和0.002元的可能性還是相等,扔掉第一個、換第二個毫無疑問一定是最佳的策略。

但是不管A的數額是多少,2A和0.5A的概率永遠相等的情況是不存在的。這是因為如果這樣,意味著對於製作信封的人來說(不知道這個人是誰,就當上帝吧),他在一對兒一對兒地做信封的時候要保證(0.5A,A)和(A,2A)出現的概率相等,同樣的,更小的信封(0.25A,0.5A),(0.125A,0.25A)……和更大的信封(2A,4A),(4A,8A)……所有的數額組合出現的概率都是d(d&>0),但是數額可以無限大,也可以無限小,一共有無限多種組合,d乘以無限等於無限,但是作為一種概率分布,必須要保證所有概率加到一起等於1(不能是無限),否則概率分布沒有意義。所以,上帝無法造出來能讓2A和0.5A的概率永遠相等的信封。

如果信封的數額組合併不是無限多,是有限的,悖論是不會出現的。假設只有(1元,2元),(2元,4元),(4元,8元),(8元,16元)這四種情況(上限就是16元)。那麼如果採取每次都換的策略,假設你摸到的是1元,換了之後100%可以獲得2元,對自己有利。如果你摸到的是2元,1.25倍期望計算是成立的,換了也對自己有利;摸到的是4元和8元,同樣換了有利;可是一旦你摸到的是16元,如果還換,就會一下子損失8元,而且是百分之百的,因為信封里沒有32元的。儘管大多數時候換是有利的,可以賺一些小錢,但是一旦摸到最大的那個數額(但是自己不知道那是最大的),損失會很大,盈虧會抵消。如果遊戲玩很多次,平均下來,換和不換的結果(也就是期望值)是一樣的,不存在悖論。事實上在數額有封頂的情況下,比較好的策略是在摸到數額較小的信封時候盡量換,在摸到數額較大的信封的時候盡量不換。

到這裡,這個悖論已經基本被粉碎了,不過我們還可以繼續較真下去。

(3)但是死理性的人後來又提出這樣一種情況:我可以讓不同數額信封組合的概率分布加到一起等於1(當然不是都相等的),同時還可以保證每次換的期望值大於A。

比如可以規定對於數額較小的那個信封是2^n的這種組合(即2^(n+1)、2^n)出現的概率為2^n/3^(n+1),n=1,2,3……。這樣,(2元,4元)出現的概率將是4/27(n=2),(4元,8元)出現的概率是8/81(n=3),以此類推。你如果抽到的是4元,換成另外一個的期望值將會是2元*(4/27)/( 4/27+8/81)+8元*(8/81)/( 4/27+8/81)=2元*(3/5)+8元*(2/5)=4.4&>4。

如果把4換成其他數值,比如2或8或其他,結果是一樣的。按照這個概率分布公式,如果你摸到的信封是A,另一個是A/2的概率一定是2/5,是2A的概率一定是3/5,最後的期望值是11A/10&>A,也就是說結論還是任意時候都要換,雙信封悖論又回來了。

這種情況下的漏洞是在哪裡呢?兩個信封A和B,假設你拿到的是A,那麼B的期望值是E(B)=11A/10;如果你拿到的是B,A的期望值是E(A)= 11B/10,這個相互矛盾的東西在一種情況下是不矛盾的:E(A)= E(B)=無限大。

事實也正是這樣的,2^n/3^(n+1)的這樣的概率分布也是有點病態的,雖然滿足相加等於1,但是會導致所有可能信封數額組合的平均期望值是無限大的,同樣不符合實際。

這個可以用另外一個賭徒的段子來解釋,有一個扔硬幣的賭博遊戲,參加者每次可以押注一定數額,如果結果是正面,參加者可以得到雙倍的回報,如果結果是背面,參加者的押注將一去不復返。假設押注x,1/2*(2x-x)-1/2*x=0,這種遊戲的期望值是0,輸贏各有一半的可能。一個賭徒說「我有一種只贏不輸的必勝策略,第一次我押1元,如果贏了就不玩了,輸了繼續押第二次,押注變為2元,如果贏了可以獲得4元,4-1-2=1,還是凈賺的;如果第二次還輸,第三次就會押注8元,按照這樣,如果輸了就繼續翻番的押注,贏了就不繼續玩了,這樣一直下去,總有贏的時候,只要贏一次,就可以收回之前的所有投入」。這種策略不可行的原因是賭徒手裡的錢是有限的,押注以2倍的指數增大,增長速度很快,如果真的運氣不佳,連續很多次硬幣都是背面,賭徒就會傾家蕩產,綜合下來一算期望值,其實還是0。除非假設賭徒有無限多的錢,才能保證這樣的策略永遠有效,但是,賭徒真要有無窮多的錢,無窮+無窮還等於無窮,贏多少錢對他都沒有意義了,還用去賭博賺錢嗎?

類似於賭博的例子,如果A本身的期望值就是無窮大的,就沒有意義再討論換成B之後期望值是多少,比A大還是比A小了,最初的Two Envelope Paradox即使在這種概率分布的假設下還是不成立的。

(4)除了Two-Envelope Problem本身,wikipedia上還介紹了一個與之有關的有趣定理。

如果遊戲規則是這樣,製作信封的人每次給你兩個信封,分別裝有不同數量的錢X,Y,X和Y未必是二倍關係,但是X,Y的數值符合一定的概率分布,不過你完全不知道是哪種分布。你在遊戲中的目標是設法提高自己拿到錢比較多的信封的可能性。

在你打開第一個信封,看到錢的數量之後,可以決定留著這個信封,還是換成另外一個。在決定換和不換的時候,如果你使用這樣的辦法,用自己的電腦產生一個0到正無窮的隨機數,隨機數的概率分布可以用指數分布exp(-z)(exp(-z)在0到正無窮之間積分等於1)或者其他的一些分布,然後你用信封里的錢和隨機數z比較,如果小於z,就換另外一個信封,如果大於z就留著。這樣做看起來似乎沒什麼作用,但事實卻出乎意料。

如果z的值比X和Y都要小,第一個信封一定會留著,對於提高拿到錢多信封的可能性沒有影響。如果z的值比X和Y都要大,第一個信封一定會被換掉,對於提高拿到錢多信封的可能性也沒有影響。但是如果z正好在X和Y之間,第一次打開信封又恰巧是數額比較小的那個,就可以被換成數額比較大的那個,如果第一次打開信封是數額比較大的那個,則沒有影響。綜合下來,如果什麼也不做,每次拿到錢多的信封的可能性是1/2,但是用了一個隨機數z之後,可能性就大於1/2了。「獲勝」概率=1/2 + P(Z falls between the two numbers)/2.

大家如果有興趣進一步了解,可以看一下下面的資料:

1、http://en.wikipedia.org/wiki/Two_envelopes_problem

2、A CONCISE RESOLUTION TO THE TWO ENVELOPE PARADOX;ERIC BLISS

3、An Inside Look at the Two Envelopes Paradox;Ruma Falk,Raymond S. Nickerson

4、Opening Two Envelopes;Paul Syverson

5、Puzzles The Other Persons Envelope is Always Greener;Barry Nalebuff

6、The Two-envelope Paradox;JOHN BROOME


雖然有五個答案,但很不幸,其他幾個都沒說到點子上。好評的答案告訴你,兩個箱子確定以後,你的預期收益就已經確定了,但這無法解釋為什麼第一種想法是錯的,也無助於提出更有效的策略。題主在一個評論里倒是有一個正確的看法——即使箱子里的錢數是確定的,你在做判斷時也並沒有這個信息量,所以上帝確定與否其實並不重要。我覺得我應該為題主首先說明一個概念:什麼叫做預期收益?

俗話說得好,上帝的歸上帝,凱撒的歸凱撒。預期收益等於收益乘以概率再積分,而這個概率應當對所有不確定的數字求出。這個題目里表面上的不確定性因素有二:箱子里原本的錢數(我們可以簡單地用小箱子里的錢數x予以描述),你開到的是大箱子還是小箱子(我們把它叫做m,m=3表示大箱子,m=1表示小箱子),而確定性因素是換不換的選項。因此在計算預期收益的時候必須同時考慮x和m的概率分布。我希望題主對基本的概率公式有一些了解,因為我們馬上要進公式了。

假設x的概率密度分布是f(x),m的概率密度分布是一半一半。策略則可以用函數F(m,x)表示。永遠不換則F(m,x)=m*x,永遠換則F(m,x)=(4-m)x。

由於x和m這兩個變數是獨立的,因此你的預期收益=

int f(x)*1/2*F(1,x)+f(x)*1/2*F(3,x) dx

不管是永遠換還是永遠不換,上式都=int f(x)*2x是個固定的值。

這個解釋和之前幾位的答案是一致的。事實上你可以把它寫成int f(x)*(1/2*F(1,x)+1/2*F(3,x)),把後面那個括弧裡面就是大家說的「x確定了之後,預期收益就確定了」的預期收益。但忽略掉f(x)這個積分談預期收益是沒意義的。

實際上,第一種思路的陷阱在另一個地方:你為什麼認為,打開了1以後,另一個箱子是1/3還是3的概率是一半一半?你在說這句話的時候實際上做了一個假設,即小箱子里的錢數=1/3和=1的先驗概率是相等的。而這不可能對所有x都成立——跟我念一遍:不存在0到無窮大的均勻分布。

繼續上公式。第一種思路的觀點在於,我只能看到y=m*x,所以你寫F(m,x)的時候是有問題的,應該寫成F(m*x)!那麼我們寫G(m,y)=F(m,x)把上面這個積分變形一下:

int f(x)*1/2*F(1,x) dx+f(x)*1/2*F(3,x) dx

=int f(y/1)*1/2*G(1,y) dy+f(y/3)*1/2*G(3,y) dy/3

=int G(1,y)*(f(y)*1/2) dy + G(3,y)*(f(y/3)/3*1/2) dy

都不換的話,G(1,y)=G(3,y)=y,所以積分=int y*f(y)/2dy+y*f(y/3)/6dy

都換的話,G(1,y)=3y, G(3,y)=y/3,積分=int 3y*f(y)/2dy+y/3*f(y/3)/6dy,分成兩部分做變數代換就可以看出這個積分和上面一個是一樣的。

仔細看這個式子就可以知道,當你看到y的時候,這個東西是小箱子的概率和是大箱子的概率之比約等於f(y):f(y/3)/3,而後者不可能對所有y都等於1:1。

更好的策略是存在的,因為你可以在看到錢數y之後才決定是否換箱子,因此所有不利用y的策略都不會給你提供更好的結果,但利用了y以後就可以選擇性地換。一個比永遠換更好的策略是:開箱子前隨便取一個閾值a(開箱子前取是為了讓a和y獨立),如果y&>a就不換,y&

---------------------------

補充白話解釋

我試著用白話解釋一下吧。

首先,期望=加權平均。但凡平均就要有個範圍。在這個題目里有兩個你控制不了的因素,一個是兩個箱子里的錢數(可以由小箱子里的錢數確定),一個是你選到了大箱子還是小箱子,你能確定的只有策略。要注意,但凡說到期望的時候,所有你控制不了的因素都應該按照概率平均起來。假設盒子里的錢數固定是一種假設, 但不是很合理。

因為有兩個因素,所以可以逐一做平均。兩個因素獨立,所以做平均的順序可以隨意交換。具體到這個例子里,先對選中了大箱子還是小箱子做平均是比較簡單的做法。不管是永遠換還是永遠不換,這一步平均的結果都是一樣的,所以對兩個箱子里的錢數再做平均也是一樣的。

思路一則是把兩個因素視為你打開的箱子里的錢數和你選到了大箱子還是小箱子。但這兩個因素並不是獨立的:打開的箱子里的錢數越多,是大箱子的可能性越高。因此,打開的箱子里的錢數比較少的時候換的期望收益是正的,比較多的時候換的期望收益是負的。總體平均起來換的期望收益和上一種演算法應該是一樣的0。

更好的策略用白話說明就是,錢多就不換,錢少就換。但是錢多錢少這條線必須在打開盒子之前決定。你的線猜得越准,收益越高。


無所謂,兩者期望是一樣的。假設錢數是n和3n,那麼換不換期望都是2n。

這個問題並不同於「讓你50%可能獲得3倍的收益,50%可能獲得1/3收益」,因為選箱子後「換」這個動作造成的結果是100%確定的。選擇3n後再換,並不可能讓你的箱子變成9n。


這個題的答案肯定是不需要換的。

題主說到的第一條思路其實並不存在——並不是1/3和3倍之間的選擇,而是100%確定的選擇,而這確定性就來自於玩家第一步的決定。如果你上手是3,那麼另一個盒子就是1;如果你手上是1,那麼另一個盒子就是3。它不同於二分之一概率的 3→9 or 1 加上二分之一概率的 1→3or1/3。

但我不得不承認這個題目很nb。

有些回答中提到我們所說的隨機數並不是真正隨機的,所以試圖使用數學方法來優化這個題目的選擇策略。思路很有意思,不過我覺得實際意義不大,並不能實現對此題的優化。


首先列舉幾項基本的討論必須的前提:

(1) 「信封金額」的是完全未知的,總金額處於 [0,+無窮) 的無限區間,沒有因素或線索讓你預知2個信封中出現金額的限定範圍。否則策略會受區間限定範圍、以及各個因素或線索的影響。

(2) 「打開一個盒子」的選擇是隨機的,如果不是隨機的,策略無法通過概率計算,而需要涵蓋牽涉到的非隨機因素。

(3) 對於任意打開看到的數額n,你都不知道你看到的數額n 與 2個信封總金額的數量大小關係,沒有其他因素影響你對此的判斷。否則策略也無法通過概率計算,而需要考慮牽涉到的影響因素。

====== ====== ====== ======

簡要歸納一下正常演算法:

已知:兩個盒子里都有錢,

設總共金額是 4m,

且已知:一個裡面的錢數是另一個的三倍,

即其中一個信封金額是m,另一個是3m。

將 金額是 m 的稱為 a信封,

將 金額是 3m 的稱為 b信封,

打開一個信封,那麼

有0.5概率是開的 a信封,金額是m

同時有0.5概率是開的 b信封,金額是3m

:對於任意打開看到的數額n,你都不知道你看到的數額n 與設定的金額m、3m的數量大小關係。 n可能是m 也可能是3m,出現概率均等。

數學期望是試驗中每次可能結果的概率乘以其結果的總和。

若策略是不換一個信封,那麼

先拿到的信封的金額的數學期望是 0.5 * m + 0.5 * 3m = 2m

若策略是換一個信封,那麼

換到b信封的概率仍是0.5,金額結果是3m

換到a信封的概率仍是0.5,金額結果是m

所以換到的信封的金額的數學期望是 0.5 * 3m + 0.5 * m = 2m

期望值與不換的策略相等。

====== ====== ====== ======

簡要解釋一下常見錯誤:

錯誤(1) 設先抽到X,選擇換的策略的預期換到的數學期望是,

0.5 * 3 * X + 0.5 * 1/3 * X

= 5/3 X

所以應該換。

錯誤理由:

設總共金額是 4m,

則已知其中一個信封金額是m,另一個是3m。

「0.5 * 3 * X + 0.5 * 1/3 * X」

前半個表達式 0.5 * 3 * X 中隱性地假定了 X = m

後半個表達式 0.5 * 1/3 * X 中隱性地假定了 X = 3m

並不是同一個X。因為討論的前提是,你打開第一個看到X後,並不知道你打開的是大金額那個,還是小金額那個。

所以需要分開計算,

前半個表達式 0.5 * 3 * X = 0.5 * 3 * m

後半個表達式 0.5 * 1/3 * X = 0.5 * 1/3 * 3m

0.5 * 3 * m + 0.5 * 1/3 * 3m

換的策略的預期換到的數學期望是 = 2m

錯誤(2) 設先抽到X,選擇換的策略,

則有0.5的概率拿到3 X,0.5的概率拿到 1/3 X

錯誤理由:

設在已經抽到X的前提下,換一個拿到X/3元的概率是p(X/3)

設在已經抽到X的前提下,換一個拿到3X元的概率是p(3X)

你已知的是 在已經抽到X的前提下,要麼換一個拿到的是X/3元、要麼換一個拿到的是3X元,

即:p(X/3) + p(3X) = 1,

而不是 換一個拿到X/3元 和 換一個拿到3X元 的概率均等,

並不存在已知條件: p(X/3) = p(3X)

所以用 0.5的概率拿到X/3、0.5的概率拿到3X 來計算數學期望,必然是錯誤的。

只有當題目是「你已有一個盒子X元,另外一個盒子隨機塞入 X/3元 或 3X 元」,

那麼才會有p(X/3) = p(3X)。

然而,並不是。

隨機的是2個盒子中「隨機拿了一個盒子」

而不是「隨機在你沒有選的盒子塞入 X/3元 或 3X 元」


兩個說法都是對的。

設盒子A裡面有n元,盒子B里3n元

策略一:換盒子

」換了以後另一個盒子里的錢數有一半可能性是(這個盒子的)3倍一半可能性是(這個盒子的)1/3「

這個盒子可能 是A 可能是B

別誤以為這種策略期望收益更高! 兩個策略的期望收益是相等的。

由於事件(第一個摸到的盒子是A)與事件B(換了以後另一個盒子里的錢數有一半可能性是(這個盒子的)3倍)不是獨立的,所以別順這條路算總的期望收益(想算也可以,列個表唄)

@yukirock

以上


假設存在無數個組合,截取其中的一段,(1,3)(3,9)(9,27)前面和後面的組合都是無窮多的。先截取其中3個。選中1,3,9,27的概率分別為1/6,2/6,2/6,1/6。換的期望收益分別為2,2,6,-18。換的總期望收益為0。好了,取4個計算。換的期望收益也為零。推廣到無窮的情況,依然為0。


一,首先期望上就是不一樣的,因為手裡的錢A有一半概率減半,一半概率變三倍,最後期望是1.75A。那些說期望一樣的同學概率論。。。期末抄的?

二,這裡是一個paradox或者說悖論,因為對雙方而言都應該換畢竟1.75A &> A,而且因為你不知道自己手裡是多少,所以你一直假設A的話,你會永遠換下去。

三,所以這個問題是不是有什麼問題?是的,tricky的地方在於,這個問題和扔骰子拿錢是不太一樣的,直觀的解釋是,扔骰子拿錢你的期望是恆正且相對於不拿錢的;這個問題下你把原來的3n換成n是虧了。

四,所以這個問題一般會引入一個「偷看」的下一步,假設你拿到箱子之後你能偷看一眼,你換不換?這裡就需要你假設一個prior,如果你覺得錢看起來很多應該是3倍那個箱子那你當然不換了;如果你一看,哇擦箱子里只有5毛錢我都發了兩個貼了,那你當然要換了。

畢竟一顆茶葉蛋呢。


推薦閱讀:

如何用正確分析「前n次不逃課的情況下,第n次課逃課更容易被點名」?
一百顆糖,發給十個小朋友,要求每個小朋友都有糖,且不存在兩個小朋友手上的糖一樣多,問一共有多少種分法?
概率是主觀的嗎?
一個箱子有50隻球,一半黑,一半白,取球要放回。你有200次機會取球。問把所有黑球都取過至少一次幾率?

TAG:數學 | 概率 | 概率論 |