Как решить матрицу большой вероятности цепи Маркова с двумя серверами в Python? - PullRequest
0 голосов
/ 23 декабря 2019

Я пытаюсь создать матрицу перехода цепочки Маркова с двумя серверами, однако инициализация, похоже, постоянно идет не так. P [i] [j] выдает ошибку с неопределенным [i] и неопределенным [j], в журнале он выдает: локальную переменную 'i', указанную перед присваиванием. У кого-нибудь есть идеи, как это решить?

import numpy as np

k = 1000
N = 15000
Lambda = 3
Mu1 = 196
Mu2 = 300
c = 2
P = []

def get_transition_matrix(
    c,
    N,
    Lambda,
    Mu1,
    Mu2
):

P[i][j] = np.zeros((N + 1, N + 1))

for i in range(N+1):
    for j in range(N+1):

        if i > 0 and 0 < j < N: 
            P[i][j] = 0

        if j == N and i == 0: 
            P[i][j] = 0.5

        if i == 0 and N > j > 0:
            P[i][j] = ((Mu1* P[0][j-1]) + (Mu2 * P[0][j+1]))/ (Lambda + Mu2)              

return P[i][j]

P[i][j] = get_transition_matrix(c, N, Lambda, Mu1, Mu2)
print(P[i][j])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...