using evolutionary computing for feature-driven graph generation
TRANSCRIPT
Using Evolutionary Computing for Feature-
driven Graph GenerationMerijn Verstraaten, Ana Lucia Varbanescu &
Cees de Laat
Performance Quiz
Structural Properties#V #E ACC Triangles Diameter
90% Diameter
as-Skitter 1.696.415 11.095.298 0,2581 28.769.868 25 6
cit-Patents 3.774.768 16.518.948 0,0757 7.515.023 22 9,4
email-EuAll 265.214 420.045 0,0671 267.313 14 4,5
Facebook 4.039 88.234 0,6055 1.612.010 8 4,7
GPlus 107.614 13.673.453 0,4901 1.073.677.742 6 3
roadNet-CA 1.965.206 2.766.607 0,0464 120.676 849 500
roadNet-TX 1.379.917 1.921.660 0,047 82.869 1.054 670
soc-Livejournal 4.847.571 68.993.773 0,2742 285.730.264 16 6,5
Twitter 81.306 1.768.149 0,5653 13.082.506 7 4,5
web-BerkStan 685.230 7.600.595 0,5967 64.690.980 514 9,9
web-Google 875.713 5.105.039 0,5143 13.391.903 21 8,1
wikiTalk 2.394.385 5.021.410 0,0526 9.203.519 9 4
Structural PropertiesNumber of vertices
Number of edges
Edge properties
Vertex properties
Directivity
Connectivity
Centrality – betweenness, degree, edge, PageRank(?)
Chromatic number
Cycles
Assortativity
Treewidth
Average degree
Average distance
Diameter
Max degree
Degree distribution
Clustering Coefficient
Number of triangles
Max-clique
Modularity
Eigenvalue and second eigenvalue
Degeneracy
Motif profile
Generator Wishlist
Set of relevant properties
Independently variable (if possible)
Easy to extend set
Start
Generate intial population
Determine fitness
Acceptable solution found
Select parents Crossover
Mutation
Select survivors
End Yes
No
Evolutionary Computing
Good at:
Large search space
Complex, interdependent parameters
Representations
Connectivity matrices
Edge lists
Generating functions
Generators
0
1
2
3
4
5
G
A
B
E
D
C
F
Connectivity Matrix
0 1 2 3 4 5
0 0 1 0 0 1 0
1 0 0 1 0 1 0
2 0 0 0 1 0 0
3 0 0 0 0 1 0
4 0 0 0 0 0 0
5 0 0 0 1 0 0
Pros & Cons
Pros:
Easy to implement primitives
Fixed number of vertices
Cons:
Number of edges not fixed
Exponential Degree
�
�
�
�
�
�
�
�
�
�
��
��
� �� �� ��
���
�������������
������ ������
����������� ������ ������������
����������� ������������ �� � ����
Gaussian Degree
�
�
�
�
�
�
�
�
� �� �� �� �� �� �� �� �� �� ������
���
���
�������������
������ ������
������ ������ ������������
������ ������������ �� � ��� � � ���
Uniform Degree
�
�
�
�
�
� �� �� �� �� �� �� �� �� �� ������
���
�������������
������ ������
������� ������ ������������
������� ������������ �� � ����
Results
+ Substantially faster than Bach, et al. & Bailey, et al.
- Graphs >1.000 vertices converge too slowly
Future WorkExperiment with different primitives
Evaluate the HyperNEAT approach
Miscellaneous ObservationsPrimitives matter (edgewise vs vertexwise)
Need better mutation
Minimum necessary size?
Questions? Suggestions? Comments?
... are welcome live or online!
Existing Generators
Complex Networks: Erdös-Rényi R-MAT Kronecker graphs
Misc: Social networks Freescale Power law etc.
Problems: Focus on social graphs Limited expressivity Not easily extensible
NeuroEvolution of Augmenting Topologies
(NEAT)Pros:
Very expressive Good results
Cons: Scalability Slow…
HyperNEAT: Generate generating functions
Pros: ``Webscale’’
Cons: Unclear impact on expressivity
More…Bach, et al.
Interactive random graph generation with evolutionary algorithms
Bailey, et al.
Automatic generation of graph models for complex networks by genetic programming.