Changeset 15220 for stable/HeuristicLab.Analysis/3.3/QualityAnalysis
- Timestamp:
- 07/12/17 21:59:49 (7 years ago)
- Location:
- stable
- Files:
-
- 2 edited
- 3 copied
Legend:
- Unmodified
- Added
- Removed
-
stable
- Property svn:mergeinfo changed
/trunk/sources merged: 14102,14647,14652,14654,14734,14737,14775,15048,15125-15126
- Property svn:mergeinfo changed
-
stable/HeuristicLab.Analysis
- Property svn:mergeinfo changed
/trunk/sources/HeuristicLab.Analysis merged: 14102,14734,14737,14775,15048
- Property svn:mergeinfo changed
-
stable/HeuristicLab.Analysis/3.3/QualityAnalysis/ExpectedRuntimeHelper.cs
r14102 r15220 30 30 if (successful.Count > 0) { 31 31 var succAvg = successful.Average(); 32 var succDev = successful.StandardDeviation() ;32 var succDev = successful.StandardDeviation() + 1e-7; 33 33 successful.RemoveAll(x => x < succAvg - 2 * succDev); 34 34 unsuccessful.RemoveAll(x => x < succAvg - 2 * succDev); … … 46 46 47 47 public struct ErtCalculationResult { 48 public int SuccessfulRuns;49 public int TotalRuns;50 public double ExpectedRuntime;48 public readonly int SuccessfulRuns; 49 public readonly int TotalRuns; 50 public readonly double ExpectedRuntime; 51 51 52 52 public ErtCalculationResult(int successful, int total, double ert) { … … 57 57 58 58 public override string ToString() { 59 return SuccessfulRuns == 0 ? "\u221e" // infinity symbol 60 : ExpectedRuntime.ToString("##,0.0", CultureInfo.CurrentCulture.NumberFormat); 59 return ExpectedRuntime.ToString("##,0.0", CultureInfo.CurrentCulture.NumberFormat); 61 60 } 62 61 } -
stable/HeuristicLab.Analysis/3.3/QualityAnalysis/QualityPerClockAnalyzer.cs
r14102 r15220 91 91 92 92 if (values.Count == 0) { 93 values.Add(newEntry); 94 values.Add(Tuple.Create(runtimeSoFar, bestQuality)); // duplicate entry that will be replaced93 values.Add(newEntry); // record the first data 94 values.Add(Tuple.Create(runtimeSoFar, bestQuality)); // last entry records max number of evaluations 95 95 return base.Apply(); 96 96 } … … 98 98 var improvement = values.Last().Item2 != bestQuality; 99 99 if (improvement) { 100 values[values.Count - 1] = newEntry; 101 values.Add(Tuple.Create(runtimeSoFar, bestQuality)); // duplicate entry that will be replaced100 values[values.Count - 1] = newEntry; // record the improvement 101 values.Add(Tuple.Create(runtimeSoFar, bestQuality)); // last entry records max number of evaluations 102 102 } else { 103 103 values[values.Count - 1] = Tuple.Create(runtimeSoFar, bestQuality); -
stable/HeuristicLab.Analysis/3.3/QualityAnalysis/QualityPerEvaluationsAnalyzer.cs
r14102 r15220 88 88 if (evalMoves != null) evaluations += evalMoves.Value * MoveCostPerSolutionParameter.ActualValue.Value; 89 89 90 var dataTable = QualityPerEvaluationsParameter.ActualValue; 91 var values = dataTable.Rows["First-hit Graph"].Values; 92 if (evaluations == 0 || values.Count > 0 && evaluations < values.Last().Item1) evaluations = 1; 93 var newEntry = Tuple.Create(evaluations, bestQuality); 90 if (evaluations > 0) { 91 var dataTable = QualityPerEvaluationsParameter.ActualValue; 92 var values = dataTable.Rows["First-hit Graph"].Values; 94 93 95 if (values.Count == 0) { 96 values.Add(newEntry); 97 values.Add(Tuple.Create(evaluations, bestQuality)); // duplicate entry that will be replaced 98 return base.Apply(); 99 } 94 var newEntry = Tuple.Create(evaluations, bestQuality); 100 95 101 var improvement = values.Last().Item2 != bestQuality; 102 if (improvement) { 103 values[values.Count - 1] = newEntry; 104 values.Add(Tuple.Create(evaluations, bestQuality)); // duplicate entry that will be replaced 105 } else { 106 values[values.Count - 1] = Tuple.Create(evaluations, bestQuality); 96 if (values.Count == 0) { 97 values.Add(newEntry); // record the first data 98 values.Add(Tuple.Create(evaluations, bestQuality)); // last entry records max number of evaluations 99 return base.Apply(); 100 } 101 102 var improvement = values.Last().Item2 != bestQuality; 103 if (improvement) { 104 values[values.Count - 1] = newEntry; // record the improvement 105 values.Add(Tuple.Create(evaluations, bestQuality)); // last entry records max number of evaluations 106 } else { 107 values[values.Count - 1] = Tuple.Create(evaluations, bestQuality); // the last entry is updated 108 } 107 109 } 108 110 return base.Apply();
Note: See TracChangeset
for help on using the changeset viewer.