Learn R Programming

mgcv (version 1.9-0)

mono.con: Monotonicity constraints for a cubic regression spline

Description

Finds linear constraints sufficient for monotonicity (and optionally upper and/or lower boundedness) of a cubic regression spline. The basis representation assumed is that given by the gam, "cr" basis: that is the spline has a set of knots, which have fixed x values, but the y values of which constitute the parameters of the spline.

Usage

mono.con(x,up=TRUE,lower=NA,upper=NA)

Value

a list containing constraint matrix A and constraint vector b.

Arguments

x

The array of knot locations.

up

If TRUE then the constraints imply increase, if FALSE then decrease.

lower

This specifies the lower bound on the spline unless it is NA in which case no lower bound is imposed.

upper

This specifies the upper bound on the spline unless it is NA in which case no upper bound is imposed.

Author

Simon N. Wood simon.wood@r-project.org

Details

Consider the natural cubic spline passing through the points \( \{x_i,p_i:i=1 \ldots n \} \). Then it is possible to find a relatively small set of linear constraints on \(\mathbf{p}\) sufficient to ensure monotonicity (and bounds if required): \(\mathbf{Ap}\ge\mathbf{b}\). Details are given in Wood (1994).

References

Gill, P.E., Murray, W. and Wright, M.H. (1981) Practical Optimization. Academic Press, London.

Wood, S.N. (1994) Monotonic smoothing splines fitted by cross validation. SIAM Journal on Scientific Computing 15(5), 1126--1133.

https://www.maths.ed.ac.uk/~swood34/

See Also

magic, pcls

Examples

Run this code
## see ?pcls

Run the code above in your browser using DataLab