Changeset 12951 for branches/HeuristicLab.EvolutionTracking/HeuristicLab.EvolutionTracking/3.4/Analyzers/GenealogyAnalyzer.cs
- Timestamp:
- 09/15/15 00:10:33 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HeuristicLab.EvolutionTracking/HeuristicLab.EvolutionTracking/3.4/Analyzers/GenealogyAnalyzer.cs
r12892 r12951 55 55 private const string EnableManipulatorTrackingParameterName = "EnableManipulatorTracking"; 56 56 private const string EnableSolutionCreatorTrackingParameterName = "EnableSolutionCreatorTracking"; // should always be enabled. maybe superfluous 57 private const string TrimOlderGenerationsParameterName = "TrimOlderGenerations"; 57 58 #endregion parameter names 58 59 59 60 #region parameter properties 61 62 public IFixedValueParameter<BoolValue> TrimOlderGenerationsParameter { 63 get { return (IFixedValueParameter<BoolValue>)Parameters[TrimOlderGenerationsParameterName]; } 64 } 65 60 66 public IScopeTreeLookupParameter<DoubleValue> QualityParameter { 61 67 get { return (IScopeTreeLookupParameter<DoubleValue>)Parameters[QualityParameterName]; } … … 142 148 public BoolValue EnableSolutionCreatorTracking { 143 149 get { return EnableSolutionCreatorTrackingParameter.Value; } 150 } 151 152 public bool TrimOlderGenerations { 153 get { return TrimOlderGenerationsParameter.Value.Value; } 144 154 } 145 155 #endregion properties … … 164 174 Parameters.Add(new ValueParameter<IManipulatorOperator<T>>(BeforeManipulatorOperatorParameterName)); 165 175 Parameters.Add(new ValueParameter<IManipulatorOperator<T>>(AfterManipulatorOperatorParameterName)); 176 Parameters.Add(new FixedValueParameter<BoolValue>(TrimOlderGenerationsParameterName, "Remove all the generations older than the last generation from the genealoy graph to save memory.")); 166 177 #endregion add parameters 167 178 } … … 201 212 Parameters.Add(new ScopeTreeLookupParameter<DoubleValue>(QualityParameterName, "The individual qualities.")); 202 213 } 214 if (!Parameters.ContainsKey(TrimOlderGenerationsParameterName)) 215 Parameters.Add(new FixedValueParameter<BoolValue>(TrimOlderGenerationsParameterName, "Remove all the generations older than the last generation from the genealoy graph to save memory.")); 203 216 } 204 217 … … 318 331 genealogyGraph.RemoveVertices(discarded); 319 332 333 //trim 334 if (TrimOlderGenerations) { 335 for (int i = 0; i < generation - 1; ++i) { 336 var vertices = genealogyGraph.GetByRank(i).ToList(); 337 genealogyGraph.RemoveVertices(vertices); 338 } 339 } 340 320 341 return base.Apply(); 321 342 }
Note: See TracChangeset
for help on using the changeset viewer.