48 #ifndef __OBJECTIVE_FUNCTION_TYPES_H__
49 #define __OBJECTIVE_FUNCTION_TYPES_H__
51 #include "algorithms/algorithm.h"
52 #include "data_management/data/numeric_table.h"
53 #include "data_management/data/homogen_numeric_table.h"
54 #include "services/daal_defines.h"
63 namespace optimization_solver
74 namespace objective_function
84 lastInputId = argument
91 enum ResultToComputeId
93 gradient = 0x00000001ULL,
94 value = 0x00000002ULL,
95 hessian = 0x00000004ULL
107 lastResultId = hessianIdx
122 struct DAAL_EXPORT Parameter :
public daal::algorithms::Parameter
128 Parameter(
const DAAL_UINT64 resultsToCompute = gradient);
134 Parameter(
const Parameter &other);
136 virtual ~Parameter() {}
138 DAAL_UINT64 resultsToCompute;
146 class DAAL_EXPORT Input :
public daal::algorithms::Input
153 Input(
const Input& other);
163 void set(InputId
id,
const data_management::NumericTablePtr &ptr);
170 data_management::NumericTablePtr
get(InputId id)
const;
179 services::Status check(
const daal::algorithms::Parameter *par,
int method)
const DAAL_C11_OVERRIDE;
186 class DAAL_EXPORT Result:
public daal::algorithms::Result
189 DECLARE_SERIALIZABLE_CAST(Result);
194 virtual ~Result() {};
204 template <
typename algorithmFPType>
205 DAAL_EXPORT services::Status allocate(
const daal::algorithms::Input *input,
const daal::algorithms::Parameter *parameter,
const int method);
212 void set(ResultId
id,
const data_management::NumericTablePtr &ptr);
219 data_management::NumericTablePtr
get(ResultId id)
const;
229 virtual services::Status check(
const daal::algorithms::Input *input,
const daal::algorithms::Parameter *par,
int method)
const DAAL_C11_OVERRIDE;
233 template<
typename Archive,
bool onDeserialize>
234 services::Status serialImpl(Archive *arch)
236 return daal::algorithms::Result::serialImpl<Archive, onDeserialize>(arch);
239 typedef services::SharedPtr<Result> ResultPtr;
242 using interface1::Parameter;
243 using interface1::Input;
244 using interface1::Result;
245 using interface1::ResultPtr;
daal::algorithms::optimization_solver::objective_function::argument
Definition: objective_function_types.h:83
daal::algorithms::optimization_solver::objective_function::value
Definition: objective_function_types.h:94
daal
Definition: algorithm_base_common.h:57
daal::algorithms::interface1::Result
Base class to represent final results of the computation. Algorithm-specific final results are repres...
Definition: algorithm_types.h:331
daal::algorithms::optimization_solver::objective_function::interface1::Parameter::resultsToCompute
DAAL_UINT64 resultsToCompute
Definition: objective_function_types.h:138
daal::algorithms::optimization_solver::objective_function::interface1::Result
Provides methods to access final results obtained with the compute() method of the Objective function...
Definition: objective_function_types.h:186
daal::algorithms::optimization_solver::objective_function::interface1::Result::~Result
virtual ~Result()
Definition: objective_function_types.h:194
daal::algorithms::optimization_solver::objective_function::gradientIdx
Definition: objective_function_types.h:104
daal::algorithms::optimization_solver::objective_function::ResultToComputeId
ResultToComputeId
Definition: objective_function_types.h:91
daal::algorithms::optimization_solver::objective_function::hessian
Definition: objective_function_types.h:95
daal::algorithms::interface1::Parameter
Base class to represent computation parameters. Algorithm-specific parameters are represented as deri...
Definition: algorithm_types.h:86
daal::algorithms::optimization_solver::objective_function::hessianIdx
Definition: objective_function_types.h:106
daal::algorithms::optimization_solver::objective_function::valueIdx
Definition: objective_function_types.h:105
daal::algorithms::optimization_solver::objective_function::ResultId
ResultId
Definition: objective_function_types.h:102
daal::algorithms::optimization_solver::objective_function::gradient
Definition: objective_function_types.h:93
daal::algorithms::optimization_solver::objective_function::InputId
InputId
Definition: objective_function_types.h:81
daal::algorithms::optimization_solver::objective_function::interface1::Parameter
Parameter for the Objective function
Definition: objective_function_types.h:122