InteriorPointSolver
(class from pyomo.contrib.interior_point.interior_point
)
- class pyomo.contrib.interior_point.interior_point.InteriorPointSolver(linear_solver, max_iter=100, tol=1e-08, linear_solver_log_filename=None, max_reallocation_iterations=5, reallocation_factor=2)[source]
Bases:
object
Class for creating interior point solvers with different options
- __init__(linear_solver, max_iter=100, tol=1e-08, linear_solver_log_filename=None, max_reallocation_iterations=5, reallocation_factor=2)[source]
Methods
__init__
(linear_solver[, max_iter, tol, ...])check_convergence
(barrier[, timer])factorize
(kkt[, timer])fraction_to_the_boundary
()process_init
(x, lb, ub)process_init_duals_lb
(x, lb)process_init_duals_ub
(x, ub)set_interface
(interface)set_linear_solver
(linear_solver)This method exists to hopefully make it easy to try the same IP algorithm with different linear solvers.
solve
(interface[, timer, report_timing])update_barrier_parameter
()Member Documentation
- check_convergence(barrier, timer=None)[source]
- Parameters:
barrier (float)
timer (HierarchicalTimer)
- Returns:
primal_inf (float)
dual_inf (float)
complimentarity_inf (float)
- set_linear_solver(linear_solver)[source]
This method exists to hopefully make it easy to try the same IP algorithm with different linear solvers. Subclasses may have linear-solver specific methods, in which case this should not be called.
Hopefully the linear solver interface can be standardized such that this is not a problem. (Need a generalized method for set_options)
- solve(interface, timer=None, report_timing=False)[source]
- Parameters:
interface (pyomo.contrib.interior_point.interface.BaseInteriorPointInterface) – The interior point interface. This object handles the function evaluation, building the KKT matrix, and building the KKT right hand side.
timer (HierarchicalTimer)
report_timing (bool)