def randomEdgeDirections(graph): edges = [] for src, dst in set(map(lambda e: tuple(sorted(e)), graph.allEdges())): if uniform(0, 1) < 0.5: edges.append((src, dst)) else: edges.append((dst, src)) return Graphs.DirectedGraph(graph.nodes, edges)