In order for a modeling algorithm to work some kind of measure is needed that scores models and guides the search towards a good local optimum. A model can be scored in many different ways: using a separate validation set, simply the error in the fitted samples, cross validation, minimum description length (MDL), etc.
You are free to implement your own measures and add them to the toolbox. For example, this could be useful if you want to enforce a problem specific property. Say you are modeling a passive electronic component and you want to ensure the model retains passivity. This can be done by implementing a custom measure that performs the necessary checks.
Implementing a new measure requires the following (see src/matlab/modelbuilders/measures):
- a constructor to read out the configuration objects
- a calculateMeasure method that, given a model, returns a positive score where a lower score indicates a better model