Free cookie consent management tool by TermsFeed Policy Generator

source: addons/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization/3.3/Encoding/Manipulators/ParameterConfigurationOnePositionsManipulator.cs @ 17104

Last change on this file since 17104 was 16996, checked in by gkronber, 6 years ago

#2520 Update plugin dependencies and references for HL.MetaOptimization for new persistence

File size: 1.4 KB
Line 
1using HeuristicLab.Core;
2using HeuristicLab.Common;
3using HEAL.Attic;
4
5namespace HeuristicLab.Problems.MetaOptimization {
6  // todo: item name/descr...
7  [StorableType("57D6671C-52A3-4DA5-8CD1-6BFD09B5F29E")]
8  public class ParameterConfigurationOnePositionsManipulator : ParameterConfigurationManipulator {
9
10    public ParameterConfigurationOnePositionsManipulator() { }
11    [StorableConstructor]
12    protected ParameterConfigurationOnePositionsManipulator(StorableConstructorFlag _) : base(_) { }
13    protected ParameterConfigurationOnePositionsManipulator(ParameterConfigurationOnePositionsManipulator original, Cloner cloner)
14      : base(original, cloner) {
15    }
16    public override IDeepCloneable Clone(Cloner cloner) {
17      return new ParameterConfigurationOnePositionsManipulator(this, cloner);
18    }
19
20    public sealed override IOperation Apply() {
21      Apply(RandomParameter.ActualValue, ParameterConfigurationTreeParameter.ActualValue, IntValueManipulatorParameter.ActualValue, DoubleValueManipulatorParameter.ActualValue);
22      return base.Apply();
23    }
24
25    public static void Apply(IRandom random, ParameterConfigurationTree configuration, IIntValueManipulator intValueManipulator, IDoubleValueManipulator doubleValueManipulator) {
26      IOptimizable optimizable = configuration.GetRandomOptimizable(random);
27      Mutate(random, optimizable, intValueManipulator, doubleValueManipulator);
28    }
29  }
30}
Note: See TracBrowser for help on using the repository browser.