Computation

Input

The objective function accepts the input described below. Pass the Input ID as a parameter to the methods that provide input for your algorithm. For more details, see Algorithms.

Input ID

Input

argument

Numeric table of size p x 1with the input argument of the objective function.

Parameters

The objective function has the following parameters:

Parameter

Default Value

Description

resultsToCompute

gradient

The 64-bit integer flag that specifies which characteristics of the objective function to compute.

Provide one of the following values to request a single characteristic or use bitwise OR to request a combination of the characteristics:

value

Value of the objective function

nonSmoothTermValue

Value of non-smooth term of the objective function

gradient

Gradient of the smooth term of the objective function

hessian

Hessian of smooth term of the objective function

proximalProjection

Projection of proximal operator for non-smooth term of the objective function

lipschitzConstant

Lipschitz constant of the smooth term of the objective function

Output

The objective function calculates the result described below. Pass the Result ID as a parameter to the methods that access the results of your algorithm. For more details, see Algorithms.

Result ID

Result

valueIdx

Numeric table of size 1 x 1 with the value of the objective function in the given argument.

nonSmoothTermValueIdx

Numeric table of size 1 x 1 with the value of the non-smooth term of the objective function in the given argument.

gradientIdx

Numeric table of size p x 1 with the gradient of the smooth term of the objective function in the given argument.

hessianIdx

Numeric table of size p x p with the Hessian of the smooth term of the objective function in the given argument.

proximalProjectionIdx

Numeric table of size p x 1 with the projection of proximal operator for non-smooth term of the objective function in the given argument.

lipschitzConstantIdx

Numeric table of size 1 x 1 with Lipschitz constant of the smooth term of the objective function

Note

  • If the function result is not requested through the resultsToCompute parameter, the respective element of the result contains a NULL pointer.

  • By default, each numeric table specified by the collection elements is an object of the HomogenNumericTable class, but you can define the result as an object of any class derived from NumericTable, except for PackedSymmetricMatrix, PackedTriangularMatrix, and CSRNumericTable.

  • Hessian matrix is computed for the objective function . For the objective functions with p < 2 the library will stop computations and report the status on non-availability of the computation of the Hessian.
  • If Lipschitz constant constantOfLipschitz is not estimated explicitly, pointer to result numeric table is required to be set to nullptr.
For more complete information about compiler optimizations, see our Optimization Notice.
Select sticky button color: 
Orange (only for download buttons)