Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/22/10 01:20:49 (14 years ago)
Author:
abeham
Message:

Updated test functions problem #934

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Problems.TestFunctions.SingleObjective/3.3/SingleObjectiveTestFunction.cs

    r3150 r3154  
    8383
    8484    #region Properties
     85    public BoolValue Maximization {
     86      get { return MaximizationParameter.Value; }
     87      set { MaximizationParameter.Value = value; }
     88    }
    8589    public DoubleMatrix Bounds {
    8690      get { return BoundsParameter.Value; }
     
    193197    private void EvaluatorParameter_ValueChanged(object sender, EventArgs e) {
    194198      ParameterizeEvaluator();
     199      Maximization.Value = Evaluator.Maximization;
     200      BoundsParameter.Value = Evaluator.Bounds;
     201      if (ProblemSize.Value < Evaluator.MinimumProblemSize)
     202        ProblemSize.Value = Evaluator.MinimumProblemSize;
     203      else if (ProblemSize.Value > Evaluator.MaximumProblemSize)
     204        ProblemSize.Value = Evaluator.MaximumProblemSize;
     205      BestKnownQuality = new DoubleValue(Evaluator.BestKnownQuality);
    195206      Evaluator_QualityParameter_ActualNameChanged(null, EventArgs.Empty);
    196207    }
     
    200211    private void VisualizerParameter_ValueChanged(object sender, EventArgs e) {
    201212      ParameterizeVisualizer();
     213    }
     214    private void BoundsParameter_ValueChanged(object sender, EventArgs e) {
     215      Bounds.ToStringChanged += new EventHandler(Bounds_ToStringChanged);
     216      Bounds_ToStringChanged(null, EventArgs.Empty);
     217    }
     218    private void Bounds_ToStringChanged(object sender, EventArgs e) {
     219      if (Bounds.Columns != 2 || Bounds.Rows < 1)
     220        Bounds = new DoubleMatrix(1, 2);
     221    }
     222    private void Bounds_ItemChanged(object sender, EventArgs<int, int> e) {
     223      if (e.Value2 == 0 && Bounds[e.Value, 1] <= Bounds[e.Value, 0])
     224        Bounds[e.Value, 1] = Bounds[e.Value, 0] + 0.1;
     225      if (e.Value2 == 1 && Bounds[e.Value, 0] >= Bounds[e.Value, 1])
     226        Bounds[e.Value, 0] = Bounds[e.Value, 1] - 0.1;
    202227    }
    203228    #endregion
     
    209234      ProblemSizeParameter.ValueChanged += new EventHandler(ProblemSizeParameter_ValueChanged);
    210235      ProblemSize.ValueChanged += new EventHandler(ProblemSize_ValueChanged);
     236      BoundsParameter.ValueChanged += new EventHandler(BoundsParameter_ValueChanged);
     237      Bounds.ToStringChanged += new EventHandler(Bounds_ToStringChanged);
     238      Bounds.ItemChanged += new EventHandler<EventArgs<int, int>>(Bounds_ItemChanged);
    211239      SolutionCreatorParameter.ValueChanged += new EventHandler(SolutionCreatorParameter_ValueChanged);
    212240      SolutionCreator.RealVectorParameter.ActualNameChanged += new EventHandler(SolutionCreator_RealVectorParameter_ActualNameChanged);
Note: See TracChangeset for help on using the changeset viewer.