Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
04/14/10 03:52:07 (14 years ago)
Author:
abeham
Message:

Updated Tabu search, permutation move operators, real vector move operators, binary vector move operators #840
Added a Tabu Search TSP workbench

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Optimization/3.3/TabuMaker.cs

    r3232 r3340  
    3636      get { return (ValueLookupParameter<IntValue>)Parameters["TabuTenure"]; }
    3737    }
     38    public ILookupParameter<DoubleValue> MoveQualityParameter {
     39      get { return (ILookupParameter<DoubleValue>)Parameters["MoveQuality"]; }
     40    }
     41    public ILookupParameter<DoubleValue> QualityParameter {
     42      get { return (ILookupParameter<DoubleValue>)Parameters["Quality"]; }
     43    }
     44    public IValueLookupParameter<BoolValue> MaximizationParameter {
     45      get { return (IValueLookupParameter<BoolValue>)Parameters["Maximization"]; }
     46    }
    3847
    3948    protected TabuMaker()
     
    4150      Parameters.Add(new LookupParameter<ItemList<IItem>>("TabuList", "The tabu list where move attributes are stored."));
    4251      Parameters.Add(new ValueLookupParameter<IntValue>("TabuTenure", "The tenure of the tabu list."));
     52      Parameters.Add(new LookupParameter<DoubleValue>("MoveQuality", "The quality of the move."));
     53      Parameters.Add(new LookupParameter<DoubleValue>("Quality", "The quality of the solution."));
     54      Parameters.Add(new ValueLookupParameter<BoolValue>("Maximization", "True if the problem is a maximization problem, else if it is a minimization problem."));
    4355    }
    4456
     
    5567      }
    5668
    57       tabuList.Add(GetTabuAttribute());
     69      tabuList.Add(GetTabuAttribute(MaximizationParameter.ActualValue.Value, QualityParameter.ActualValue.Value, MoveQualityParameter.ActualValue.Value));
    5870      return base.Apply();
    5971    }
    6072
    61     protected abstract IItem GetTabuAttribute();
     73    protected abstract IItem GetTabuAttribute(bool maximization, double quality, double moveQuality);
    6274  }
    6375}
Note: See TracChangeset for help on using the changeset viewer.