☰ Оглавление

Парадокс двух конвертов

Это наверно самый удивительный парадокс теории вероятностей. В различных источниках можно найти множество его толкований и объяснений. Иногда даже профессора серьёзных вузов выдвигают на его основе стратегии обогащения. Объяснения же не редко ссылаются на кота Шредингера и прочие удивительные вещи. (Квантовую механику действительно можно наблюдать и на макроскопическом уровне. Но не в этом случае.)

Я постараюсь здесь разрешить парадокс двух конвертов, не прибегая к чёрной магии.

Формулировка парадокса

Вы и ваш друг участвуете в игре. Ведущий кладёт в два конверта суммы денег, отличающиеся в два раза. Каждый из вас получает конверт. Вы открываете свой и видите, скажем, 20 рублей. Вы рассуждаете: у друга может быть 10 рублей, а может быть 40. Если я поменяюсь с ним, то могу потерять 10 рублей (получив 10 вместо имеющихся 20), но могу получить дополнительные 20 рублей (получив 40 в обмен на 20). То есть, суммарно, я выигрываю от обмена!

Надо ли вам меняться?

Парадоксальность видна невооружённым глазом. Кажется очевидным, что обмен сулит больше выгоды, чем потерь. Тем не менее, для вашего друга он представляется столь же выгодным! Но этого не может быть!

Кроме того, если бы всё работало именно так и каждый обмен приносил больше выигрыша, чем потерь, вы могли бы меняться и меняться, увеличивая свой капитал? Но это уже полностью противоречит здравому смыслу.

Разгадка парадокса двух конвертов

Чтобы понять в чём же подвох, надо взглянуть на игру с другой точки зрения: с точки зрения организатора. Согласно вашей гипотезе, он должен обладать немыслимыми супер-способностями.

Действительно. Вы предполагаете, что если вы получили сумму X, то ваш друг мог получить 2X и X/2 с одинаковыми вероятностями. То есть вероятности получить 10, 20, 40, 80, 160... рублей равны?!

Из этого следует два странных свойства организатора игры: во-первых, он бесконечно богат и может положить в конверт любую сумму; во-вторых, вероятность того, что он положит эту сумму в конверт исчезающе мала (так как все вероятности должны быть равны, их бесконечно много, а их сумма должна равняться единице). То есть у организатора игры бесконечный выбор и ему бесконечно сложно принять решение.

Естественно, в реальной игре эти условия выполняться не могут.

Простое объяснение на пальцах

Покажем наглядно, как может протекать такая игра.

Пусть у организатора есть 8 рублей. Он может класть в конверт только пары сумм: (1, 2) и (2, 4).

Посмотрим, каковы возможные исходы.

Естественно, если вы видите в своём конверте один рубль, то надо меняться (такая однозначность получилось потому, что мы довольно жёстко ограничили наши суммы снизу).

Если вы получили 2 рубля, то имеет смысл рискнуть. В половине случаев вы удвоите своё состояние, а во второй половине — потеряете лишь половину денег. Игра стоит свеч.

Но вот если вы получили 4 рубля, меняться уже не выгодно. Вы обязательно потеряете деньги.

Чуть более сложный пример

Пускай организатор игры бесконечно богат. Но, как вы видели, если он может выбрать любую (сколь угодно большую!) сумму с равной вероятностью, то вероятность выбора устремляется к нулю.

Чтобы сделать ситуацию правдоподобной, давайте введём своего рода «жадность», которая поможет организатору принимать решения. Наш организатор будет охотней выдавать маленькие суммы. Выберем функцию распределения так:

P(x) = 0.9^x / 9

P(x) — это вероятность того, что организатор положил в конверты суммы x и 2x. То есть P(x) означает вероятность того, что он решился разыграть общую сумму 3x.

Не трудно доказать, что сумма всех таких вероятностей для x=1,2,3,... равна единице.

Наш выигрыш от обмена можно выразить простой формулой

2 * x * P(x) - 1/2 * x * P(x/2)

(Да-да, в первом слагаемом именно P(x), а не P(2x); мы должны здесь рассчитывать не вероятности того, что в конверте оказалась некая сумма, а вероятность того, что ведущий выбрал именно эту пару сумм. То есть, что он выбрал заданную меньшую или большую сумму. Сумма во втором конверте уже получается однозначной. Но не будем вдаваться в эти тонкости. На самом деле, они не меняют ситуацию.)

Если он положительный — обмен выгоден. Если нет — меняться не выгодно.

Давайте (с помощью языка Python) рассмотрим, каков же выигрыш:

>>> from math import pow
>>> P = lambda x: pow(.9,x)/9
>>> print('\n'.join('%5d %+.5f' % (x, 2*x*P(x)-.5*x*P(x*.5)) for x in range(20,30)))
   20 +0.15292
   21 +0.12471
   22 +0.09790
   23 +0.07259
   24 +0.04885
   25 +0.02670
   26 +0.00615
   27 -0.01282
   28 -0.03022
   29 -0.04612
>>>

Видно, что есть небольшие шансы увеличить свои деньги, если вы получили 26 рублей и меньше. Но обмен приведёт, скорее, к убыткам, если у вас 27 рублей и больше.

На бытовом уровне этот результат очень хорошо понятен. Если ты получил маленькие деньги — меняйся. Если ты получил много денег — ни с кем не меняйся. Однако, применить эти знания можно только если вы знаете, что такое «мало» и «много». А это зависит от прихотей организатора игры.

Конкретные суммы в моём примере, конечно, — лишь следствие определённого уровня «жадности», которым я наделил того, кто наполняет конверты. Но суть всегда остаётся одной: обмен может быть выгоден только до определённых пределов. И всегда обмен кому-то не выгоден.

Вот и получается, что никакого парадокса нет. При обмене конвертами, «кто-то теряет, а кто-то находит».