rails.algorithms
Class RevenueCalculatorMulti

java.lang.Object
  extended by rails.algorithms.RevenueCalculator
      extended by rails.algorithms.RevenueCalculatorMulti

final class RevenueCalculatorMulti
extends RevenueCalculator


Nested Class Summary
 
Nested classes/interfaces inherited from class rails.algorithms.RevenueCalculator
RevenueCalculator.Terminated
 
Field Summary
protected  int[] edgeNbTravelSets
           
protected  int[][] edgeTravelSets
           
 
Fields inherited from class rails.algorithms.RevenueCalculator
bonusActiveForTrain, bonusRequiresVertices, bonusTrainVertices, bonusValue, callDynamicModifiers, countEdges, countVisits, currentBestRun, currentBestValue, edgeDistance, edgeGreedy, finalTrain, finalTrainSet, log, maxBonusRevenues, maxCumulatedTrainRevenues, maxMajorRevenues, maxMinorRevenues, nbBonuses, nbEdges, nbEdgesTravelled, nbEvaluations, nbPredictions, nbTrains, nbVertexes, revenueAdapter, startTrain, startTrainSet, startVertexes, trainBonuses, trainBottomActive, trainCurrentValue, trainIgnoreMinors, trainMajors, trainMaxBonuses, trainMaxMajors, trainMaxMinors, trainMinors, trainStack, trainStackPos, trainStartEdge, trainVisited, useRevenuePrediction, vertexBonusSets, vertexEdges, vertexMajor, vertexMinor, vertexNbBonusSets, vertexNbNeighbors, vertexNbVisitSets, vertexNeighbors, vertexSink, vertexValueByTrain, vertexVisitSets
 
Constructor Summary
RevenueCalculatorMulti(RevenueAdapter revenueAdapter, int nbVertexes, int nbEdges, int maxNeighbors, int maxVertexSets, int maxEdgeSets, int nbTrains, int nbBonuses)
           
 
Method Summary
protected  void returnEdge(int edgeId)
           
protected  void runBottom(int trainId)
           
protected  void runTrain(int trainId)
           
(package private)  void setEdge(int edgeId, boolean greedy, int distance)
           
(package private)  void setTravelSet(int edgeId, int[] edges)
           
 
Methods inherited from class rails.algorithms.RevenueCalculator
calculateRevenue, encounterVertex, evaluateResults, finalizeVertex, getCurrentRun, getNumberOfEvaluations, getOptimalRun, getStatistics, initialPredictionRuns, predictRevenues, setBonus, setDynamicModifiers, setStartVertexes, setTrain, setVertex, setVertexNeighbors, setVertexValue, setVisitSet, toString, trainTerminated
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

edgeNbTravelSets

protected final int[] edgeNbTravelSets

edgeTravelSets

protected final int[][] edgeTravelSets
Constructor Detail

RevenueCalculatorMulti

public RevenueCalculatorMulti(RevenueAdapter revenueAdapter,
                              int nbVertexes,
                              int nbEdges,
                              int maxNeighbors,
                              int maxVertexSets,
                              int maxEdgeSets,
                              int nbTrains,
                              int nbBonuses)
Method Detail

setEdge

void setEdge(int edgeId,
             boolean greedy,
             int distance)
Overrides:
setEdge in class RevenueCalculator

setTravelSet

void setTravelSet(int edgeId,
                  int[] edges)

runTrain

protected final void runTrain(int trainId)
Specified by:
runTrain in class RevenueCalculator

runBottom

protected final void runBottom(int trainId)
Specified by:
runBottom in class RevenueCalculator

returnEdge

protected void returnEdge(int edgeId)
Specified by:
returnEdge in class RevenueCalculator