MBOInfillCrit function

Create an infill criterion.

Create an infill criterion.

The infill criterion guides the model based search process. The most prominent infill criteria, e.g., expected improvement, lower confidence bound and others, are already implemented in mlrMBO. Moreover, the package allows for the creation of custom infill criteria.

makeMBOInfillCrit( fun, name, id, opt.direction = "minimize", components = character(0L), params = list(), requires.se = FALSE )

Arguments

  • fun: [function(points, models, control, par.set, design, iter)]

    A function which expects the following parameters in exactly this order and return a numeric vector of criteria values at the points:

    • points [data.frame]: n points where to evaluate.
    • models [WrappedModel | list]: Model(s) fitted on design.
    • control [MBOControl]: Control object.
    • par.set [ParamSet]: Parameter set.
    • design [data.frame]: Design of already visited points.
    • iter [integer(1)]: Current iteration.
    • progress [numeric{1}]: A value between 0 and 1 indicating the progress of the optimization.
    • attributes [logical{1}]: Are there attributes appended to the return value that should be added to the OptPath?

    Important: Internally, this function will be minimized. So the proposals will be where this function is low.

  • name: [character(1)]

    Full name of the criterion.

  • id: [character(1)]

    Short name of the criterion. Used internally and in plots.

  • opt.direction: [character(1)]

    Only for visualization: Shall this criterion be plotted as if it were to be minimized (minimize), maximized (maximize) or is the direction the same as for the objective function (objective)? Default is minimize.

  • components: [character]

    Infill criteria may not return proposed point(s) only. Additional information can be returned by appending a named list crit.components

    to the returned value as an attribute. The components argument takes a character vector of the names of the meta information, i.e., the names of the named crit.components list. Default is the empty character vector.

  • params: [list]

    Named list of parameters for the infill criterion. There values may be used by mlrMBO internally. Default is the empty list.

  • requires.se: [logical(1)]

    Does the infill criterion require the regression learner to provide a standard error estimation? Default is FALSE.

Returns

[MBOInfillCrit]

Predefined standard infill criteria

  • crit.ei: Expected Improvement
  • crit.mr: Mean response
  • crit.se: Standard error
  • crit.cb: Confidence bound with lambda automatically chosen, see infillcrits
  • crit.cb1: Confidence bound with lambda=1
  • crit.cb2: Confidence bound with lambda=2
  • crit.aei: Augmented expected improvement
  • crit.eqi: Expected quantile improvement
  • crit.dib1: Direct indicator-based with lambda=1
  • Maintainer: Jakob Richter
  • License: BSD_2_clause + file LICENSE
  • Last published: 2022-07-04