Class ModelAnalyzer

java.lang.Object
jline.solvers.auto.ModelAnalyzer

public class ModelAnalyzer extends Object
Helper class to analyze model characteristics for solver selection
  • Constructor Details

    • ModelAnalyzer

      public ModelAnalyzer(Network model)
  • Method Details

    • getAvgJobsPerChain

      public double getAvgJobsPerChain()
      Get average jobs per chain
    • getNumChains

      public int getNumChains()
      Get number of chains
    • getNumClasses

      public int getNumClasses()
      Get number of classes
    • getNumStations

      public int getNumStations()
      Get number of stations (excluding reference stations)
    • getTotalJobs

      public int getTotalJobs()
      Get total number of jobs in closed classes
    • hasClassSwitching

      public boolean hasClassSwitching()
      Check if model has class switching
    • hasClosedClasses

      public boolean hasClosedClasses()
      Check if model has closed classes
    • hasFCFS

      public boolean hasFCFS()
      Check if model has FCFS scheduling
    • hasForkJoin

      public boolean hasForkJoin()
      Check if model has fork-join
    • hasLoadDependence

      public boolean hasLoadDependence()
      Check if model has load-dependent stations
    • hasMultiChain

      public boolean hasMultiChain()
      Check if model has multiple chains
    • hasMultiServer

      public boolean hasMultiServer()
      Check if model has multi-server stations
    • hasOnlyInfiniteServers

      public boolean hasOnlyInfiniteServers()
      Check if all stations are infinite servers
    • hasOpenClasses

      public boolean hasOpenClasses()
      Check if model has open classes
    • hasPSorPSPRIO

      public boolean hasPSorPSPRIO()
      Check if model has PS or PSPRIO scheduling
    • hasPriorities

      public boolean hasPriorities()
      Check if model has priorities
    • hasProductForm

      public boolean hasProductForm()
      Check if model has product form
    • hasSingleChain

      public boolean hasSingleChain()
      Check if model has single chain
    • isClosedModel

      public boolean isClosedModel()
      Check if model is closed (only closed classes)
    • hasHomogeneousScheduling

      public boolean hasHomogeneousScheduling(SchedStrategy strategy)
      Check if model has homogeneous scheduling (all stations use the given strategy)
    • isOpenModel

      public boolean isOpenModel()
      Check if model is open (has open classes and no closed classes)
    • isMixedModel

      public boolean isMixedModel()
      Check if model is mixed (has both open and closed classes)