December 24, 2008

今年的面试题中,涉及到随机过程(Stochastic Process)和马尔可夫链(Markov Chain)的题目很多也大多属于相对较难和较有意思的一类。下面从一条题目引开来:

Morgan Stanley的口算题:
抛硬币,第一次遇到连续两次正面朝上的时候停下来,问:抛的次数的期望N

解:
假设期望N次后终止,
  那么第一次如果抛出反面(T)那么就回到了前面的情况,即N+1,这个$latex P_1$是1/2
  如果前两次抛出了正反(HT)那么又回到开始的情况,即N+2,这个$latex P_{2_1}$是1/4
  如果前两次抛出了正正(HH)那么就已经停止了,即2,这个$latex P_{2_2}$也是1/4

那么综合上述:
$latex N=\frac{(N+1)}{2}+\frac{(N+2)}{4}+\frac{2}{4}$
解上面的方程得到:N=6,那么这个问题就解决了。

很容易想到的一个推广:

SinRain的笔算题:
抛硬币,第一次遇到连续n次正面朝上的时候停下来,问:抛的次数的期望N=f(n)

先用前面类似的方法:
那么第一次如果抛出反面(T)那么就回到了前面的情况,即N+1,这个$latex P_1$是1/2
如果前两次抛出了正反(HT)那么又回到开始的情况,即N+2,这个$latex P_2$是1/4
如果前三次抛出了正正反(HHT)那么又回到开始的情况,即N+3,这个$latex P_3$是1/8
..
如果前n次抛出了正...正反(H...HT)那么又回到开始的情况,即N+n,这个$latex P_{n_1}=\frac{1}{2^n}$
如果前n次抛出了正...正正(H...HH)那么就停止了,即此时n,这个$latex P_{n_2}$是$latex \frac{1}{2^n}$

那么综上所述:
$latex N=\frac{(N+1)}{2}+\frac{(N+2)}{4}+..\frac{(N+n)}{2^n}+\frac{n}{2^n}$
解这个方程,得到$latex N=f(n)=2(2^n-1)$
特别的,n=2时,N=6回到上面的答案。

--------------------------------------------------- 

这个题目说到底是个Markov Chain上的首达问题,下面开始简单介绍下MC. 然后给出一个我猜想的首达问题和物理中电路分析中的电势还有电流电阻的一个比较,我甚至觉得电路中的电子的流动就是Kind of MC. 很有趣的想法,我在床上想了很久,觉得很有意思。

Definition:
Markov Chain
$latex Pr( X_{n+1}=x \mid X_n=x_n, X_{n-1}=x_{n-1}, ...X_1=x_1)=Pr( X_{n+1}=x \mid X_n=x_n)$

说白了就是下一步的概率只和当前状态有关,而和如何到达这个状态无关。下面重点讨论使用比较多的MC,已知$latex X_n$为状态i,$latex X_{n+1}$到达状态j的概率(单步转移概率),用
$latex P_{ij}^{n,n+1}=P(X_{n+1}=j|X_n=i)$来表示。

$latex P_{ij}^{n,n+1}$是一个与n无关的变量,通常我们把所有的$latex \mathbb{P}=||P_{ij}||_{nn}$写成一个方阵,称之为“单步状态转移矩阵”

P=|P_00,P_01,P_02...|
  |P_10,P_11,P_12...|
  |P_20,P_21,P_22...|
  |....,....,.......|
  |P_i0,P_i1,P_i2...|
  |....,....,.......|

---------------------------------------------------
自然的,P矩阵n次方后就是n步状态转移矩阵了。一个显然的式子是:

$latex P_{ij}^n=\sum_{k=0}^{\infty}P_{ik}^rP_{kj}^s, \forall r+s=n$

如果$latex P^n$很容易求出来一般式子,那么首达问题就可以由定义求出来

$latex E(N(i,j))=\sum_{k=1}^{\infty}kP_{ij}^k\prod_{t=1}^{k-1}(1-P_{ij}^t)$
当然这个是个非常奔放的想法,偶尔题目很简单的时候可以用用:
比如这个:

抛硬币,第一次遇到连续两次抛的一样的时候停下来,问:抛的次数的期望N (答案为3)

一般情况下上上面的方法有些过于奔放了而做不出答案。假设有{X1,X2..Xn}个不同的状态,不妨假设Xn为终止态,从X1出发,这是个单入口单出口的首达问题。假设从Xi出发首达Xn的期望是Yi步,那么可以由下面的方程组来解决问题:),其中Y是一组列向量,且Yn=0;
Y=P'(Y+1),其中P'为将原单步转移矩阵的第n行替换为(0,0,0,...0) (亦即终点态)

继续用最开始的抛硬币的例子做个说明,所有可能的状态是:
X0: NULL;
X1: H; X2: T;
X3: HT; X4: TH; X5: HH; X6: TT;
X0->|X1->X3 |
    |  ->X5 | <--终点
    |       |
    |X2->X4 |
    |  ->X6 |

我们不妨只研究X3-X6的状态就可以了
转移矩阵P为
   3  4  5  6
3| 0 0.5 0 0.5 |
4| 0.5 0 0.5 0 |
5| 0.5 0 0.5 0 |
6| 0 0.5 0 0.5 |

| 0 0.5 0 0.5 | |Y3+1|  |Y3|
| 0.5 0 0.5 0 | |Y4+1|= |Y4|
| 0   0 0   0 | |Y5+1|  |Y5|
| 0 0.5 0 0.5 | |Y6+1|  |Y6|
注意到Y5=0解得: 
                |Y3|=|6|
                |Y4|=|4|
                |Y5|=|0|
                |Y6|=|6|
--------------------

故总的次数为:2+1/4(6+4+0+6)=6 (到达X3-X6的概率都一样都是1/4,前面都用了2步所以要加2)
那么一般的情况也解决了:
都是转化为一个多元的线性方程组来解. 更进一步的,还可以推广到多出口的问题:Xi,Xi+1..Xj都是终点。此外这个题目和电路分析中的电势分析很类似,所谓终止就是接地(V=0),然后已知了上部的电阻的分布,要求的是各个部分的电势。
电子在遇到分叉口时依照一定的概率选择跳到下一个路口,如果是有可能转移的,那么中间以导线相连,转移的概率越大,电阻越小。当源源不断的数以亿万计的电子流过电路时,就好比是Monte Carlo 中的随机simulation,从宏观上表现出来就是各个电路部分的电流大小不一样,并且并联电路上的电势差是一样的。
给个算例:
        C
 A┏━R━┳━R━┳━R━┳━R━┳━R━...
  ┃    ┃    ┃     ┃    ┃
  R     R     R     R     R
  ┃    ┃    ┃     ┃    ┃
 B┗━R━┻━R━┻━R━┻━R━┻━R━...
        D

求A-B的电阻,每一段电阻都是R,这个是个无限的问题,可以用类似前面的技巧来做:
设B为0态,那么A-B的电阻为X那么 C-D两点向右看也是个X,
那么X=R(R+X+R)/(R+R+X+R) 
得到$latex X=(\sqrt{3}-1)R$

总结下:1. 不用技巧的话,首达问题就转化为一个解线性方程组的问题
         2. 用点技巧的话,无限的问题可以转化为一个“无限的旅馆”问题
         3. 我觉得电子在导体内部各个节点的随机游动也好比是个MC问题,平稳后宏观表现就是使得电势差和路径无关(基尔霍夫定律)
下次写点Brownian motion 貌似这个在真实环境用的比较多。

顺便留道思考题,也是某知名公司的面试题:
有一个袋子里有4个不同颜色的球(更一般的有n个),每次操作取两个球,并且把后取出来的球染成前一个的颜色再把两个球放回袋子里。试问球的颜色将变成一种颜色的期望操作次数。

Tags: ,,.
December 23, 2008

因为前面有面了Watson Wyatt的武汉研究中心,最后final就跑到了武汉去看看。

没去之前,对武汉的城市的映像大抵是汪伪政权的大本营,日军的华中作战指挥中心,还有就是武汉大学很美,剩下来就是很浓重的墨水书写的“武汉”二字在斑驳的时光和老式播映机中上下抖动,昏黄而无声。

从飞机上看武汉时,由于已经是夜晚,只能看见底下川流不息的车流和路灯。大巴从光鲜的汉口开往武昌时,就已经落魄许多。由于四处在修高架,也凭添了几分混乱。在傅家坡下了车顺着中南路走了一会儿,街头和别处并无什么不同,只是公交车开的很奔放,并且所有的出租车后面顶着一个滚动放广告的牌子比较诡异。然后就打车去武大找CC同学了,当年的一个文学青年竟然去武大学了理论物理,现在又在考对外经贸的经济。聊了聊天觉得他和当年的区别不是很大,他倒是很坦诚的说在武大的这几年没什么特别大的变化,也没有一个关于未来的清楚的计划。然后去外面的小吃店一家家吃了吃,武大的校园已经让我觉得很可怕的大了,没想到第二天去的HUST让我完全崩溃的大。

第二天跑到慧谷时空,和几个老大们谈了谈,然后就是谈Offer了,不过还是基于前面已经有拿了Opera,所以还是Offer Letter带回来再说。和Office里面的人谈了谈,和Opera Solutions的人是完全不同的风格,更多的类似于以前在Alipay的感觉,有点大学生活的余音。而Opera则完全给你的是Professional Consultant的感觉,虽然人还是同一个人。然后看了看WW的Qin.Wang看的书单:《The Oxford guide to the financial modeling》,《Investments》,《连续时间金融》,《Stata》云云的,很多没怎么接触过。翻开一看,就是Stochastic Process, PDE, Time series 批上了一层外套。

下午和CC,CiCi,Panda,猩猩四个人在HUST边上小FB了一下,3年弹指一挥间。聊了很多高中的那些破事儿,我还是觉得NJU给了我们一个非常不错的平台,对比HUST,还是有点儿太工科了。不过Anyway,适合的才是最好的。HUST给我的唯一感觉就是太大了,然后吃饭啥的太便宜了。。

晚上去江边晃了晃,一个shame的事情居然遇到一个第二天一起回NJ的中年男人,细节就不说了反正太丢脸了。。

第二天正二八经的把武大逛了一小半圈儿,虽然没有樱花,虽然没见到美女,但是我宇宙无敌的想象力还是可以YY出一幅樱花美女图。。假设下面的图 春风和煦 蓝天白云 然后樱花飘飘 美女盈盈:恩,大体就是这么个情节。武大的校内有山,名曰珞珈山和狮子山,而下图实际是建在狮子山上,然则一般人只记得一个珞珈,所以一笼统的都叫珞珈山了。珞、珈二字都是美玉的意思。



总结下:武汉很旧很历史很原罪,武大很美很桃源还不错,其他的不做评论。

Tags: ,.
December 16, 2008

部分和序列,往往是我们关注的一种东西,例如下面的题目:

问题描述:给定一个含有 n 个元素的数列,元素有正有负,找出和最小的一组相邻的数。即给定 a[n],求 i,j 使得 a[i] + a[i+1] + ...+ a[j] 的和最小。

转化为和序列:S[1],S[2]...S[n],求$latex Min: S_{[j]}-S_{[i]}$,具体的可以参考Solrex的文章,这个问题给我们的愉悦主要体现在后来的min max 的转换上。
下面我想再举一个例子来说明如何做这类部分和序列问题

Problem Description:
一个拳击手在75天的赛季里,每天都要最少打一场比赛,但是整个赛季不能打超过125场比
赛。那么,我们可以证明,可以从赛季中选出连续的K天,使得这K天的比赛总场数是30场。

这个是个很有趣的问题,我们可以证明,不仅仅是30,甚至是所有小于等于30的场次都可以通过上面的方法选出来。

分析:
抽象成数学问题:

$latex X_{[k]}$ $latex \in$ $latex \mathbb{N}$,$latex X_{[k]}$ $latex \geq 1 $, $latex \sum_{k=1}^{75} X_{[k]}\leq 125$

Prove: Exist $latex i,j$ ($latex j \geq i$),S.T. $latex \sum_{k=i}^j X_{[k]} =30$

首先,这是个部分和序列的问题,如果要用累加这种相对朴素的方法直接求解部分和序列的问题会使问题变得复杂化。那么转化为和序列是个好主意。
令$latex S_{[i]}= \sum_{k=1}^i X_{[k]}$,那么就是要证明存在$latex i,j$,使得$latex S_{[j]}-S_{[i]}=30$;

下面就是这个题目精彩的地方了:构造抽屉,{1,31},{2,32},...{61,91}{62,92}..{90,120}{121}{122}{123}{124}{125},每个{}内为一个抽屉,共有65个抽屉,要从中选出75个数,必然有一个抽屉内的两个数被选出来了,哈,这不是最朴素的那种抽屉原理么。
所以问题得以解决。

反过来思考这个问题,还是有那么点意思的:-)
1. 部分和序列转化为和序列的差。
2. 巧妙的构造抽屉

下期预告:
马尔可夫过程的首达及其应用:-)

Tags: ,.
December 12, 2008

你知道21年有时候也挺快的
而且说实话 最近这半年很累很充实 很爽很愉快
充满了变数的生活 我变化挺快挺多的

在最近的一年里,尽管偶尔颓废,偶尔迷茫,但更多的时候在奋斗和通往奋斗的路上
照例感谢在一年里和我一起走过的朋友们
谢谢Nancy把我招进了Alipay这个大家庭,在去年的冬天能找到未来的一个方向
谢谢Fish从北京跑来看我 这永远是个蛮美丽的记忆
谢谢小六和小六他爸爸妈妈大妈妈,舅舅永远记得那一段过去,那一段故事
谢谢老男人、武律、骚骚、火星人还有师太,和你们在杭州拼房的日子很Friends
谢谢May、女儿和苏陕,那个生日实在太特别了,永远忘不掉,还有和May在苏堤上聊天的事儿。
谢谢文博、获鼎、YouXu、余舟、立著等学长,你们总是最好的榜样,特别是获鼎的经历实在是最好的鼓励。
谢谢SC姐姐给我很多的建议和激励,你是我心中永远的牛人姐姐。
谢谢以敖,总有点东西叫伟大不朽
谢谢舍友们,谢小宝,锅子,王叼存,夏男人,大傻,徐XX,王小弟,为三年浦口大学干杯
谢谢老同学们,Pan、老大、Tony、Anson、wmx、小绵羊、小米,风雨之后只剩真情
谢谢同事和领导们,马云让我觉得做人该有个梦、孙权:我就是有野心!、Alex:闷骚男,那是实力的体现。我们只是在为社会创造价值。老楚:我理解和支持你的决定。老向:年轻人就该有点想法。周公:你不妨这么想...马扎、婷婷、囧囧:杀人小分队的乱民们~ 一段迷乱的故事。洪钧:我觉得我挺理解你的。谢谢小白俪梅陪我去酒吧喝酒。
谢谢大辉白起摊开胸怀说话,我会做一个正确的决定的
谢谢后来的120的舍友,邵鸟你真是个很聪明的人。
谢谢偶然加入的ABBers,总是在平凡的经历中体现出感动,这段放肆摇曳的青春和辛苦mock的日子很可贵。
谢谢在Lilybbs上认识的各个ID和ID后面一个个熟悉或陌生的笑脸。
谢谢系里的老师和辅导员,尽最大的努力在为学生服务和做事。
谢谢该死的ZF,我就是要让你记住,我不对,不代表你就对了。
谢谢Everybody,在这一年里,进入我的生命或者离开。你们,就是我的历史;我,恰好很不会遗忘。
我就是那个骄傲有趣搞笑聪明顽固好强的SinRain~
So, Do you like me, now?

BTW:
Since everything is done, I gonna write something seriously now~

Tags: ,.