Functions for stochastic matrix modifications.
teleport(teleport_prob = 0.15)
vote_equal(stoch)
vote_self(stoch)
teleport_prob | Probability of 'teleportation'. |
---|---|
stoch | Input stochastic matrix. |
teleport()
returns a modifier function.
vote_equal()
and vote_self()
are modifier functions and return modified
version of input stochastic matrix.
Modification logic behind teleport()
assumes that at each step
of Markov chain (described by column-stochastic matrix) the decision is made
whether to change state according to stochastic matrix or to 'teleport' to
any state with equal probability. Probability of 'teleport' is
teleport_prob
. This modification is useful because it ensures
irreducibility of stochastic matrix (with teleport_prob
in (0; 1)).
Note that in order to obtain modifier one should call function
teleport()
with some parameter.
vote_equal()
and vote_self()
modify columns with elements only equal to
0. The former fills them with 1/nrow(stoch)
and the latter changes only the
respective diagonal element to 1. This is equivalent to jump to any state
with equal probability and to stay in the current state respectively.
#> [,1] [,2]
#> [1,] 0.5 0.33
#> [2,] 0.5 0.67
vote_equal(input_stoch)#> [,1] [,2]
#> [1,] 0.5 0.3
#> [2,] 0.5 0.7
vote_self(input_stoch)#> [,1] [,2]
#> [1,] 1 0.3
#> [2,] 0 0.7