Class AbstractLinearOptimizer

  • All Implemented Interfaces:
    LinearOptimizer
    Direct Known Subclasses:
    SimplexSolver

    @Deprecated
    public abstract class AbstractLinearOptimizer
    extends java.lang.Object
    implements LinearOptimizer
    Deprecated.
    As of 3.1 (to be removed in 4.0).
    Base class for implementing linear optimizers.

    This base class handles the boilerplate methods associated to thresholds settings and iterations counters.

    Since:
    2.0
    • Field Detail

      • DEFAULT_MAX_ITERATIONS

        public static final int DEFAULT_MAX_ITERATIONS
        Deprecated.
        Default maximal number of iterations allowed.
        See Also:
        Constant Field Values
      • linearConstraints

        private java.util.Collection<LinearConstraint> linearConstraints
        Deprecated.
        Linear constraints.
        Since:
        2.1
      • nonNegative

        private boolean nonNegative
        Deprecated.
        Whether to restrict the variables to non-negative values.
        Since:
        2.1
      • maxIterations

        private int maxIterations
        Deprecated.
        Maximal number of iterations allowed.
      • iterations

        private int iterations
        Deprecated.
        Number of iterations already performed.
    • Constructor Detail

      • AbstractLinearOptimizer

        protected AbstractLinearOptimizer()
        Deprecated.
        Simple constructor with default settings.

        The maximal number of evaluation is set to its default value.

    • Method Detail

      • restrictToNonNegative

        protected boolean restrictToNonNegative()
        Deprecated.
        Returns:
        true if the variables are restricted to non-negative values.
      • getGoalType

        protected GoalType getGoalType()
        Deprecated.
        Returns:
        the optimization type.
      • getConstraints

        protected java.util.Collection<LinearConstraint> getConstraints()
        Deprecated.
        Returns:
        the optimization type.
      • setMaxIterations

        public void setMaxIterations​(int maxIterations)
        Deprecated.
        Set the maximal number of iterations of the algorithm.
        Specified by:
        setMaxIterations in interface LinearOptimizer
        Parameters:
        maxIterations - maximal number of function calls
      • getMaxIterations

        public int getMaxIterations()
        Deprecated.
        Get the maximal number of iterations of the algorithm.
        Specified by:
        getMaxIterations in interface LinearOptimizer
        Returns:
        maximal number of iterations
      • getIterations

        public int getIterations()
        Deprecated.
        Get the number of iterations realized by the algorithm.

        The number of evaluations corresponds to the last call to the optimize method. It is 0 if the method has not been called yet.

        Specified by:
        getIterations in interface LinearOptimizer
        Returns:
        number of iterations
      • doOptimize

        protected abstract PointValuePair doOptimize()
                                              throws MathIllegalStateException
        Deprecated.
        Perform the bulk of optimization algorithm.
        Returns:
        the point/value pair giving the optimal value for objective function
        Throws:
        MathIllegalStateException - if no solution fulfilling the constraints can be found in the allowed number of iterations