Document Sample
Lyle Powered By Docstoc
					Role Assignments of Trees
Graph Homomorphism

   Shows underlying “structure” of graph

    (u, v)  E (G)  ( f (u), f (v))  E ( H )
Role Assignments

 Shows underlying structure of a network
 Additional condition

Condition 1

    (u, v)  E (G)  ( f (u), f (v))  E ( H )
Condition 2

                (a, b)  E ( H ) 
          1            1
u  f (a) v  f (b) s.t. (u, v)  E (G)

   Used for social networks, to map agents to

   Resource allocation on computer networks
   Role assignments on social networks
       Terrorist networks
           Somewhat small, many times hierarchical in
           Many activities are tree-like structures
Difficulty of the Problem
   Role assignments of graphs with two vertices
    [Roberts, Sheng]
                               Easy – Bipartite Graphs


                             Easy – Disconnected Graph
Difficulty of the Problem

   Theorem – [Fiala, Paulusma]

The question of R-assignability is NP-complete
  for every connected role graph R with more
                than one edge.
Assignments to Trees

   Theorem –
      Any graph which is T-role assignable is

Role assignments are closed under composition.
Assignments from Trees
   Theorem –
      Any tree can only be assigned to a tree

Pick a
cycle C
and look
at f (C )
Uniquely Mapped Vertices
   A vertex is uniquely mapped if f (a )  {v}
 Theorem –

If there is a uniquely mapped vertex, each level
    in a rooted tree is mapped to a disjoint set of
                  roles (vertices) in Tr

   Theorem –
    Each role assignment of a uniquely mapped
      tree can be accomplished by a series of
                  “folds” of the tree
Algorithm for Uniquely Mapped Trees

Preprocessing for TR
 Store all rooted subtrees as a list of child
  subtrees with multiplicities
Algorithm for Uniquely Mapped Trees

Processing for TI
 Start at leaves and process upwards

 For each step i,
    Given children arrays c1,c2, …,ck construct the
     parent array
        For each subtree configuration sj found in the
         preprocessing step, determine if the subtree is possibly
         assignable to the nodes below.
Assignable Subtrees

   For a subtree si, scan to see that the
    intersection of cj and si is not empty, for each
    child j
   Solve the bipartite matching problem
       A vertex for every subtee of si
       A vertex for every child subtree array ci
       An edge between a child subtree and all subtrees
        in si for which it is assignable.
k-Assignable Trees

   Extend the algorithm to enumerate all
    mappings for a particular role
   “Root” tree at chosen vertices to provide
    similar distinct mappings.
   Important structures
       Chains between root nodes
       Subtrees extending from chains
Algorithm for k-Assignable Trees

   Modifications to accept bipartite graphs.
   Cannot be polynomial
                               k a k a
   Current running time O ( nI nR )

   F.S. Roberts, L. Sheng, How hard is it to determine if a graph has a
    2-role assignment? Networks, Volume 37, Issue 2, Pages 67-73
   J. Fiala, D. Paulusma, The Computational Complexity of the Role
    Assignment Problem Theoretical Computer Science, Volume 349,
    2005, Pages 67-81
   L. Sheng, 2-role assignments on triangulated graphs Theoretical
    Computer Science, Volume 304, 2003, Pages 201-214
   Everett, M.G., Borgatti, S.P. Role coloring a graph. Mathematical
    Social Sciences, Volume 26, 1991, Pages 183–188.

Shared By: