/* A generic goal function for branch-and-bound optimization programs. */ /* Last edited on 2003-09-21 14:49:33 by stolfi */ #ifndef bbgoal_H #define bbgoal_H #include #include /* The dimension {d} is specified externally. */ Float F(Float *x); /* Returns an approximate value of the goal function for {xr[0..d-1]}. */ Interval F_ia(Interval *xr); /* Returns a guaranteed enclosure for the exact value of the goal function, for any argument vector in the box {xr[0..d-1]}. Note that this enclosure may not contain the approximate floating-point value returned by {F} above. */ void F_sol(Interval *xr, Interval *sr); /* Returns in {sr[0..d-1]} the smallest possible box that contains some true global minimum of {F1} in the domain {xr[0..d-1]}. */ Interval F_plot(Interval *xr); /* Returns an interval of values of the goal function that is suitable as the function-axis plot range of graphs of {F}, when the arguments is restricted to {xr[0..d-1]}. May be larger or smaller than {F_ia(xr)}. */ extern int F_dim; /* Dimension {d} of domain. */ extern char *F_name; /* Function name, e.g. "F1-IA". */ extern char *F_descr; /* Function description, possibly multi-line. */ #endif