Представьте, что запертые в одной комнате люди просто раздают друг другу деньги: каждый дает по доллару кому-то другому в случайном порядке. Как в итоге средства распределятся между этими людьми? Ответ может оказаться удивительным.
Задача: как распределяются деньги при случайной раздаче
Издание Decision Science News опубликовало материал с описанием необычного эксперимента:
«Представьте себе комнату, в которой одновременно находится 100 человек. У каждого из них есть по 100 долларов. Каждую секунду каждый из находящихся в комнате дает доллар одному случайно выбранному человеку. Как по прошествии некоторого времени распределятся деньги между всеми, кто есть в комнате?».
У большинства из тех, кто столкнулся с этой задачей, само собой возникло предположение, что в итоге все получат примерно поровну денег. Даже пять докторов наук, опрошенные Decision Science News, пришли к тому же первоначальному выводу. Но так ли это на самом деле?
Как выглядит распределение
То, как будут распределяться средства с течением времени, наглядно видно здесь.
Инфографика охватывает временной интервал в 5000 секунд. Ось Y показывает количество денег, которое есть у каждого из участников мысленного эксперимента. Отсчёт начинается с 45 долларов. На оси Х показано количество людей в комнате — 45 человек.
Красные столбцы показывают сколько денег есть у каждого человека в каждую секунду. Синие полосы призваны продемонстрировать, как распределяется богатство. Самый правый синий столбец соответствует самой высокой красной полосе и так далее.
Проверить результаты эксперимента самостоятельно можно с помощью следующего кода (понадобятся R, tidyverse и gganimate):
library(tidyverse)
library(gganimate)
NUMPLAYERS = 45
ROUNDS = 5000
INITWEALTH = 45
#initialize the bank
#columns wealths of the NUMPLAYERS players
#rows show wealths of each of the ROUNDS ticks of the clocks
bank = matrix(0, nrow = ROUNDS, ncol = NUMPLAYERS)
bank[1,] = c(rep(INITWEALTH, NUMPLAYERS))
#function to give a dollar to someone other than oneself
get_recipient = function(player) {
sample(setdiff(1:NUMPLAYERS, player), 1)}
#execute trades and update the ledger
for (i in 2:ROUNDS) {
#every player with wealth chooses another person to receive a buck
recipients = sapply(which(bank[i - 1,] > 0), get_recipient)
#table of the dollars owed each person
count_table = table(recipients)
#get the indices of the people owed money
indices = as.integer(names(count_table))
#everyone gives up a dollar, unless they are at zero
bank[i,] = ifelse(bank[i - 1,] > 0, bank[i - 1,] - 1, bank[i - 1,])
#selected people receive dollars
bank[i, indices] = bank[i, indices] + count_table
}
####################Animate it
#Make a suitable long data frame
df = as.data.frame(bank)
names(df) = 1:NUMPLAYERS
df = df %>%
mutate(frame = 1:ROUNDS) %>%
gather(person, wealth, 1:NUMPLAYERS) %>%
mutate(person = as.numeric(person)) %>%
arrange(frame) %>%
group_by(frame) %>%
mutate(rank = rank(wealth, ties.method = "random")) %>%
ungroup() %>%
gather(histtype,playerid,c(person,rank)) %>%
mutate(histtype = sprintf("Ordered by %s", histtype))
p <- ggplot(df, aes(x = playerid, y = wealth, frame = frame, fill=histtype)) +
theme_minimal() +
theme(panel.grid.major.x = element_blank(),
panel.grid.minor = element_blank()) +
geom_rect(aes( xmin = playerid - .4, xmax = playerid +.4, ymin = 0, ymax = wealth)) +
scale_x_continuous(breaks = 1:NUMPLAYERS) +
coord_cartesian(xlim = c(0, NUMPLAYERS), y = c(0, 5 * INITWEALTH)) +
theme(axis.text.x = element_text(angle = 90, hjust = 1)) +
labs(x='players',y='dollars') +
facet_wrap( ~ histtype,ncol=1) +
theme(legend.position = "none")
p
#set options for the animation package. Need ImageMagick installed on your computer
animation::ani.options(nmax = ROUNDS,
convert = 'C:\Program Files\ImageMagick-7.0.6-Q16')
#save the movie
gganimate(p, "dollar_stacked.mp4", interval = .01)
Как видно, неравенство возникает даже при самом казалось бы безобидном сценарии. Поэтому необходимо следить за распределением финансов.
Останутся ли богатые вечно богатыми?
Математик Джордан Элленберг поясняет, что многие считают, будто при случайной раздаче все получат приблизительно поровну денег. На самом деле оказывается, что неравенство в распределении финансов появляется почти сразу же. Более того, оно сохраняется, пока люди продолжают раздавать друг другу деньги случайным образом.
Значит ли это, что в результате некоторые становятся богатыми и никогда не теряют своего высшего положения? Вовсе нет. Напротив, их благосостояние всё время меняется: каждый человек со временем то богатеет, то беднеет.
Таким образом, в долгосрочной перспективе все варианты распределения денег одинаково вероятны. Наблюдатели эксперимента смогут увидеть и ситуацию, в которой у одного человека в руках 9 901 доллар, а у прочих — по одному доллару, и распределение всех средств поровну, как в самом начале эксперимента.
Другие материалы по теме финансов и фондового рынка от ITinvest:
- Образовательные ресурсы ITinvest
- Аналитика и обзоры рынка
- Как определить наилучшее время для сделки на фондовом рынке: Алгоритмы следования тренду
- Как Big Data используют для анализа фондового рынка
- Поиск неэффективностей: Что нужно знать о создании стратегий для торговли на бирже
- Эксперимент: Использование Google Trends для прогнозирования обвалов фондового рынка
Автор: itinvest