Projecteuler (280) Ant and seeds - 拼圖

Table of Contents



剛剛想到所有期望值形式上的算法。還是以三乘三為例 abc
def
 ghi

馬可夫矩陣 起始狀態矩陣 (以b為例)
A= S=
0 1/3 0 1/3 0 0 0 0 0 a 0
1/2 0 1/2 0 1/4 0 0 0 0 b 1
0 1/3 0 0 0 1/3 0 0 0 c 0
1/2 0 0 0 1/4 0 1/2 0 0 d 0
0 1/3 0 1/3 0 1/3 0 1/3 0 e 0
0 0 1/2 0 1/4 0 0 0 1/2 f 0
0 0 0 1/3 0 0 0 1/3 0 g 0
0 0 0 0 1/4 0 1/2 0 1/2 h 0
0 0 0 0 0 1/3 0 1/3 0 i 0

在程式的例子中,每到終點(這裡以h為例)的機率不為零時,便

1.乘上目前步數 2.加到期望值 3.然後再將i 歸零。

事實上在3x3或5x5的例子中,零與非零輪流出現,因此這些操作每兩次就得進行一次。

例如第一次是取 (A^2)S 結果中的 h = 1/12

[POINT] 只把h歸零而其他機率不變的方法是乘上矩陣E (E for Elimination)

E=
0 1/3 0 1/3 0 0 0 0 0 a
1/2 0 1/2 0 1/4 0 0 0 0
0 1/3 0 0 0 1/3 0 0 0 .
1/2 0 0 0 1/4 0 1/2 0 0 .
0 1/3 0 1/3 0 1/3 0 1/3 0 .
0 0 1/2 0 1/4 0 0 0 1/2
0 0 0 1/3 0 0 0 1/3 0
0 0 0 0 0 0 0 0 0 h
0 0 0 0 0 1/3 0 1/3 0 i


跳結論,b→i的期望值
= 2 (A^2)S + 4 (AE)(A^2)S + 6 (AE)^2 (A^2)S + ... 即

__∞

/ (2n+2) (AE)^n (A^2)S 的i那一項
 ̄ ̄n=0

然後這是個無窮級數 令原式=EXP, AE= P, (A^2)S = S'


EXP /2 = (Σ n P^n + Σ P^n) (A^2)S

_1 2 _1
=[ ((I-P) ) P + (I-P) P ] (A^2)S 媽呀,我竟然瘋到在PTT打數學式。

我們要的答案還是i那一項
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

這樣應該就可以直接算每種狀態的期望值(精確,還一定是有理數),然後isoneval大

的125X ......管他多少種,只要能有效列舉就一定能算出來。

不過我手邊沒有矩陣運算的工具XD WOW 25階方陣耶,我連四階以上反矩陣怎麼算都忘了

先在這裡掉隊啦。不知道utomaya大有沒有進展~~~




--

All Comments

Genevieve avatarGenevieve2010-03-02
沒耶 沒學過馬可夫鏈 這題太難了 我已經放棄了
Vanessa avatarVanessa2010-03-07
不過我看到有人在題目po出後兩小時內就解出來了
他應該用的不是這方法
Regina avatarRegina2010-03-11
剛看了一下 好像最快的人是45分鐘內解出來
是個英國佬 PE裡真的是一堆怪物級的人
Isabella avatarIsabella2010-03-11
isnoneval po的解法就是正解了,這篇方向也對
Carol avatarCarol2010-03-15
wrongbook也是用scipy 解的,方法同 isnoneval
Oscar avatarOscar2010-03-17
你進到論壇了嗎?
Edith avatarEdith2010-03-18
所以你已經解出來了? 真厲害
Ethan avatarEthan2010-03-22
因為這題對 python 來說,比較容易一點
Franklin avatarFranklin2010-03-27
嗯 沒錯 scipy好像是python的東西 C++沒有這東西
Megan avatarMegan2010-03-31
嗯 原來你也有在玩PE
Franklin avatarFranklin2010-04-05
暑假來研究python好了 又強大又是OpenSource。
Edith avatarEdith2010-04-08
鴨皇拜托教我python>///<
Olive avatarOlive2010-04-12
你現在才知道他是人名喔 他在計算機科學領域中很有名
Olive avatarOlive2010-04-15
我記得PE的論壇也有談到他
George avatarGeorge2010-04-20
他的 TAOCP 可是資工人的聖經呢 XD
Daniel avatarDaniel2010-04-24
後記:所謂無窮級數的"巧妙方法"其實是行不通的,Why?
Kumar avatarKumar2010-04-25
因為P一定是singular方陣 Orz 祝賀utomaya解出> <