Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
10/17/18 17:51:26 (6 years ago)
Author:
ddorfmei
Message:

#2931:

  • added all available parameters OR-Tools's linear_solver to LinearProgrammingAlgorithm
    • added necessary parameter enums
  • moved solving logic to Solver
    • created IncrementalSolver, ExternalSolver, ExternalIncrementalSolver
    • added logic for solvers that can be stopped and resumed
  • added SupportsStop property to BasicAlgorithm
  • added quality per time chart for incremental solvers
Location:
branches/2931_OR-Tools_LP_MIP/HeuristicLab.MathematicalOptimization/3.3/LinearProgramming/Algorithms/Solvers
Files:
1 added
1 moved

Legend:

Unmodified
Added
Removed
  • branches/2931_OR-Tools_LP_MIP/HeuristicLab.MathematicalOptimization/3.3/LinearProgramming/Algorithms/Solvers/GlopSolver.cs

    r16232 r16233  
    11using HeuristicLab.Core;
    22using HeuristicLab.Data;
    3 using HeuristicLab.Parameters;
     3using HeuristicLab.MathematicalOptimization.LinearProgramming.Algorithms.Solvers.Base;
    44using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    55
    6 namespace HeuristicLab.MathematicalOptimization.LinearProgramming.Algorithms {
     6namespace HeuristicLab.MathematicalOptimization.LinearProgramming.Algorithms.Solvers {
     7
    78  [Item("Glop", "Glop (https://developers.google.com/optimization/lp/glop) can be used out of the box.")]
    89  [StorableClass]
    9   public class GlopSolver : Solver {
     10  public class GlopSolver : IncrementalSolver {
    1011
    1112    public GlopSolver() {
    12       Parameters.Remove(programmingTypeParam);
    13       Parameters.Add(programmingTypeParam = new FixedValueParameter<EnumValue<LinearProgrammingType>>(nameof(LinearProgrammingType),
    14         (EnumValue<LinearProgrammingType>)new EnumValue<LinearProgrammingType>().AsReadOnly()));
     13      programmingTypeParam.Value = (EnumValue<LinearProgrammingType>)programmingTypeParam.Value.AsReadOnly();
    1514    }
    1615
    1716    public override OptimizationProblemType OptimizationProblemType => OptimizationProblemType.GLOP_LINEAR_PROGRAMMING;
     17    public override bool SupportsPause => true;
     18    public override bool SupportsStop => true;
    1819  }
    1920}
Note: See TracChangeset for help on using the changeset viewer.