Ordering                package:RBGL                R Documentation

_C_o_m_p_u_t_e _v_e_r_t_e_x _o_r_d_e_r_i_n_g _f_o_r _a_n _u_n_d_i_r_e_c_t_e_d _g_r_a_p_h

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

     Compute vertex ordering for an undirected graph

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

     cuthill.mckee.ordering(g)
     minDegreeOrdering(g, delta=0)
     sloan.ordering(g, w1=1, w2=2)

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

       g: an instance of the 'graph' class with 'edgemode' undirected

   delta: Multiple elimination control variable. If it is larger than
          or  equal to zero then multiple elimination is enabled. The
          value of delta  specifies the difference between the minimum
          degree and the degree of  vertices that are to be eliminated.

      w1: First heuristic weight for the Sloan algorithm. 

      w2: Second heuristic weight for the Sloan algorithm. 

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

     The following details were obtained from  the documentation of
     these algorithms in Boost Graph  Library and readers are referred
     their for even more detail. The goal of the Cuthill-Mckee (and
     reverse Cuthill-Mckee) ordering algorithm is to reduce the
     bandwidth of a graph by reordering the indices assigned to each
     vertex. 

     The minimum degree ordering algorithm is a fill-in reduction
     matrix reordering algorithm. 

     The goal of the Sloan ordering algorithm is to reduce the profile
     and the wavefront of a graph by reordering the indices assigned to
     each vertex. 

     The goal of the King ordering algorithm is to reduce the bandwidth
     of a graph  by reordering the indices assigned to each vertex.

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

cuthill.mckee.ordering: returns a list with elements:

reverse cuthill.mckee.ordering: the vertices in the new ordering

original bandwidth: bandwidth before reordering vertices

new bandwidth: bandwidth after reordering of vertices

minDegreeOrdering: return a list with elements:

inverse_permutation: the new vertex ordering, given as the mapping from
          the new indices to the old indices 

permutation: the new vertex ordering, given as the mapping from the old
          indices to the new indices 

sloan.ordering: returns a list with elements:

sloan.ordering: the vertices in the new ordering

bandwidth: bandwidth of the graph after reordering

 profile: profile of the graph after reordering

maxWavefront: maxWavefront of the graph after reordering

aver.wavefront: aver.wavefront of the graph after reordering

rms.wavefront: rms.wavefront of the graph after reordering

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

     Li Long <li.long@isb-sib.ch>

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

     Boost Graph Library ( www.boost.org/libs/graph/doc/index.html )

     The Boost Graph Library: User Guide and Reference Manual; by
     Jeremy G. Siek, Lie-Quan Lee, and Andrew Lumsdaine;
     (Addison-Wesley, Pearson Education Inc., 2002), xxiv+321pp. ISBN
     0-201-72914-8

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

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

     con <- file(system.file("XML/dijkex.gxl",package="RBGL"), open="r")
     coex <- fromGXL(con)
     close(con)

     coex <- ugraph(coex)
     cuthill.mckee.ordering(coex)
     minDegreeOrdering(coex)
     sloan.ordering(coex)

