Changeset 13336 for branches/ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/Interfaces
- Timestamp:
- 11/23/15 15:15:27 (8 years ago)
- Location:
- branches/ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/Interfaces
- Files:
-
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/Interfaces/IEncoding.cs
r12012 r13336 25 25 26 26 namespace HeuristicLab.Optimization { 27 public interface IEncoding : IParameterizedNamedItem { 28 ISolutionCreator SolutionCreator { get; set; } 27 public interface IEncoding<TSolution> : IParameterizedNamedItem 28 where TSolution : class, ISolution { 29 ISolutionCreator<TSolution> SolutionCreator { get; set; } 29 30 IEnumerable<IOperator> Operators { get; set; } 30 31 31 Individual GetIndividual(IScope scope);32 32 void ConfigureOperator(IOperator @operator); 33 33 void ConfigureOperators(IEnumerable<IOperator> operators); … … 36 36 event EventHandler OperatorsChanged; 37 37 } 38 39 38 40 } -
branches/ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/Interfaces/IEncodingOperator.cs
r12012 r13336 23 23 24 24 namespace HeuristicLab.Optimization { 25 public interface IEncodingOperator : IOperator{26 ILookupParameter<IEncoding > EncodingParameter { get; }25 public interface IEncodingOperator<TSolution> : IOperator where TSolution : class, ISolution{ 26 ILookupParameter<IEncoding<TSolution>> EncodingParameter { get; } 27 27 } 28 28 } -
branches/ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/Interfaces/IMultiEncodingOperator.cs
r12012 r13336 23 23 24 24 namespace HeuristicLab.Optimization { 25 public interface IMultiEncodingOperator : IOperator{26 void AddEncoding(IEncoding encoding);27 bool RemoveEncoding(IEncoding encoding);25 public interface IMultiEncodingOperator<TSolution> : IOperator where TSolution : class,ISolution { 26 void AddEncoding(IEncoding<TSolution> encoding); 27 bool RemoveEncoding(IEncoding<TSolution> encoding); 28 28 } 29 29 } -
branches/ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/Interfaces/IMultiObjectiveProblemDefinition.cs
r12012 r13336 23 23 24 24 namespace HeuristicLab.Optimization { 25 public interface IMultiObjectiveProblemDefinition : IProblemDefinition { 25 public interface IMultiObjectiveProblemDefinition<TSolution> : IProblemDefinition 26 where TSolution : class, ISolution { 26 27 bool[] Maximization { get; } 27 double[] Evaluate( Individualindividual, IRandom random);28 void Analyze( Individual[] individuals, double[][] qualities, ResultCollection results, IRandom random);28 double[] Evaluate(TSolution individual, IRandom random); 29 void Analyze(TSolution[] individuals, double[][] qualities, ResultCollection results, IRandom random); 29 30 } 30 31 } -
branches/ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/Interfaces/IProblemDefinition.cs
r12012 r13336 22 22 namespace HeuristicLab.Optimization { 23 23 public interface IProblemDefinition { 24 IEncoding Encoding { get; }24 //IEncoding Encoding { get; } 25 25 } 26 26 } -
branches/ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/Interfaces/ISingleObjectiveProblemDefinition.cs
r12012 r13336 24 24 25 25 namespace HeuristicLab.Optimization { 26 public interface ISingleObjectiveProblemDefinition : IProblemDefinition { 26 public interface ISingleObjectiveProblemDefinition<TSolution> : IProblemDefinition 27 where TSolution : class, ISolution { 27 28 bool Maximization { get; } 28 double Evaluate( Individualindividual, IRandom random);29 void Analyze( Individual[] individuals, double[] qualities, ResultCollection results, IRandom random);30 IEnumerable< Individual> GetNeighbors(Individualindividual, IRandom random);29 double Evaluate(TSolution individual, IRandom random); 30 void Analyze(TSolution[] individuals, double[] qualities, ResultCollection results, IRandom random); 31 IEnumerable<TSolution> GetNeighbors(TSolution individual, IRandom random); 31 32 } 32 33 } -
branches/ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/Interfaces/internal/IMultiObjectiveAnalysisOperator.cs
r12012 r13336 24 24 25 25 namespace HeuristicLab.Optimization { 26 internal interface IMultiObjectiveAnalysisOperator : IEncodingOperator, IAnalyzer, IMultiObjectiveOperator { 27 Action<Individual[], double[][], ResultCollection, IRandom> AnalyzeAction { get; set; } 26 internal interface IMultiObjectiveAnalysisOperator<TSolution> : IEncodingOperator<TSolution>, IAnalyzer, IMultiObjectiveOperator 27 where TSolution : class, ISolution { 28 Action<TSolution[], double[][], ResultCollection, IRandom> AnalyzeAction { get; set; } 28 29 } 29 30 } -
branches/ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/Interfaces/internal/IMultiObjectiveEvaluationOperator.cs
r12012 r13336 24 24 25 25 namespace HeuristicLab.Optimization { 26 internal interface IMultiObjectiveEvaluationOperator : IMultiObjectiveEvaluator, IEncodingOperator { 27 Func<Individual, IRandom, double[]> EvaluateFunc { get; set; } 26 internal interface IMultiObjectiveEvaluationOperator<TSolution> : IMultiObjectiveEvaluator, IEncodingOperator<TSolution> 27 where TSolution : class, ISolution { 28 Func<TSolution, IRandom, double[]> EvaluateFunc { get; set; } 28 29 } 29 30 } -
branches/ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/Interfaces/internal/INeighborBasedOperator.cs
r12012 r13336 25 25 26 26 namespace HeuristicLab.Optimization { 27 internal interface INeighborBasedOperator : IEncodingOperator { 28 Func<Individual, IRandom, IEnumerable<Individual>> GetNeighborsFunc { get; set; } 27 internal interface INeighborBasedOperator<TSolution> : IEncodingOperator<TSolution> 28 where TSolution : class, ISolution { 29 Func<TSolution, IRandom, IEnumerable<TSolution>> GetNeighborsFunc { get; set; } 29 30 } 30 31 } -
branches/ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/Interfaces/internal/ISingleObjectiveAnalysisOperator.cs
r12012 r13336 24 24 25 25 namespace HeuristicLab.Optimization { 26 internal interface ISingleObjectiveAnalysisOperator : IEncodingOperator, ISingleObjectiveOperator { 27 Action<Individual[], double[], ResultCollection, IRandom> AnalyzeAction { get; set; } 26 internal interface ISingleObjectiveAnalysisOperator<TSolution> : IEncodingOperator<TSolution>, ISingleObjectiveOperator 27 where TSolution : class, ISolution { 28 Action<TSolution[], double[], ResultCollection, IRandom> AnalyzeAction { get; set; } 28 29 } 29 30 } -
branches/ProblemRefactoring/HeuristicLab.Optimization/3.3/BasicProblems/Interfaces/internal/ISingleObjectiveEvaluationOperator.cs
r12012 r13336 24 24 25 25 namespace HeuristicLab.Optimization { 26 internal interface ISingleObjectiveEvaluationOperator : ISingleObjectiveEvaluator, IEncodingOperator { 27 Func<Individual, IRandom, double> EvaluateFunc { get; set; } 26 internal interface ISingleObjectiveEvaluationOperator<TSolution> : ISingleObjectiveEvaluator, IEncodingOperator<TSolution> 27 where TSolution : class, ISolution { 28 Func<TSolution, IRandom, double> EvaluateFunc { get; set; } 28 29 } 29 30 }
Note: See TracChangeset
for help on using the changeset viewer.