Free cookie consent management tool by TermsFeed Policy Generator

source: branches/FitnessLandscapeAnalysis/HeuristicLab.Problems.NKNew/WeightInitializers/LinearWeightsInitializer.cs @ 12483

Last change on this file since 12483 was 12483, checked in by ascheibe, 9 years ago

#2306 added a new project for NK landscapes and ported it to BasicProblem

File size: 1.2 KB
Line 
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Text;
5using HeuristicLab.Core;
6using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
7using HeuristicLab.Common;
8
9namespace HeuristicLab.Problems.NK.WeightInitializers {
10
11  [Item("LinearWeightsInitializer", "Assigned linear increasing weights.")]
12  public class LinearWeightsInitializer : NamedItem, IWeightsInitializer {
13
14    public override bool CanChangeName { get { return false; } }
15    public override bool CanChangeDescription { get { return false; } }
16
17    [StorableConstructor]
18    protected LinearWeightsInitializer(bool deserializing) : base(deserializing) { }
19    protected LinearWeightsInitializer(LinearWeightsInitializer original, Cloner cloner)
20      : base(original, cloner) {
21    }
22    public LinearWeightsInitializer() {
23      name = ItemName;
24      description = ItemDescription;
25    }
26    public override IDeepCloneable Clone(Cloner cloner) {
27      return new LinearWeightsInitializer(this, cloner);
28    }
29
30    #region IWeightsInitializer Members
31
32    public IEnumerable<double> GetWeights(int nComponents) {
33      for (int i = 0; i<nComponents; i++)
34        yield return i;
35    }
36
37    #endregion
38  }
39
40}
Note: See TracBrowser for help on using the repository browser.