8 #include "stogo_config.h"
10 void Domain_Mine(RTBox box) {
11 box.lb=-3.0 ; box.ub=3.0;
15 double Objective_Mine(RCRVector xy) {
18 double f = ((x*x)*(4-2.1*(x*x)+((x*x)*(x*x))/3) + x*y + (y*y)*(-4+4*(y*y)));
19 printf("feval:, %d, %g, %g, %g\n", ++cnt, x,y, f);
23 void Gradient_Mine(RCRVector xy, RVector &grad) {
27 ((2*x)*(4-2.1*(x*x)+((x*x)*(x*x))/3)
28 + (x*x)*(-4.2*x+4*(x*(x*x))/3)
31 (x + (2*y)*(-4+4*(y*y)) + (y*y)*(8*(y)));
35 int main(int argc, char **argv) {
39 Pobj Obj=Objective_Mine;
40 Pgrad Grad=Gradient_Mine;
43 params.det_pnts=2*dim+1; params.rnd_pnts=0;
44 params.eps_cl=0.1; params.rshift=0.3;
45 params.mu=1.0E-4; params.maxtime=0;
47 params.maxeval = argc < 2 ? 100 : atoi(argv[1]);
51 Global Problem(D,Obj, Grad, params);
52 RVector dummyvec(dim);
53 Problem.Search(-1, dummyvec);
55 cout << "Minimizers found\n";
56 Problem.DispMinimizers();
58 cout << "dummyvec: " << dummyvec << "\n";
60 double val = Problem.OneMinimizer(dummyvec);
61 cout << "one minimizer: " << val << ": " << dummyvec << "\n";