1. A method for analyzing a hidden dynamic, the method comprising: acquiring discrete observations, each discrete observation having an observed value selected from two or more allowed discrete values; constructing a factorial hidden Markov model (FHMM) relating the discrete observations to a plurality of hidden dynamics, a contribution of the state of each hidden dynamic to the discrete observation being represented in the FHMM as an observational parameter which scales at least one nominal parameter which is derived from a nominal distribution of the observations; inferring states of the hidden dynamics from the discrete observations based on the FHMM; and outputting information corresponding to at least one inferred state of at least one of the hidden dynamics.