第五章——《概率分析与随机算法》

    这章看得稀里糊涂的,自己感觉没弄懂,去网上看了看别人写的博客。觉得人家写的很好,自己看着有点豁然开朗的感觉。

下面我附上人家的链接地址:

点击打开链接


我自己也就按着人家的思路写写吧,主要算是让自己能够更好的理解这里的内容


这一章是是从雇佣问题开始的:假设要雇佣一名新的助理,然后要面试每个人要花费一笔费用,雇佣助理要话更多的钱,假设当前你面试的应聘者比当前助理优秀,你就辞退当前的助理去聘用新的助理。

要得到面试的费用,我们一部分是面试花的钱,另外一部分则是真正雇佣花费的钱


概率分析:

事实上,我们既不能得知应聘者出现的顺序,也不能控制这个顺序,因此我们使用概率分析。概率分析就是在问题的分析中使用概率技术。

为了使用概率分析,必须使用关于输入分布的知识或者对其做假设,然后分析算法,计算出一个期望的运行时间。这个期望值通过对所有可能的输入分布算出。

存在的问题:

    有些问题,我们对所有可能的输入集合做某种假设。对于其他问题,可能无法描述一个合理的输入分布,此时就不能使用概率分析方法。
在雇佣问题中,可以假设应聘者是以随机顺序出现的。假设可以对任何两个应聘者进行比较并确定哪个更优;换言之,在所有的应聘者之间存在这一个全序关系。
因此可以使用从1到n的唯一号码来标志应聘者的优秀程度。用rank(i)来表示应聘者i的名次。这个有序序列<rank(1),rank(2),..., rank(n)>是序列<1,2,...,n>的一个排列。说应聘者以随机的顺序出现,就等于说这个排名列表是1到n的n!中排列中的任何一个,每种都以相等的概率出现。
   随机算法
    在许多情况下,我们对输入分布知识知之甚少;即使知道关于输入分布的某些信息,也无法对这种分布建立模型。然而通过使一个算法中的某些部分的行为随机化
,就常常可以利用概率和随机性作为算法设计和分析的工具。
    比如在雇佣问题中,如果雇佣代理给我们一份应聘者的名单,每天我们随机地挑选一个应聘者进行面试,从而确保了应聘序列的随机性。
更一般地,如果一个算法的行为不只有输入决定,同时也由随机数生成器所产生的数值决定,则称这个算法是随机的
	
   
  指示器随机变量

   为了分析包括包括雇佣分析在内的许多算法,我们将使用指示器随机变量,它为概率和期望之间的转换提供了一个便利的方法,给定一个样本空间S和时间A,那么事件A对应的指示器随机变量
        1 如果A发生
Xa =  0 如果A没有发生
E[Xa] = Pr{A}
利用指示器随机变量分析雇佣问题:
   假设应聘者以随机的顺序出现,令X作为一个随机变量,其值等于雇佣一个新的办公室次数。那么 E[X] = ∑xPr{X=x},但这一计算会很麻烦。
   我们定义n个和每个应聘者是否被雇佣对应的变量,Xi为对应于第i个应聘者被雇佣这个事件的指示器随机变量。有X=X1+X2+...+Xn。
   E[Xi] = Pr{Xi} = 1/i,因为应聘者是随机出现的,所以第i个应聘者比前面i-1个优秀的概率是1/i。
   因此E[X] = 1+1/2+1/3+...+1/n = lnn。

     概率分析与随机随机算法:

    在雇佣问题中,如果应聘者是以随机顺序出现的话,雇佣一个新的办公室助理的期望次数是lnn。这个算法是随着输入的变化而变化的。对于某个特定的输入,它总是会产生固定的雇佣次数。这样就存在昂贵的输入,不贵的输入和适中的输入。如果先对应聘者进行随机排列,此时随机发生在算法上而不是发生在输入分布上。每次运行这个算法,执行依赖于随机的选择,而不是依赖于输入。这就是随机算法和概率分析的区别。
     这章看得很水,以后有机会看到其他内容再回头来看看吧
     
	

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值