Marmote Core
The project aims at realizing the prototype of a software environment dedicated to modeling with Markov chains.
|
Markov Chain class. More...
#include <markovChain.h>
Public Member Functions | |
markovChain (int sz, timeType t) | |
Simple constructor for the Markov chain from the size. More... | |
markovChain (transitionStructure *tr) | |
Constructor for the Markov chain using a transition structure. More... | |
markovChain (string format, string param[], int nbreParam, string modelName, bool isAbstract) | |
Constructor for Markov chains from files in various formats. In the abstract form, the object just stores the name(s) of the files that define the mode. In the non-abstract (concrete) form, the chain is instantiated in the memory with a concrete transition structure. Only the ERS, PSI and Xborne formats are supported at this time for concrete chains. More... | |
virtual | ~markovChain () |
Standard destructor. The generator and the initial distrib are destroyed. More... | |
int | stateSpaceSize () |
Read accessor to get the number of states in the state space of the Markov chain. More... | |
transitionStructure * | generator () |
Read accessor to get the value of _generator which is a transitionStructure. More... | |
void | setInitDistribution (discreteDistribution *d) |
Write accessor to set the value of _initDistribution which is a discreteDistribution. More... | |
void | setGenerator (transitionStructure *tr) |
Write accessor to set the value of _generator which is a transitionStructure. More... | |
Distribution * | read () |
Method(s) for deserializing Distribution from Xborne file (.pi). More... | |
void | setFormat (string format) |
Utility to set the value of _format. More... | |
void | setModelName (string modelName) |
Utility to set the value of _modelName. More... | |
void | setAbstractNbre (int abstractNbre) |
Utility to set the value of _abstractNbre. More... | |
void | setAbstract (string abstract[]) |
Utility to set the value of the table containing names related to the model: file names, extensions etc. More... | |
int | abstractNbre () |
Utility to get _abstractNbre. More... | |
string | modelName () |
Utility to get _modelName. More... | |
string | format () |
Utility to get _format. More... | |
void | abstract () |
Utility to display the value of the table _abstract[]. More... | |
virtual simulationResult * | simulateChain (double tMax, bool Stats, bool Traj, bool withIncrements, bool Print) |
Simulates the evolution of a Markov Chain using the PSI program. This is a front-end function to both discrete-time and the continuous-time simulators. More... | |
virtual simulationResult * | simulateChainDT (int tMax, bool stats, bool traj, bool trace) |
Simulates the evolution of a discrete-time Markov Chain. More... | |
virtual simulationResult * | simulateChainCT (double tMax, bool stats, bool traj, bool withIncrements, bool trace) |
Simulates the evolution of a continuous-time Markov Chain. More... | |
simulationResult * | simulatePSI (int tMax, bool stats, bool Traj, bool Print) |
Simulates the evolution of a Markov Chain. This is a front-end function to the discrete-time simulator. For continuous time, the PSI simulator does not allow to control the simulation horizon. The effect of "Print" is to be handled in the specific simulation function, not here. More... | |
virtual Distribution * | stationaryDistribution (bool progress) |
Entry point for methods Computing the stationary distribution of chains using the iterative method. More... | |
virtual Distribution * | stationaryDistributionCT (bool progress) |
Computing the stationary distribution of a CTMC using uniformization and the iterative method. More... | |
virtual Distribution * | stationaryDistributionDT (bool progress) |
Computing the stationary distribution of a DTMC using uniformization and the iterative method. More... | |
Distribution * | stationaryDistributionGthLD () |
Entry point for methods computing stationary distributions using the GTH method for solving the linear system. More... | |
Distribution * | stationaryDistributionSOR () |
Entry point for methods computing stationary distributions using the SOR method for solving the linear system. More... | |
simulationResult * | stationaryDistributionSample (int nbSamples) |
Methods to sample from the stationary distribution using backwards coupling. The result is returned in a simulationResult object, but the interpretation is different: it does not represent trajectories. Here, "state" entries are the measured states, and "time" entries are the measured coupling time. More... | |
Distribution * | hittingTimeDistribution (int iState, bool *hitSetIndicator) |
Entry point for methods computing the distribution of the hitting time (first entry times) from some state to some set of states. More... | |
int * | simulateHittingTime (int iState, bool *hittingSet, int nbSamples, int tMax) |
Obtain samples of hitting times through Monte Carlo simulation. A trajectory is simulated until it hits the target set, or its length attains a maximum, whichever comes first. Samples with the maximum are returned although they do not represent a proper hitting time. It is the responsibility of the calling party to ignore these values. More... | |
double * | averageHittingTime (bool *hitSetIndicator) |
Entry point for methods computing average hitting times (first entry times) from every state to some set of states. More... | |
double * | averageHittingTimeDT (bool *hitSetIndicator) |
Computing the average hitting times in a discrete-time Markov chain. Uses a direct Gauss-Seidel matrix inversion. More... | |
double * | averageHittingTimeDT_iterative (bool *hitSetIndicator) |
Computing the average hitting times in a discrete-time Markov chain. Uses an iterative approximate computation. More... | |
virtual markovChain * | copy () |
copy utility More... | |
virtual markovChain * | uniformize () |
Uniformize Markov Chain, by uniformizing the generator. If the chain is already discrete time, a copy is returned. More... | |
void | setSizeType (const string path) |
Function to find out the size and the type of a Markov chain described in the MARCA format. Both quantities are directly set in the method, which returns nothing. Adapted from the method HBF::read_marka of Psi/Unix/v1.0. More... | |
virtual void | write (FILE *out, bool withReward) |
Method(s) for writing Markov chains in files with various formats. Only the ERS format is supported at this time. More... | |
virtual void | write (string format, string modelName) |
markovChain (int sz, timeType t) | |
Simple constructor for the Markov chain from the size. More... | |
markovChain (transitionStructure *tr) | |
Constructor for the Markov chain using a transition structure. More... | |
markovChain (string format, string param[], int nbreParam, string modelName, bool isAbstract) | |
Constructor for Markov chains from files in various formats. In the abstract form, the object just stores the name(s) of the files that define the mode. In the non-abstract (concrete) form, the chain is instantiated in the memory with a concrete transition structure. Only the ERS, PSI and Xborne formats are supported at this time for concrete chains. More... | |
virtual | ~markovChain () |
Standard destructor. The generator and the initial distrib are destroyed. More... | |
int | stateSpaceSize () |
Read accessor to get the number of states in the state space of the Markov chain. More... | |
transitionStructure * | generator () |
Read accessor to get the value of _generator which is a transitionStructure. More... | |
void | setInitDistribution (discreteDistribution *d) |
Write accessor to set the value of _initDistribution which is a discreteDistribution. More... | |
void | setGenerator (transitionStructure *tr) |
Write accessor to set the value of _generator which is a transitionStructure. More... | |
Distribution * | read () |
Method(s) for deserializing Distribution from Xborne file (.pi). More... | |
void | setFormat (string format) |
Utility to set the value of _format. More... | |
void | setModelName (string modelName) |
Utility to set the value of _modelName. More... | |
void | setAbstractNbre (int abstractNbre) |
Utility to set the value of _abstractNbre. More... | |
void | setAbstract (string abstract[]) |
Utility to set the value of the table containing names related to the model: file names, extensions etc. More... | |
int | abstractNbre () |
Utility to get _abstractNbre. More... | |
string | modelName () |
Utility to get _modelName. More... | |
string | format () |
Utility to get _format. More... | |
void | abstract () |
Utility to display the value of the table _abstract[]. More... | |
virtual simulationResult * | simulateChain (double tMax, bool Stats, bool Traj, bool withIncrements, bool Print) |
Simulates the evolution of a Markov Chain using the PSI program. This is a front-end function to both discrete-time and the continuous-time simulators. More... | |
virtual simulationResult * | simulateChainDT (int tMax, bool stats, bool traj, bool trace) |
Simulates the evolution of a discrete-time Markov Chain. More... | |
virtual simulationResult * | simulateChainCT (double tMax, bool stats, bool traj, bool withIncrements, bool trace) |
Simulates the evolution of a continuous-time Markov Chain. More... | |
simulationResult * | simulatePSI (int tMax, bool stats, bool Traj, bool Print) |
Simulates the evolution of a Markov Chain. This is a front-end function to the discrete-time simulator. For continuous time, the PSI simulator does not allow to control the simulation horizon. The effect of "Print" is to be handled in the specific simulation function, not here. More... | |
virtual Distribution * | stationaryDistribution (bool progress) |
Entry point for methods Computing the stationary distribution of chains using the iterative method. More... | |
virtual Distribution * | stationaryDistributionCT (bool progress) |
Computing the stationary distribution of a CTMC using uniformization and the iterative method. More... | |
virtual Distribution * | stationaryDistributionDT (bool progress) |
Computing the stationary distribution of a DTMC using uniformization and the iterative method. More... | |
Distribution * | stationaryDistributionGthLD () |
Entry point for methods computing stationary distributions using the GTH method for solving the linear system. More... | |
Distribution * | stationaryDistributionSOR () |
Entry point for methods computing stationary distributions using the SOR method for solving the linear system. More... | |
simulationResult * | stationaryDistributionSample (int nbSamples) |
Methods to sample from the stationary distribution using backwards coupling. The result is returned in a simulationResult object, but the interpretation is different: it does not represent trajectories. Here, "state" entries are the measured states, and "time" entries are the measured coupling time. More... | |
Distribution * | hittingTimeDistribution (int iState, bool *hitSetIndicator) |
Entry point for methods computing the distribution of the hitting time (first entry times) from some state to some set of states. More... | |
int * | simulateHittingTime (int iState, bool *hittingSet, int nbSamples, int tMax) |
Obtain samples of hitting times through Monte Carlo simulation. A trajectory is simulated until it hits the target set, or its length attains a maximum, whichever comes first. Samples with the maximum are returned although they do not represent a proper hitting time. It is the responsibility of the calling party to ignore these values. More... | |
double * | averageHittingTime (bool *hitSetIndicator) |
Entry point for methods computing average hitting times (first entry times) from every state to some set of states. More... | |
double * | averageHittingTimeDT (bool *hitSetIndicator) |
Computing the average hitting times in a discrete-time Markov chain. Uses a direct Gauss-Seidel matrix inversion. More... | |
double * | averageHittingTimeDT_iterative (bool *hitSetIndicator) |
Computing the average hitting times in a discrete-time Markov chain. Uses an iterative approximate computation. More... | |
virtual markovChain * | copy () |
copy utility More... | |
virtual markovChain * | uniformize () |
Uniformize Markov Chain, by uniformizing the generator. If the chain is already discrete time, a copy is returned. More... | |
void | setSizeType (const string path) |
Function to find out the size and the type of a Markov chain described in the MARCA format. Both quantities are directly set in the method, which returns nothing. Adapted from the method HBF::read_marka of Psi/Unix/v1.0. More... | |
virtual void | write (FILE *out, bool withReward) |
Method(s) for writing Markov chains in files with various formats. Only the ERS format is supported at this time. More... | |
virtual void | write (string format, string modelName) |
Protected Attributes | |
timeType | _type |
time type: discrete or continuous More... | |
int | _stateSpaceSize |
size of the state space (should be a pointer on the state space itself) More... | |
transitionStructure * | _generator |
transition structure of the chain More... | |
discreteDistribution * | _initDistribution |
initial distribution of the process More... | |
bool | _debug |
internal debugging indicator More... | |
bool | _isAbstract |
true if the object is "abstract", i.e. a pointer to some files More... | |
int | _abstractNbre |
number of abstraction parameters More... | |
string * | _abstract |
table of abstraction parameters More... | |
string | _format |
format/language of the model More... | |
string | _modelName |
name of the model More... | |
Markov Chain class.
markovChain::markovChain | ( | int | sz, |
timeType | t | ||
) |
Simple constructor for the Markov chain from the size.
sz | the size of the state space (may be infinite) |
t | the type of chain: CONTINUOUS or DISCRETE |
markovChain::markovChain | ( | transitionStructure * | tr | ) |
Constructor for the Markov chain using a transition structure.
tr | the transition structure |
markovChain::markovChain | ( | string | format, |
string | param[], | ||
int | nbreParam, | ||
string | modelName, | ||
bool | isAbstract | ||
) |
Constructor for Markov chains from files in various formats. In the abstract form, the object just stores the name(s) of the files that define the mode. In the non-abstract (concrete) form, the chain is instantiated in the memory with a concrete transition structure. Only the ERS, PSI and Xborne formats are supported at this time for concrete chains.
format | the format or language in which the model is specified |
param[] | is the list of parameters |
nbreParam | the size of param |
modelName | the name of the model, usually the prefix for various files |
isAbstract | specifies if the chain is abstract or not |
|
virtual |
Standard destructor. The generator and the initial distrib are destroyed.
markovChain::markovChain | ( | int | sz, |
timeType | t | ||
) |
Simple constructor for the Markov chain from the size.
sz | the size of the state space (may be infinite) |
t | the type of chain: CONTINUOUS or DISCRETE |
markovChain::markovChain | ( | transitionStructure * | tr | ) |
Constructor for the Markov chain using a transition structure.
tr | the transition structure |
markovChain::markovChain | ( | string | format, |
string | param[], | ||
int | nbreParam, | ||
string | modelName, | ||
bool | isAbstract | ||
) |
Constructor for Markov chains from files in various formats. In the abstract form, the object just stores the name(s) of the files that define the mode. In the non-abstract (concrete) form, the chain is instantiated in the memory with a concrete transition structure. Only the ERS, PSI and Xborne formats are supported at this time for concrete chains.
format | the format or language in which the model is specified |
param[] | is the list of parameters |
nbreParam | the size of param |
modelName | the name of the model, usually the prefix for various files |
isAbstract | specifies if the chain is abstract or not |
|
virtual |
Standard destructor. The generator and the initial distrib are destroyed.
|
inline |
Utility to display the value of the table _abstract[].
|
inline |
Utility to display the value of the table _abstract[].
|
inline |
Utility to get _abstractNbre.
|
inline |
Utility to get _abstractNbre.
double* markovChain::averageHittingTime | ( | bool * | hitSetIndicator | ) |
Entry point for methods computing average hitting times (first entry times) from every state to some set of states.
hitSetIndicator | a boolean array where states in the hitting set are marked with true |
double * markovChain::averageHittingTime | ( | bool * | hitSetIndicator | ) |
Entry point for methods computing average hitting times (first entry times) from every state to some set of states.
hitSetIndicator | a boolean array where states in the hitting set are marked with true |
double* markovChain::averageHittingTimeDT | ( | bool * | hitSetIndicator | ) |
Computing the average hitting times in a discrete-time Markov chain. Uses a direct Gauss-Seidel matrix inversion.
hitSetIndicator | a boolean array where states in the hitting set are marked with true |
double * markovChain::averageHittingTimeDT | ( | bool * | hitSetIndicator | ) |
Computing the average hitting times in a discrete-time Markov chain. Uses a direct Gauss-Seidel matrix inversion.
hitSetIndicator | a boolean array where states in the hitting set are marked with true |
double* markovChain::averageHittingTimeDT_iterative | ( | bool * | hitSetIndicator | ) |
Computing the average hitting times in a discrete-time Markov chain. Uses an iterative approximate computation.
hitSetIndicator | a boolean array where states in the hitting set are marked with true |
double * markovChain::averageHittingTimeDT_iterative | ( | bool * | hitSetIndicator | ) |
Computing the average hitting times in a discrete-time Markov chain. Uses an iterative approximate computation.
hitSetIndicator | a boolean array where states in the hitting set are marked with true |
|
virtual |
copy utility
|
virtual |
copy utility
Copy a Markov Chain, including the generator and the initial distribution.
|
inline |
Utility to get _format.
|
inline |
Utility to get _format.
|
inline |
Read accessor to get the value of _generator which is a transitionStructure.
|
inline |
Read accessor to get the value of _generator which is a transitionStructure.
Distribution* markovChain::hittingTimeDistribution | ( | int | iState, |
bool * | hitSetIndicator | ||
) |
Entry point for methods computing the distribution of the hitting time (first entry times) from some state to some set of states.
iState | index of the initial state |
hitSetIndicator | a boolean array where states in the hitting set are marked with true |
Distribution* markovChain::hittingTimeDistribution | ( | int | iState, |
bool * | hitSetIndicator | ||
) |
Entry point for methods computing the distribution of the hitting time (first entry times) from some state to some set of states.
iState | index of the initial state |
hitSetIndicator | a boolean array where states in the hitting set are marked with true |
|
inline |
Utility to get _modelName.
|
inline |
Utility to get _modelName.
Distribution* markovChain::read | ( | ) |
Method(s) for deserializing Distribution from Xborne file (.pi).
Distribution * markovChain::read | ( | ) |
Method(s) for deserializing Distribution from Xborne file (.pi).
void markovChain::setAbstract | ( | string | abstract[] | ) |
Utility to set the value of the table containing names related to the model: file names, extensions etc.
abstract | table with the strings to be copied to _abstract |
void markovChain::setAbstract | ( | string | abstract[] | ) |
Utility to set the value of the table containing names related to the model: file names, extensions etc.
abstract | table with the strings to be copied to _abstract |
|
inline |
Utility to set the value of _abstractNbre.
abstractNbre | the number of abstract parameters to be set |
|
inline |
Utility to set the value of _abstractNbre.
abstractNbre | the number of abstract parameters to be set |
|
inline |
Utility to set the value of _format.
format |
|
inline |
Utility to set the value of _format.
format |
|
inline |
Write accessor to set the value of _generator which is a transitionStructure.
tr | the transition structure to be set |
|
inline |
Write accessor to set the value of _generator which is a transitionStructure.
tr | the transition structure to be set |
|
inline |
Write accessor to set the value of _initDistribution which is a discreteDistribution.
d | the distribution to be set |
|
inline |
Write accessor to set the value of _initDistribution which is a discreteDistribution.
d | the distribution to be set |
|
inline |
Utility to set the value of _modelName.
modelName |
|
inline |
Utility to set the value of _modelName.
modelName |
void markovChain::setSizeType | ( | const string | path | ) |
Function to find out the size and the type of a Markov chain described in the MARCA format. Both quantities are directly set in the method, which returns nothing. Adapted from the method HBF::read_marka of Psi/Unix/v1.0.
void markovChain::setSizeType | ( | const string | path | ) |
Function to find out the size and the type of a Markov chain described in the MARCA format. Both quantities are directly set in the method, which returns nothing. Adapted from the method HBF::read_marka of Psi/Unix/v1.0.
|
virtual |
Simulates the evolution of a Markov Chain using the PSI program. This is a front-end function to both discrete-time and the continuous-time simulators.
tMax | time until which the Markov chain is simulated |
Stats | indicates whether occupancy statistics are collected and returned |
Traj | indicates whether a trajectory is returned |
withIncrements | indicates whether time increments should be produced |
indicates whether values should be printed along the way |
Reimplemented in homogeneous1DBirthDeath, homogeneous1DBirthDeath, felsenstein81, and felsenstein81.
|
virtual |
Simulates the evolution of a Markov Chain using the PSI program. This is a front-end function to both discrete-time and the continuous-time simulators.
tMax | time until which the Markov chain is simulated |
Stats | indicates whether occupancy statistics are collected and returned |
Traj | indicates whether a trajectory is returned |
withIncrements | indicates whether time increments should be produced |
indicates whether values should be printed along the way |
Reimplemented in homogeneous1DBirthDeath, homogeneous1DBirthDeath, felsenstein81, and felsenstein81.
|
virtual |
Simulates the evolution of a continuous-time Markov Chain.
tMax | time until which the Markov chain is simulated |
stats | indicates whether occupancy statistics are collected and returned |
traj | indicates whether a trajectory is returned |
withIncrements | indicates whether time increments should be printed |
trace | indicates whether the trajectory should be printed along the way (on stdout) |
|
virtual |
Simulates the evolution of a continuous-time Markov Chain.
tMax | time until which the Markov chain is simulated |
stats | indicates whether occupancy statistics are collected and returned |
traj | indicates whether a trajectory is returned |
withIncrements | indicates whether time increments should be printed |
trace | indicates whether the trajectory should be printed along the way (on stdout) |
|
virtual |
Simulates the evolution of a discrete-time Markov Chain.
tMax | time until which the Markov chain is simulated |
stats | indicates whether occupancy statistics are collected and returned |
traj | indicates whether a trajectory is returned |
trace | indicates whether the trajectory should be printed along the way (on stdout) |
|
virtual |
Simulates the evolution of a discrete-time Markov Chain.
tMax | time until which the Markov chain is simulated |
stats | indicates whether occupancy statistics are collected and returned |
traj | indicates whether a trajectory is returned |
trace | indicates whether the trajectory should be printed along the way (on stdout) |
int* markovChain::simulateHittingTime | ( | int | iState, |
bool * | hittingSet, | ||
int | nbSamples, | ||
int | tMax | ||
) |
Obtain samples of hitting times through Monte Carlo simulation. A trajectory is simulated until it hits the target set, or its length attains a maximum, whichever comes first. Samples with the maximum are returned although they do not represent a proper hitting time. It is the responsibility of the calling party to ignore these values.
iState | the initial state from which trajectories start |
hittingSetIndicator | boolean array indicating with true which states are in the target |
nbSamples | number of samples to collect |
tMax | maximum length of trajectories |
int * markovChain::simulateHittingTime | ( | int | iState, |
bool * | hittingSet, | ||
int | nbSamples, | ||
int | tMax | ||
) |
Obtain samples of hitting times through Monte Carlo simulation. A trajectory is simulated until it hits the target set, or its length attains a maximum, whichever comes first. Samples with the maximum are returned although they do not represent a proper hitting time. It is the responsibility of the calling party to ignore these values.
iState | the initial state from which trajectories start |
hittingSetIndicator | boolean array indicating with true which states are in the target |
nbSamples | number of samples to collect |
tMax | maximum length of trajectories |
simulationResult* markovChain::simulatePSI | ( | int | tMax, |
bool | stats, | ||
bool | Traj, | ||
bool | |||
) |
Simulates the evolution of a Markov Chain. This is a front-end function to the discrete-time simulator. For continuous time, the PSI simulator does not allow to control the simulation horizon. The effect of "Print" is to be handled in the specific simulation function, not here.
tMax | time until which the Markov chain is simulated |
stats | indicates whether occupancy statistics are collected and returned |
Traj | indicates whether a trajectory is returned |
indicates whether values should be printed along the way |
simulationResult * markovChain::simulatePSI | ( | int | tMax, |
bool | stats, | ||
bool | Traj, | ||
bool | |||
) |
Simulates the evolution of a Markov Chain. This is a front-end function to the discrete-time simulator. For continuous time, the PSI simulator does not allow to control the simulation horizon. The effect of "Print" is to be handled in the specific simulation function, not here.
tMax | time until which the Markov chain is simulated |
stats | indicates whether occupancy statistics are collected and returned |
Traj | indicates whether a trajectory is returned |
indicates whether values should be printed along the way |
|
inline |
Read accessor to get the number of states in the state space of the Markov chain.
|
inline |
Read accessor to get the number of states in the state space of the Markov chain.
|
virtual |
Entry point for methods Computing the stationary distribution of chains using the iterative method.
progress | indicates whether the progress of the iterative method should be displayed |
|
virtual |
Entry point for methods Computing the stationary distribution of chains using the iterative method.
progress | indicates whether the progress of the iterative method should be displayed |
|
virtual |
Computing the stationary distribution of a CTMC using uniformization and the iterative method.
progress | indicates whether the progress of the iterative method should be displayed |
|
virtual |
Computing the stationary distribution of a CTMC using uniformization and the iterative method.
progress | indicates whether the progress of the iterative method should be displayed |
|
virtual |
Computing the stationary distribution of a DTMC using uniformization and the iterative method.
progress | indicates whether the progress of the iterative method should be displayed |
|
virtual |
Computing the stationary distribution of a DTMC using uniformization and the iterative method.
progress | indicates whether the progress of the iterative method should be displayed |
Distribution* markovChain::stationaryDistributionGthLD | ( | ) |
Entry point for methods computing stationary distributions using the GTH method for solving the linear system.
Distribution * markovChain::stationaryDistributionGthLD | ( | ) |
Entry point for methods computing stationary distributions using the GTH method for solving the linear system.
simulationResult* markovChain::stationaryDistributionSample | ( | int | nbSamples | ) |
Methods to sample from the stationary distribution using backwards coupling. The result is returned in a simulationResult object, but the interpretation is different: it does not represent trajectories. Here, "state" entries are the measured states, and "time" entries are the measured coupling time.
nbSample | number of samples to collect |
simulationResult * markovChain::stationaryDistributionSample | ( | int | nbSamples | ) |
Methods to sample from the stationary distribution using backwards coupling. The result is returned in a simulationResult object, but the interpretation is different: it does not represent trajectories. Here, "state" entries are the measured states, and "time" entries are the measured coupling time.
nbSample | number of samples to collect |
Distribution* markovChain::stationaryDistributionSOR | ( | ) |
Entry point for methods computing stationary distributions using the SOR method for solving the linear system.
Distribution * markovChain::stationaryDistributionSOR | ( | ) |
Entry point for methods computing stationary distributions using the SOR method for solving the linear system.
|
virtual |
Uniformize Markov Chain, by uniformizing the generator. If the chain is already discrete time, a copy is returned.
|
virtual |
Uniformize Markov Chain, by uniformizing the generator. If the chain is already discrete time, a copy is returned.
|
virtual |
Method(s) for writing Markov chains in files with various formats. Only the ERS format is supported at this time.
out | the file descriptor in which to write the chain |
withReward | specifies if rewards are to be written; not used yet |
|
virtual |
Method(s) for writing Markov chains in files with various formats. Only the ERS format is supported at this time.
out | the file descriptor in which to write the chain |
withReward | specifies if rewards are to be written; not used yet |
|
protected |
table of abstraction parameters
|
protected |
number of abstraction parameters
|
protected |
internal debugging indicator
|
protected |
format/language of the model
|
protected |
transition structure of the chain
|
protected |
initial distribution of the process
|
protected |
true if the object is "abstract", i.e. a pointer to some files
|
protected |
name of the model
|
protected |
size of the state space (should be a pointer on the state space itself)
|
protected |
time type: discrete or continuous