Oscillations occur when there are negative eigenvalues in the stochastic transition matrix. The continous extension of each transformation then results in complex valued probabilites.
For a stocastic matrix, there is always one eigenvalue of 1, and all others fall between [-1, 1]. For a two state system, a negative eigenvalue results when P(A|A) + P(B|B) < 1
, where P(X|X)
is the self transition probabilities of each state.
Stochastic Matrix
┌ ┐
│ 0.5 0.9 │
│ 0.5 0.1 │
└ ┘
Eigenvalues
┌ ┐
│ 1 │
│ -0.4 │
└ ┘
Eigenvectors
┌ ┐
│ 0.6428571428571428 │
│ 0.35714285714285715 │
└ ┘
┌ ┐
│ 1 │
│ -1 │
└ ┘
The red line represents the space of real probabilities where P(A) + P(B) = 1
. The green line represents the asymptotic eigenvector corresponding to eigenvalue 1.
First install rust and cargo.
cargo run (-- --help)
Outputs to plot.svg
.