From 072f7f0b0a2965d7d640a9fcf5ef60feb0756d93 Mon Sep 17 00:00:00 2001 From: jeanpouget-abadie Date: Tue, 3 Feb 2015 11:28:45 -0500 Subject: random --- src/algorithms.py | 3 --- src/cascade_creation.py | 18 ++++++++++++++---- 2 files changed, 14 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/algorithms.py b/src/algorithms.py index 0afee24..9f6d3ea 100644 --- a/src/algorithms.py +++ b/src/algorithms.py @@ -61,9 +61,6 @@ def correctness_measure(G, G_hat, print_values=False): edges = set(G.edges()) edges_hat = set(G_hat.edges()) - print(sorted(edges)) - print(sorted(edges_hat)) - fp = len(edges_hat - edges) fn = len(edges - edges_hat) tp = len(edges & edges_hat) diff --git a/src/cascade_creation.py b/src/cascade_creation.py index db0ea7a..c647b9a 100644 --- a/src/cascade_creation.py +++ b/src/cascade_creation.py @@ -18,6 +18,17 @@ class InfluenceGraph(nx.DiGraph): G = nx.erdos_renyi_graph(n, p, directed=True) self.add_edges_from(G.edges()) + def connected_watts_strogatz(self, n, k, p): + """ + n : number of nodes + k : number of nearest neighbor + p : proba of rewiring edge + """ + G = nx.connected_watts_strogatz_graph(n, k, p) + self.add_edges_from(G.edges()) + #TODO: Make the graph directed! + self.add_edges_from(G.edges()) + def import_from_file(self, file_name): """ Takes a file from the Stanford collection of networks @@ -31,8 +42,8 @@ class InfluenceGraph(nx.DiGraph): @property def mat(self): if not hasattr(self, '_mat'): - self._mat = (self.max_proba * np.random.rand(len(self), len(self)) - * np.asarray(nx.adjacency_matrix(self).todense())) + self._mat = self.max_proba * np.random.rand(len(self), len(self) + ) * np.asarray(nx.adjacency_matrix(self).todense().T) return self._mat @property @@ -145,8 +156,7 @@ def add_edges_from_proba_vector(G, p_node, node, floor_cstt): floor_parent = np.nonzero(p_node*(p_node > floor_cstt)) print(floor_parent) for parent in floor_parent[0]: - #SOMEHOW THERE WAS A BUG HERE! - G.add_edge(node, parent) + G.add_edge(parent, node) #TODO: update G's mat matrix return G -- cgit v1.2.3-70-g09d2