Free cookie consent management tool by TermsFeed Policy Generator

source: branches/LearningClassifierSystems/HeuristicLab.Encodings.ConditionActionEncoding/3.3/IClassifier.cs @ 9167

Last change on this file since 9167 was 9167, checked in by sforsten, 11 years ago

#1980:

  • change standard parameter settings in ConditionActionClassificationProblem
  • fixed bug: if a parent is copied instead of a crossover, the new individual is inserted in the population correctly
  • added missing attributes to ConditionActionClassificationProblemData
File size: 1.7 KB
Line 
1#region License Information
2/* HeuristicLab
3 * Copyright (C) 2002-2012 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 HeuristicLab.Core;
24
25namespace HeuristicLab.Encodings.ConditionActionEncoding {
26  /// <summary>
27  /// IMatching is used in dictinoaries, therefore the methods "Equals" and "GetHashCode" have to be overriden
28  /// IEquatable<IMatching> should be implemented as well.
29  ///
30  /// This also helps to implement macroclassifiers later on
31  /// </summary>
32  public interface IClassifier : IItem, IEquatable<IClassifier> {
33    IClassifier Condition { get; }
34    IClassifier Action { get; }
35    bool MatchCondition(IClassifier target);
36    bool MatchAction(IClassifier target);
37    bool IsMoreGeneral(IClassifier target);
38
39    //to use IMatching as key in a dictionary, Equals and GetHashCode have to be override.
40    //Also IEquatable<Class> should be implemented.
41    bool Equals(object obj);
42    int GetHashCode();
43
44    //test
45    bool Identical(IClassifier classifier);
46  }
47}
Note: See TracBrowser for help on using the repository browser.