Package org.oristool.models.gspn
Class GSPNSteadyState
java.lang.Object
org.oristool.models.gspn.GSPNSteadyState
public abstract class GSPNSteadyState
extends Object
implements Engine<PetriNet,Marking,Map<Marking,Double>>
Computes the stationary distribution for the underlying CTMC of a GSPN.
Immediate events are removed by solving absorption probabilities of immediate components that may include cycles.
This analysis can be applied to GSPNs with reducible state space and multiple BSCCs. In this case, the stationary probabilities within each BSCC are weighted according to its absorption probability from the initial distribution of the CTMC.
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionstatic GSPNSteadyState.Builderbuilder()Creates a builder for analysis configurations (with default values).booleanChecks if the analysis can be applied to the given model.Runs this analysis on a given Petri net from an initial marking.abstract doubleepsilon()Returns the threshold used to decide whether a probability value should be considered equal to0.0.abstract AnalysisLoggerlogger()Returns the logger used by this analysis.abstract AnalysisMonitormonitor()Returns the monitor used by this analysis.abstract Supplier<StopCriterion>stopOn()Returns the supplier of local stop criterion instances used by this analysis.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.oristool.models.Engine
canAnalyze
-
Method Details
-
epsilon
public abstract double epsilon()Returns the threshold used to decide whether a probability value should be considered equal to0.0.By default, it is equal to
1e-9.- Returns:
- the threshold used in comparisons to
0.0
-
stopOn
Returns the supplier of local stop criterion instances used by this analysis. It can be used to avoid the expansion of some state classes, as if their states were absorbing.A stop criterion instance is generated for each run.
By default, an always-false local stop criterion is used.
- Returns:
- the supplier of local stop criterion
-
monitor
Returns the monitor used by this analysis. It is used to stop the analysis early and to notify messages to the user.By default, an always-false, message-discarding monitor is used.
- Returns:
- the monitor used by this analysis
-
logger
Returns the logger used by this analysis. It is used to print progress information.By default, logs are discarded.
- Returns:
- the logger used by this analysis
-
builder
Creates a builder for analysis configurations (with default values).- Returns:
- a builder of
TimedAnalysisinstances.
-
compute
Runs this analysis on a given Petri net from an initial marking. -
canAnalyze
Description copied from interface:EngineChecks if the analysis can be applied to the given model.Problems are collected in a
ValidationMessageCollector.
-