ergm.mple: Find a maximizer to the psuedolikelihood function

View source: R/ergm.mple.R

ergm.mpleR Documentation

Find a maximizer to the psuedolikelihood function


The ergm.mple function finds a maximizer to the psuedolikelihood function (MPLE). It is the default method for finding the ERGM starting coefficient values. It is normally called internally the ergm process and not directly by the user. Generally ergmMPLE would be called by users instead. is an even more internal workhorse function that prepares many of the components needed by ergm.mple for the regression routines that are used to find the MPLE estimated ergm. It should not be called directly by the user.


  init = NULL,
  family = "binomial",
  control = NULL,
  verbose = FALSE,
  theta.offset = NULL,
  ignore.offset = FALSE,
  verbose = FALSE



a vector of initial theta coefficients


the family to use in the R native routine glm; only applicable if "glm" is the 'MPLEtype'; default="binomial"


A list of control parameters for algorithm tuning, typically constructed with control.ergm(). Its documentation gives the the list of recognized control parameters and their meaning. The more generic utility snctrl() (StatNet ConTRoL) also provides argument completion for the available control functions and limited argument name checking.


A logical or an integer to control the amount of progress and diagnostic information to be printed. FALSE/0 produces minimal output, with higher values producing more detail. Note that very high values (5+) may significantly slow down processing.


additional parameters passed from within; all will be ignored

state, state.obs

ergm_state objects.


A dummy parameter for backwards compatibility. It will be removed in a future version.


a numeric vector of length equal to the number of statistics of the model, specifying (positionally) the coefficients of the offset statistics; elements corresponding to free parameters are ignored.


If FALSE (the default), columns corresponding to terms enclosed in offset() are not returned with others but are instead processed by multiplying them by their corresponding coefficients (which are fixed, by virtue of being offsets) and the results stored in a separate column.


According to \insertCiteHuHa08e;textualergm: "The maximizer of the pseudolikelihood may thus easily be found (at least in principle) by using logistic regression as a computational device." In order for this to work, the predictors of the logistic regression model must be calculated. These are the change statistics as described in Section 3.2 of \insertCiteHuHa08e;textualergm, put into matrix form so that each pair of nodes is one row whose values are the vector of change statistics for that node pair. The function computes these change statistics and the ergm.mple function implements the logistic regression using R's glm() function. Generally, neither ergm.mple nor should be called by users if the logistic regression output is desired; instead, use the ergmMPLE function.

In the case where the ERGM is a dyadic independence model, the MPLE is the same as the MLE. However, in general this is not the case and, as \insertCiteDuGi09f;textualergm warn, the statistical properties of MPLEs in general are somewhat mysterious.

MPLE values are used even in the case of dyadic dependence models as starting points for the MCMC algorithm.


ergm.mple returns an ergm object as a list containing several items; for details see the return list in the ergm returns a list containing:


the compressed and possibly sampled matrix of change statistics


as xmat but with offset terms


the corresponding vector of responses, i.e. tie values


if ignore.offset==FALSE, the combined offset statistics multiplied by their parameter values


the vector of weights for xmat and zy



See Also

ergmMPLE, ergm,control.ergm

ergm documentation built on May 31, 2023, 8:04 p.m.