using System; using System.Collections.Generic; using System.Linq; using System.Text; using HeuristicLab.Core; using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; using HeuristicLab.Common; namespace HeuristicLab.Problems.NK.WeightInitializers { [Item("ExponentialWeightsInitializer", "Assigned exponentially increasing weights.")] public class ExponentialWeightsInitializer : NamedItem, IWeightsInitializer { public override bool CanChangeName { get { return false; } } public override bool CanChangeDescription { get { return false; } } [StorableConstructor] protected ExponentialWeightsInitializer(bool deserializing) : base(deserializing) { } protected ExponentialWeightsInitializer(ExponentialWeightsInitializer original, Cloner cloner) : base(original, cloner) { } public ExponentialWeightsInitializer() { name = ItemName; description = ItemDescription; } public override IDeepCloneable Clone(Cloner cloner) { return new ExponentialWeightsInitializer(this, cloner); } #region IWeightsInitializer Members public IEnumerable GetWeights(int nComponents) { for (int i = 0; i