我如何分析地证明随机分配金额会导致指数分布(例如收入和财富)?


36

《科学》杂志的当前文章中,提出了以下建议:

假设您将5亿的收入随机分配给10,000人。只有一种方法可以让每个人平均获得50,000个份额。因此,如果您随机分配收入,则极不可能实现平等。但是,有无数种方式可以给少数人很多现金,而给许多人一点钱甚至没有钱。实际上,考虑到所有可以分配收入的方式,大多数方法都会产生指数分布的收入。

我已经使用以下R代码(似乎可以肯定结果)完成了此操作:

library(MASS)

w <- 500000000 #wealth
p <- 10000 #people

d <- diff(c(0,sort(runif(p-1,max=w)),w)) #wealth-distribution
h <- hist(d, col="red", main="Exponential decline", freq = FALSE, breaks = 45, xlim = c(0, quantile(d, 0.99)))

fit <- fitdistr(d,"exponential")
curve(dexp(x, rate = fit$estimate), col = "black", type="p", pch=16, add = TRUE)

在此处输入图片说明

我的问题
我该如何分析证明结果分布确实是指数的?

附录
感谢您的回答和评论。我考虑了这个问题,并提出了以下直观的推理方法。基本上会发生以下情况(请注意:过分简化):您需要沿着数量去扔(偏)硬币。每次得到例如正面的时候,就除以额。您分发结果分区。在离散情况下,抛硬币遵循二项式分布,分隔物是几何分布的。连续类似物分别是泊松分布和指数分布!(通过相同的推理,从直觉上也很清楚为什么几何分布和指数分布具有无记忆特性-因为硬币也没有记忆)。


3
如果您一钱一分地分发,有很多方法可以平均分配它们,还有许多几乎可以平均分配的方法(例如,几乎是正态分布,平均数为,标准差接近22450000224
亨利

@亨利:您能否再介绍一下此过程。特别是“一对一”是什么意思?也许您甚至可以提供您的代码。谢谢。
vonjd 2014年

冯:从5亿枚金币开始。独立地,随机地在概率相等的一万个个体之间分配每个硬币。将每个人获得多少硬币加起来。
亨利

@亨利:最初的说法是,大多数分配现金的方​​法都会产生指数分配。分发现金的方式和分配硬币的方式不同构,因为只有一个方法来分发$之间10,000人5亿均匀(给每个$ 50,000),但也有5亿!/((50,000!)^ 10,000)的方式向10,000人中的每人分发50,000个硬币。
supercat 2014年

1
@Henry在最上面的注释中描述的场景中,从一开始就设置了每个人都有相等的获得硬币的可能性。这种情况有效地赋予了正态分配巨大的权重,而不是平等地考虑分配硬币的不同方式。
higgsss 2014年

Answers:


27

为了简化问题,让我们考虑每个人的份额的允许值是离散的(例如整数)的情况。同样,也可以想象将“收入轴”划分为等距的间隔,并通过中点近似落入给定间隔的所有值。

XsxsNxsns

C1({ns})snsN=0,
C2({ns})snsxsX=0.

注意,划分份额的许多不同方法可以表示相同的分布。例如,如果我们考虑将$ 4分配给两个人,将$ 3分配给Alice,将$ 1分配给Bob,反之亦然,则两者的分配均相同。由于划分是随机的,因此以最大数量的相应方式进行份额划分的分布最有可能出现。

W({ns})N!sns!,
lnWWln
lnWns=λ1C1ns+λ2C1ns=λ1+λ2xs,
λ1,2
lnn!nlnnn,
dlnn!dnlnn.
lnWnslnns.
nsexp(λ1λ2xs),
N=snssexp(λ1λ2xs)1Δx0exp(λ1λ2x)dx=1λ2Δxexp(λ1),
Δx
X=snsxssxsexp(λ1λ2xs)1Δx0xexp(λ1λ2x)dx=1λ22Δxexp(λ1).
exp(λ1)=N2ΔxX,
λ2=NX.
lnWλ1C1λ2C2C1,2nslnW
2lnWns2=1ns<0,
2lnWnsnr=0(sr).

W({ns})W({ns})ns1ns

N1023


1
谢谢,请看看Glen_b的答案。这与您的答案一致吗?
vonjd 2014年

2
@vonjd不客气!我认为他的回答与我的一致。在我看来,他在以下意义上类似于泊松过程:考虑“平均时间间隔”为50,000,并计数10,000个事件的泊松过程。然后,平均“总时间间隔”为50,000 x 10,000 = 5亿。
higgsss 2014年

2
@vonjd我更新了答案。最值得注意的是,我添加了讨论,条件是我们通常观察到的分布接近最可能的分布。
higgsss 2014年

2
在考虑离散情况时,观察T事物可以在N个人之间划分((N + T-1)选择(N-1))方式是否有帮助?如果第一人称收到的东西,则可以分配剩余部分的方式为((N + Tf-2)选择(N-2));f的值从0到N的总和就是分配所有内容的总数。
supercat

1
TN,ff(N+Tf2)(N2)=(N+Tf2)!/(N2)!/(Tf)! (N+Tf2)!/(Tf)!(Tf)N2TN2e(N2)f/T

17

实际上,您可以证明它实际上不是指数的,几乎是微不足道的:

500500

但是,不难发现,对于您的均匀间隙示例来说,它应该接近指数。

考虑一下泊松过程 -事件沿某个维度随机发生。每间隔时间的事件数具有泊松分布,并且事件之间的间隔是指数的。

如果采用固定间隔,则泊松过程中属于该间隔的事件将均匀分布在该间隔中。看这里

[但是,请注意,由于间隔是有限的,因此您根本无法观察到比间隔长度更大的间隙,并且几乎不可能有那么大的间隙(例如,考虑单位间隔-如果看到的间隙为0.04和0.01,您看到的下一个间隙不能大于0.95)。]

n

nn+1n

更具体地说,任何在Poisson过程上放置的间隔中出现的间隙都有机会通过运行到间隔的末尾而被“审查”(有效地比原本应缩短的时间缩短)。

在此处输入图片说明

较长的间隙比较短的间隙更有可能这样做,并且间隔中的间隙越大,意味着平均间隙长度必须减小-越短的间隙。这种被``切断''的趋势将比长的间隙更倾向于影响较长的间隙的分布(而且限制在间隔范围内的任何间隙都不可能超过间隔的长度-因此间隙大小的分布应平稳地减小整个间隔的大小设置为零)。

在该图中,末端的较长时间间隔已缩短,开始时的较短时间间隔也较短。这些影响使我们偏离了指数性。

n

n

这是n = 2时间隙分布的模拟:

在此处输入图片说明

不是很指数。

n1n+1

在此处输入图片说明

exp(21x)

在此处输入图片说明

n=10000


2
因此,为了正确理解您的意思:您是说它不是指数的?!higgsss证明了它是指数的!
vonjd 2014年

3
让我引用我的回答:(i)“您可以证明它实际上不是指数的”,但是(ii)您所看到的均匀间隙“ ...它必须接近指数” ...“只要n不为太小。” ...不清楚吗?
Glen_b 2014年

5
nsexp(λ1λ2xs)

2
我认为这个答案是解决问题的好方法,值得更多的批评。但是,恐怕与泊松过程的类比如何工作(例如,“时间”对应什么)可能看起来不清楚。您愿意提供更多细节吗?
higgsss 2014年

3
@higgsss我稍微改了一下(删除了对时间的引用),添加了一些细节和链接。我可能会在以后添加更多讨论。如果您有任何具体建议,我将有兴趣进一步改善我的答案。
Glen_b 2014年

8

假设钱是无限可分的,那么我们可以处理实数而不是整数。

t=500000000n=10000

p(x)=n1t(1xt)n2
0xt
P(Xx)=1(1xt)n1.

XttXnn1n=2n=1

nnt(1ym)mexp(y)m


8

说“假设您将5亿的收入随机分配给10,000人”并不能完全回答这个问题。有许多不同的随机过程可用于将固定数量的钱分配给一定数量的人,并且每个人对于所得的分配都有自己的特征。这是我可以想到的三个生成过程,以及每个过程所创造的财富分配。

library(MASS)

w <- 500000000 #wealth
p <- 10000 #people

方法1,由OP发布:

从[0,w)中均匀地随机选择'p'个数字。排序这些。在前面附加“ 0”。分发由此列表中连续元素之间的差异表示的美元金额。

d <- diff(c(0,sort(runif(p-1,max=w)),w)) #wealth-distribution
h <- hist(d, col="red", main="Exponential decline", freq = FALSE, breaks = 45,
     xlim = c(0, quantile(d, 0.99)))
fit <- fitdistr(d,"exponential")
curve(dexp(x, rate = fit$estimate), col = "black", type="p", 
      pch=16, add = TRUE)

均匀间隔休息

方法2:

从[0,w)中随机选择均匀的'p'数字。考虑这些“权重”,因此“ w”在此阶段实际上并不重要。标准化权重。分发由与每个权重对应的“ w”的分数表示的美元金额。

d <- runif(p,max=w) #weigh-distribution
d <- d/sum(d)*w #wealth-distribution
h <- hist(d, col="red", main="pretty uniform", freq = FALSE, breaks = 45, 
          xlim = c(0, quantile(d, 0.99)))

重定重量

方法3:

以“ p” 0开头。w次,在其中之一上加1,随机选择均匀。

d <- rep(0, p)
for( i in 1:5000000){ ## for-loops in R are terrible, but this gives the idea.
    k <- floor(runif(1, max=p)) + 1    
    d[k] = (d[k] + 1)
}
h <- hist(d, col="red", main="kinda normalish?", freq = FALSE, breaks = 45,
          xlim = c(0, quantile(d, 0.99)))

迭代美元


4

让我补充一下您的附录。

p(x)=N1X(1xX)N2,
NX

Mm

p(m)=N1M+1j=0N3(1mMj)N2.
MNN

N

但是,执行错误分析似乎并不简单,因为在这种情况下,不同的采样不是独立的。他们必须求和总计,第一人称获得的金额会影响第二人称的概率分布,依此类推。

我以前的答案没有遇到这个问题,但是我认为这将有助于解决该问题。


3

良好的理论分析由被赞成的答案完成。但是,这是我为什么分布呈指数形式的简单,经验性观点。

当您随机分配钱时,让我们考虑您一次一付。设S为原始和。

对于第一个人,您必须在0到S之间选择一个随机数。因此,平均而言,您将选择S / 2并保留S / 2。

对于第二个人,您将在0和平均S / 2之间随机选择。因此,平均而言,您将选择S / 4并保留S / 4。

因此,从根本上讲,您每次都会将总和一分为二(从统计上来说)。

尽管在实际示例中您不会将值连续减半,但是这表明了为什么人们应该期望分布呈指数形式。


3
您的算法往往会给第一人比其他任何人更多的钱。还有其他方法没有这种偏见。
亨利

@Henry您还将如何开始分享这些钱?您必须从某人开始。而当您这样做时,您就可以拥有全部的资产。给他一个随机分数实际上意味着从总和中随机选择。不能说拥有“第一个人”的假设是错误的,因为否则共享金钱的人会简单地将总和除以男性人数,因为他事先知道有多少人。那只是我的观点:当您说“随机”分配钱时,只会有一个人得到更多钱
Bogdan Alexandru

Bogdan Alexandru:我的算法(另一个答案)的特点是,无论是首先选择,中间选择还是最后选择,每个人的分布都是相同的。它还对应于整个空间的均匀密度,该密度受分配的总量约束。
亨利
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.