2016-04-26 11 views
0

Ich versuche zu verstehen, wie man einen gerichteten Zufallsgraphen basierend auf Erdős-Rényi Modell korrekt erzeugt. Ich habe erdos_renyi_graph Funktion auf network x betrachtet. I festgelegt haben, wie n die Anzahl der Knoten meines realen Netzwerkparameter (5317), dann für p i berechnet haben:Generieren Sie einen gerichteten Zufallsgraphen mit Erdős-Rényi Modell aus einem realen gerichteten Graphen

p = (<k_in> + <k_out>)/(n-1) = (78,302)/(5317-1) = 0, 014729496 

ich den durchschnittlichen Grad als die Summe der in_degree und out_degree berechnet haben.

Mit dieser Wahrscheinlichkeit wurde ein zufälliger Graph mit 5317 Knoten und 415.727 Kanten erzeugt. Viel mehr Kanten als mein richtiges Netzwerk (207.167 Kanten).

Habe ich etwas falsch gemacht?

Antwort

8

Ich denke, es ist richtig, denn der durchschnittliche Grad (als Summe von k_in und k_out) ist einigermaßen höher als indegree und outdegree. Wenn Sie also das Diagramm wie im Modell Erdős–Rényi behandelt behandeln, sollten Sie etwas wie average degree/2 haben, da für jede Kante zwei Scheitelpunkte zugeordnet sind. So fügt jede Kante zwei Grad zu dem Diagramm entsprechend der Summenformel Grad:

indegree+outdegree formula

Das ist der Grund des Tauchens von 2 das Ergebnis. In diesem Fall erzeugt es einen zufälligen Graphen mit ungefähr der gleichen Anzahl von Kanten Ihres realen Graphen.

Verwandte Themen