Package org.optaplanner.benchmark.impl.result

## Class SolverBenchmarkResult

- java.lang.Object
- - org.optaplanner.benchmark.impl.result.SolverBenchmarkResult

-     public class SolverBenchmarkResult
      extends Object

  Represents 1 `Solver` configuration benchmarked on multiple problem instances (data sets).

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `SolverBenchmarkResult​(PlannerBenchmarkResult plannerBenchmarkResult)` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `accumulateResults​(BenchmarkReport benchmarkReport)` | Does not call `SingleBenchmarkResult.accumulateResults(BenchmarkReport)`, because `PlannerBenchmarkResult.accumulateResults(BenchmarkReport)` does that already on `PlannerBenchmarkResult.getUnifiedProblemBenchmarkResultList()`.
    `protected static Map<SolverBenchmarkResult,​SolverBenchmarkResult>` | `createMergeMap​(PlannerBenchmarkResult newPlannerBenchmarkResult, List<SingleBenchmarkResult> singleBenchmarkResultList)` |
    `protected void` | `determineTotalsAndAverages()` |
    `SingleBenchmarkResult` | `findSingleBenchmark​(ProblemBenchmarkResult problemBenchmarkResult)` |
    `String` | `getAnchorId()` |
    `Score` | `getAverageScore()` |
    `Long` | `getAverageScoreCalculationSpeed()` |
    `Long` | `getAverageTimeMillisSpent()` |
    `Score` | `getAverageWinningScoreDifference()` |
    `Double` | `getAverageWorstScoreCalculationSpeedDifferencePercentage()` |
    `ScoreDifferencePercentage` | `getAverageWorstScoreDifferencePercentage()` |
    `EnvironmentMode` | `getEnvironmentMode()` |
    `Integer` | `getFailureCount()` |
    `Integer` | `getInfeasibleScoreCount()` |
    `String` | `getName()` |
    `String` | `getNameWithFavoriteSuffix()` |
    `PlannerBenchmarkResult` | `getPlannerBenchmarkResult()` |
    `Integer` | `getRanking()` |
    `ScoreDefinition` | `getScoreDefinition()` |
    `List<Score>` | `getScoreList()` |
    `List<SingleBenchmarkResult>` | `getSingleBenchmarkResultList()` |
    `SolverConfig` | `getSolverConfig()` |
    `String` | `getSolverConfigAsHtmlEscapedXml()` |
    `String` | `getStandardDeviationString()` |
    `Integer` | `getSubSingleCount()` |
    `int` | `getSuccessCount()` |
    `Score` | `getTotalScore()` |
    `Score` | `getTotalWinningScoreDifference()` |
    `Integer` | `getUninitializedSolutionCount()` |
    `boolean` | `hasAnyFailure()` |
    `boolean` | `hasAnyInfeasibleScore()` |
    `boolean` | `hasAnySuccess()` |
    `boolean` | `hasAnyUninitializedSolution()` |
    `boolean` | `isFavorite()` |
    `void` | `setName​(String name)` |
    `void` | `setPlannerBenchmarkResult​(PlannerBenchmarkResult plannerBenchmarkResult)` |
    `void` | `setRanking​(Integer ranking)` |
    `void` | `setScoreDefinition​(ScoreDefinition scoreDefinition)` |
    `void` | `setSingleBenchmarkResultList​(List<SingleBenchmarkResult> singleBenchmarkResultList)` |
    `void` | `setSolverConfig​(SolverConfig solverConfig)` |
    `void` | `setSubSingleCount​(Integer subSingleCount)` |
    `String` | `toString()` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### SolverBenchmarkResult

          public SolverBenchmarkResult​(PlannerBenchmarkResult plannerBenchmarkResult)

  - ### Method Detail

    - #### getPlannerBenchmarkResult

          public PlannerBenchmarkResult getPlannerBenchmarkResult()

    - #### setPlannerBenchmarkResult

          public void setPlannerBenchmarkResult​(PlannerBenchmarkResult plannerBenchmarkResult)

    - #### getName

          public String getName()

      Returns:
        never null, filename safe

    - #### setName

          public void setName​(String name)

    - #### getSubSingleCount

          public Integer getSubSingleCount()

    - #### setSubSingleCount

          public void setSubSingleCount​(Integer subSingleCount)

    - #### getSolverConfig

          public SolverConfig getSolverConfig()

    - #### setSolverConfig

          public void setSolverConfig​(SolverConfig solverConfig)

    - #### getScoreDefinition

          public ScoreDefinition getScoreDefinition()

    - #### setScoreDefinition

          public void setScoreDefinition​(ScoreDefinition scoreDefinition)

    - #### getSingleBenchmarkResultList

          public List<SingleBenchmarkResult> getSingleBenchmarkResultList()

    - #### setSingleBenchmarkResultList

          public void setSingleBenchmarkResultList​(List<SingleBenchmarkResult> singleBenchmarkResultList)

    - #### getFailureCount

          public Integer getFailureCount()

    - #### getUninitializedSolutionCount

          public Integer getUninitializedSolutionCount()

    - #### getInfeasibleScoreCount

          public Integer getInfeasibleScoreCount()

    - #### getTotalScore

          public Score getTotalScore()

    - #### getAverageScore

          public Score getAverageScore()

    - #### getTotalWinningScoreDifference

          public Score getTotalWinningScoreDifference()

    - #### getAverageWorstScoreDifferencePercentage

          public ScoreDifferencePercentage getAverageWorstScoreDifferencePercentage()

    - #### getAverageScoreCalculationSpeed

          public Long getAverageScoreCalculationSpeed()

    - #### getAverageTimeMillisSpent

          public Long getAverageTimeMillisSpent()

    - #### getAverageWorstScoreCalculationSpeedDifferencePercentage

          public Double getAverageWorstScoreCalculationSpeedDifferencePercentage()

    - #### getRanking

          public Integer getRanking()

    - #### setRanking

          public void setRanking​(Integer ranking)

    - #### getAnchorId

          public String getAnchorId()

    - #### getNameWithFavoriteSuffix

          public String getNameWithFavoriteSuffix()

    - #### getSuccessCount

          public int getSuccessCount()

    - #### hasAnySuccess

          public boolean hasAnySuccess()

    - #### hasAnyFailure

          public boolean hasAnyFailure()

    - #### hasAnyUninitializedSolution

          public boolean hasAnyUninitializedSolution()

    - #### hasAnyInfeasibleScore

          public boolean hasAnyInfeasibleScore()

    - #### isFavorite

          public boolean isFavorite()

    - #### getAverageWinningScoreDifference

          public Score getAverageWinningScoreDifference()

    - #### getScoreList

          public List<Score> getScoreList()

    - #### findSingleBenchmark

          public SingleBenchmarkResult findSingleBenchmark​(ProblemBenchmarkResult problemBenchmarkResult)

      Parameters:
        `problemBenchmarkResult` - never null
      Returns:
        sometimes null

    - #### getSolverConfigAsHtmlEscapedXml

          public String getSolverConfigAsHtmlEscapedXml()

    - #### getEnvironmentMode

          public EnvironmentMode getEnvironmentMode()

    - #### getStandardDeviationString

          public String getStandardDeviationString()

    - #### accumulateResults

          public void accumulateResults​(BenchmarkReport benchmarkReport)

      Does not call `SingleBenchmarkResult.accumulateResults(BenchmarkReport)`, because `PlannerBenchmarkResult.accumulateResults(BenchmarkReport)` does that already on `PlannerBenchmarkResult.getUnifiedProblemBenchmarkResultList()`.
      Parameters:
        `benchmarkReport` - never null

    - #### determineTotalsAndAverages

          protected void determineTotalsAndAverages()

    - #### createMergeMap

          protected static Map<SolverBenchmarkResult,​SolverBenchmarkResult> createMergeMap​(PlannerBenchmarkResult newPlannerBenchmarkResult,
                                                                                                 List<SingleBenchmarkResult> singleBenchmarkResultList)

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`