Objectives

Once a satisfying solution has been reached, the solver will try to minimize the provided objective function if any.

As the recommended usage is through the CBLS.jl package and the JuMP.jl interface, we provide the related documentation here.

JuMP syntax (recommended)

CBLS.ScalarFunctionType
ScalarFunction{F <: Function, V <: Union{Nothing, VOV}} <: MOI.AbstractScalarFunction

A container to express any function with real value in JuMP syntax. Used with the @objective macro.

Arguments:

  • f::F: function to be applied to X
  • X::V: a subset of the variables of the model.

Given a model, and some (collection of) variables X to optimize. an objective function f can be added as follows. Note that only Min for minimization us currently defined. Max will come soon.

# Applies to all variables in order of insertion.
# Recommended only when the function argument order does not matter.
@objective(model, ScalarFunction(f))

# Generic use
@objective(model, ScalarFunction(f, X))