Fit a Log-Gaussian Cox Point Process by Minimum Contrast


Fits a log-Gaussian Cox point process model to a point pattern dataset by the Method of Minimum Contrast using the pair correlation function.


            q = 1/4, p = 2, rmin = NULL, rmax = NULL, ..., pcfargs=list())



Data to which the model will be fitted. Either a point pattern or a summary statistic. See Details.


Vector of starting values for the parameters of the log-Gaussian Cox process model.


Specification of the covariance model for the log-Gaussian field. See Details.


Optional. An estimate of the intensity of the point process.


Optional. Exponents for the contrast criterion.

rmin, rmax

Optional. The interval of r values for the contrast criterion.


Optional arguments passed to optim to control the optimisation algorithm. See Details.


Optional list containing arguments passed to pcf.ppp to control the smoothing in the estimation of the pair correlation function.


This algorithm fits a log-Gaussian Cox point process (LGCP) model to a point pattern dataset by the Method of Minimum Contrast, using the estimated pair correlation function of the point pattern.

The shape of the covariance of the LGCP must be specified: the default is the exponential covariance function, but other covariance models can be selected.

The argument X can be either

a point pattern:

An object of class "ppp" representing a point pattern dataset. The pair correlation function of the point pattern will be computed using pcf, and the method of minimum contrast will be applied to this.

a summary statistic:

An object of class "fv" containing the values of a summary statistic, computed for a point pattern dataset. The summary statistic should be the pair correlation function, and this object should have been obtained by a call to pcf or one of its relatives.

The algorithm fits a log-Gaussian Cox point process (LGCP) model to X, by finding the parameters of the LGCP model which give the closest match between the theoretical pair correlation function of the LGCP model and the observed pair correlation function. For a more detailed explanation of the Method of Minimum Contrast, see mincontrast.

The model fitted is a stationary, isotropic log-Gaussian Cox process (Moller and Waagepetersen, 2003, pp. 72-76). To define this process we start with a stationary Gaussian random field Z in the two-dimensional plane, with constant mean mu and covariance function C(r). Given Z, we generate a Poisson point process Y with intensity function lambda(u) = exp(Z(u)) at location u. Then Y is a log-Gaussian Cox process.

The theoretical pair correlation function of the LGCP is

g(r) = exp(C(s))

The intensity of the LGCP is

lambda= exp(mu + C(0)/2).

The covariance function C(r) takes the form

C(r) = sigma^2 * c(-r/alpha)

where sigma^2 and alpha are parameters controlling the strength and the scale of autocorrelation, respectively, and c(r) is a known covariance function determining the shape of the covariance. The strength and scale parameters sigma^2 and alpha will be estimated by the algorithm. The template covariance function c(r) must be specified as explained below.

In this algorithm, the Method of Minimum Contrast is first used to find optimal values of the parameters sigma^2 and alpha^2. Then the remaining parameter mu is inferred from the estimated intensity lambda.

The template covariance function c(r) is specified using the argument covmodel. This should be of the form list(model="modelname", ...) where modelname is a string identifying the template model as explained below, and ... are optional arguments of the form tag=value giving the values of parameters controlling the shape of the template model. The default is the exponential covariance c(r) = e^(-r) so that the scaled covariance is

C(r) = sigma^2 * exp(-r/alpha).

To determine the template model, the string "modelname" will be prefixed by "RM" and the code will search for a function of this name in the RandomFields package. For a list of available models see RMmodel in the RandomFields package. For example the Matern covariance with exponent nu = 0.3 is specified by covmodel=list(model="matern", nu=0.3) corresponding to the function RMmatern in the RandomFields package.

If the argument lambda is provided, then this is used as the value of lambda. Otherwise, if X is a point pattern, then lambda will be estimated from X. If X is a summary statistic and lambda is missing, then the intensity lambda cannot be estimated, and the parameter mu will be returned as NA.

The remaining arguments rmin,rmax,q,p control the method of minimum contrast; see mincontrast.

The optimisation algorithm can be controlled through the additional arguments "..." which are passed to the optimisation function optim. For example, to constrain the parameter values to a certain range, use the argument method="L-BFGS-B" to select an optimisation algorithm that respects box constraints, and use the arguments lower and upper to specify (vectors of) minimum and maximum values for each parameter.


An object of class "minconfit". There are methods for printing and plotting this object. It contains the following main components:


Vector of fitted parameter values.


Function value table (object of class "fv") containing the observed values of the summary statistic (observed) and the theoretical values of the summary statistic computed from the fitted model parameters.



with modifications by Shen Guochun and Rasmus Waagepetersen and \ege.


Moller, J., Syversveen, A. and Waagepetersen, R. (1998) Log Gaussian Cox Processes. Scandinavian Journal of Statistics 25, 451–482.

Moller, J. and Waagepetersen, R. (2003). Statistical Inference and Simulation for Spatial Point Processes. Chapman and Hall/CRC, Boca Raton.

Waagepetersen, R. (2007) An estimating function approach to inference for inhomogeneous Neyman-Scott processes. Biometrics 63, 252–258.

See Also

lgcp.estK for alternative method of fitting LGCP.

matclust.estpcf, thomas.estpcf for other models.

mincontrast for the generic minimum contrast fitting algorithm, including important parameters that affect the accuracy of the fit.

RMmodel in the RandomFields package, for covariance function models.

pcf for the pair correlation function.


    u <- lgcp.estpcf(redwood, c(var=1, scale=0.1))
    if(require(RandomFields)) {
      lgcp.estpcf(redwood, covmodel=list(model="matern", nu=0.3))

Want to suggest features or report bugs for Use the GitHub issue tracker. Vote for new features on Trello.

comments powered by Disqus