def __init__(self): """ Initialize class. No arguments; this function creates the flows & initializes various variables. """ self.flows = [] # initialize a flow network for each level & seed it. for i in range(0, len(self.levels)): flow = FlowNetwork() for seed_name in self.seeds: flow.add_edge("-", seed_name) self.flows.append(flow) ### levels_d = {} levels_rev_d = {} for n, level in enumerate(self.levels): levels_d[level] = n levels_rev_d[n] = level self.levels_d = levels_d self.levels_rev_d = levels_rev_d
def __init__(self): """ Initialize class. No arguments; this function creates the flows & initializes various variables. """ self.flows = [] # initialize a flow network for each level & seed it. for i in range(0, len(self.levels)): flow = FlowNetwork() for seed_name in self.seeds: flow.add_edge("-", seed_name) self.flows.append(flow) ### levels_d = {} levels_rev_d = {} for n, level in enumerate(self.levels): levels_d[level] = n levels_rev_d[n] = level self.levels_d = levels_d self.levels_rev_d = levels_rev_d
# Prepare the script options parser = OptionParser(usage='%prog [options] DATA_FILE') parser.add_option('-o', '--output', action='store', dest='output', help='File to save results to [default: %default]') options, args = parser.parse_args() if len(args) != 1: parser.error('A source data file must be supplied!') # Network capacities capacities = [3200, 800, 200, 50, 12, 4, 2, 1] # Create a new empty network. Seed node is '-' network = TrustNetwork() # Open source data file with open(args[0], 'r') as f: for line in f.readlines(): # Exclude commented lines if line and not line.startswith('#'): # Parse nodes from_node, to_node, level = line.strip().split(',') # Create edge network.add_edge(from_node, to_node) # Randomly select some nodes to start with starting_nodes = [choice(network) for i in xrange(3)] for node in starting_nodes: network.add_edge('-', node)
from net_flow import TrustNetwork capacities = [ 20, 7, 2, 1 ] network = TrustNetwork() network.add_edge("-", "el_seed") network.add_edge("el_seed", "test1") network.add_edge("test1", "test2") network.add_edge("test3", "test4") network.add_edge("-", "test4") network.calculate(capacities) for user in network: print "%-10s\t%s" % (user, network.is_auth(user))
from net_flow import TrustNetwork capacities = [20, 7, 2, 1] network = TrustNetwork() network.add_edge("-", "el_seed") network.add_edge("el_seed", "test1") network.add_edge("test1", "test2") network.add_edge("test3", "test4") network.add_edge("-", "test4") network.calculate(capacities) for user in network: print "%-10s\t%s" % (user, network.is_auth(user))