Class Optimisation.Options

    • Field Detail

      • experimental

        public boolean experimental
        This may turn on various experimental features. If you do not know exactly what you want to turn on, for the specific version you're using, then always leave this 'false'.
      • feasibility

        public NumberContext feasibility
        Used to determine/validate feasibility. Are the variables within their bounds or not, are the constraints violated or not? are the variable values integer or not?

        Primarily used in ExpressionsBasedModel. Not used (should not be) as part of solver logic, but ouside the solvers to validate their results.

      • iterations_abort

        public int iterations_abort
        The maximmum number of iterations allowed for the solve() command.
      • iterations_suffice

        public int iterations_suffice
        Calculations will be terminated after this number of iterations if a feasible solution has been found. If no feasible solution has been found calculations will continue until one is found or iterations_abort is reached. This option is, probably, only of interest with the IntegerSolver.
      • logger_appender

        public BasicLogger logger_appender
        If this is null nothing is printed, if it is not null then progress/debug messages are printed to that BasicLogger.
      • logger_detailed

        public boolean logger_detailed
        Detailed (debug) logging or not.
      • print

        public NumberContext print
        For display only! Object.toString() and log message formatting.
      • solution

        public NumberContext solution
        Describes the (required/sufficient) accuracy of the solution. It is used when copying the solver's solution back to the model (converting from double to BigDecimal). Specific solvers may also use this as a stopping criteria or similar. The default essentially copies the numbers as is – corresponding to full double precision – but with no more than 14 decimals.
      • sparse

        public java.lang.Boolean sparse
        Controls if sparse/iterative solvers should be favoured over dense/direct alternatives. Sparse/iterative alternatives are usually preferable with larger models, but there are also algorithmical differences that could make one alternative better than the other for a (your) specific case. There are 3 different possibilities for this option:
        1. TRUE Will use the sparse linear solver and the iterative convex solver.
        2. FALSE Will use the dense linear solver and the direct convex solver.
        3. NULL ojAlgo will use some logic to choose for you. This is the default. Currently, the dense LinearSolver and the iterative ConvexSolver will be used. In the vast majority of cases these are the best alternatives.
        In most cases you do not need to worry about this configuration option - leave this choice to ojAlgo.
      • time_abort

        public long time_abort
        The maximmum number of millis allowed for the solve() command. Executions will be aborted regardless of if a solution has been found or not.
      • time_suffice

        public long time_suffice
        Calculations will be terminated after this amount of time if a feasible solution has been found. If no feasible solution has been found calculations will continue until one is found or time_abort is reached. This option is , probably, only of interest with the IntegerSolver.
      • validate

        public boolean validate
        If true models and solvers will validate data at various points. Validation is turned off by default. Turning it on will significantly slow down execution - even very expensive validation may be performed.
      • myConfigurator

        private java.lang.Object myConfigurator
    • Constructor Detail

      • Options

        public Options()