Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/12/21 16:42:21 (3 years ago)
Author:
gkronber
Message:

#3076: refactoring to prepare for trunk reintegration

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/3076_IA_evaluators_analyzers_reintegration/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SymbolicRegressionConstraintAnalyzer.cs

    r17821 r17892  
    1 using System;
    2 using System.Collections.Generic;
    3 using System.Collections.ObjectModel;
    4 using System.Linq;
    5 using System.Threading;
     1using System.Linq;
    62using HEAL.Attic;
    73using HeuristicLab.Analysis;
    84using HeuristicLab.Common;
    95using HeuristicLab.Core;
    10 using HeuristicLab.Data;
    116using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
    127using HeuristicLab.Optimization;
    13 using HeuristicLab.Optimization.Operators;
    148using HeuristicLab.Parameters;
    159
     
    3731    public static int Iterations { get; set; } = 0;
    3832
    39     public IBoundsEstimator BoundsEstimator { get; set; } = new IABoundsEstimator();
     33    public IBoundsEstimator BoundsEstimator { get; set; } = new IntervalArithBoundsEstimator();
    4034
    4135    [StorableConstructor]
     
    10599
    106100      var results = ResultCollectionParameter.ActualValue;
    107       var constraints = problemData.IntervalConstraints.EnabledConstraints;
     101      var constraints = problemData.ShapeConstraints.EnabledConstraints;
    108102      var variableRanges = problemData.VariableRanges.GetReadonlyDictionary();
    109103      var intervalCollection = problemData.VariableRanges;
    110104      var newDataTable = ConstraintViolationParameter.ActualValue;
    111       var solutions = this.SymbolicExpressionTree.ToArray();
     105      var solutions = SymbolicExpressionTree.ToArray();
    112106
    113107      if (newDataTable.Rows.Count == 0)
    114108        foreach (var constraint in constraints)
    115           newDataTable.Rows.Add(new DataRow(constraint.Expression));
     109          newDataTable.Rows.Add(new DataRow(constraint.ToString()));
    116110
    117111      foreach (var constraint in constraints) {
    118         var violations = trees.Count(tree => IntervalUtil.IntervalConstraintViolation(constraint, BoundsEstimator, intervalCollection, tree) > 0.0);
     112        var violations = trees.Count(tree => IntervalUtil.GetConstraintViolation(constraint, BoundsEstimator, intervalCollection, tree) > 0.0);
    119113
    120         newDataTable.Rows[constraint.Expression].Values.Add(violations);
     114        newDataTable.Rows[constraint.ToString()].Values.Add(violations);
    121115      }
    122116
     
    127121      constraintUnsatisfiedSolutionsDataTable.Rows[ConstraintUnsatisfiedSolutionsParameterName]
    128122        .Values
    129         .Add(solutions.Count(s => IntervalUtil.IntervalConstraintsViolation(constraints, BoundsEstimator, intervalCollection, s).Any(x => x != 0.0)));
     123        .Add(solutions.Count(s => IntervalUtil.GetConstraintViolations(constraints, BoundsEstimator, intervalCollection, s).Any(x => x != 0.0)));
    130124
    131125      return base.Apply();
Note: See TracChangeset for help on using the changeset viewer.