bn                    package:sna                    R Documentation

_F_i_t _a _B_i_a_s_e_d _N_e_t _M_o_d_e_l

_D_e_s_c_r_i_p_t_i_o_n:

     Fits a biased net model to an input graph, using moment-based or
     maximum pseudolikelihood techniques.

_U_s_a_g_e:

     bn(dat, method = c("mple.triad", "mple.dyad", "mple.edge", 
         "mtle"), param.seed = NULL, param.fixed = NULL, 
         optim.method = "BFGS", optim.control = list(), 
         epsilon = 1e-05)

_A_r_g_u_m_e_n_t_s:

     dat: a single input graph. 

  method: the fit method to use (see below). 

param.seed: seed values for the parameter estimates. 

param.fixed: parameter values to fix, if any. 

optim.method: method to be used by 'optim'. 

optim.control: control parameter for 'optim'. 

 epsilon: tolerance for convergence to extreme parameter values (i.e.,
          0 or 1). 

_D_e_t_a_i_l_s:

     The biased net model stems from early work by Rapoport, who
     attempted to model networks via a hypothetical "tracing" process. 
     This process may be described loosely as follows.  One begins with
     a small "seed" set of vertices, each member of which is assumed to
     nominate (generate ties to) other members of the population with
     some fixed probability.  These members, in turn, may nominate new
     members of the population, as well as members who have already
     been reached.  Such nominations may be "biased" in one fashion or
     another, leading to a non-uniform growth process.  Specifically,
     let e_ij be the random event that vertex i nominates vertex j when
     reached.  Then the conditional probability of e_ij is given by


       Pr(e_ij | T) = 1 - (1-Pr(B_e)) prod_k (1 - Pr(B_k | T))


     where T is the current state of the trace, B_e is the a Bernoulli
     event corresponding to the baseline probability of e_ij, and the
     B_k are "bias events."  Bias events are taken to be independent
     Bernoulli trials, given T, such that e_ij is observed with
     certainty if any bias event occurs.  The specification of a biased
     net model, then, involves defining the various bias events (which,
     in turn, influence the structure of the network).

     Although other events have been proposed, the primary bias events
     employed in current biased net models are the "parent bias" (a
     tendency to return nominations); the "sibling bias" (a tendency to
     nominate alters who were nominated by the same third party); and
     the "double role bias" (a tendency to nominate alters who are both
     siblings and parents).  These bias events, together with the
     baseline edge events, are used to form the standard biased net
     model.  It is standard to assume homogeneity within bias class,
     leading to the four parameters pi (probability of a parent bias
     event), sigma (probability of a sibling bias event), rho
     (probability of a double role bias event), and d (probability of a
     baseline event).  

     Unfortunately, there is no simple expression for the likelihood of
     a graph given these parameters (and hence, no basis for likelihood
     based inference).  However, Skvoretz et al. have derived a class
     of maximum pseudo-likelihood estimators for the the biased net
     model, based on local approximations to the likelihood at the
     edge, dyad, or triad level.  These estimators may be employed
     within 'bn' by selecting the appropriate MPLE for the _method_
     argument.  Alternately, it is also possible to derive expected
     triad census rates for the biased net model, allowing an estimator
     which maximizes the likelihood of the observed triad census
     (essentially, a method of moments procedure).  This last may be
     selected via the argument 'mode="mtle"'.  In addition to
     estimating model parameters, 'bn' generates predicted edge, dyad,
     and triad census statistics, as well as structure statistics
     (using the Fararo-Sunshine recurrence).  These can be used to
     evaluate goodness-of-fit.  

     'print', 'summary', and 'plot' methods are available for 'bn'
     objects.  See 'rgbn' for simulation from biased net models.

_V_a_l_u_e:

     An object of class 'bn'.

_N_o_t_e:

     Asymptotic properties of the MPLE are not known for this model. 
     Caution is strongly advised.

_A_u_t_h_o_r(_s):

     Carter T. Butts buttsc@uci.edu

_R_e_f_e_r_e_n_c_e_s:

     Fararo, T.J. and Sunshine, M.H. (1964).  ``A study of a biased
     friendship net.''  Syracuse, NY: Youth Development Center.

     Rapoport, A.  (1957).  ``A contribution to the theory of random
     and biased nets.''  _Bulletin of Mathematical Biophysics,_ 15,
     523-533.

     Skvoretz, J.; Fararo, T.J.; and Agneessens, F.  (2004). 
     ``Advances in biased net theory: definitions, derivations, and
     estimations.''  _Social Networks,_ 26, 113-139.

_S_e_e _A_l_s_o:

     'rgbn', 'structure.statistics'

_E_x_a_m_p_l_e_s:

     #Generate a random graph
     g<-rgraph(25)

     #Fit a biased net model, using the triadic MPLE
     gbn<-bn(g)

     #Examine the results
     summary(gbn)
     plot(gbn)

     #Now, fit a model containing only a density parameter
     gbn<-bn(g,param.fixed=list(pi=0,sigma=0,rho=0))
     summary(gbn)
     plot(gbn)

