赞
踩
# -*- coding: utf-8 -*-
import numpy as np
from random import random
#转移矩阵
trans_matrix = np.array(
[[0.5 , 0.1 , 0.25 , 0.05],
[0.15 , 0.5 , 0.2 , 0.05],
[0.1 , 0.2 , 0.5 , 0.4],
[0.25 , 0.2 , 0.05 , 0.5 ]])
#数据
dt = np.array([[0] , [1] , [0] , [0]])
#进行转换
res = np.dot(trans_matrix,dt)
res = np.dot(trans_matrix , res) #50次
'''
#执行50次后,基本稳定
array([[ 0.22720144],
[ 0.21947408],
[ 0.31993815],
[ 0.23338634]])
'''
#真实模拟
#状态计数器, 四个数分别代表停留在此状态的次数
cnt_list = [0 , 0 , 0 , 0] # 0 1 2 3
#初始状态 0 1 2 3 随意
origin = 2
#当前状态设为初始状态
now = origin
cnt = 0
while True :
#进行1000000次状态转移
cnt += 1
if cnt > 10000
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。