inputted at 504 these may be stimuli classified as events as previously described the inputs are processed at the stimuli processor 508 this may involve looking up values for calculation of parameters a and b in a lookup table as has been previously described in connection with fig2 values for the parameters a and b are output by the stimuli processor and are stored in alpha and beta registers 510 the current probabilities for each of the possible transitions are stored in the state matrix buffer 518 that is probability p 11 as shown represents the probability of staying in state 1 p 12 represents the probability of a transition from state 1 to state 2 and so on a matrix processor 514 uses the probabilities from the state matrix buffer 518 and the alpha and beta registers to project an active state at a future time as indicated by the time stored in solution time register 512 that is rather than using a monte carlo simulation as illustrated in fig3 a and 3b the matrix processor uses array processing to either obtain powers of a matrix or solve simultaneous linear equations to determine the probability of being in each possible state the matrix processor 514 stores its results in state register 516 that is the state register 516 stores the probability for each state that the state is active after the number of computational iterations as determined from solution time register 512 output block 520 selects an active state for the time defined in solution time register 512 using the probabilities.