在 C++ 中,黑盒函数作为实施LSBlackBoxFunction接口的对象传递给 LocalSolver。该接口有一个以 LSBlackBoxArgumentValues 类型的对象为参数的虚拟方法调用。 call 方法使用该对象访问当前点的决策值进行评估并返回该点的函数值,示范代码如下:
#include <iostream>
#include "localsolver.h"
#define PI 3.14159
class Branin : public LSBlackBoxFunction<lsdouble> {
lsdouble call(const LSBlackBoxArgumentValues& args) override {
lsdouble x = args.getDoubleValue(0);
lsdouble y =