Class DESOptions
-
- All Implemented Interfaces:
public class DESOptions extends SolverOptions
Configuration options for Discrete Event Simulation (DES) solver.
DESOptions extends the base solver options to provide DES-specific configuration parameters. DES uses the SSJ library for discrete-event simulation that generates sample paths of the queueing network state evolution over time.
Key DES characteristics:
- Discrete event simulation approach using SSJ library
- Handles multiclass Jackson queueing networks
- Supports steady-state analysis
- Provides statistical estimates with confidence intervals
- Uses event-count based stopping (samples = max service completions)
- Default: 200,000 service completion events
Default Configuration (based on benchmark analysis):
For heavy-tailed workloads (high SCV), consider increasing samples to 500,000+.samples = 200,000 (good accuracy/speed balance, ~5% mean error) tranfilter = "mser5" (adaptive warmup detection) warmupfrac = 0.20 (20% warmup for fixed filter) cimethod = "obm" (overlapping batch means) obmoverlap = 0.50 (50% overlap) cnvgon = false (fixed event count)- Since:
1.0
-
-
Field Summary
Fields Modifier and Type Field Description public final static intDEFAULT_SAMPLESpublic final static doubleDEFAULT_CNVG_TOLpublic final static intDEFAULT_CNVG_BATCHpublic booleancnvgonpublic doublecnvgtolpublic intcnvgbatchpublic intcnvgchkpublic final static intDEFAULT_MSER_BATCHpublic final static doubleDEFAULT_WARMUP_FRACpublic Stringtranfilterpublic intmserbatchpublic doublewarmupfracpublic final static doubleDEFAULT_OBM_OVERLAPpublic final static intDEFAULT_CI_MIN_BATCHpublic final static intDEFAULT_CI_MIN_OBSpublic Stringcimethodpublic doubleobmoverlappublic intciminbatchpublic intciminobspublic booleancachepublic Matrixcutoffpublic SolverOptions.Configconfigpublic booleanforcepublic booleanhide_immediatepublic Matrixinit_solpublic intiter_maxpublic doubleiter_tolpublic doubletolpublic booleankeeppublic Stringlangpublic Stringmethodpublic booleanremotepublic Stringremote_endpointpublic SolverOptions.ODESolversodesolverspublic intsamplespublic intseedpublic booleanstiffpublic Array<double>timespanpublic Doubletimesteppublic VerboseLevelverbosepublic IntegerrewardIterationspublic doubleconfint
-
Constructor Summary
Constructors Constructor Description DESOptions()Constructs a new DESOptions instance with default DES solver configuration.
-
Method Summary
Modifier and Type Method Description DESOptionssetCnvgon(boolean enabled)Sets whether convergence-based stopping is enabled. DESOptionssetCnvgtol(double tolerance)Sets the convergence tolerance. DESOptionssetCnvgbatch(int minBatches)Sets the minimum number of batches before checking convergence. DESOptionssetCnvgchk(int interval)Sets the number of events between convergence checks. DESOptionssetTranfilter(String method)Sets the transient filter method. DESOptionssetMserbatch(int batchSize)Sets the MSER batch size. DESOptionssetWarmupfrac(double fraction)Sets the warmup fraction for fixed transient filter. DESOptionssetCimethod(String method)Sets the confidence interval computation method. DESOptionssetObmoverlap(double overlap)Sets the OBM overlap fraction. DESOptionssetCiminbatch(int minSize)Sets the minimum batch size for CI computation. DESOptionssetCiminobs(int minObs)Sets the minimum observations required for CI computation. DESOptionscopy()Creates a deep copy of this DESOptions object. -
Methods inherited from class jline.solvers.SolverOptions
confint, cutoff, cutoff, cutoff, force, getCutoffMatrix, keep, method, samples, seed, setODEMaxStep, setODEMinStep, verbose, verbose -
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
Method Detail
-
setCnvgon
DESOptions setCnvgon(boolean enabled)
Sets whether convergence-based stopping is enabled.
- Parameters:
enabled- true to enable convergence checking- Returns:
this options instance for method chaining
-
setCnvgtol
DESOptions setCnvgtol(double tolerance)
Sets the convergence tolerance.
- Parameters:
tolerance- the relative precision threshold (e.g., 0.- Returns:
this options instance for method chaining
-
setCnvgbatch
DESOptions setCnvgbatch(int minBatches)
Sets the minimum number of batches before checking convergence.
- Parameters:
minBatches- the minimum number of batches required- Returns:
this options instance for method chaining
-
setCnvgchk
DESOptions setCnvgchk(int interval)
Sets the number of events between convergence checks.
- Parameters:
interval- the number of events (0 for auto-calculation)- Returns:
this options instance for method chaining
-
setTranfilter
DESOptions setTranfilter(String method)
Sets the transient filter method.
- Parameters:
method- the transient filter method ("mser5", "fixed", or "none")- Returns:
this options instance for method chaining
-
setMserbatch
DESOptions setMserbatch(int batchSize)
Sets the MSER batch size.
- Parameters:
batchSize- the batch size for MSER algorithm (must be >= 1)- Returns:
this options instance for method chaining
-
setWarmupfrac
DESOptions setWarmupfrac(double fraction)
Sets the warmup fraction for fixed transient filter.
- Parameters:
fraction- the warmup fraction (0.0 to 1.- Returns:
this options instance for method chaining
-
setCimethod
DESOptions setCimethod(String method)
Sets the confidence interval computation method.
- Parameters:
method- the CI method ("obm", "bm", or "none")- Returns:
this options instance for method chaining
-
setObmoverlap
DESOptions setObmoverlap(double overlap)
Sets the OBM overlap fraction.
- Parameters:
overlap- the overlap fraction (0.0 to 1.- Returns:
this options instance for method chaining
-
setCiminbatch
DESOptions setCiminbatch(int minSize)
Sets the minimum batch size for CI computation.
- Parameters:
minSize- the minimum batch size (must be >= 2)- Returns:
this options instance for method chaining
-
setCiminobs
DESOptions setCiminobs(int minObs)
Sets the minimum observations required for CI computation.
- Parameters:
minObs- the minimum number of observations (must be >= 10)- Returns:
this options instance for method chaining
-
copy
DESOptions copy()
Creates a deep copy of this DESOptions object. Overrides the base class copy() to preserve DES-specific fields.
- Returns:
a deep copy of this DESOptions object
-
-
-
-