Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
04/03/19 15:37:38 (5 years ago)
Author:
mkommend
Message:

#2521: Renamed Solution to EncodedSolution.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2521_ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/MultiObjectiveProblem.cs

    r16723 r16751  
    2121
    2222using System.Linq;
     23using HEAL.Attic;
    2324using HeuristicLab.Common;
    2425using HeuristicLab.Core;
    2526using HeuristicLab.Data;
    2627using HeuristicLab.Parameters;
    27 using HEAL.Attic;
    2828
    2929namespace HeuristicLab.Optimization {
    3030  [StorableType("6F2EC371-0309-4848-B7B1-C9B9C7E3436F")]
    31   public abstract class MultiObjectiveProblem<TEncoding, TSolution> :
    32     Problem<TEncoding, TSolution, MultiObjectiveEvaluator<TSolution>>,
    33     IMultiObjectiveProblem<TEncoding, TSolution>,
    34     IMultiObjectiveProblemDefinition<TEncoding, TSolution>
    35     where TEncoding : class, IEncoding<TSolution>
    36     where TSolution : class, ISolution {
     31  public abstract class MultiObjectiveProblem<TEncoding, TEncodedSolution> :
     32    Problem<TEncoding, TEncodedSolution, MultiObjectiveEvaluator<TEncodedSolution>>,
     33    IMultiObjectiveProblem<TEncoding, TEncodedSolution>,
     34    IMultiObjectiveProblemDefinition<TEncoding, TEncodedSolution>
     35    where TEncoding : class, IEncoding<TEncodedSolution>
     36    where TEncodedSolution : class, IEncodedSolution {
    3737
    3838    [StorableConstructor]
    3939    protected MultiObjectiveProblem(StorableConstructorFlag _) : base(_) { }
    4040
    41     protected MultiObjectiveProblem(MultiObjectiveProblem<TEncoding, TSolution> original, Cloner cloner)
     41    protected MultiObjectiveProblem(MultiObjectiveProblem<TEncoding, TEncodedSolution> original, Cloner cloner)
    4242      : base(original, cloner) {
    4343      ParameterizeOperators();
     
    4949
    5050      Operators.Add(Evaluator);
    51       Operators.Add(new MultiObjectiveAnalyzer<TSolution>());
     51      Operators.Add(new MultiObjectiveAnalyzer<TEncodedSolution>());
    5252
    5353      ParameterizeOperators();
     
    6060
    6161    public abstract bool[] Maximization { get; }
    62     public abstract double[] Evaluate(TSolution individual, IRandom random);
    63     public virtual void Analyze(TSolution[] individuals, double[][] qualities, ResultCollection results, IRandom random) { }
    64    
     62    public abstract double[] Evaluate(TEncodedSolution individual, IRandom random);
     63    public virtual void Analyze(TEncodedSolution[] individuals, double[][] qualities, ResultCollection results, IRandom random) { }
     64
    6565    protected override void OnOperatorsChanged() {
    6666      base.OnOperatorsChanged();
     
    9393
    9494    private void ParameterizeOperators() {
    95       foreach (var op in Operators.OfType<IMultiObjectiveEvaluationOperator<TSolution>>())
     95      foreach (var op in Operators.OfType<IMultiObjectiveEvaluationOperator<TEncodedSolution>>())
    9696        op.EvaluateFunc = Evaluate;
    97       foreach (var op in Operators.OfType<IMultiObjectiveAnalysisOperator<TSolution>>())
     97      foreach (var op in Operators.OfType<IMultiObjectiveAnalysisOperator<TEncodedSolution>>())
    9898        op.AnalyzeAction = Analyze;
    9999    }
Note: See TracChangeset for help on using the changeset viewer.