Date post: | 02-Jan-2016 |
Category: |
Documents |
Upload: | autumn-jackson |
View: | 42 times |
Download: | 0 times |
Finding a Team of ExpertsFinding a Team of Expertsin Social Networksin Social Networks
SEEM 5010 Advanced Database and Information SystemSEEM 5010 Advanced Database and Information System
Theodoros Lappas (UC Riverside)Evimaria Terzi (IBM Almaden)Kun Liu (IBM Almaden)
Motivation•A pool of individuals with different skills
+ A social network ▫Finding a subset
•TEAM FORMATION Problem
•Not only meet Skill Requirements•Can also work Effectively Together as a
teamHow can I find How can I find a team of experts a team of experts that can that can collaborate effectively collaborate effectively in in order to complete a given task?order to complete a given task?
Problem•Given a Task and a set of Experts in
Network▫Goal: find a set of individuals that can
effectively perform the task
•Task(T): Set of required skills
•Expert(X): Individual with specific skill-set
•Network(G): Strength of Relationships▫Weights on the edges = Communication Cost
Expertise Networks•Companies (Organizational Structure):
▫Same group or department Easily Communicate
•Research Community:▫Collaboration Networks
•Other examples of Social Networks▫LinkedIn, Xing and others
How to make a team effective for a given task?•T = {algorithms, software engineering,
distributed systems, web programming}
•Without considering the social network…▫Result: X’ = {A,B,C}
▫Result: X” = {A,E}
AA{{algorithmalgorithm
ss}}
BB{{web web
programminprogrammingg}}
DD{{software software engineerinengineerin
gg}}
CC{{software software
engineeringengineering, , distributed distributed systemssystems}}
EE{{software software
engineeringengineering, , distributed systemsdistributed systems, , web programmingweb programming}}
AA{{algorithmalgorithm
ss}}
BB{{web web
programminprogrammingg}}
CC{{software software
engineeringengineering, , distributed distributed systemssystems}}
EE{{software software
engineeringengineering, , distributed systemsdistributed systems, , web programmingweb programming}}
AA{{algorithmalgorithm
ss}}
How to make a team effective for a given task?•With the social network …
•TEAM FORMATION with considering a Social Network▫Coverage + Communication
T={algorithms, software engineering, distributed systems, web programming}
DD{{software software engineerinengineerin
gg}}
BB{{web web
programminprogrammingg}}
CC{{software software
engineeringengineering, , distributed distributed systemssystems}}
EE{{software software
engineeringengineering, , distributed systemsdistributed systems, , web programmingweb programming}}
AA{{algorithmalgorithm
ss}}
AA
BB CC
DD
EE
A, B and C form an effective
group to communicate
A and E could perform task if
they could communicate
Problem Definition•Given
▫The set of n individuals X={1,…,n}▫Graph G(X,E) ▫Task T
•Find X’▫With C(X’,T)=T :▫And Communication Cost Cc(X’) is minimized
•Good Teams▫Have all necessary skills▫Can communicate effectively
X’ have the X’ have the necessary necessary
skillsskills
EE= = EdgeEdge
How to measure effective communication?The author proposed two measures:
•Diameter•Minimum Spanning Tree
Diameter (R)
▫The largest shortest path between any two node in the subgraph
▫Diameter Communication Cost of X’ Cc-R(X’)
A
B C E
DA
ECB
diameter = inftydiameter = inftydiameter = 1diameter = 1
Minimum Spanning Tree (MST)
▫The sum of the weights of its edge that spans all the team nodes
▫MST communication cost Cc-MST(X’)
A
B C E
DA
ECB
MST = inftyMST = inftyMST = 2MST = 2
Diameter-TEAM FORMATION problem
A B
C
E
D
T={algorithms,java,graphics,PHP}
{graphics,PHP,java}
{algorithms,graphics}
{algorithms,graphics,java}
{PHP}
αrare= algorithmsSrare={B, E}
B
E
A Skills: algorithmsgraphicsjavaPHP
Diameter = 2αrare= javaSrare={A, C, E}αrare= PHPSrare={A,C,D}
{PHP,java}
Diameter-TEAM FORMATION problem
T={algorithms,java,graphics,PHP}
{graphics,PHP,java}
{algorithms,graphics}
{algorithms,graphics,java}
{PHP}
αrare= algorithmsSrare={B, E}
{PHP,java}
A B
C
E
D
E
Skills: algorithmsgraphicsjavaPHP
Diameter = 1
C
Running time: Running time: Quadratic Quadratic to the number of nodesto the number of nodes
MST – TEAM FORMATION problem•The CoverSteiner Algorithm
▫2 steps
▫First step (GreedyCover)… The social network is ignored and the
algorithm focuses on finding a set of individuals X0
▫Second step (SteinerTree)… Find the minimum cost tree that spans all the
nodes in X0
MST – TEAM FORMATION problem•SteinerTree problem
▫Required Vertices▫Steiner Vertices
▫Graph G(X,E)▫Set of Required Vertices R
▫Find G’ sub-graph of G such that G’ contains all the required vertices (R) and MST(G’) is minimized
MST – TEAM FORMATION problem•The EnhancedSteiner Algorithm
▫EnhanceGraph
A B
C
E
D
T={algorithms,java,graphics,PHP}
{graphics,PHP,java}
{algorithms,graphics}
{algorithms,graphics,java}
{PHP,java} {PHP}
PHP
java
graphics
algorithmsE
D
MST Cost = 1
Experiments•Dataset
▫DBLP dataset Database, Data Mining, Artificial Intelligence
and Theory Choose about 6000 authors
Skills: Define keywords appearing in paper titles as skills, about 2000 distinct skills
Social Network: Co-Authorship Graph Tasks: Subsets of keywords with different
cardinality
Communication Cost
Cardinality of Teams
Connectivity of the Team
Conclusion•Forming a team of skilled
▫Minimizing the communication cost
•Formulations:▫Diameter-TF problem
RarestFirst Algorithm▫MST-TF problem
CoverSteiner Algorithm EnhancedSteiner Algorithm
•Qualitative Evaluation