Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
07/04/15 16:03:36 (9 years ago)
Author:
gkronber
Message:

#2261: preparations for trunk integration (adapt to current trunk version, add license headers, add comments, improve code quality)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/GBT-trunkintegration/HeuristicLab.Algorithms.DataAnalysis/3.4/GradientBoostedTrees/RegressionTreeModel.cs

    r12589 r12590  
    1 using System;
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2015 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     4 * and the BEACON Center for the Study of Evolution in Action.
     5 *
     6 * This file is part of HeuristicLab.
     7 *
     8 * HeuristicLab is free software: you can redistribute it and/or modify
     9 * it under the terms of the GNU General Public License as published by
     10 * the Free Software Foundation, either version 3 of the License, or
     11 * (at your option) any later version.
     12 *
     13 * HeuristicLab is distributed in the hope that it will be useful,
     14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     16 * GNU General Public License for more details.
     17 *
     18 * You should have received a copy of the GNU General Public License
     19 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     20 */
     21#endregion
     22
    223using System.Collections.Generic;
    324using System.Linq;
     
    728using HeuristicLab.Problems.DataAnalysis;
    829
    9 namespace GradientBoostedTrees {
     30namespace HeuristicLab.Algorithms.DataAnalysis {
    1031  [StorableClass]
    1132  [Item("RegressionTreeModel", "Represents a decision tree for regression.")]
    12   // TODO: Implement a view for this
    1333  public class RegressionTreeModel : NamedItem, IRegressionModel {
    1434
    1535    // trees are represented as a flat array
    16     // object-graph-travesal has problems if this is defined as a struct. TODO investigate...
    17     //[StorableClass]
    1836    public struct TreeNode {
    1937      public readonly static string NO_VARIABLE = string.Empty;
    20       //[Storable]
    2138      public string varName; // name of the variable for splitting or -1 if terminal node
    22       //[Storable]
    2339      public double val; // threshold
    24       //[Storable]
    2540      public int leftIdx;
    26       //[Storable]
    2741      public int rightIdx;
    2842
    29       //public TreeNode() {
    30       //  varName = NO_VARIABLE;
    31       //  leftIdx = -1;
    32       //  rightIdx = -1;
    33       //}
    34       //[StorableConstructor]
    35       //private TreeNode(bool deserializing) { }
    36       public override int GetHashCode()
    37       {
    38         return (leftIdx * rightIdx) ^ val.GetHashCode();
     43      public override int GetHashCode() {
     44        return leftIdx ^ rightIdx ^ val.GetHashCode();
    3945      }
    4046    }
Note: See TracChangeset for help on using the changeset viewer.