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::services::interface1::Status
Class that holds the results of API calls. In case of API routine failure it contains the list of err...
Definition: error_handling.h:491
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::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::services::interface1::SharedPtr
Shared pointer that retains shared ownership of an object through a pointer. Several SharedPtr object...
Definition: daal_shared_ptr.h:187
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