| Did you know ... | Search Documentation: |
| Pack logtalk -- logtalk-3.102.0/docs/apis/_sources/constrained_optimization_solver_0.rst.txt |
.. index:: single: constrained_optimization_solver .. _constrained_optimization_solver/0:
.. rst-class:: right
category
constrained_optimization_solverShared numeric, objective-direction, and validation predicates for constrained optimization solvers and their internal problem wrappers.
| Availability:
| logtalk_load(constrained_optimization(loader))
| Author: Paulo Moura | Version: 1:0:0 | Date: 2026-09-04
| Compilation flags:
| static
| Uses: | :ref:`list <list/0>`
| Remarks: | (none)
| Inherited public predicates: | (none)
.. contents:: :local: :backlinks: top
(no local declarations; see entity ancestors if any)
.. index:: abs_max/2 .. _constrained_optimization_solver/0::abs_max/2:
abs_max/2 ^^^^^^^^^^^^^
Infinity norm: max_i abs(Vec_i), 0.0 for an empty vector.
| Compilation flags:
| static
| Template:
| abs_max(Vec,Max)
| Mode and number of proofs:
| abs_max(+list(number),-number) - one
.. index:: positive_max/2 .. _constrained_optimization_solver/0::positive_max/2:
positive_max/2 ^^^^^^^^^^^^^^^^^^
Infinity norm of the positive part: max_i max(0, Vec_i), 0.0 for an empty vector.
| Compilation flags:
| static
| Template:
| positive_max(Vec,Max)
| Mode and number of proofs:
| positive_max(+list(number),-number) - one
.. index:: direction_sign/2 .. _constrained_optimization_solver/0::direction_sign/2:
direction_sign/2 ^^^^^^^^^^^^^^^^^^^^
Converts an objective direction into its numeric sign.
| Compilation flags:
| static
| Template:
| direction_sign(Direction,Sign)
| Mode and number of proofs:
| direction_sign(+atom,-number) - one
.. index:: objective_direction/2 .. _constrained_optimization_solver/0::objective_direction/2:
objective_direction/2 ^^^^^^^^^^^^^^^^^^^^^^^^^
Converts an objective numeric sign into its direction.
| Compilation flags:
| static
| Template:
| objective_direction(Sign,Direction)
| Mode and number of proofs:
| objective_direction(+number,-atom) - one
.. index:: build_inner/3 .. _constrained_optimization_solver/0::build_inner/3:
build_inner/3 ^^^^^^^^^^^^^^^^^
Constructs a parametric inner solver object from its class atom and problem object.
| Compilation flags:
| static
| Template:
| build_inner(InnerSolver,Problem,Solver)
| Mode and number of proofs:
| build_inner(+atom,+nonvar,-nonvar) - one
.. index:: update_penalty/6 .. _constrained_optimization_solver/0::update_penalty/6:
update_penalty/6 ^^^^^^^^^^^^^^^^^^^^
Scales a penalty when the constraint violation does not decrease by the required factor.
| Compilation flags:
| static
| Template:
| update_penalty(OldViolation,NewViolation,RequiredDecrease,OldPenalty,Scale,NewPenalty)
| Mode and number of proofs:
| update_penalty(+number,+number,+number,+number,+number,-number) - one
.. index:: abs_sum/2 .. _constrained_optimization_solver/0::abs_sum/2:
abs_sum/2 ^^^^^^^^^^^^^
Computes the sum of the absolute values of a numeric list.
| Compilation flags:
| static
| Template:
| abs_sum(Values,Sum)
| Mode and number of proofs:
| abs_sum(+list(number),-number) - one
.. index:: validate_numeric_vector/2 .. _constrained_optimization_solver/0::validate_numeric_vector/2:
validate_numeric_vector/2 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Checks that a vector is a list of numbers.
| Compilation flags:
| static
| Template:
| validate_numeric_vector(Vector,Domain)
| Mode and number of proofs:
| validate_numeric_vector(+list,+atom) - one_or_error
| Exceptions:
| Vector is not a numeric vector:
| domain_error(Domain,Vector)
.. index:: validate_constraint_data/4 .. _constrained_optimization_solver/0::validate_constraint_data/4:
validate_constraint_data/4 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Checks that constraint values are numeric and that the Jacobian has one numeric row per constraint and one column per point component.
| Compilation flags:
| static
| Template:
| validate_constraint_data(Point,Values,Jacobian,Domain)
| Mode and number of proofs:
| validate_constraint_data(+list(number),+list,+list,+atom) - one_or_error
| Exceptions:
| Values is not a numeric vector:
| domain_error(Domain,Values)
| Jacobian does not have one numeric row per constraint and one column per point component:
| domain_error(Domain,Jacobian)
(no local declarations; see entity ancestors if any)
(none)