Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
02/02/16 14:10:53 (8 years ago)
Author:
abeham
Message:

#2457:

  • Added stripped-down version of FLA branch
  • Added appropriate calculators
  • Fixed detecting maximization in RLD view
Location:
branches/PerformanceComparison/HeuristicLab.Analysis.FitnessLandscape
Files:
1 added
4 edited
2 copied

Legend:

Unmodified
Added
Removed
  • branches/PerformanceComparison/HeuristicLab.Analysis.FitnessLandscape/3.3/DistanceCalculators/BinaryVectorDistanceCalculator.cs

    r7202 r13583  
    1 using System;
    2 using System.Collections.Generic;
    3 using System.Linq;
    4 using System.Text;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2016 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21
     22using System;
     23using System.Drawing;
     24using HeuristicLab.Common;
     25using HeuristicLab.Common.Resources;
    526using HeuristicLab.Core;
    6 using HeuristicLab.Common.Resources;
     27using HeuristicLab.Encodings.BinaryVectorEncoding;
    728using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    8 using HeuristicLab.Common;
    9 using HeuristicLab.Encodings.BinaryVectorEncoding;
    10 using System.Drawing;
    1129
    1230namespace HeuristicLab.Analysis.FitnessLandscape.DistanceCalculators {
  • branches/PerformanceComparison/HeuristicLab.Analysis.FitnessLandscape/3.3/DistanceCalculators/IItemDistanceCalculator.cs

    r7128 r13583  
    1 using System;
    2 using System.Collections.Generic;
    3 using System.Linq;
    4 using System.Text;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2016 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21
     22using System;
    523using HeuristicLab.Core;
    624
  • branches/PerformanceComparison/HeuristicLab.Analysis.FitnessLandscape/3.3/DistanceCalculators/PermutationDistanceCalculator.cs

    r7202 r13583  
    1 using System;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2016 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21
     22using System;
    223using System.Collections.Generic;
    3 using System.Linq;
    4 using System.Text;
     24using System.Drawing;
     25using HeuristicLab.Common;
     26using HeuristicLab.Common.Resources;
    527using HeuristicLab.Core;
    6 using HeuristicLab.Common.Resources;
     28using HeuristicLab.Encodings.PermutationEncoding;
    729using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    8 using HeuristicLab.Common;
    9 using HeuristicLab.Encodings.BinaryVectorEncoding;
    10 using HeuristicLab.Encodings.PermutationEncoding;
    11 using System.Drawing;
    1230
    1331namespace HeuristicLab.Analysis.FitnessLandscape.DistanceCalculators {
     
    6381        case PermutationTypes.RelativeUndirected: return RelativeDistance(a, b);
    6482        default: throw new NotImplementedException("Unknown permutation type " + a.PermutationType);
    65       }     
     83      }
    6684    }
    6785
    6886    private double AbsoluteDistance(Permutation a, Permutation b) {
    6987      int mismatches = 0;
    70       for (int i = 0; i<a.Length; i++) {
     88      for (int i = 0; i < a.Length; i++) {
    7189        if (a[i] != b[i])
    7290          mismatches++;
     
    87105    }
    88106
    89     private static Point GetEdge(Permutation a, int index) {     
     107    private static Point GetEdge(Permutation a, int index) {
    90108      int start = a[index];
    91       int end = a[(index + 1)%a.Length];
     109      int end = a[(index + 1) % a.Length];
    92110      switch (a.PermutationType) {
    93111        case PermutationTypes.RelativeDirected: return new Point(start, end);
  • branches/PerformanceComparison/HeuristicLab.Analysis.FitnessLandscape/3.3/DistanceCalculators/RealVectorDistanceCalculator.cs

    r12575 r13583  
    1 using System;
    2 using System.Collections.Generic;
    3 using System.Linq;
    4 using System.Text;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2016 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 *
     5 * This file is part of HeuristicLab.
     6 *
     7 * HeuristicLab is free software: you can redistribute it and/or modify
     8 * it under the terms of the GNU General Public License as published by
     9 * the Free Software Foundation, either version 3 of the License, or
     10 * (at your option) any later version.
     11 *
     12 * HeuristicLab is distributed in the hope that it will be useful,
     13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     15 * GNU General Public License for more details.
     16 *
     17 * You should have received a copy of the GNU General Public License
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     19 */
     20#endregion
     21
     22using System;
     23using System.Drawing;
     24using HeuristicLab.Common;
     25using HeuristicLab.Common.Resources;
    526using HeuristicLab.Core;
    6 using HeuristicLab.Common.Resources;
     27using HeuristicLab.Encodings.BinaryVectorEncoding;
     28using HeuristicLab.Encodings.RealVectorEncoding;
    729using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    8 using HeuristicLab.Common;
    9 using HeuristicLab.Encodings.BinaryVectorEncoding;
    10 using System.Drawing;
    11 using HeuristicLab.Encodings.RealVectorEncoding;
    1230
    1331namespace HeuristicLab.Analysis.FitnessLandscape.DistanceCalculators {
     
    1533  [Item("RealVectorDistanceCalculator", "Calculates the Euclidian distance of two real vectors")]
    1634  [StorableClass]
    17   public class RealVectorDistanceCalculator: NamedItem, IItemDistanceCalculator {
     35  public class RealVectorDistanceCalculator : NamedItem, IItemDistanceCalculator {
    1836
    1937    #region Properties
     
    5270
    5371    public double Distance(IItem x, IItem y) {
    54       RealVector a = (RealVector )x;
    55       RealVector b = (RealVector )y;
     72      RealVector a = (RealVector)x;
     73      RealVector b = (RealVector)y;
    5674      if (a.Length != b.Length)
    5775        throw new InvalidOperationException("Cannot compare vectors of different lengths");
     
    6381    }
    6482
    65     private static double Sqr(double x) { return x*x; }
     83    private static double Sqr(double x) { return x * x; }
    6684
    6785    #endregion
Note: See TracChangeset for help on using the changeset viewer.