Имитация искусственной последовательности изменения состояния из подогнанной полумарковской модели в R
У меня есть последовательность поведенческих состояний (для одного движущегося животного), каждое из которых имеет соответствующую длительность, и я заинтересован в создании синтетической последовательности состояний, которая сохраняет свойства оригинала (в частности, вероятности изменения состояния и задержки распределение времени).
Тем не менее, предварительные исследования распределений времени пребывания показывают, что они не являются геометрически распределенными, поэтому я думаю, что мне следует подобрать полумарковскую модель.
Пакет R 'SemiMarkov' предоставляет приведенный ниже воспроизводимый пример того, как подогнать полумарковскую модель к наблюдаемой последовательности изменений состояния. Однако я не могу понять, как затем создать синтетическую последовательность изменений состояния из подобранного объекта - здесь, "fit1".
library(SemiMarkov)
data(asthma)
## Definition of the model: states, names, possible transtions and waiting time distributions
states_1 <- c("1","2","3")
mtrans_1 <- matrix(FALSE, nrow = 3, ncol = 3)
mtrans_1[1, 2:3] <- c("E","E")
mtrans_1[2, c(1,3)] <- c("E","E")
mtrans_1[3, c(1,2)] <- c("E","E")
## semi-Markov model
fit1 <- semiMarkov(data = asthma, states = states_1, mtrans = mtrans_1)
print(fit1)
Кстати, можно подогнать последовательность изменения состояния к обычной марковской модели (используя 'markovchainFit' в пакете 'markovchain'), а затем смоделировать синтетическую последовательность изменения состояния (используя 'rmarkovchain'), но, похоже, не будет очевидного способа сделать то же самое для полу- марковской модели.