今天做到一道题,感觉里面一个结论有点意思,就到网上扒了篇证明(bushi)下来了。

知乎回答习惯,先抛结论,再给证明(大雾

结论:对于 \(n\) 个取值范围为 \([0,1]\) 的随机变量 \(x_1,x_2,\cdots,x_n\),其中第 \(k\) 大的值的期望为 \(\dfrac{k}{n+1}\)

证明:首先我们先列出式子来,枚举最大值 \(x\),那么

\[res=n\dbinom{n-1}{k-1}\int_0^1x^{k-1}·(1-x)^{n-k}·x\,\mathrm dx
\]

稍微解释一下,前面的系数 \(n\) 表示第 \(k\) 大可以是这 \(n\) 个变量中的任何一个,\(\dbinom{n-1}{k-1}\) 表示从其余 \(n-1\) 个数中选出 \(k-1\) 个比它小的方案数,由于是离散变量,所以出现相同值的概率为 \(0\),后面的积分就是枚举最大值,\(x^{k-1}\) 表示比它小的 \(k-1\) 个数的取值的概率,\((1-x)^{n-k}\) 即是比它大的部分,最后的 \(x\) 就是期望公式里对答案的贡献。

前面 \(n\dbinom{n-1}{k-1}\) 显然是定值,因此我们只用考虑后面的部分即可。

那后面那坨东西该怎么求呢?

前置知识:分部积分法

根据 \((u(x)v(x))'=u'(x)v(x)+u(x)v'(x)\) 可得 \(u(x)v'(x)=(u(x)v(x))'-u'(x)v(x)\)

两边同时积分可得:

\[\int_a^bu(x)v'(x)\,\mathrm dx=u(x)v(x)|_a^b-\int_a^bu'(x)v(x)\,\mathrm dx
\]

这就是著名的分部积分法。


考虑将分部积分法应用于这里,令 \(u(x)=(1-x)^{n-k},v(x)=\dfrac{1}{k+1}x^{k+1}\),那么 \(v'(x)=x^k\)

故我们有:

\[\begin{aligned}
&\int_0^1x^{k-1}·(1-x)^{n-k}·x\,\mathrm dx\\
=&\int_0^1x^{k}·(1-x)^{n-k}\,\mathrm dx\\
=&\int_0^1u(x)v'(x)\,\mathrm dx\\
=&u(x)v(x)|_0^1-\int_0^1u'(x)v(x)\,\mathrm dx\\
=&u(1)v(1)-u(0)v(0)-\int_0^1u'(x)v(x)\,\mathrm dx\\
=&-\int_0^1-(n-k)(1-x)^{n-k-1}\dfrac{1}{k+1}x^{k+1}\,\mathrm dx\\
=&\dfrac{n-k}{k+1}\int_0^1(1-x)^{n-k-1}x^{k+1}
\end{aligned}
\]

我们记 \(f(t)=\int_0^1x^t·(1-x)^{n-t}\,\mathrm dx\),那么上式可化为 \(f(t)=\dfrac{n-t}{t+1}f(t+1)\)

而显然 \(f(n)=\int_0^1x^n=\dfrac{1}{n+1}\)

简单递推一下即可得到 \(f(t)=\dfrac{\prod\limits_{i=1}^{n-t}i}{\prod\limits_{i=t+1}^{n+1}i}=\dfrac{(n-t)!t!}{(n+1)!}\)。

因此 \(ret=f(k)\times n\times\dbinom{n-1}{k-1}=\dfrac{(n-k)!k!}{(n+1)!}\times n\times\dfrac{(n-1)!}{(k-1)!(n-k)!}=\dfrac{k}{n+1}\),得证。

更高级的推法

又教我学会了一个新东西:\(\Gamma\) 函数和 \(B\)(Beta)函数,虽然不知道能不能派得上用场?

\(\Gamma\) 函数

伽马函数,又叫欧拉第二积分,它的定义如下:

\[\Gamma(x)=\int_0^{\infty}t^{x-1}e^{-t}\,\mathrm dt
\]

它还有一个等价的定义,不过感觉不是太重要罢:

\[\Gamma(x)=2\int_0^{\infty}t^{2x-1}e^{-t^2}\,\mathrm dt
\]

可以使用恒等式

\[\int_{-\infty}^{\infty}e^{-t^2}\,\mathrm dt=\sqrt{\pi}
\]

来验证。

它的推导如下:

考虑生成函数 \(F(x)=\dfrac{1}{1-x}\)

首先用离散形式将其展开可得 \(F(x)=\sum\limits_{i=0}^{\infty}x^i\)

其次考虑对其进行连续展开,根据 \(a^x\) 的不定积分为 \(\dfrac{a^{x}}{\ln a}+C\) 可得

\[F(x)=\int_0^{\infty}e^{-(1-x)t}\,\mathrm dt
\]

(u1s1 我一开始盯着这个式子看了很久,我原本的理解是设 \(f(t)=(e^{-(1-x)})^t\),那么上面的式子可以看作 \(f(t)\) 在 \(\infty\) 出的定积分,然鹅我一开始按不定积分的式子带,根据指数函数的积分公式 \(\int_0^tf(t)\,\mathrm dt=\dfrac{e^{-(1-x)t}}{-(1-x)}+C\),代入 \(\infty\) 得原式等于 \(0\)。。。。smg?大概是我积分没学好罢……这玩意儿是个定积分,而刚刚带的是不定积分,事实上如果代入 \(0\) 可得原式等于 \(-\dfrac{1}{1-x}\),而事实上 \(f(t)\) 在 \(0\) 处的定积分应当为 \(0\),也就是说上面式子里的常数 \(C=\dfrac{1}{1-x}\),所以刚刚算出来的 \(0\) 也应当是 \(\dfrac{1}{1-x}\))

考虑提一个 \(e^{-t}\) 出来:

\[F(x)=\int_0^{\infty}e^{-t}e^{xt}\,\mathrm dt
\]

把那 \(e^{xt}\) 展开成麦克劳林级数的形式:

\[F(x)=\int_0^{\infty}e^{-t}\sum\limits_{i=0}^{\infty}\dfrac{(xt)^i}{i!}\,\mathrm dt
\]

交换求和号并整理可得:

\[F(x)=\sum\limits_{i=0}^{\infty}\dfrac{\int_0^{\infty}e^{-t}x^t\,\mathrm dt}{i!}
\]

对比前后两项系数可得:

\[\int_0^{\infty}e^{-t}x^t\,\mathrm dt=x!
\]

由此可见,伽马函数与阶乘有着密切的联系,事实上,对于正整数 \(k\) 有 \(k!=\Gamma(k+1)\)

伽马函数还有一个非常神奇的公式:

\[\Gamma(1-x)\Gamma(x)=\dfrac{\pi}{\sin\pi x}
\]

由此可以证明著名等式:

\[\Gamma(\dfrac{1}{2})=\sqrt{\pi}
\]

(不过似乎也不知道有什么用)

贝塔函数

定义贝塔函数 \(B(x,y)\)(又叫欧拉第一积分)为:

\[B(a,b)=\int_0^1x^{a-1}(1-x)^{b-1}\,\mathrm dx
\]

也类似于第一个推导过程中的 \(f(t)\)。

它有递推式:

  • \(B(p,q)=\dfrac{q-1}{p+q-1}B(p-1,q)\)
  • \(B(p,q)=\dfrac{p-1}{p+q-1}B(p,q-1)\)

这个在证法一中就证过了。

贝塔函数最重要的一条性质是:

\[B(p,q)=\dfrac{\Gamma(p)\Gamma(q)}{\Gamma(p+q)}
\]

证明要正态分布,not for me,thx

回到我们要证明的命题来,我们要求 \(\int_0^1x^{k}·(1-x)^{n-k}\),即 \(B(k+1,n-k+1)\),公式直接往里带即可。

一道的一个小性质竟能引申出这么多东西来,神奇

参考文献:

关于 n 个 [0,1] 的随机变量第 k 小的期望值的更多相关文章

  1. n个随机变量中第k小值的期望

    Problem 有\(n\)个相互独立的取值在\([0,1]\)的随机变量,问其中第\(k\)小的变量期望是多少? Solution 之前pkuwc的神仙找我换友链,让我受宠若惊.. 我今天突然翻到他 ...

  2. EF Core 3.0 Preview 9 的2个小坑

    之前我们的数据库服务器使用的是 SQL Server 2008 R2 ,由于从 EF Core 3.0 Preview 6 开始不支持 UseRowNumberForPaging ,只能停留在 EF ...

  3. 微信小程序云开发-从0打造云音乐全栈小程序

    第1章 首门小程序“云开发”课程,你值得学习本章主要介绍什么是小程序云开发以及学习云开发的重要性,并介绍项目的整体架构,真机演示项目功能,详细介绍整体课程安排.课程适用人群以及需要掌握的前置知识.通过 ...

  4. YII 1.0 发表文章用到的小物件

    <?php $form = $this->beginWidget('CActiveForm',array('htmlOptions'=>array('enctype'=>'mu ...

  5. iReport 5.6.0 组件面板为空 get小技巧

    问题描述 本人使用的是iReport 5.6.0版本,正常安装,打开后,创建了一个报表实例,但是,菜单栏--> 工具--> 组件面板 为空.效果如下: 这就尴尬了,没有组件面板,还怎么绘制 ...

  6. 从0到1上线一个微信小程序

    0.0 前期准备 微信小程序的出现极大地降低了个人开发者微创业的门槛,不需要后端技术,不需要服务器和域名这些乱七八糟的前置操作,只需要懂得前端技术,就能发布一款属于自己的轻量级应用,简直是前端开发者的 ...

  7. 特定条件下批量解压文件改变编码,顺便修改.so.0找不到等一些小问题

    直接结论: 1.linux解压文件乱码: unzip -O GBK *.zip 2.linux改变文件内容编码: 安装enca,下载地址:https://github.com/nijel/enca/i ...

  8. unidac 6.0.1 与kbmmw 的一点小摩擦

    unidac 6.0.1  出来了,虽然支持sql server 直连等新特性,但是由于内部改动比较大, 导致与kmmmw 的集成起来存在有点小问题,就是如果数据库不是interbase 或者fire ...

  9. 教你在Yii2.0框架中如何创建自定义小部件

    本教程将帮助您创建自己的自定义小部件在 yii framework 2.0.部件是可重用的模块和用于视图. 创建一个小部件,需要继承 yii\base\Widget,覆盖重写 yii\base\Wid ...

随机推荐

  1. cassandra表中主键的类型

    cassandra表中主键的类型及区分? 一.类型及区分 二.参考文章 一.类型及区分 Cassandra的4种Key Primary Key 主键 Composite Key,Compound Ke ...

  2. 【UE4 C++】获取运行时间、设置时间流速、暂停游戏

    基于UGameplayStatics 获取运行时间 /** Returns the frame delta time in seconds, adjusted by time dilation. */ ...

  3. Machine learning(1-Introduction)

    1.What is machine learning Field of study that gives computers the ability to learn without being ex ...

  4. 常用JAVA API :String 、StringBuilder、StringBuffer的常用方法和区别

    摘要 本文将介绍String.StringBuilder类的常用方法. 在java中String类不可变的,创建一个String对象后不能更改它的值.所以如果需要对原字符串进行一些改动操作,就需要用S ...

  5. uvm_cookbook--DUT-Testbench Connections--Abstract-Concrete Class Connections

    抽象和具体class的连接 An alternative to using a virtual interface handle for DUT to UVM testbench connection ...

  6. 深入理解 Linux的进程,线程,PID,LWP,TID,TGID

    转载:https://www.linuxidc.com/Linux/2019-03/157819.htm 在Linux的top和ps命令中,默认看到最多的是pid (process ID),也许你也能 ...

  7. Python matplotlib numpy 曼德尔布罗特集合 曼德尔布罗特 B.Madelbrot

    import numpy as np import matplotlib.pyplot as plt def mandelbrot(h,w,maxit=20): y,x = np.ogrid[-1.4 ...

  8. linux 安装rabbitmq

    1.安装rabbitmq会依赖erlang.socat.unixodbc 下载 unixODBC-2.3.7.tar.gz ,创建路径/usr/local/unixODBC-2.3.7,解压到该路径下 ...

  9. 新手使用python以及pycharm看过来

    前言 随着互联网时代的进步,人类与计算机之前的沟通交流越来越便捷,自此交流的媒介--编程语言吸引力更多的人学习,今天我们就来谈谈当前市面上最火的编程语言 1.文件的概念 什么是文件夹.文件 其实是操作 ...

  10. VulnHub-[DC-8-9]-系列通关手册

    DC8-通关手册 DC-8是另一个专门构建的易受攻击的实验室,目的是在渗透测试领域积累经验. 这个挑战有点复杂,既是实际挑战,又是关于在Linux上安装和配置的两因素身份验证是否可以阻止Linux服务 ...