一类重要的随机过程,它的原始模型马尔可夫链,由俄国数学家Α.Α.马尔可夫于1907年提出。人们在实际中常遇到具有下述特性的随机过程:在已知它所处的状态的条件下,它未来的演变不依赖于它以往的演变。这种已知“现在”的条件下,“将来”与“过去”独立的特性称为马尔可夫性,具有这种性质的随机过程叫做马尔可夫过程。荷花池中一只青蛙的跳跃是马尔可夫过程的一个形象化的例子。青蛙依照它瞬间或起的念头从一片荷叶上跳到另一片荷叶上,因为青蛙是没有记忆的,当所处的位置已知时,它下一步跳往何处和它以往走过的路径无关。如果将荷叶编号并用X0,X1,X2,…分别表示青蛙最初处的荷叶号码及第一次、第二次、……跳跃后所处的荷叶号码,那么{Xn,n≥0} 就是马尔可夫过程。液体中微粒所作的布朗运动,传染病受感染的人数,原子核中一自由电子在电子层中的跳跃,人口增长过程等等都可视为马尔可夫过程。还有些过程(例如某些遗传过程)在一定条件下可以用马尔可夫过程来近似。
感觉就是前后无关。
某游戏有一种稀有武器——屠龙刀,屠龙刀可以强化到10级(初始1级),对应的强化规则如下:
等级成功等级失败等级成功概率失败概率
求得到一把+10的屠龙刀所需的强化次数。
状态转移矩阵:
第一行的1~10代表抵达状态,第一列的1~10代表出发状态
· 如图第2行第3列的值0.7,表示的是:从状态1→状态2的概率是0.7(强化成功事件),状态1→状态1的概率是0.3(强化失败事件)
· 保证每一行的概率之和为1
· 该矩阵表示每次强化只有成功和失败退回到指定等级这2种事件,可自行定义升级暴击等事件(有很小几率从1升到3之类)
import random
p=[70,60,50,40,30,25,20,15,10]
lv2=[1,1,1,2,3,4,5,6,7,10]
total=0
for i in range(10000):
lv=1
trycount=0
while lv<10:
if random.randint(1,100)<=p[lv-1]:
lv+=1
trycount+=1
else:
lv=lv2[lv-1]
trycount+=1
total+=trycount
print total/10000