# Changeset 1992

Ignore:
Timestamp:
Jun 4, 2012 8:27:18 AM (7 years ago)
Message:

Merge with trunk and create up to date documentation

Location:
stable/1.6/Bonmin
Files:
11 edited

Unmodified
Removed
• ## stable/1.6/Bonmin

• Property svn:mergeinfo changed /trunk/Bonmin merged: 1973,​1975,​1977,​1979-1981,​1984-1985,​1987,​1989,​1991
• ## stable/1.6/Bonmin/doc/Install.tex

 r1974 \begin{verbatim} with_cplex_lib="-L/usr/ilog/cplex/lib/ -lcplex -lpthread" with_cplex_incdir="/usr/ilog/cplex/include/ilcplex -lm" with_cplex_lib="-L/usr/ilog/cplex/lib/ -lcplex -lpthread -lm" with_cplex_incdir="/usr/ilog/cplex/include/ilcplex" \end{verbatim}
• ## stable/1.6/Bonmin/doc/bonmin.sty

• ## stable/1.6/Bonmin/doc/options_list_bonmin_content.tex

 r1952     \label{sec:Algorithm_choice} \htmlanchor{sec:Algorithm_choice} \htmlanchor{sec:algorithm} \paragraph{algorithm:}\label{sec:algorithm} Choice of the algorithm. $\;$ \\ This will preset some of the options of bonmin \label{sec:Branch-and-bound_options} \htmlanchor{sec:Branch-and-bound_options} \htmlanchor{sec:allowable_fraction_gap} \paragraph{allowable\_fraction\_gap:}\label{sec:allowable_fraction_gap} Specify the value of relative gap under which the algorithm stops. $\;$ \\ Stop the tree search when the gap between the \htmlanchor{sec:allowable_gap} \paragraph{allowable\_gap:}\label{sec:allowable_gap} Specify the value of absolute gap under which the algorithm stops. $\;$ \\ Stop the tree search when the gap between the \htmlanchor{sec:cutoff} \paragraph{cutoff:}\label{sec:cutoff} Specify cutoff value. $\;$ \\ cutoff should be the value of a feasible solution \htmlanchor{sec:cutoff_decr} \paragraph{cutoff\_decr:}\label{sec:cutoff_decr} Specify cutoff decrement. $\;$ \\ Specify the amount by which cutoff is decremented \htmlanchor{sec:enable_dynamic_nlp} \paragraph{enable\_dynamic\_nlp:}\label{sec:enable_dynamic_nlp} Enable dynamic linear and quadratic rows addition in nlp $\;$ \\ \end{itemize} \htmlanchor{sec:integer_tolerance} \paragraph{integer\_tolerance:}\label{sec:integer_tolerance} Set integer tolerance. $\;$ \\ Any number within that value of an integer is \htmlanchor{sec:iteration_limit} \paragraph{iteration\_limit:}\label{sec:iteration_limit} Set the cumulated maximum number of iteration in the algorithm used to process nodes continuous relaxations in the branch-and-bound. $\;$ \\ value 0 deactivates option. The valid range for this integer option is \htmlanchor{sec:nlp_failure_behavior} \paragraph{nlp\_failure\_behavior:}\label{sec:nlp_failure_behavior} Set the behavior when an NLP or a series of NLP are unsolved by Ipopt (we call unsolved an NLP for which Ipopt is not able to guarantee optimality within the specified tolerances). $\;$ \\ If set to "fathom", the algorithm will fathom the \end{itemize} \htmlanchor{sec:node_comparison} \paragraph{node\_comparison:}\label{sec:node_comparison} Choose the node selection strategy. $\;$ \\ Choose the strategy for selecting the next node \end{itemize} \htmlanchor{sec:node_limit} \paragraph{node\_limit:}\label{sec:node_limit} Set the maximum number of nodes explored in the branch-and-bound search. $\;$ \\ The valid range for this integer option is \htmlanchor{sec:num_cut_passes} \paragraph{num\_cut\_passes:}\label{sec:num_cut_passes} Set the maximum number of cut passes at regular nodes of the branch-and-cut. $\;$ \\ The valid range for this integer option is \htmlanchor{sec:num_cut_passes_at_root} \paragraph{num\_cut\_passes\_at\_root:}\label{sec:num_cut_passes_at_root} Set the maximum number of cut passes at regular nodes of the branch-and-cut. $\;$ \\ The valid range for this integer option is \htmlanchor{sec:number_before_trust} \paragraph{number\_before\_trust:}\label{sec:number_before_trust} Set the number of branches on a variable before its pseudo costs are to be believed in dynamic strong branching. $\;$ \\ A value of 0 disables pseudo costs. The valid range for this integer option is \htmlanchor{sec:number_strong_branch} \paragraph{number\_strong\_branch:}\label{sec:number_strong_branch} Choose the maximum number of variables considered for strong branching. $\;$ \\ Set the number of variables on which to do strong \htmlanchor{sec:read_solution_file} \paragraph{random\_generator\_seed:}\label{sec:random_generator_seed} Set seed for random number generator (a value of -1 sets seeds to time since Epoch). $\;$ \\ The valid range for this integer option is $-1 \le {\tt random\_generator\_seed } < {\tt +inf}$ and its default value is $0$. \paragraph{read\_solution\_file:}\label{sec:read_solution_file} Read a file with the optimal solution to test if algorithms cuts it. $\;$ \\ For Debugging purposes only. \end{itemize} \htmlanchor{sec:solution_limit} \paragraph{solution\_limit:}\label{sec:solution_limit} Abort after that much integer feasible solution have been found by algorithm $\;$ \\ value 0 deactivates option The valid range for this integer option is \htmlanchor{sec:sos_constraints} \paragraph{sos\_constraints:}\label{sec:sos_constraints} Wether or not to activate SOS constraints. $\;$ \\ (only type 1 SOS are supported at the moment) \end{itemize} \htmlanchor{sec:time_limit} \paragraph{time\_limit:}\label{sec:time_limit} Set the global maximum computation time (in secs) for the algorithm. $\;$ \\ The valid range for this real option is \htmlanchor{sec:tree_search_strategy} \paragraph{tree\_search\_strategy:}\label{sec:tree_search_strategy} Pick a strategy for traversing the tree $\;$ \\ All strategies can be used in conjunction with \end{itemize} \htmlanchor{sec:variable_selection} \paragraph{variable\_selection:}\label{sec:variable_selection} Chooses variable selection strategy $\;$ \\ The default value for this string option is "strong-branching". The default value for this string option is "osi-strong". \\ Possible values: \label{sec:MILP_cutting_planes_in_hybrid} \htmlanchor{sec:MILP_cutting_planes_in_hybrid} \htmlanchor{sec:2mir_cuts} \paragraph{2mir\_cuts:}\label{sec:2mir_cuts} Frequency (in terms of nodes) for generating 2-MIR cuts in branch-and-cut $\;$ \\ If $k > 0$, cuts are generated every k nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if If $k > 0$, cuts are generated every $k$ nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if $k=-99$ generate cuts only at the root node, if $k=0$ or $100$ do not generate cuts. The valid range for this integer option is \htmlanchor{sec:Gomory_cuts} \paragraph{Gomory\_cuts:}\label{sec:Gomory_cuts} Frequency k (in terms of nodes) for generating Gomory cuts in branch-and-cut. $\;$ \\ If $k > 0$, cuts are generated every k nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if If $k > 0$, cuts are generated every $k$ nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if $k=-99$ generate cuts only at the root node, if $k=0$ or $100$ do not generate cuts. The valid range for this integer option is \htmlanchor{sec:clique_cuts} \paragraph{clique\_cuts:}\label{sec:clique_cuts} Frequency (in terms of nodes) for generating clique cuts in branch-and-cut $\;$ \\ If $k > 0$, cuts are generated every k nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if If $k > 0$, cuts are generated every $k$ nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if $k=-99$ generate cuts only at the root node, if $k=0$ or $100$ do not generate cuts. The valid range for this integer option is \htmlanchor{sec:cover_cuts} \paragraph{cover\_cuts:}\label{sec:cover_cuts} Frequency (in terms of nodes) for generating cover cuts in branch-and-cut $\;$ \\ If $k > 0$, cuts are generated every k nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if If $k > 0$, cuts are generated every $k$ nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if $k=-99$ generate cuts only at the root node, if $k=0$ or $100$ do not generate cuts. The valid range for this integer option is \htmlanchor{sec:flow_cover_cuts} \paragraph{flow\_cover\_cuts:}\label{sec:flow_cover_cuts} Frequency (in terms of nodes) for generating flow cover cuts in branch-and-cut $\;$ \\ If $k > 0$, cuts are generated every k nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if If $k > 0$, cuts are generated every $k$ nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if $k=-99$ generate cuts only at the root node, if $k=0$ or $100$ do not generate cuts. The valid range for this integer option is \htmlanchor{sec:lift_and_project_cuts} \paragraph{lift\_and\_project\_cuts:}\label{sec:lift_and_project_cuts} Frequency (in terms of nodes) for generating lift-and-project cuts in branch-and-cut $\;$ \\ If $k > 0$, cuts are generated every k nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if If $k > 0$, cuts are generated every $k$ nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if $k=-99$ generate cuts only at the root node, if $k=0$ or $100$ do not generate cuts. The valid range for this integer option is \htmlanchor{sec:mir_cuts} \paragraph{mir\_cuts:}\label{sec:mir_cuts} Frequency (in terms of nodes) for generating MIR cuts in branch-and-cut $\;$ \\ If $k > 0$, cuts are generated every k nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if If $k > 0$, cuts are generated every $k$ nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if $k=-99$ generate cuts only at the root node, if $k=0$ or $100$ do not generate cuts. The valid range for this integer option is \htmlanchor{sec:reduce_and_split_cuts} \paragraph{reduce\_and\_split\_cuts:}\label{sec:reduce_and_split_cuts} Frequency (in terms of nodes) for generating reduce-and-split cuts in branch-and-cut $\;$ \\ If $k > 0$, cuts are generated every k nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if If $k > 0$, cuts are generated every $k$ nodes, if $-99 < k < 0$ cuts are generated every $-k$ nodes but Cbc may decide to stop generating cuts, if not enough are generated at the root node, if $k=-99$ generate cuts only at the root node, if $k=0$ or $100$ do not generate cuts. The valid range for this integer option is \label{sec:MINLP_Heuristics} \htmlanchor{sec:MINLP_Heuristics} \htmlanchor{sec:feasibility_pump_objective_norm} \paragraph{feasibility\_pump\_objective\_norm:}\label{sec:feasibility_pump_objective_norm} Norm of feasibility pump objective function $\;$ \\ The valid range for this integer option is \htmlanchor{sec:heuristic_RINS} \paragraph{heuristic\_RINS:}\label{sec:heuristic_RINS} if yes runs the RINS heuristic $\;$ \\ \end{itemize} \htmlanchor{sec:heuristic_dive_MIP_fractional} \paragraph{heuristic\_dive\_MIP\_fractional:}\label{sec:heuristic_dive_MIP_fractional} if yes runs the Dive MIP Fractional heuristic $\;$ \\ \end{itemize} \htmlanchor{sec:heuristic_dive_MIP_vectorLength} \paragraph{heuristic\_dive\_MIP\_vectorLength:}\label{sec:heuristic_dive_MIP_vectorLength} if yes runs the Dive MIP VectorLength heuristic $\;$ \\ \end{itemize} \htmlanchor{sec:heuristic_dive_fractional} \paragraph{heuristic\_dive\_fractional:}\label{sec:heuristic_dive_fractional} if yes runs the Dive Fractional heuristic $\;$ \\ \end{itemize} \htmlanchor{sec:heuristic_dive_vectorLength} \paragraph{heuristic\_dive\_vectorLength:}\label{sec:heuristic_dive_vectorLength} if yes runs the Dive VectorLength heuristic $\;$ \\ \end{itemize} \htmlanchor{sec:heuristic_feasibility_pump} \paragraph{heuristic\_feasibility\_pump:}\label{sec:heuristic_feasibility_pump} whether the heuristic feasibility pump should be used $\;$ \\ \end{itemize} \htmlanchor{sec:pump_for_minlp} \paragraph{pump\_for\_minlp:}\label{sec:pump_for_minlp} if yes runs FP for MINLP $\;$ \\ \label{sec:Nlp_solution_robustness} \htmlanchor{sec:Nlp_solution_robustness} \htmlanchor{sec:max_consecutive_failures} \paragraph{max\_consecutive\_failures:}\label{sec:max_consecutive_failures} (temporarily removed) Number $n$ of consecutive unsolved problems before aborting a branch of the tree. $\;$ \\ When $n > 0$, continue exploring a branch of the \htmlanchor{sec:max_random_point_radius} \paragraph{max\_random\_point\_radius:}\label{sec:max_random_point_radius} Set max value r for coordinate of a random point. $\;$ \\ When picking a random point, coordinate i will be \htmlanchor{sec:num_iterations_suspect} \paragraph{num\_iterations\_suspect:}\label{sec:num_iterations_suspect} Number of iterations over which a node is considered "suspect" (for debugging purposes only, see detailed documentation). $\;$ \\ When the number of iterations to solve a node is \htmlanchor{sec:num_retry_unsolved_random_point} \paragraph{num\_retry\_unsolved\_random\_point:}\label{sec:num_retry_unsolved_random_point} Number $k$ of times that the algorithm will try to resolve an unsolved NLP with a random starting point (we call unsolved an NLP for which Ipopt is not able to guarantee optimality within the specified tolerances). $\;$ \\ When Ipopt fails to solve a continuous NLP \htmlanchor{sec:random_point_perturbation_interval} \paragraph{random\_point\_perturbation\_interval:}\label{sec:random_point_perturbation_interval} Amount by which starting point is perturbed when choosing to pick random point by perturbating starting point $\;$ \\ The valid range for this real option is \htmlanchor{sec:random_point_type} \paragraph{random\_point\_type:}\label{sec:random_point_type} method to choose a random starting point $\;$ \\ \end{itemize} \htmlanchor{sec:resolve_on_small_infeasibility} \paragraph{resolve\_on\_small\_infeasibility:}\label{sec:resolve_on_small_infeasibility} If a locally infeasible problem is infeasible by less than this resolve itwith initial starting point. $\;$ \\ \paragraph{resolve\_on\_small\_infeasibility:}\label{sec:resolve_on_small_infeasibility} If a locally infeasible problem is infeasible by less than this, resolve it with initial starting point. $\;$ \\ It is set to 0 by default with Ipopt. For filter Bonmin sets it to a small value. The valid range for this real option is \label{sec:Nlp_solve_options_in_B-Hyb} \htmlanchor{sec:Nlp_solve_options_in_B-Hyb} \htmlanchor{sec:nlp_solve_frequency} \paragraph{nlp\_solve\_frequency:}\label{sec:nlp_solve_frequency} Specify the frequency (in terms of nodes) at which NLP relaxations are solved in B-Hyb. $\;$ \\ A frequency of 0 amounts to to never solve the \htmlanchor{sec:nlp_solve_max_depth} \paragraph{nlp\_solve\_max\_depth:}\label{sec:nlp_solve_max_depth} Set maximum depth in the tree at which NLP relaxations are solved in B-Hyb. $\;$ \\ A depth of 0 amounts to to never solve the NLP \htmlanchor{sec:nlp_solves_per_depth} \paragraph{nlp\_solves\_per\_depth:}\label{sec:nlp_solves_per_depth} Set average number of nodes in the tree at which NLP relaxations are solved in B-Hyb for each depth. $\;$ \\ The valid range for this real option is \label{sec:Options_for_MILP_solver} \htmlanchor{sec:Options_for_MILP_solver} \htmlanchor{sec:cpx_parallel_strategy} \paragraph{cpx\_parallel\_strategy:}\label{sec:cpx_parallel_strategy} Strategy of parallel search mode in CPLEX. $\;$ \\ -1 = opportunistic, 0 = automatic, 1 = \htmlanchor{sec:milp_log_level} \paragraph{milp\_log\_level:}\label{sec:milp_log_level} specify MILP solver log level. $\;$ \\ Set the level of output of the MILP subsolver in \htmlanchor{sec:milp_solver} \paragraph{milp\_solver:}\label{sec:milp_solver} Choose the subsolver to solve MILP sub-problems in OA decompositions. $\;$ \\ To use Cplex, a valid license is required and \end{itemize} \htmlanchor{sec:milp_strategy} \paragraph{milp\_strategy:}\label{sec:milp_strategy} Choose a strategy for MILPs. $\;$ \\ \end{itemize} \htmlanchor{sec:number_cpx_threads} \paragraph{number\_cpx\_threads:}\label{sec:number_cpx_threads} Set number of threads to use with cplex. $\;$ \\ (refer to CPLEX documentation) The valid range for this integer option is \label{sec:Options_for_OA_decomposition} \htmlanchor{sec:Options_for_OA_decomposition} \htmlanchor{sec:oa_decomposition} \paragraph{oa\_decomposition:}\label{sec:oa_decomposition} If yes do initial OA decomposition $\;$ \\ \end{itemize} \htmlanchor{sec:oa_log_frequency} \paragraph{oa\_log\_frequency:}\label{sec:oa_log_frequency} display an update on lower and upper bounds in OA every n seconds $\;$ \\ The valid range for this real option is \htmlanchor{sec:oa_log_level} \paragraph{oa\_log\_level:}\label{sec:oa_log_level} specify OA iterations log level. $\;$ \\ Set the level of output of OA decomposition \label{sec:Options_for_ecp_cuts_generation} \htmlanchor{sec:Options_for_ecp_cuts_generation} \htmlanchor{sec:ecp_abs_tol} \paragraph{ecp\_abs\_tol:}\label{sec:ecp_abs_tol} Set the absolute termination tolerance for ECP rounds. $\;$ \\ The valid range for this real option is \htmlanchor{sec:ecp_max_rounds} \paragraph{ecp\_max\_rounds:}\label{sec:ecp_max_rounds} Set the maximal number of rounds of ECP cuts. $\;$ \\ The valid range for this integer option is \htmlanchor{sec:ecp_probability_factor} \paragraph{ecp\_probability\_factor:}\label{sec:ecp_probability_factor} Factor appearing in formula for skipping ECP cuts. $\;$ \\ Choosing -1 disables the skipping. The valid range for this real option is \htmlanchor{sec:ecp_rel_tol} \paragraph{ecp\_rel\_tol:}\label{sec:ecp_rel_tol} Set the relative termination tolerance for ECP rounds. $\;$ \\ The valid range for this real option is \htmlanchor{sec:filmint_ecp_cuts} \paragraph{filmint\_ecp\_cuts:}\label{sec:filmint_ecp_cuts} Specify the frequency (in terms of nodes) at which some a la filmint ecp cuts are generated. $\;$ \\ A frequency of 0 amounts to to never solve the \label{sec:Options_for_feasibility_checker_using_OA_cuts} \htmlanchor{sec:Options_for_feasibility_checker_using_OA_cuts} \htmlanchor{sec:feas_check_cut_types} \paragraph{feas\_check\_cut\_types:}\label{sec:feas_check_cut_types} Choose the type of cuts generated when an integer feasible solution is found $\;$ \\ If it seems too much memory is used should try \end{itemize} \htmlanchor{sec:feas_check_discard_policy} \paragraph{feas\_check\_discard\_policy:}\label{sec:feas_check_discard_policy} How cuts from feasibility checker are discarded $\;$ \\ Normally to avoid cycle cuts from feasibility \end{itemize} \htmlanchor{sec:generate_benders_after_so_many_oa} \paragraph{generate\_benders\_after\_so\_many\_oa:}\label{sec:generate_benders_after_so_many_oa} Specify that after so many oa cuts have been generated Benders cuts should be generated instead. $\;$ \\ It seems that sometimes generating too many oa \label{sec:Options_for_feasibility_pump} \htmlanchor{sec:Options_for_feasibility_pump} \htmlanchor{sec:fp_log_frequency} \paragraph{fp\_log\_frequency:}\label{sec:fp_log_frequency} display an update on lower and upper bounds in FP every n seconds $\;$ \\ The valid range for this real option is \htmlanchor{sec:fp_log_level} \paragraph{fp\_log\_level:}\label{sec:fp_log_level} specify FP iterations log level. $\;$ \\ Set the level of output of OA decomposition \htmlanchor{sec:fp_pass_infeasible} \paragraph{fp\_pass\_infeasible:}\label{sec:fp_pass_infeasible} Say whether feasibility pump should claim to converge or not $\;$ \\ \label{sec:Options_for_non-convex_problems} \htmlanchor{sec:Options_for_non-convex_problems} \htmlanchor{sec:coeff_var_threshold} \paragraph{coeff\_var\_threshold:}\label{sec:coeff_var_threshold} Coefficient of variation threshold (for dynamic definition of cutoff\_decr). $\;$ \\ The valid range for this real option is \htmlanchor{sec:dynamic_def_cutoff_decr} \paragraph{dynamic\_def\_cutoff\_decr:}\label{sec:dynamic_def_cutoff_decr} Do you want to define the parameter cutoff\_decr dynamically? $\;$ \\ \end{itemize} \htmlanchor{sec:first_perc_for_cutoff_decr} \paragraph{first\_perc\_for\_cutoff\_decr:}\label{sec:first_perc_for_cutoff_decr} The percentage used when, the coeff of variance is smaller than the threshold, to compute the cutoff\_decr dynamically. $\;$ \\ The valid range for this real option is \htmlanchor{sec:max_consecutive_infeasible} \paragraph{max\_consecutive\_infeasible:}\label{sec:max_consecutive_infeasible} Number of consecutive infeasible subproblems before aborting a branch. $\;$ \\ Will continue exploring a branch of the tree \htmlanchor{sec:num_resolve_at_infeasibles} \paragraph{num\_resolve\_at\_infeasibles:}\label{sec:num_resolve_at_infeasibles} Number $k$ of tries to resolve an infeasible node (other than the root) of the tree with different starting point. $\;$ \\ The algorithm will solve all the infeasible nodes \htmlanchor{sec:num_resolve_at_node} \paragraph{num\_resolve\_at\_node:}\label{sec:num_resolve_at_node} Number $k$ of tries to resolve a node (other than the root) of the tree with different starting point. $\;$ \\ The algorithm will solve all the nodes with $k$ \htmlanchor{sec:num_resolve_at_root} \paragraph{num\_resolve\_at\_root:}\label{sec:num_resolve_at_root} Number $k$ of tries to resolve the root node with different starting points. $\;$ \\ The algorithm will solve the root node with $k$ \htmlanchor{sec:second_perc_for_cutoff_decr} \paragraph{second\_perc\_for\_cutoff\_decr:}\label{sec:second_perc_for_cutoff_decr} The percentage used when, the coeff of variance is greater than the threshold, to compute the cutoff\_decr dynamically. $\;$ \\ The valid range for this real option is \label{sec:Outer_Approximation_cuts_generation} \htmlanchor{sec:Outer_Approximation_cuts_generation} \htmlanchor{sec:add_only_violated_oa} \paragraph{add\_only\_violated\_oa:}\label{sec:add_only_violated_oa} Do we add all OA cuts or only the ones violated by current point? $\;$ \\ \end{itemize} \htmlanchor{sec:oa_cuts_log_level} \paragraph{oa\_cuts\_log\_level:}\label{sec:oa_cuts_log_level} level of log when generating OA cuts. $\;$ \\ 0: outputs nothing, \htmlanchor{sec:oa_cuts_scope} \paragraph{oa\_cuts\_scope:}\label{sec:oa_cuts_scope} Specify if OA cuts added are to be set globally or locally valid $\;$ \\ \end{itemize} \htmlanchor{sec:tiny_element} \paragraph{oa\_rhs\_relax:}\label{sec:oa_rhs_relax} Value by which to relax OA cut $\;$ \\ RHS of OA constraints will be relaxed by this amount times the absolute value of the initial rhs if it is >= 1 (otherwise by this amount). The valid range for this real option is $-0 \le {\tt oa\_rhs\_relax } < {\tt +inf}$ and its default value is $1 \cdot 10^{-08}$. \paragraph{tiny\_element:}\label{sec:tiny_element} Value for tiny element in OA cut $\;$ \\ We will remove "cleanly" (by relaxing cut) an \htmlanchor{sec:very_tiny_element} \paragraph{very\_tiny\_element:}\label{sec:very_tiny_element} Value for very tiny element in OA cut $\;$ \\ Algorithm will take the risk of neglecting an \label{sec:Output_and_log-level_options} \htmlanchor{sec:Output_and_log-level_options} \htmlanchor{sec:bb_log_interval} \paragraph{bb\_log\_interval:}\label{sec:bb_log_interval} Interval at which node level output is printed. $\;$ \\ Set the interval (in terms of number of nodes) at \htmlanchor{sec:bb_log_level} \paragraph{bb\_log\_level:}\label{sec:bb_log_level} specify main branch-and-bound log level. $\;$ \\ Set the level of output of the branch-and-bound : \htmlanchor{sec:lp_log_level} \paragraph{lp\_log\_level:}\label{sec:lp_log_level} specify LP log level. $\;$ \\ Set the level of output of the linear programming \htmlanchor{sec:nlp_log_at_root} \paragraph{nlp\_log\_at\_root:}\label{sec:nlp_log_at_root}  Specify a different log level for root relaxtion. $\;$ \\ The valid range for this integer option is \label{sec:Strong_branching_setup} \htmlanchor{sec:Strong_branching_setup} \htmlanchor{sec:candidate_sort_criterion} \paragraph{candidate\_sort\_criterion:}\label{sec:candidate_sort_criterion} Choice of the criterion to choose candidates in strong-branching $\;$ \\ \end{itemize} \htmlanchor{sec:maxmin_crit_have_sol} \paragraph{maxmin\_crit\_have\_sol:}\label{sec:maxmin_crit_have_sol} Weight towards minimum in of lower and upper branching estimates when a solution has been found. $\;$ \\ The valid range for this real option is \htmlanchor{sec:maxmin_crit_no_sol} \paragraph{maxmin\_crit\_no\_sol:}\label{sec:maxmin_crit_no_sol} Weight towards minimum in of lower and upper branching estimates when no solution has been found yet. $\;$ \\ The valid range for this real option is \htmlanchor{sec:min_number_strong_branch} \paragraph{min\_number\_strong\_branch:}\label{sec:min_number_strong_branch} Sets minimum number of variables for strong branching (overriding trust) $\;$ \\ The valid range for this integer option is \htmlanchor{sec:number_before_trust_list} \paragraph{number\_before\_trust\_list:}\label{sec:number_before_trust_list} Set the number of branches on a variable before its pseudo costs are to be believed during setup of strong branching candidate list. $\;$ \\ The default value is that of \htmlanchor{sec:number_look_ahead} \paragraph{number\_look\_ahead:}\label{sec:number_look_ahead} Sets limit of look-ahead strong-branching trials $\;$ \\ The valid range for this integer option is \htmlanchor{sec:number_strong_branch_root} \paragraph{number\_strong\_branch\_root:}\label{sec:number_strong_branch_root} Maximum number of variables considered for strong branching in root node. $\;$ \\ The valid range for this integer option is \htmlanchor{sec:setup_pseudo_frac} \paragraph{setup\_pseudo\_frac:}\label{sec:setup_pseudo_frac} Proportion of strong branching list that has to be taken from most-integer-infeasible list. $\;$ \\ The valid range for this real option is \htmlanchor{sec:trust_strong_branching_for_pseudo_cost} \paragraph{trust\_strong\_branching\_for\_pseudo\_cost:}\label{sec:trust_strong_branching_for_pseudo_cost} Whether or not to trust strong branching results for updating pseudo costs. $\;$ \\ \label{sec:nlp_interface_option} \htmlanchor{sec:nlp_interface_option} \htmlanchor{sec:file_solution} \paragraph{file\_solution:}\label{sec:file_solution} Write a file bonmin.sol with the solution $\;$ \\ \end{itemize} \htmlanchor{sec:nlp_log_level} \paragraph{nlp\_log\_level:}\label{sec:nlp_log_level} specify NLP solver interface log level (independent from ipopt print\_level). $\;$ \\ Set the level of output of the OsiTMINLPInterface \htmlanchor{sec:nlp_solver} \paragraph{nlp\_solver:}\label{sec:nlp_solver} Choice of the solver for local optima of continuous nlp's $\;$ \\ Note that option will work only if the specified \end{itemize} \htmlanchor{sec:warm_start} \paragraph{warm\_start:}\label{sec:warm_start} Select the warm start method $\;$ \\ This will affect the function getWarmStart(), and Possible values: \begin{itemize} \item none: No warm start just start NLPs from optimal \item none: No warm start, just start NLPs from optimal solution of the root relaxation \item fake\_basis: builds fake bases usefull for cut management in \item fake\_basis: builds fake basis, useful for cut management in Cbc (warm start is the same as in none) \item optimum: Warm start with direct parent optimum
random_generator_seed I + + + +
read_solution_file S + - - - + +
MILP cutting planes in hybrid oa_cuts_scope S - + + +
oa_rhs_relax F - +
• ## stable/1.6/Bonmin/doc/options_list_filter_content.tex

 r1952     } } \subsection{FilterSQP options} \label{sec:FilterSQP_options} \htmlanchor{sec:FilterSQP_options} \htmlanchor{sec:eps} \paragraph{eps:}\label{sec:eps} Tolerance for SQP solver $\;$ \\ The valid range for this real option is $0 < {\tt eps } < {\tt +inf}$ and its default value is $1 \cdot 10^{-08}$. \htmlanchor{sec:infty} \paragraph{infty:}\label{sec:infty} A large number (1E20) $\;$ \\ The valid range for this real option is $0 < {\tt infty } < {\tt +inf}$ and its default value is $1 \cdot 10^{+20}$. \htmlanchor{sec:iprint} \paragraph{iprint:}\label{sec:iprint} Print level (0=silent, 3=verbose) $\;$ \\ The valid range for this integer option is $0 \le {\tt iprint } \le 6$ and its default value is $0$. \htmlanchor{sec:kmax} \paragraph{kmax:}\label{sec:kmax} Dimension of null-space $\;$ \\ The valid range for this integer option is $-1 \le {\tt kmax } < {\tt +inf}$ and its default value is $-1$. \htmlanchor{sec:maxf} \paragraph{maxf:}\label{sec:maxf} Maximum filter length $\;$ \\ The valid range for this integer option is $0 \le {\tt maxf } < {\tt +inf}$ and its default value is $100$. \htmlanchor{sec:maxiter} \paragraph{maxiter:}\label{sec:maxiter} Maximum number of iterations $\;$ \\ The valid range for this integer option is $0 \le {\tt maxiter } < {\tt +inf}$ and its default value is $1000$. \htmlanchor{sec:mlp} \paragraph{mlp:}\label{sec:mlp} Maximum level for degeneracy (bqpd) $\;$ \\ The valid range for this integer option is $0 \le {\tt mlp } < {\tt +inf}$ and its default value is $1000$. \htmlanchor{sec:mxlws} \paragraph{mxlws:}\label{sec:mxlws} FINTEGER workspace increment $\;$ \\ The valid range for this integer option is $0 \le {\tt mxlws } < {\tt +inf}$ and its default value is $500000$. \htmlanchor{sec:mxws} \paragraph{mxws:}\label{sec:mxws} REAL workspace increment $\;$ \\ The valid range for this integer option is $0 \le {\tt mxws } < {\tt +inf}$ and its default value is $2000000$. \htmlanchor{sec:rho_init} \paragraph{rho\_init:}\label{sec:rho_init} Initial trust region size $\;$ \\ The valid range for this real option is $0 < {\tt rho\_init } < {\tt +inf}$ and its default value is $10$. \htmlanchor{sec:tt} \paragraph{tt:}\label{sec:tt} Parameter for upper bound on filter $\;$ \\ The valid range for this real option is $0 < {\tt tt } < {\tt +inf}$ and its default value is $1.25$. \htmlanchor{sec:ubd} \paragraph{ubd:}\label{sec:ubd} Parameter for upper bound on filter $\;$ \\ The valid range for this real option is $0 < {\tt ubd } < {\tt +inf}$ and its default value is $100$.
B-Hyb
FilterSQP options
eps F + + + +
infty F + + + +
iprint I + + + +
kmax I + + + +
maxf I + + + +
maxiter I + + + +
mlp I + + + +
mxlws I + + + +
mxws I + + + +
rho_init F + + + +
tt F + + + +
ubd F + + + +
• ## stable/1.6/Bonmin/doc/options_list_ipopt_content.tex

 r1952 } } \htmlanchor{sec:sb} \paragraph{sb:}\label{sec:sb}  $\;$ \\ \label{sec:Barrier_Parameter_Update} \htmlanchor{sec:Barrier_Parameter_Update} \htmlanchor{sec:adaptive_mu_globalization} \paragraph{adaptive\_mu\_globalization:}\label{sec:adaptive_mu_globalization} Globalization strategy for the adaptive mu selection mode. $\;$ \\ To achieve global convergence of the adaptive \end{itemize} \htmlanchor{sec:adaptive_mu_kkt_norm_type} \paragraph{adaptive\_mu\_kkt\_norm\_type:}\label{sec:adaptive_mu_kkt_norm_type} Norm used for the KKT error in the adaptive mu globalization strategies. $\;$ \\ When computing the KKT error for the \end{itemize} \htmlanchor{sec:adaptive_mu_kkterror_red_fact} \paragraph{adaptive\_mu\_kkterror\_red\_fact:}\label{sec:adaptive_mu_kkterror_red_fact} Sufficient decrease factor for "kkt-error" globalization strategy. $\;$ \\ For the "kkt-error" based globalization strategy, \htmlanchor{sec:adaptive_mu_kkterror_red_iters} \paragraph{adaptive\_mu\_kkterror\_red\_iters:}\label{sec:adaptive_mu_kkterror_red_iters} Maximum number of iterations requiring sufficient progress. $\;$ \\ For the "kkt-error" based globalization strategy, \htmlanchor{sec:adaptive_mu_monotone_init_factor} \paragraph{adaptive\_mu\_monotone\_init\_factor:}\label{sec:adaptive_mu_monotone_init_factor} Determines the initial value of the barrier parameter when switching to the monotone mode. $\;$ \\ When the globalization strategy for the adaptive \htmlanchor{sec:adaptive_mu_restore_previous_iterate} \paragraph{adaptive\_mu\_restore\_previous\_iterate:}\label{sec:adaptive_mu_restore_previous_iterate} Indicates if the previous iterate should be restored if the monotone mode is entered. $\;$ \\ When the globalization strategy for the adaptive \end{itemize} \htmlanchor{sec:barrier_tol_factor} \paragraph{barrier\_tol\_factor:}\label{sec:barrier_tol_factor} Factor for mu in barrier stop test. $\;$ \\ The convergence tolerance for each barrier \htmlanchor{sec:filter_margin_fact} \paragraph{filter\_margin\_fact:}\label{sec:filter_margin_fact} Factor determining width of margin for obj-constr-filter adaptive globalization strategy. $\;$ \\ When using the adaptive globalization strategy, \htmlanchor{sec:filter_max_margin} \paragraph{filter\_max\_margin:}\label{sec:filter_max_margin} Maximum width of margin in obj-constr-filter adaptive globalization strategy. $\;$ \\ The valid range for this real option is \htmlanchor{sec:fixed_mu_oracle} \paragraph{fixed\_mu\_oracle:}\label{sec:fixed_mu_oracle} Oracle for the barrier parameter when switching to fixed mode. $\;$ \\ Determines how the first value of the barrier \end{itemize} \htmlanchor{sec:mu_allow_fast_monotone_decrease} \paragraph{mu\_allow\_fast\_monotone\_decrease:}\label{sec:mu_allow_fast_monotone_decrease} Allow skipping of barrier problem if barrier test is already met. $\;$ \\ If set to "no", the algorithm enforces at least \end{itemize} \htmlanchor{sec:mu_init} \paragraph{mu\_init:}\label{sec:mu_init} Initial value for the barrier parameter. $\;$ \\ This option determines the initial value for the \htmlanchor{sec:mu_linear_decrease_factor} \paragraph{mu\_linear\_decrease\_factor:}\label{sec:mu_linear_decrease_factor} Determines linear decrease rate of barrier parameter. $\;$ \\ For the Fiacco-McCormick update procedure the new \htmlanchor{sec:mu_max} \paragraph{mu\_max:}\label{sec:mu_max} Maximum value for barrier parameter. $\;$ \\ This option specifies an upper bound on the \htmlanchor{sec:mu_max_fact} \paragraph{mu\_max\_fact:}\label{sec:mu_max_fact} Factor for initialization of maximum value for barrier parameter. $\;$ \\ This option determines the upper bound on the \htmlanchor{sec:mu_min} \paragraph{mu\_min:}\label{sec:mu_min} Minimum value for barrier parameter. $\;$ \\ This option specifies the lower bound on the \htmlanchor{sec:mu_oracle} \paragraph{mu\_oracle:}\label{sec:mu_oracle} Oracle for a new barrier parameter in the adaptive strategy. $\;$ \\ Determines how a new barrier parameter is \end{itemize} \htmlanchor{sec:mu_strategy} \paragraph{mu\_strategy:}\label{sec:mu_strategy} Update strategy for barrier parameter. $\;$ \\ Determines which barrier parameter update \end{itemize} \htmlanchor{sec:mu_superlinear_decrease_power} \paragraph{mu\_superlinear\_decrease\_power:}\label{sec:mu_superlinear_decrease_power} Determines superlinear decrease rate of barrier parameter. $\;$ \\ For the Fiacco-McCormick update procedure the new \htmlanchor{sec:quality_function_balancing_term} \paragraph{quality\_function\_balancing\_term:}\label{sec:quality_function_balancing_term} The balancing term included in the quality function for centrality. $\;$ \\ This determines whether a term is added to the \end{itemize} \htmlanchor{sec:quality_function_centrality} \paragraph{quality\_function\_centrality:}\label{sec:quality_function_centrality} The penalty term for centrality that is included in quality function. $\;$ \\ This determines whether a term is added to the \end{itemize} \htmlanchor{sec:quality_function_max_section_steps} \paragraph{quality\_function\_max\_section\_steps:}\label{sec:quality_function_max_section_steps} Maximum number of search steps during direct search procedure determining the optimal centering parameter. $\;$ \\ The golden section search is performed for the \htmlanchor{sec:quality_function_norm_type} \paragraph{quality\_function\_norm\_type:}\label{sec:quality_function_norm_type} Norm used for components of the quality function. $\;$ \\ (Only used if option "mu\_oracle" is set to \end{itemize} \htmlanchor{sec:quality_function_section_qf_tol} \paragraph{quality\_function\_section\_qf\_tol:}\label{sec:quality_function_section_qf_tol} Tolerance for the golden section search procedure determining the optimal centering parameter (in the function value space). $\;$ \\ The golden section search is performed for the \htmlanchor{sec:quality_function_section_sigma_tol} \paragraph{quality\_function\_section\_sigma\_tol:}\label{sec:quality_function_section_sigma_tol} Tolerance for the section search procedure determining the optimal centering parameter (in sigma space). $\;$ \\ The golden section search is performed for the \htmlanchor{sec:sigma_max} \paragraph{sigma\_max:}\label{sec:sigma_max} Maximum value of the centering parameter. $\;$ \\ This is the upper bound for the centering \htmlanchor{sec:sigma_min} \paragraph{sigma\_min:}\label{sec:sigma_min} Minimum value of the centering parameter. $\;$ \\ This is the lower bound for the centering \htmlanchor{sec:tau_min} \paragraph{tau\_min:}\label{sec:tau_min} Lower bound on fraction-to-the-boundary parameter tau. $\;$ \\ (This is tau\_min in the implementation paper.) \label{sec:Convergence} \htmlanchor{sec:Convergence} \htmlanchor{sec:acceptable_compl_inf_tol} \paragraph{acceptable\_compl\_inf\_tol:}\label{sec:acceptable_compl_inf_tol} "Acceptance" threshold for the complementarity conditions. $\;$ \\ Absolute tolerance on the complementarity. \htmlanchor{sec:acceptable_constr_viol_tol} \paragraph{acceptable\_constr\_viol\_tol:}\label{sec:acceptable_constr_viol_tol} "Acceptance" threshold for the constraint violation. $\;$ \\ Absolute tolerance on the constraint violation. \htmlanchor{sec:acceptable_dual_inf_tol} \paragraph{acceptable\_dual\_inf\_tol:}\label{sec:acceptable_dual_inf_tol} "Acceptance" threshold for the dual infeasibility. $\;$ \\ Absolute tolerance on the dual infeasibility. \htmlanchor{sec:acceptable_iter} \paragraph{acceptable\_iter:}\label{sec:acceptable_iter} Number of "acceptable" iterates before triggering termination. $\;$ \\ If the algorithm encounters this many successive \htmlanchor{sec:acceptable_obj_change_tol} \paragraph{acceptable\_obj\_change\_tol:}\label{sec:acceptable_obj_change_tol} "Acceptance" stopping criterion based on objective function change. $\;$ \\ If the relative change of the objective function \htmlanchor{sec:acceptable_tol} \paragraph{acceptable\_tol:}\label{sec:acceptable_tol} "Acceptable" convergence tolerance (relative). $\;$ \\ Determines which (scaled) overall optimality \htmlanchor{sec:compl_inf_tol} \paragraph{compl\_inf\_tol:}\label{sec:compl_inf_tol} Desired threshold for the complementarity conditions. $\;$ \\ Absolute tolerance on the complementarity. \htmlanchor{sec:constr_viol_tol} \paragraph{constr\_viol\_tol:}\label{sec:constr_viol_tol} Desired threshold for the constraint violation. $\;$ \\ Absolute tolerance on the constraint violation. \htmlanchor{sec:diverging_iterates_tol} \paragraph{diverging\_iterates\_tol:}\label{sec:diverging_iterates_tol} Threshold for maximal value of primal iterates. $\;$ \\ If any component of the primal iterates exceeded \htmlanchor{sec:dual_inf_tol} \paragraph{dual\_inf\_tol:}\label{sec:dual_inf_tol} Desired threshold for the dual infeasibility. $\;$ \\ Absolute tolerance on the dual infeasibility. \htmlanchor{sec:max_cpu_time} \paragraph{max\_cpu\_time:}\label{sec:max_cpu_time} Maximum number of CPU seconds. $\;$ \\ A limit on CPU seconds that Ipopt can use to \htmlanchor{sec:max_iter} \paragraph{max\_iter:}\label{sec:max_iter} Maximum number of iterations. $\;$ \\ The algorithm terminates with an error message if \htmlanchor{sec:mu_target} \paragraph{mu\_target:}\label{sec:mu_target} Desired value of complementarity. $\;$ \\ Usually, the barrier parameter is driven to zero \htmlanchor{sec:s_max} \paragraph{s\_max:}\label{sec:s_max} Scaling threshold for the NLP error. $\;$ \\ (See paragraph after Eqn. (6) in the \htmlanchor{sec:tol} \paragraph{tol:}\label{sec:tol} Desired convergence tolerance (relative). $\;$ \\ Determines the convergence tolerance for the \label{sec:Derivative_Checker} \htmlanchor{sec:Derivative_Checker} \htmlanchor{sec:derivative_test} \paragraph{derivative\_test:}\label{sec:derivative_test} Enable derivative checker $\;$ \\ If this option is enabled, a (slow!) derivative \end{itemize} \htmlanchor{sec:derivative_test_first_index} \paragraph{derivative\_test\_first\_index:}\label{sec:derivative_test_first_index} Index of first quantity to be checked by derivative checker $\;$ \\ If this is set to -2, then all derivatives are \htmlanchor{sec:derivative_test_perturbation} \paragraph{derivative\_test\_perturbation:}\label{sec:derivative_test_perturbation} Size of the finite difference perturbation in derivative test. $\;$ \\ This determines the relative perturbation of the \htmlanchor{sec:derivative_test_print_all} \paragraph{derivative\_test\_print\_all:}\label{sec:derivative_test_print_all} Indicates whether information for all estimated derivatives should be printed. $\;$ \\ Determines verbosity of derivative checker. \end{itemize} \htmlanchor{sec:derivative_test_tol} \paragraph{derivative\_test\_tol:}\label{sec:derivative_test_tol} Threshold for indicating wrong derivative. $\;$ \\ If the relative deviation of the estimated \htmlanchor{sec:findiff_perturbation} \paragraph{findiff\_perturbation:}\label{sec:findiff_perturbation} Size of the finite difference perturbation for derivative approximation. $\;$ \\ This determines the relative perturbation of the \htmlanchor{sec:jacobian_approximation} \paragraph{jacobian\_approximation:}\label{sec:jacobian_approximation} Specifies technique to compute constraint Jacobian $\;$ \\ \end{itemize} \htmlanchor{sec:point_perturbation_radius} \paragraph{point\_perturbation\_radius:}\label{sec:point_perturbation_radius} Maximal perturbation of an evaluation point. $\;$ \\ If a random perturbation of a points is required, \label{sec:Hessian_Approximation} \htmlanchor{sec:Hessian_Approximation} \htmlanchor{sec:hessian_approximation} \paragraph{hessian\_approximation:}\label{sec:hessian_approximation} Indicates what Hessian information is to be used. $\;$ \\ This determines which kind of information for the \end{itemize} \htmlanchor{sec:hessian_approximation_space} \paragraph{hessian\_approximation\_space:}\label{sec:hessian_approximation_space} Indicates in which subspace the Hessian information is to be approximated. $\;$ \\ \end{itemize} \htmlanchor{sec:limited_memory_aug_solver} \paragraph{limited\_memory\_aug\_solver:}\label{sec:limited_memory_aug_solver} Strategy for solving the augmented system for low-rank Hessian. $\;$ \\ \end{itemize} \htmlanchor{sec:limited_memory_init_val} \paragraph{limited\_memory\_init\_val:}\label{sec:limited_memory_init_val} Value for B0 in low-rank update. $\;$ \\ The starting matrix in the low rank update, B0, \htmlanchor{sec:limited_memory_init_val_max} \paragraph{limited\_memory\_init\_val\_max:}\label{sec:limited_memory_init_val_max} Upper bound on value for B0 in low-rank update. $\;$ \\ The starting matrix in the low rank update, B0, \htmlanchor{sec:limited_memory_init_val_min} \paragraph{limited\_memory\_init\_val\_min:}\label{sec:limited_memory_init_val_min} Lower bound on value for B0 in low-rank update. $\;$ \\ The starting matrix in the low rank update, B0, \htmlanchor{sec:limited_memory_initialization} \paragraph{limited\_memory\_initialization:}\label{sec:limited_memory_initialization} Initialization strategy for the limited memory quasi-Newton approximation. $\;$ \\ Determines how the diagonal Matrix B\_0 as the \end{itemize} \htmlanchor{sec:limited_memory_max_history} \paragraph{limited\_memory\_max\_history:}\label{sec:limited_memory_max_history} Maximum size of the history for the limited quasi-Newton Hessian approximation. $\;$ \\ This option determines the number of most recent \htmlanchor{sec:limited_memory_max_skipping} \paragraph{limited\_memory\_max\_skipping:}\label{sec:limited_memory_max_skipping} Threshold for successive iterations where update is skipped. $\;$ \\ If the update is skipped more than this number of \htmlanchor{sec:limited_memory_special_for_resto} \paragraph{limited\_memory\_special\_for\_resto:}\label{sec:limited_memory_special_for_resto} Determines if the quasi-Newton updates should be special during the restoration phase. $\;$ \\ Until Nov 2010, Ipopt used a special update \end{itemize} \htmlanchor{sec:limited_memory_update_type} \paragraph{limited\_memory\_update\_type:}\label{sec:limited_memory_update_type} Quasi-Newton update formula for the limited memory approximation. $\;$ \\ Determines which update formula is to be used for \label{sec:Initialization} \htmlanchor{sec:Initialization} \htmlanchor{sec:bound_frac} \paragraph{bound\_frac:}\label{sec:bound_frac} Desired minimum relative distance from the initial point to bound. $\;$ \\ Determines how much the initial point might have \htmlanchor{sec:bound_mult_init_method} \paragraph{bound\_mult\_init\_method:}\label{sec:bound_mult_init_method} Initialization method for bound multipliers $\;$ \\ This option defines how the iterates for the \end{itemize} \htmlanchor{sec:bound_mult_init_val} \paragraph{bound\_mult\_init\_val:}\label{sec:bound_mult_init_val} Initial value for the bound multipliers. $\;$ \\ All dual variables corresponding to bound \htmlanchor{sec:bound_push} \paragraph{bound\_push:}\label{sec:bound_push} Desired minimum absolute distance from the initial point to bound. $\;$ \\ Determines how much the initial point might have \htmlanchor{sec:constr_mult_init_max} \paragraph{constr\_mult\_init\_max:}\label{sec:constr_mult_init_max} Maximum allowed least-square guess of constraint multipliers. $\;$ \\ Determines how large the initial least-square \htmlanchor{sec:least_square_init_duals} \paragraph{least\_square\_init\_duals:}\label{sec:least_square_init_duals} Least square initialization of all dual variables $\;$ \\ If set to yes, Ipopt tries to compute \end{itemize} \htmlanchor{sec:least_square_init_primal} \paragraph{least\_square\_init\_primal:}\label{sec:least_square_init_primal} Least square initialization of the primal variables $\;$ \\ If set to yes, Ipopt ignores the user provided \end{itemize} \htmlanchor{sec:slack_bound_frac} \paragraph{slack\_bound\_frac:}\label{sec:slack_bound_frac} Desired minimum relative distance from the initial slack to bound. $\;$ \\ Determines how much the initial slack variables \htmlanchor{sec:slack_bound_push} \paragraph{slack\_bound\_push:}\label{sec:slack_bound_push} Desired minimum absolute distance from the initial slack to bound. $\;$ \\ Determines how much the initial slack variables \label{sec:Line_Search} \htmlanchor{sec:Line_Search} \htmlanchor{sec:accept_after_max_steps} \paragraph{accept\_after\_max\_steps:}\label{sec:accept_after_max_steps} Accept a trial point after maximal this number of steps. $\;$ \\ Even if it does not satisfy line search \htmlanchor{sec:accept_every_trial_step} \paragraph{accept\_every\_trial\_step:}\label{sec:accept_every_trial_step} Always accept the first trial step. $\;$ \\ Setting this option to "yes" essentially disables \end{itemize} \htmlanchor{sec:alpha_for_y} \paragraph{alpha\_for\_y:}\label{sec:alpha_for_y} Method to determine the step size for constraint multipliers. $\;$ \\ This option determines how the step size \end{itemize} \htmlanchor{sec:alpha_for_y_tol} \paragraph{alpha\_for\_y\_tol:}\label{sec:alpha_for_y_tol} Tolerance for switching to full equality multiplier steps. $\;$ \\ This is only relevant if "alpha\_for\_y" is \htmlanchor{sec:alpha_min_frac} \paragraph{alpha\_min\_frac:}\label{sec:alpha_min_frac} Safety factor for the minimal step size (before switching to restoration phase). $\;$ \\ (This is gamma\_alpha in Eqn. (20) in the \htmlanchor{sec:alpha_red_factor} \paragraph{alpha\_red\_factor:}\label{sec:alpha_red_factor} Fractional reduction of the trial step size in the backtracking line search. $\;$ \\ At every step of the backtracking line search, \htmlanchor{sec:constraint_violation_norm_type} \paragraph{constraint\_violation\_norm\_type:}\label{sec:constraint_violation_norm_type} Norm to be used for the constraint violation in the line search. $\;$ \\ Determines which norm should be used when the \end{itemize} \htmlanchor{sec:corrector_compl_avrg_red_fact} \paragraph{corrector\_compl\_avrg\_red\_fact:}\label{sec:corrector_compl_avrg_red_fact} Complementarity tolerance factor for accepting corrector step (unsupported!). $\;$ \\ This option determines the factor by which \htmlanchor{sec:corrector_type} \paragraph{corrector\_type:}\label{sec:corrector_type} The type of corrector steps that should be taken (unsupported!). $\;$ \\ If "mu\_strategy" is "adaptive", this option \end{itemize} \htmlanchor{sec:delta} \paragraph{delta:}\label{sec:delta} Multiplier for constraint violation in the switching rule. $\;$ \\ (See Eqn. (19) in the implementation paper.) The valid range for this real option is \htmlanchor{sec:eta_phi} \paragraph{eta\_phi:}\label{sec:eta_phi} Relaxation factor in the Armijo condition. $\;$ \\ (See Eqn. (20) in the implementation paper) The valid range for this real option is \htmlanchor{sec:filter_reset_trigger} \paragraph{filter\_reset\_trigger:}\label{sec:filter_reset_trigger} Number of iterations that trigger the filter reset. $\;$ \\ If the filter reset heuristic is active and the \htmlanchor{sec:gamma_phi} \paragraph{gamma\_phi:}\label{sec:gamma_phi} Relaxation factor in the filter margin for the barrier function. $\;$ \\ (See Eqn. (18a) in the implementation paper.) The valid range for this real option is \htmlanchor{sec:gamma_theta} \paragraph{gamma\_theta:}\label{sec:gamma_theta} Relaxation factor in the filter margin for the constraint violation. $\;$ \\ (See Eqn. (18b) in the implementation paper.) The valid range for this real option is \htmlanchor{sec:kappa_sigma} \paragraph{kappa\_sigma:}\label{sec:kappa_sigma} Factor limiting the deviation of dual variables from primal estimates. $\;$ \\ If the dual variables deviate from their primal \htmlanchor{sec:kappa_soc} \paragraph{kappa\_soc:}\label{sec:kappa_soc} Factor in the sufficient reduction rule for second order correction. $\;$ \\ This option determines how much a second order \htmlanchor{sec:line_search_method} \paragraph{line\_search\_method:}\label{sec:line_search_method} Globalization method used in backtracking line search $\;$ \\ Only the "filter" choice is officially supported. \end{itemize} \htmlanchor{sec:max_filter_resets} \paragraph{max\_filter\_resets:}\label{sec:max_filter_resets} Maximal allowed number of filter resets $\;$ \\ A positive number enables a heuristic that resets \htmlanchor{sec:max_soc} \paragraph{max\_soc:}\label{sec:max_soc} Maximum number of second order correction trial steps at each iteration. $\;$ \\ Choosing 0 disables the second order corrections. \htmlanchor{sec:nu_inc} \paragraph{nu\_inc:}\label{sec:nu_inc} Increment of the penalty parameter. $\;$ \\ The valid range for this real option is \htmlanchor{sec:nu_init} \paragraph{nu\_init:}\label{sec:nu_init} Initial value of the penalty parameter. $\;$ \\ The valid range for this real option is \htmlanchor{sec:obj_max_inc} \paragraph{obj\_max\_inc:}\label{sec:obj_max_inc} Determines the upper bound on the acceptable increase of barrier objective function. $\;$ \\ Trial points are rejected if they lead to an \htmlanchor{sec:recalc_y} \paragraph{recalc\_y:}\label{sec:recalc_y} Tells the algorithm to recalculate the equality and inequality multipliers as least square estimates. $\;$ \\ This asks the algorithm to recompute the \end{itemize} \htmlanchor{sec:recalc_y_feas_tol} \paragraph{recalc\_y\_feas\_tol:}\label{sec:recalc_y_feas_tol} Feasibility threshold for recomputation of multipliers. $\;$ \\ If recalc\_y is chosen and the current \htmlanchor{sec:rho} \paragraph{rho:}\label{sec:rho} Value in penalty parameter update formula. $\;$ \\ The valid range for this real option is \htmlanchor{sec:s_phi} \paragraph{s\_phi:}\label{sec:s_phi} Exponent for linear barrier function model in the switching rule. $\;$ \\ (See Eqn. (19) in the implementation paper.) The valid range for this real option is \htmlanchor{sec:s_theta} \paragraph{s\_theta:}\label{sec:s_theta} Exponent for current constraint violation in the switching rule. $\;$ \\ (See Eqn. (19) in the implementation paper.) The valid range for this real option is \htmlanchor{sec:skip_corr_if_neg_curv} \paragraph{skip\_corr\_if\_neg\_curv:}\label{sec:skip_corr_if_neg_curv} Skip the corrector step in negative curvature iteration (unsupported!). $\;$ \\ The corrector step is not tried if negative \end{itemize} \htmlanchor{sec:skip_corr_in_monotone_mode} \paragraph{skip\_corr\_in\_monotone\_mode:}\label{sec:skip_corr_in_monotone_mode} Skip the corrector step during monotone barrier parameter mode (unsupported!). $\;$ \\ The corrector step is not tried if the algorithm \end{itemize} \htmlanchor{sec:slack_move} \paragraph{slack\_move:}\label{sec:slack_move} Correction size for very small slacks. $\;$ \\ Due to numerical issues or the lack of an \htmlanchor{sec:theta_max_fact} \paragraph{theta\_max\_fact:}\label{sec:theta_max_fact} Determines upper bound for constraint violation in the filter. $\;$ \\ The algorithmic parameter theta\_max is \htmlanchor{sec:theta_min_fact} \paragraph{theta\_min\_fact:}\label{sec:theta_min_fact} Determines constraint violation threshold in the switching rule. $\;$ \\ The algorithmic parameter theta\_min is \htmlanchor{sec:tiny_step_tol} \paragraph{tiny\_step\_tol:}\label{sec:tiny_step_tol} Tolerance for detecting numerically insignificant steps. $\;$ \\ If the search direction in the primal variables \htmlanchor{sec:tiny_step_y_tol} \paragraph{tiny\_step\_y\_tol:}\label{sec:tiny_step_y_tol} Tolerance for quitting because of numerically insignificant steps. $\;$ \\ If the search direction in the primal variables \htmlanchor{sec:watchdog_shortened_iter_trigger} \paragraph{watchdog\_shortened\_iter\_trigger:}\label{sec:watchdog_shortened_iter_trigger} Number of shortened iterations that trigger the watchdog. $\;$ \\ If the number of successive iterations in which \htmlanchor{sec:watchdog_trial_iter_max} \paragraph{watchdog\_trial\_iter\_max:}\label{sec:watchdog_trial_iter_max} Maximum number of watchdog iterations. $\;$ \\ This option determines the number of trial \label{sec:Linear_Solver} \htmlanchor{sec:Linear_Solver} \htmlanchor{sec:linear_scaling_on_demand} \paragraph{linear\_scaling\_on\_demand:}\label{sec:linear_scaling_on_demand} Flag indicating that linear scaling is only done if it seems required. $\;$ \\ This option is only important if a linear scaling \end{itemize} \htmlanchor{sec:linear_solver} \paragraph{linear\_solver:}\label{sec:linear_solver} Linear solver used for step computations. $\;$ \\ Determines which linear algebra package is to be \end{itemize} \htmlanchor{sec:linear_system_scaling} \paragraph{linear\_system\_scaling:}\label{sec:linear_system_scaling} Method for scaling the linear system. $\;$ \\ Determines the method used to compute symmetric \label{sec:MA27_Linear_Solver} \htmlanchor{sec:MA27_Linear_Solver} \htmlanchor{sec:ma27_ignore_singularity} \paragraph{ma27\_ignore\_singularity:}\label{sec:ma27_ignore_singularity} Enables MA27's ability to solve a linear system even if the matrix is singular. $\;$ \\ Setting this option to "yes" means that Ipopt \end{itemize} \htmlanchor{sec:ma27_la_init_factor} \paragraph{ma27\_la\_init\_factor:}\label{sec:ma27_la_init_factor} Real workspace memory for MA27. $\;$ \\ The initial real workspace memory = \htmlanchor{sec:ma27_liw_init_factor} \paragraph{ma27\_liw\_init\_factor:}\label{sec:ma27_liw_init_factor} Integer workspace memory for MA27. $\;$ \\ The initial integer workspace memory = \htmlanchor{sec:ma27_meminc_factor} \paragraph{ma27\_meminc\_factor:}\label{sec:ma27_meminc_factor} Increment factor for workspace size for MA27. $\;$ \\ If the integer or real workspace is not large \htmlanchor{sec:ma27_pivtol} \paragraph{ma27\_pivtol:}\label{sec:ma27_pivtol} Pivot tolerance for the linear solver MA27. $\;$ \\ A smaller number pivots for sparsity, a larger \htmlanchor{sec:ma27_pivtolmax} \paragraph{ma27\_pivtolmax:}\label{sec:ma27_pivtolmax} Maximum pivot tolerance for the linear solver MA27. $\;$ \\ Ipopt may increase pivtol as high as pivtolmax to \htmlanchor{sec:ma27_skip_inertia_check} \paragraph{ma27\_skip\_inertia\_check:}\label{sec:ma27_skip_inertia_check} Always pretend inertia is correct. $\;$ \\ Setting this option to "yes" essentially disables \label{sec:MA28_Linear_Solver} \htmlanchor{sec:MA28_Linear_Solver} \htmlanchor{sec:ma28_pivtol} \paragraph{ma28\_pivtol:}\label{sec:ma28_pivtol} Pivot tolerance for linear solver MA28. $\;$ \\ This is used when MA28 tries to find the \label{sec:MA57_Linear_Solver} \htmlanchor{sec:MA57_Linear_Solver} \htmlanchor{sec:ma57_automatic_scaling} \paragraph{ma57\_automatic\_scaling:}\label{sec:ma57_automatic_scaling} Controls MA57 automatic scaling $\;$ \\ This option controls the internal scaling option \end{itemize} \htmlanchor{sec:ma57_block_size} \paragraph{ma57\_block\_size:}\label{sec:ma57_block_size} Controls block size used by Level 3 BLAS in MA57BD $\;$ \\ This is ICNTL(11) in MA57. The valid range for this integer option is \htmlanchor{sec:ma57_node_amalgamation} \paragraph{ma57\_node\_amalgamation:}\label{sec:ma57_node_amalgamation} Node amalgamation parameter $\;$ \\ This is ICNTL(12) in MA57. The valid range for this integer option is \htmlanchor{sec:ma57_pivot_order} \paragraph{ma57\_pivot\_order:}\label{sec:ma57_pivot_order} Controls pivot order in MA57 $\;$ \\ This is ICNTL(6) in MA57. The valid range for this integer option is \htmlanchor{sec:ma57_pivtol} \paragraph{ma57\_pivtol:}\label{sec:ma57_pivtol} Pivot tolerance for the linear solver MA57. $\;$ \\ A smaller number pivots for sparsity, a larger \htmlanchor{sec:ma57_pivtolmax} \paragraph{ma57\_pivtolmax:}\label{sec:ma57_pivtolmax} Maximum pivot tolerance for the linear solver MA57. $\;$ \\ Ipopt may increase pivtol as high as \htmlanchor{sec:ma57_pre_alloc} \paragraph{ma57\_pre\_alloc:}\label{sec:ma57_pre_alloc} Safety factor for work space memory allocation for the linear solver MA57. $\;$ \\ If 1 is chosen, the suggested amount of work \htmlanchor{sec:ma57_small_pivot_flag} \paragraph{ma57\_small\_pivot\_flag:}\label{sec:ma57_small_pivot_flag} If set to 1, then when small entries defined by CNTL(2) are detected they are removed and the corresponding pivots placed at the end of the factorization.  This can be particularly efficient if the matrix is highly rank deficient. $\;$ \\ This is ICNTL(16) in MA57. The valid range for this integer option is \label{sec:MA86_Linear_Solver} \htmlanchor{sec:MA86_Linear_Solver} \htmlanchor{sec:ma86_nemin} \paragraph{ma86\_nemin:}\label{sec:ma86_nemin} Node Amalgamation parameter $\;$ \\ Two nodes in elimination tree are merged if \htmlanchor{sec:ma86_print_level} \paragraph{ma86\_print\_level:}\label{sec:ma86_print_level} Debug printing level for the linear solver MA86 $\;$ \\ Meep The valid range for this integer option is \htmlanchor{sec:ma86_small} \paragraph{ma86\_small:}\label{sec:ma86_small} Zero Pivot Threshold $\;$ \\ Any pivot less than ma86\_small is treated as \htmlanchor{sec:ma86_static} \paragraph{ma86\_static:}\label{sec:ma86_static} Static Pivoting Threshold $\;$ \\ See MA86 documentation. Either ma86\_static=0.0 \htmlanchor{sec:ma86_u} \paragraph{ma86\_u:}\label{sec:ma86_u} Pivoting Threshold $\;$ \\ See MA86 documentation. The valid range for this real option is \htmlanchor{sec:ma86_umax} \paragraph{ma86\_umax:}\label{sec:ma86_umax} Maximum Pivoting Threshold $\;$ \\ See MA86 documentation. The valid range for this real option is \label{sec:Mumps_Linear_Solver} \htmlanchor{sec:Mumps_Linear_Solver} \htmlanchor{sec:mumps_dep_tol} \paragraph{mumps\_dep\_tol:}\label{sec:mumps_dep_tol} Pivot threshold for detection of linearly dependent constraints in MUMPS. $\;$ \\ When MUMPS is used to determine linearly \htmlanchor{sec:mumps_mem_percent} \paragraph{mumps\_mem\_percent:}\label{sec:mumps_mem_percent} Percentage increase in the estimated working space for MUMPS. $\;$ \\ In MUMPS when significant extra fill-in is caused \htmlanchor{sec:mumps_permuting_scaling} \paragraph{mumps\_permuting\_scaling:}\label{sec:mumps_permuting_scaling} Controls permuting and scaling in MUMPS $\;$ \\ This is ICNTL(6) in MUMPS. The valid range for this integer option is \htmlanchor{sec:mumps_pivot_order} \paragraph{mumps\_pivot\_order:}\label{sec:mumps_pivot_order} Controls pivot order in MUMPS $\;$ \\ This is ICNTL(7) in MUMPS. The valid range for this integer option is \htmlanchor{sec:mumps_pivtol} \paragraph{mumps\_pivtol:}\label{sec:mumps_pivtol} Pivot tolerance for the linear solver MUMPS. $\;$ \\ A smaller number pivots for sparsity, a larger \htmlanchor{sec:mumps_pivtolmax} \paragraph{mumps\_pivtolmax:}\label{sec:mumps_pivtolmax} Maximum pivot tolerance for the linear solver MUMPS. $\;$ \\ Ipopt may increase pivtol as high as pivtolmax to \htmlanchor{sec:mumps_scaling} \paragraph{mumps\_scaling:}\label{sec:mumps_scaling} Controls scaling in MUMPS $\;$ \\ This is ICNTL(8) in MUMPS. The valid range for this integer option is \label{sec:NLP} \htmlanchor{sec:NLP} \htmlanchor{sec:bound_relax_factor} \paragraph{bound\_relax\_factor:}\label{sec:bound_relax_factor} Factor for initial relaxation of the bounds. $\;$ \\ Before start of the optimization, the bounds \htmlanchor{sec:check_derivatives_for_naninf} \paragraph{check\_derivatives\_for\_naninf:}\label{sec:check_derivatives_for_naninf} Indicates whether it is desired to check for Nan/Inf in derivative matrices $\;$ \\ Activating this option will cause an error if an \end{itemize} \htmlanchor{sec:dependency_detection_with_rhs} \paragraph{dependency\_detection\_with\_rhs:}\label{sec:dependency_detection_with_rhs} Indicates if the right hand sides of the constraints should be considered during dependency detection $\;$ \\ \end{itemize} \htmlanchor{sec:dependency_detector} \paragraph{dependency\_detector:}\label{sec:dependency_detector} Indicates which linear solver should be used to detect linearly dependent equality constraints. $\;$ \\ The default and available choices depend on how \end{itemize} \htmlanchor{sec:fixed_variable_treatment} \paragraph{fixed\_variable\_treatment:}\label{sec:fixed_variable_treatment} Determines how fixed variables should be handled. $\;$ \\ The main difference between those options is that \end{itemize} \htmlanchor{sec:hessian_constant} \paragraph{hessian\_constant:}\label{sec:hessian_constant} Indicates whether the problem is a quadratic problem $\;$ \\ Activating this option will cause Ipopt to ask \end{itemize} \htmlanchor{sec:honor_original_bounds} \paragraph{honor\_original\_bounds:}\label{sec:honor_original_bounds} Indicates whether final points should be projected into original bounds. $\;$ \\ Ipopt might relax the bounds during the \end{itemize} \htmlanchor{sec:jac_c_constant} \paragraph{jac\_c\_constant:}\label{sec:jac_c_constant} Indicates whether all equality constraints are linear $\;$ \\ Activating this option will cause Ipopt to ask \end{itemize} \htmlanchor{sec:jac_d_constant} \paragraph{jac\_d\_constant:}\label{sec:jac_d_constant} Indicates whether all inequality constraints are linear $\;$ \\ Activating this option will cause Ipopt to ask \end{itemize} \htmlanchor{sec:kappa_d} \paragraph{kappa\_d:}\label{sec:kappa_d} Weight for linear damping term (to handle one-sided bounds). $\;$ \\ (see Section 3.7 in implementation paper.) The valid range for this real option is \htmlanchor{sec:nlp_lower_bound_inf} \paragraph{nlp\_lower\_bound\_inf:}\label{sec:nlp_lower_bound_inf} any bound less or equal this value will be considered -inf (i.e. not lower bounded). $\;$ \\ The valid range for this real option is \htmlanchor{sec:nlp_upper_bound_inf} \paragraph{nlp\_upper\_bound\_inf:}\label{sec:nlp_upper_bound_inf} any bound greater or this value will be considered +inf (i.e. not upper bounded). $\;$ \\ The valid range for this real option is \htmlanchor{sec:num_linear_variables} \paragraph{num\_linear\_variables:}\label{sec:num_linear_variables} Number of linear variables $\;$ \\ When the Hessian is approximated, it is assumed \label{sec:NLP_Scaling} \htmlanchor{sec:NLP_Scaling} \htmlanchor{sec:nlp_scaling_constr_target_gradient} \paragraph{nlp\_scaling\_constr\_target\_gradient:}\label{sec:nlp_scaling_constr_target_gradient} Target value for constraint function gradient size. $\;$ \\ If a positive number is chosen, the scaling \htmlanchor{sec:nlp_scaling_max_gradient} \paragraph{nlp\_scaling\_max\_gradient:}\label{sec:nlp_scaling_max_gradient} Maximum gradient after NLP scaling. $\;$ \\ This is the gradient scaling cut-off. If the \htmlanchor{sec:nlp_scaling_method} \paragraph{nlp\_scaling\_method:}\label{sec:nlp_scaling_method} Select the technique used for scaling the NLP. $\;$ \\ Selects the technique used for scaling the \end{itemize} \htmlanchor{sec:nlp_scaling_min_value} \paragraph{nlp\_scaling\_min\_value:}\label{sec:nlp_scaling_min_value} Minimum value of gradient-based scaling values. $\;$ \\ This is the lower bound for the scaling factors \htmlanchor{sec:nlp_scaling_obj_target_gradient} \paragraph{nlp\_scaling\_obj\_target\_gradient:}\label{sec:nlp_scaling_obj_target_gradient} Target value for objective function gradient size. $\;$ \\ If a positive number is chosen, the scaling \htmlanchor{sec:obj_scaling_factor} \paragraph{obj\_scaling\_factor:}\label{sec:obj_scaling_factor} Scaling factor for the objective function. $\;$ \\ This option sets a scaling factor for the \label{sec:Output} \htmlanchor{sec:Output} \htmlanchor{sec:file_print_level} \paragraph{file\_print\_level:}\label{sec:file_print_level} Verbosity level for output file. $\;$ \\ NOTE: This option only works when read from the \htmlanchor{sec:inf_pr_output} \paragraph{inf\_pr\_output:}\label{sec:inf_pr_output} Determines what value is printed in the "inf\_pr" output column. $\;$ \\ Ipopt works with a reformulation of the original \end{itemize} \htmlanchor{sec:option_file_name} \paragraph{option\_file\_name:}\label{sec:option_file_name} File name of options file (to overwrite default). $\;$ \\ By default, the name of the Ipopt options file is \end{itemize} \htmlanchor{sec:output_file} \paragraph{output\_file:}\label{sec:output_file} File name of desired output file (leave unset for no file output). $\;$ \\ NOTE: This option only works when read from the \end{itemize} \htmlanchor{sec:print_info_string} \paragraph{print\_info\_string:}\label{sec:print_info_string} Enables printing of additional info string at end of iteration output. $\;$ \\ This string contains some insider information \end{itemize} \htmlanchor{sec:print_level} \paragraph{print\_level:}\label{sec:print_level} Output verbosity level. $\;$ \\ Sets the default verbosity level for console \htmlanchor{sec:print_options_documentation} \paragraph{print\_options\_documentation:}\label{sec:print_options_documentation} Switch to print all algorithmic options. $\;$ \\ If selected, the algorithm will print the list of \end{itemize} \htmlanchor{sec:print_timing_statistics} \paragraph{print\_timing\_statistics:}\label{sec:print_timing_statistics} Switch to print timing statistics. $\;$ \\ If selected, the program will print the CPU usage \end{itemize} \htmlanchor{sec:print_user_options} \paragraph{print\_user\_options:}\label{sec:print_user_options} Print all options set by the user. $\;$ \\ If selected, the algorithm will print the list of \end{itemize} \htmlanchor{sec:replace_bounds} \paragraph{replace\_bounds:}\label{sec:replace_bounds} Indicates if all variable bounds should be replaced by inequality constraints $\;$ \\ This option must be set for the inexact algorithm \end{itemize} \htmlanchor{sec:skip_finalize_solution_call} \paragraph{skip\_finalize\_solution\_call:}\label{sec:skip_finalize_solution_call} Indicates if call to NLP::FinalizeSolution after optimization should be suppressed $\;$ \\ In some Ipopt applications, the user might want \label{sec:Pardiso_Linear_Solver} \htmlanchor{sec:Pardiso_Linear_Solver} \htmlanchor{sec:pardiso_iter_coarse_size} \paragraph{pardiso\_iter\_coarse\_size:}\label{sec:pardiso_iter_coarse_size} Maximum Size of Coarse Grid Matrix $\;$ \\ DPARM(3) The valid range for this integer option is \htmlanchor{sec:pardiso_iter_dropping_factor} \paragraph{pardiso\_iter\_dropping\_factor:}\label{sec:pardiso_iter_dropping_factor} dropping value for incomplete factor $\;$ \\ DPARM(5) The valid range for this real option is \htmlanchor{sec:pardiso_iter_dropping_schur} \paragraph{pardiso\_iter\_dropping\_schur:}\label{sec:pardiso_iter_dropping_schur} dropping value for sparsify schur complement factor $\;$ \\ DPARM(6) The valid range for this real option is \htmlanchor{sec:pardiso_iter_inverse_norm_factor} \paragraph{pardiso\_iter\_inverse\_norm\_factor:}\label{sec:pardiso_iter_inverse_norm_factor}  $\;$ \\ DPARM(8) The valid range for this real option is \htmlanchor{sec:pardiso_iter_max_levels} \paragraph{pardiso\_iter\_max\_levels:}\label{sec:pardiso_iter_max_levels} Maximum Size of Grid Levels $\;$ \\ DPARM(4) The valid range for this integer option is \htmlanchor{sec:pardiso_iter_max_row_fill} \paragraph{pardiso\_iter\_max\_row\_fill:}\label{sec:pardiso_iter_max_row_fill} max fill for each row $\;$ \\ DPARM(7) The valid range for this integer option is \htmlanchor{sec:pardiso_iter_relative_tol} \paragraph{pardiso\_iter\_relative\_tol:}\label{sec:pardiso_iter_relative_tol} Relative Residual Convergence $\;$ \\ DPARM(2) The valid range for this real option is \htmlanchor{sec:pardiso_iterative} \paragraph{pardiso\_iterative:}\label{sec:pardiso_iterative} Switch on iterative solver in Pardiso library $\;$ \\ \end{itemize} \htmlanchor{sec:pardiso_matching_strategy} \paragraph{pardiso\_matching\_strategy:}\label{sec:pardiso_matching_strategy} Matching strategy to be used by Pardiso $\;$ \\ This is IPAR(13) in Pardiso manual.  This option \end{itemize} \htmlanchor{sec:pardiso_max_droptol_corrections} \paragraph{pardiso\_max\_droptol\_corrections:}\label{sec:pardiso_max_droptol_corrections} Maximal number of decreases of drop tolerance during one solve. $\;$ \\ This is relevant only for iterative Pardiso \htmlanchor{sec:pardiso_max_iter} \paragraph{pardiso\_max\_iter:}\label{sec:pardiso_max_iter} Maximum number of Krylov-Subspace Iteration $\;$ \\ DPARM(1) The valid range for this integer option is \htmlanchor{sec:pardiso_msglvl} \paragraph{pardiso\_msglvl:}\label{sec:pardiso_msglvl} Pardiso message level $\;$ \\ This determines the amount of analysis output \htmlanchor{sec:pardiso_out_of_core_power} \paragraph{pardiso\_out\_of\_core\_power:}\label{sec:pardiso_out_of_core_power} Enables out-of-core variant of Pardiso $\;$ \\ Setting this option to a positive integer k makes \htmlanchor{sec:pardiso_redo_symbolic_fact_only_if_inertia_wrong} \paragraph{pardiso\_redo\_symbolic\_fact\_only\_if\_inertia\_wrong:}\label{sec:pardiso_redo_symbolic_fact_only_if_inertia_wrong} Toggle for handling case when elements were perturbed by Pardiso. $\;$ \\ This option is only available if Ipopt has been \end{itemize} \htmlanchor{sec:pardiso_repeated_perturbation_means_singular} \paragraph{pardiso\_repeated\_perturbation\_means\_singular:}\label{sec:pardiso_repeated_perturbation_means_singular} Interpretation of perturbed elements. $\;$ \\ This option is only available if Ipopt has been \end{itemize} \htmlanchor{sec:pardiso_skip_inertia_check} \paragraph{pardiso\_skip\_inertia\_check:}\label{sec:pardiso_skip_inertia_check} Always pretend inertia is correct. $\;$ \\ Setting this option to "yes" essentially disables \label{sec:Restoration_Phase} \htmlanchor{sec:Restoration_Phase} \htmlanchor{sec:bound_mult_reset_threshold} \paragraph{bound\_mult\_reset\_threshold:}\label{sec:bound_mult_reset_threshold} Threshold for resetting bound multipliers after the restoration phase. $\;$ \\ After returning from the restoration phase, the \htmlanchor{sec:constr_mult_reset_threshold} \paragraph{constr\_mult\_reset\_threshold:}\label{sec:constr_mult_reset_threshold} Threshold for resetting equality and inequality multipliers after restoration phase. $\;$ \\ After returning from the restoration phase, the \htmlanchor{sec:evaluate_orig_obj_at_resto_trial} \paragraph{evaluate\_orig\_obj\_at\_resto\_trial:}\label{sec:evaluate_orig_obj_at_resto_trial} Determines if the original objective function should be evaluated at restoration phase trial points. $\;$ \\ Setting this option to "yes" makes the \end{itemize} \htmlanchor{sec:expect_infeasible_problem} \paragraph{expect\_infeasible\_problem:}\label{sec:expect_infeasible_problem} Enable heuristics to quickly detect an infeasible problem. $\;$ \\ This options is meant to activate heuristics that \end{itemize} \htmlanchor{sec:expect_infeasible_problem_ctol} \paragraph{expect\_infeasible\_problem\_ctol:}\label{sec:expect_infeasible_problem_ctol} Threshold for disabling "expect\_infeasible\_problem" option. $\;$ \\ If the constraint violation becomes smaller than \htmlanchor{sec:expect_infeasible_problem_ytol} \paragraph{expect\_infeasible\_problem\_ytol:}\label{sec:expect_infeasible_problem_ytol} Multiplier threshold for activating "expect\_infeasible\_problem" option. $\;$ \\ If the max norm of the constraint multipliers \htmlanchor{sec:max_resto_iter} \paragraph{max\_resto\_iter:}\label{sec:max_resto_iter} Maximum number of successive iterations in restoration phase. $\;$ \\ The algorithm terminates with an error message if \htmlanchor{sec:max_soft_resto_iters} \paragraph{max\_soft\_resto\_iters:}\label{sec:max_soft_resto_iters} Maximum number of iterations performed successively in soft restoration phase. $\;$ \\ If the soft restoration phase is performed for \htmlanchor{sec:required_infeasibility_reduction} \paragraph{required\_infeasibility\_reduction:}\label{sec:required_infeasibility_reduction} Required reduction of infeasibility before leaving restoration phase. $\;$ \\ The restoration phase algorithm is performed, \htmlanchor{sec:resto_failure_feasibility_threshold} \paragraph{resto\_failure\_feasibility\_threshold:}\label{sec:resto_failure_feasibility_threshold} Threshold for primal infeasibility to declare failure of restoration phase. $\;$ \\ If the restoration phase is terminated because of \htmlanchor{sec:resto_penalty_parameter} \paragraph{resto\_penalty\_parameter:}\label{sec:resto_penalty_parameter} Penalty parameter in the restoration phase objective function. $\;$ \\ This is the parameter rho in equation (31a) in \htmlanchor{sec:resto_proximity_weight} \paragraph{resto\_proximity\_weight:}\label{sec:resto_proximity_weight} Weighting factor for the proximity term in restoration phase objective. $\;$ \\ This determines how the parameter zera in \htmlanchor{sec:soft_resto_pderror_reduction_factor} \paragraph{soft\_resto\_pderror\_reduction\_factor:}\label{sec:soft_resto_pderror_reduction_factor} Required reduction in primal-dual error in the soft restoration phase. $\;$ \\ The soft restoration phase attempts to reduce the \htmlanchor{sec:start_with_resto} \paragraph{start\_with\_resto:}\label{sec:start_with_resto} Tells algorithm to switch to restoration phase in first iteration. $\;$ \\ Setting this option to "yes" forces the algorithm \label{sec:Step_Calculation} \htmlanchor{sec:Step_Calculation} \htmlanchor{sec:fast_step_computation} \paragraph{fast\_step\_computation:}\label{sec:fast_step_computation} Indicates if the linear system should be solved quickly. $\;$ \\ If set to yes, the algorithm assumes that the \end{itemize} \htmlanchor{sec:first_hessian_perturbation} \paragraph{first\_hessian\_perturbation:}\label{sec:first_hessian_perturbation} Size of first x-s perturbation tried. $\;$ \\ The first value tried for the x-s perturbation in \htmlanchor{sec:jacobian_regularization_exponent} \paragraph{jacobian\_regularization\_exponent:}\label{sec:jacobian_regularization_exponent} Exponent for mu in the regularization for rank-deficient constraint Jacobians. $\;$ \\ (This is kappa\_c in the implementation paper.) The valid range for this real option is \htmlanchor{sec:jacobian_regularization_value} \paragraph{jacobian\_regularization\_value:}\label{sec:jacobian_regularization_value} Size of the regularization for rank-deficient constraint Jacobians. $\;$ \\ (This is bar delta\_c in the implementation \htmlanchor{sec:max_hessian_perturbation} \paragraph{max\_hessian\_perturbation:}\label{sec:max_hessian_perturbation} Maximum value of regularization parameter for handling negative curvature. $\;$ \\ In order to guarantee that the search directions \htmlanchor{sec:max_refinement_steps} \paragraph{max\_refinement\_steps:}\label{sec:max_refinement_steps} Maximum number of iterative refinement steps per linear system solve. $\;$ \\ Iterative refinement (on the full unsymmetric \htmlanchor{sec:mehrotra_algorithm} \paragraph{mehrotra\_algorithm:}\label{sec:mehrotra_algorithm} Indicates if we want to do Mehrotra's algorithm. $\;$ \\ If set to yes, Ipopt runs as Mehrotra's \end{itemize} \htmlanchor{sec:min_hessian_perturbation} \paragraph{min\_hessian\_perturbation:}\label{sec:min_hessian_perturbation} Smallest perturbation of the Hessian block. $\;$ \\ The size of the perturbation of the Hessian block \htmlanchor{sec:min_refinement_steps} \paragraph{min\_refinement\_steps:}\label{sec:min_refinement_steps} Minimum number of iterative refinement steps per linear system solve. $\;$ \\ Iterative refinement (on the full unsymmetric \htmlanchor{sec:neg_curv_test_tol} \paragraph{neg\_curv\_test\_tol:}\label{sec:neg_curv_test_tol} Tolerance for heuristic to ignore wrong inertia. $\;$ \\ If positive, incorrect inertia in the augmented \htmlanchor{sec:perturb_always_cd} \paragraph{perturb\_always\_cd:}\label{sec:perturb_always_cd} Active permanent perturbation of constraint linearization. $\;$ \\ This options makes the delta\_c and delta\_d \end{itemize} \htmlanchor{sec:perturb_dec_fact} \paragraph{perturb\_dec\_fact:}\label{sec:perturb_dec_fact} Decrease factor for x-s perturbation. $\;$ \\ The factor by which the perturbation is decreased \htmlanchor{sec:perturb_inc_fact} \paragraph{perturb\_inc\_fact:}\label{sec:perturb_inc_fact} Increase factor for x-s perturbation. $\;$ \\ The factor by which the perturbation is increased \htmlanchor{sec:perturb_inc_fact_first} \paragraph{perturb\_inc\_fact\_first:}\label{sec:perturb_inc_fact_first} Increase factor for x-s perturbation for very first perturbation. $\;$ \\ The factor by which the perturbation is increased \htmlanchor{sec:residual_improvement_factor} \paragraph{residual\_improvement\_factor:}\label{sec:residual_improvement_factor} Minimal required reduction of residual test ratio in iterative refinement. $\;$ \\ If the improvement of the residual test ratio \htmlanchor{sec:residual_ratio_max} \paragraph{residual\_ratio\_max:}\label{sec:residual_ratio_max} Iterative refinement tolerance $\;$ \\ Iterative refinement is performed until the \htmlanchor{sec:residual_ratio_singular} \paragraph{residual\_ratio\_singular:}\label{sec:residual_ratio_singular} Threshold for declaring linear system singular after failed iterative refinement. $\;$ \\ If the residual test ratio is larger than this \label{sec:Uncategorized} \htmlanchor{sec:Uncategorized} \htmlanchor{sec:warm_start_target_mu} \paragraph{warm\_start\_target\_mu:}\label{sec:warm_start_target_mu} Unsupported! $\;$ \\ The valid range for this real option is \label{sec:Undocumented} \htmlanchor{sec:Undocumented} \htmlanchor{sec:adaptive_mu_safeguard_factor} \paragraph{adaptive\_mu\_safeguard\_factor:}\label{sec:adaptive_mu_safeguard_factor}  $\;$ \\ The valid range for this real option is \htmlanchor{sec:chi_cup} \paragraph{chi\_cup:}\label{sec:chi_cup} LIFENG WRITES THIS. $\;$ \\ The valid range for this real option is \htmlanchor{sec:chi_hat} \paragraph{chi\_hat:}\label{sec:chi_hat} LIFENG WRITES THIS. $\;$ \\ The valid range for this real option is \htmlanchor{sec:chi_tilde} \paragraph{chi\_tilde:}\label{sec:chi_tilde} LIFENG WRITES THIS. $\;$ \\ The valid range for this real option is \htmlanchor{sec:delta_y_max} \paragraph{delta\_y\_max:}\label{sec:delta_y_max} a parameter used to check if the fast direction can be used asthe line search direction (for Chen-Goldfarb line search). $\;$ \\ The valid range for this real option is \htmlanchor{sec:epsilon_c} \paragraph{epsilon\_c:}\label{sec:epsilon_c} LIFENG WRITES THIS. $\;$ \\ The valid range for this real option is \htmlanchor{sec:eta_min} \paragraph{eta\_min:}\label{sec:eta_min} LIFENG WRITES THIS. $\;$ \\ The valid range for this real option is \htmlanchor{sec:eta_penalty} \paragraph{eta\_penalty:}\label{sec:eta_penalty} Relaxation factor in the Armijo condition for the penalty function. $\;$ \\ The valid range for this real option is \htmlanchor{sec:fast_des_fact} \paragraph{fast\_des\_fact:}\label{sec:fast_des_fact} a parameter used to check if the fast direction can be used asthe line search direction (for Chen-Goldfarb line search). $\;$ \\ The valid range for this real option is \htmlanchor{sec:gamma_hat} \paragraph{gamma\_hat:}\label{sec:gamma_hat} LIFENG WRITES THIS. $\;$ \\ The valid range for this real option is \htmlanchor{sec:gamma_tilde} \paragraph{gamma\_tilde:}\label{sec:gamma_tilde} LIFENG WRITES THIS. $\;$ \\ The valid range for this real option is \htmlanchor{sec:kappa_x_dis} \paragraph{kappa\_x\_dis:}\label{sec:kappa_x_dis} a parameter used to check if the fast direction can be used asthe line search direction (for Chen-Goldfarb line search). $\;$ \\ The valid range for this real option is \htmlanchor{sec:kappa_y_dis} \paragraph{kappa\_y\_dis:}\label{sec:kappa_y_dis} a parameter used to check if the fast direction can be used asthe line search direction (for Chen-Goldfarb line search). $\;$ \\ The valid range for this real option is \htmlanchor{sec:magic_steps} \paragraph{magic\_steps:}\label{sec:magic_steps} Enables magic steps. $\;$ \\ DOESN'T REALLY WORK YET! \end{itemize} \htmlanchor{sec:min_alpha_primal} \paragraph{min\_alpha\_primal:}\label{sec:min_alpha_primal} LIFENG WRITES THIS. $\;$ \\ The valid range for this real option is \htmlanchor{sec:mult_diverg_feasibility_tol} \paragraph{mult\_diverg\_feasibility\_tol:}\label{sec:mult_diverg_feasibility_tol} tolerance for deciding if the multipliers are diverging $\;$ \\ The valid range for this real option is \htmlanchor{sec:mult_diverg_y_tol} \paragraph{mult\_diverg\_y\_tol:}\label{sec:mult_diverg_y_tol} tolerance for deciding if the multipliers are diverging $\;$ \\ The valid range for this real option is \htmlanchor{sec:never_use_fact_cgpen_direction} \paragraph{never\_use\_fact\_cgpen\_direction:}\label{sec:never_use_fact_cgpen_direction} Toggle to switch off the fast Chen-Goldfarb direction $\;$ \\ \end{itemize} \htmlanchor{sec:never_use_piecewise_penalty_ls} \paragraph{never\_use\_piecewise\_penalty\_ls:}\label{sec:never_use_piecewise_penalty_ls} Toggle to switch off the piecewise penalty method $\;$ \\ \end{itemize} \htmlanchor{sec:pen_des_fact} \paragraph{pen\_des\_fact:}\label{sec:pen_des_fact} a parameter used in penalty parameter computation (for Chen-Goldfarb line search). $\;$ \\ The valid range for this real option is \htmlanchor{sec:pen_init_fac} \paragraph{pen\_init\_fac:}\label{sec:pen_init_fac} a parameter used to choose initial penalty parameterswhen the regularized Newton method is used. $\;$ \\ The valid range for this real option is \htmlanchor{sec:pen_theta_max_fact} \paragraph{pen\_theta\_max\_fact:}\label{sec:pen_theta_max_fact} Determines upper bound for constraint violation in the filter. $\;$ \\ The algorithmic parameter theta\_max is \htmlanchor{sec:penalty_init_max} \paragraph{penalty\_init\_max:}\label{sec:penalty_init_max} Maximal value for the intial penalty parameter (for Chen-Goldfarb line search). $\;$ \\ The valid range for this real option is \htmlanchor{sec:penalty_init_min} \paragraph{penalty\_init\_min:}\label{sec:penalty_init_min} Minimal value for the intial penalty parameter for line search(for Chen-Goldfarb line search). $\;$ \\ The valid range for this real option is \htmlanchor{sec:penalty_max} \paragraph{penalty\_max:}\label{sec:penalty_max} Maximal value for the penalty parameter (for Chen-Goldfarb line search). $\;$ \\ The valid range for this real option is \htmlanchor{sec:penalty_update_compl_tol} \paragraph{penalty\_update\_compl\_tol:}\label{sec:penalty_update_compl_tol} LIFENG WRITES THIS. $\;$ \\ The valid range for this real option is \htmlanchor{sec:penalty_update_infeasibility_tol} \paragraph{penalty\_update\_infeasibility\_tol:}\label{sec:penalty_update_infeasibility_tol} Threshold for infeasibility in penalty parameter update test. $\;$ \\ If the new constraint violation is smaller than \htmlanchor{sec:piecewisepenalty_gamma_infeasi} \paragraph{piecewisepenalty\_gamma\_infeasi:}\label{sec:piecewisepenalty_gamma_infeasi} LIFENG WRITES THIS. $\;$ \\ The valid range for this real option is \htmlanchor{sec:piecewisepenalty_gamma_obj} \paragraph{piecewisepenalty\_gamma\_obj:}\label{sec:piecewisepenalty_gamma_obj} LIFENG WRITES THIS. $\;$ \\ The valid range for this real option is \htmlanchor{sec:print_options_latex_mode} \paragraph{print\_options\_latex\_mode:}\label{sec:print_options_latex_mode} Undocumented $\;$ \\ Undocumented \end{itemize} \htmlanchor{sec:suppress_all_output} \paragraph{suppress\_all\_output:}\label{sec:suppress_all_output} Undocumented $\;$ \\ Undocumented \end{itemize} \htmlanchor{sec:theta_min} \paragraph{theta\_min:}\label{sec:theta_min} LIFENG WRITES THIS. $\;$ \\ The valid range for this real option is \htmlanchor{sec:vartheta} \paragraph{vartheta:}\label{sec:vartheta} a parameter used to check if the fast direction can be used asthe line search direction (for Chen-Goldfarb line search). $\;$ \\ The valid range for this real option is \htmlanchor{sec:wsmp_iterative} \paragraph{wsmp\_iterative:}\label{sec:wsmp_iterative} Switches to iterative solver in WSMP. $\;$ \\ EXPERIMENTAL! \label{sec:Warm_Start} \htmlanchor{sec:Warm_Start} \htmlanchor{sec:warm_start_bound_frac} \paragraph{warm\_start\_bound\_frac:}\label{sec:warm_start_bound_frac} same as bound\_frac for the regular initializer. $\;$ \\ The valid range for this real option is \htmlanchor{sec:warm_start_bound_push} \paragraph{warm\_start\_bound\_push:}\label{sec:warm_start_bound_push} same as bound\_push for the regular initializer. $\;$ \\ The valid range for this real option is \htmlanchor{sec:warm_start_entire_iterate} \paragraph{warm\_start\_entire\_iterate:}\label{sec:warm_start_entire_iterate} Tells algorithm whether to use the GetWarmStartIterate method in the NLP. $\;$ \\ \end{itemize} \htmlanchor{sec:warm_start_init_point} \paragraph{warm\_start\_init\_point:}\label{sec:warm_start_init_point} Warm-start for initial point $\;$ \\ Indicates whether this optimization should use a \end{itemize} \htmlanchor{sec:warm_start_mult_bound_push} \paragraph{warm\_start\_mult\_bound\_push:}\label{sec:warm_start_mult_bound_push} same as mult\_bound\_push for the regular initializer. $\;$ \\ The valid range for this real option is \htmlanchor{sec:warm_start_mult_init_max} \paragraph{warm\_start\_mult\_init\_max:}\label{sec:warm_start_mult_init_max} Maximum initial value for the equality multipliers. $\;$ \\ The valid range for this real option is \htmlanchor{sec:warm_start_same_structure} \paragraph{warm\_start\_same\_structure:}\label{sec:warm_start_same_structure} Indicates whether a problem with a structure identical to the previous one is to be solved. $\;$ \\ If "yes" is chosen, then the algorithm assumes \end{itemize} \htmlanchor{sec:warm_start_slack_bound_frac} \paragraph{warm\_start\_slack\_bound\_frac:}\label{sec:warm_start_slack_bound_frac} same as slack\_bound\_frac for the regular initializer. $\;$ \\ The valid range for this real option is \htmlanchor{sec:warm_start_slack_bound_push} \paragraph{warm\_start\_slack\_bound\_push:}\label{sec:warm_start_slack_bound_push} same as slack\_bound\_push for the regular initializer. $\;$ \\ The valid range for this real option is
• ## stable/1.6/Bonmin/doc/options_table.tex

 r1555 \tabletail{\hline \multicolumn{9}{|c|}{continued on next page}\\\hline} \tablelasttail{\hline} {\footnotesize {\tiny \begin{xtabular}{|l|r|r|r|r|r|r|r|r|} \hline cutoff& F& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ cutoff\_decr& F& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ enable\_dynamic\_nlp& S& -& -& $\surd$& $\surd$& $\surd$& -& -\\ enable\_dynamic\_nlp& S& $\surd$& -& -& -& -& -& -\\ integer\_tolerance& F& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ iteration\_limit& I& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ number\_before\_trust& I& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ number\_strong\_branch& I& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ random\_generator\_seed& I& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ read\_solution\_file& S& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ solution\_limit& I& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ sos\_constraints& S& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& -\\ time\_limit& F& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ tree\_search\_strategy& S& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& -\\ variable\_selection& S& $\surd$& -& -& -& -& -& -\\ variable\_selection& S& $\surd$& -& $\surd$& $\surd$& $\surd$& -& -\\ \hline \multicolumn{1}{|c}{} & \multicolumn{8}{l|}{MILP cutting planes in hybrid}\\ feasibility\_pump\_objective\_norm& I& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& -\\ heuristic\_RINS& S& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& -\\ heuristic\_dive\_MIP\_fractional& S& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& -\\ heuristic\_dive\_MIP\_vectorLength& S& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& -\\ heuristic\_dive\_fractional& S& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& -\\ heuristic\_feasibility\_pump& S& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& -\\ pump\_for\_minlp& S& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& -\\ \hline \multicolumn{1}{|c}{} & \multicolumn{8}{l|}{MINLP heuristics}\\ \hline heuristic\_dive\_MIP\_fractional& S& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& -\\ \hline \multicolumn{1}{|c}{} & \multicolumn{8}{l|}{Nlp solution robustness}\\ random\_point\_perturbation\_interval& F& $\surd$& -& -& -& -& -& -\\ random\_point\_type& S& $\surd$& -& -& -& -& -& -\\ resolve\_on\_small\_infeasibility& F& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ \hline \multicolumn{1}{|c}{} & \multicolumn{8}{l|}{Nlp solve options in B-Hyb}\\ \multicolumn{1}{|c}{} & \multicolumn{8}{l|}{Options for MILP solver}\\ \hline cpx\_parallel\_strategy& I& -& -& -& -& -& -& $\surd$\\ milp\_log\_level& I& -& -& -& -& -& -& $\surd$\\ milp\_solver& S& -& -& -& -& -& -& $\surd$\\ milp\_strategy& S& -& -& -& -& -& -& $\surd$\\ number\_cpx\_threads& I& -& -& -& -& -& -& $\surd$\\ \hline \multicolumn{1}{|c}{} & \multicolumn{8}{l|}{Options for OA decomposition}\\ ecp\_abs\_tol& F& -& -& $\surd$& $\surd$& -& -& -\\ ecp\_max\_rounds& I& -& -& $\surd$& $\surd$& -& -& -\\ ecp\_propability\_factor& F& -& -& $\surd$& $\surd$& -& -& -\\ ecp\_probability\_factor& F& -& -& $\surd$& $\surd$& -& -& -\\ ecp\_rel\_tol& F& -& -& $\surd$& $\surd$& -& -& -\\ filmint\_ecp\_cuts& I& -& -& $\surd$& $\surd$& -& -& -\\ fp\_log\_frequency& F& -& -& $\surd$& $\surd$& -& -& -\\ fp\_log\_level& I& -& -& $\surd$& $\surd$& -& -& -\\ fp\_pass\_infeasible& S& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ \hline \multicolumn{1}{|c}{} & \multicolumn{8}{l|}{Options for non-convex problems}\\ oa\_cuts\_log\_level& I& -& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ oa\_cuts\_scope& S& -& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ oa\_rhs\_relax& F& -& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ tiny\_element& F& -& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ very\_tiny\_element& F& -& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\ \hline \multicolumn{1}{|c}{} & \multicolumn{8}{l|}{Output ond log-levels options}\\ \multicolumn{1}{|c}{} & \multicolumn{8}{l|}{Output and log-level options}\\ \hline bb\_log\_interval& I& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$& $\surd$\\
• ## stable/1.6/Bonmin/src

• Property svn:mergeinfo changed /trunk/Bonmin/src merged: 1991
• ## stable/1.6/Bonmin/src/Algorithms/BonBabSetupBase.cpp

 r1982 #endif "Chooses variable selection strategy", "strong-branching", "osi-strong", "most-fractional", "Choose most fractional variable", "strong-branching", "Perform strong branching", "random", "Method to choose branching variable randomly"); roptions->setOptionExtraInfo("variable_selection", 8); roptions->setOptionExtraInfo("variable_selection", 27); roptions->AddLowerBoundedIntegerOption("num_cut_passes",
• ## stable/1.6/Bonmin/test

• Property svn:mergeinfo changed /trunk/Bonmin/test merged: 1991
• ## stable/1.6/Bonmin/test/bonmin.opt

 r1967 bonmin.number_before_trust                   8          #Set the number of branches on a variable before its pseudo costs are to be believed in dynamic strong branching. bonmin.number_strong_branch                  20         #Choose the maximum number of variables considered for strong branching. bonmin.random_generator_seed                 0          #Set seed for random number generator (a value of -1 sets seeds to time since Epoch). bonmin.read_solution_file                    no         #Read a file with the optimal solution to test if algorithms cuts it. bonmin.solution_limit                        2147483647 #Abort after that much integer feasible solution have been found by algorithm bonmin.sos_constraints                       enable     #Wether or not to activate SOS constraints. bonmin.Gomory_cuts                           -5         #Frequency k (in terms of nodes) for generating Gomory cuts in branch-and-cut. bonmin.clique_cuts                           -5         #Frequency (in terms of nodes) for generating clique cuts in branch-and-cut bonmin.cover_cuts                            -5         #Frequency (in terms of nodes) for generating cover cuts in branch-and-cut bonmin.cover_cuts                            0          #Frequency (in terms of nodes) for generating cover cuts in branch-and-cut bonmin.flow_cover_cuts                       -5         #Frequency (in terms of nodes) for generating flow cover cuts in branch-and-cut bonmin.lift_and_project_cuts                 0          #Frequency (in terms of nodes) for generating lift-and-project cuts in branch-and-cut bonmin.feasibility_pump_objective_norm       1          #Norm of feasibility pump objective function bonmin.heuristic_RINS                        no         #if yes runs the RINS heuristic bonmin.heuristic_dive_MIP_fractional         no         #if yes runs the Dive MIP Fractional heuristic bonmin.heuristic_dive_MIP_vectorLength       no         #if yes runs the Dive MIP VectorLength heuristic bonmin.heuristic_dive_fractional             no         #if yes runs the Dive Fractional heuristic bonmin.heuristic_feasibility_pump            no         #whether the heuristic feasibility pump should be used bonmin.pump_for_minlp                        no         #if yes runs FP for MINLP # registering category: MINLP heuristics bonmin.heuristic_dive_MIP_fractional         no         #if yes runs the Dive MIP Fractional heuristic # registering category: Nlp solution robustness bonmin.random_point_perturbation_interval    1          #Amount by which starting point is perturbed when choosing to pick random point by perturbating starting point bonmin.random_point_type                     Jon        #method to choose a random starting point bonmin.resolve_on_small_infeasibility        0          #If a locally infeasible problem is infeasible by less than this, resolve it with initial starting point. # registering category: Nlp solve options in B-Hyb # registering category: Options for MILP solver bonmin.cpx_parallel_strategy                 0          #Strategy of parallel search mode in CPLEX. bonmin.milp_log_level                        0          #specify MILP solver log level. bonmin.milp_solver                           Cbc_D      #Choose the subsolver to solve MILP sub-problems in OA decompositions. bonmin.milp_strategy                         find_good_sol      #Choose a strategy for MILPs. bonmin.number_cpx_threads                    0          #Set number of threads to use with cplex. # registering category: Options for OA decomposition bonmin.fp_log_frequency                      100        #display an update on lower and upper bounds in FP every n seconds bonmin.fp_log_level                          1          #specify FP iterations log level. bonmin.fp_pass_infeasible                    no         #Say whether feasibility pump should claim to converge or not # registering category: Options for non-convex problems bonmin.oa_cuts_log_level                     0          #level of log when generating OA cuts. bonmin.oa_cuts_scope                         global     #Specify if OA cuts added are to be set globally or locally valid bonmin.oa_rhs_relax                          1e-08      #Value by which to relax OA cut bonmin.tiny_element                          1e-08      #Value for tiny element in OA cut bonmin.very_tiny_element                     1e-17      #Value for very tiny element in OA cut # registering category: Output ond log-levels options # registering category: Output and log-level options bonmin.bb_log_interval                       100        #Interval at which node level output is printed. bonmin.nlp_solver                            Ipopt      #Choice of the solver for local optima of continuous nlp's bonmin.warm_start                            none       #Select the warm start method
Note: See TracChangeset for help on using the changeset viewer.