使用较低级别的Solver编程(MS Solver Foundation Solvers),可以为优化模型分配目标函数,如下面Rosenbrock示例所示:
solver.FunctionEvaluator = OriginalRosenbrockFunction;
solver.GradientEvaluator = OriginalRosenbrockGradient;
solver.Solve(solverParams);
private static double OriginalRosenbrockFunction(INonlinearModel model, int rowVid, ValuesByIndex values, bool newValues) {
double value = Math.Pow(1 - values[1], 2) + 100 * (Math.Pow(values[2] - (values[1] * values[1]), 2));
return value;
}
是否可以在Solver Foundation Services(SFS)编程中为更高级别的优化模型分配目标函数?
如果可以在此级别使用目标函数,我想继续使用更高级别的SFS。