Package jline.solvers.mva
Class ProbabilityResult
java.lang.Object
jline.solvers.mva.ProbabilityResult
Result class for probability calculations in solvers.
Supports both scalar probabilities (single value) and probability distributions (vectors/matrices) for marginal and aggregated state probabilities.
For marginal probabilities (getProbMarg), the probability vector contains P(n jobs of class r) for n=0,1,...,N where N is the population.
For aggregated probabilities (getProbAggr), the probability is a scalar representing P(n1 jobs of class 1, n2 jobs of class 2, ...).
-
Field Summary
FieldsModifier and TypeFieldDescriptionfinal doubleThe logarithm of the scalar probability valuefinal doubleThe scalar probability value (for getProbAggr-style results) -
Constructor Summary
ConstructorsConstructorDescriptionProbabilityResult(double probability, double logProbability) Constructor for scalar probability result.ProbabilityResult(int nstations, int nclasses) Constructor for multi-station, multi-class marginal storage.ProbabilityResult(Matrix probabilityVector) Constructor for probability distribution result. -
Method Summary
Modifier and TypeMethodDescriptiongetMarginal(int station, int jobclass) Get the marginal probability distribution for a specific station and class.doublegetProbability(int stateIndex) Get probability at a specific state index.Get the probability distribution vector.booleanCheck if this result contains a probability distribution (vs scalar).intlength()Get the length of the probability distribution.voidsetMarginal(int station, int jobclass, Matrix probVector) Set the marginal probability distribution for a specific station and class.
-
Field Details
-
probability
public final double probabilityThe scalar probability value (for getProbAggr-style results) -
logProbability
public final double logProbabilityThe logarithm of the scalar probability value
-
-
Constructor Details
-
ProbabilityResult
public ProbabilityResult(double probability, double logProbability) Constructor for scalar probability result.- Parameters:
probability- the probability valuelogProbability- the logarithm of the probability value
-
ProbabilityResult
Constructor for probability distribution result.- Parameters:
probabilityVector- the probability distribution as a row vector
-
ProbabilityResult
public ProbabilityResult(int nstations, int nclasses) Constructor for multi-station, multi-class marginal storage.- Parameters:
nstations- number of stationsnclasses- number of job classes
-
-
Method Details
-
setMarginal
Set the marginal probability distribution for a specific station and class.- Parameters:
station- station indexjobclass- job class indexprobVector- probability distribution vector
-
getMarginal
Get the marginal probability distribution for a specific station and class.- Parameters:
station- station indexjobclass- job class index- Returns:
- probability distribution vector, or null if not set
-
getProbabilityVector
Get the probability distribution vector.- Returns:
- the probability vector, or null if this is a scalar result
-
hasDistribution
public boolean hasDistribution()Check if this result contains a probability distribution (vs scalar).- Returns:
- true if this result contains a probability vector
-
getProbability
public double getProbability(int stateIndex) Get probability at a specific state index.- Parameters:
stateIndex- the state index (e.g., number of jobs)- Returns:
- the probability at that state
-
length
public int length()Get the length of the probability distribution.- Returns:
- number of states in the distribution, or 1 for scalar results
-