Пример #1
0
def run(config_file, output_loc, is_slave, identity):
    random.seed(10)

    ## Read input configuration
    f = open(config_file)
    config = sj.loads(f.read())
    f.close()

    ## Set output configuration
    output(output_loc, is_slave, identity, sj.dumps(config) + '\n')

    num_steps = config['num_steps']
    num_trials = config['num_trials']
    trust_used = config['trust_used']
    inbox_trust_sorted = config['inbox_trust_sorted']
    if 'trust_filter_on' in config.keys():
        trust_filter_on = config['trust_filter_on']
    else:
        trust_filter_on = True

    i = 1

    corroboration_threshold = 4

    for num_fpro in config['num_fpro']:
       for num_fcon in config['num_fcon']:
           for num_npro in config['num_npro']:
              for num_ncon in config['num_ncon']:
                  for num_groups in config['num_groups']:
                     for num_agents in config['num_agents']:
                         for agent_per_fact in config['agent_per_fact']:
                             for graph in config['graph_description']:
                                 graph_type = graph['type']
                                 radius = graph['radius']
                                 for agent_setup in config['agent_setup']:
                                     for w in config['willingness']:
                                         for c in config['competence']:
                                             for spam in config['spamminess']:
                                                 for selfish in config['selfishness']:
                                                    for e in config['engagement']:
                                                       for d in config ['decisiveness']:
                                                           for cap in config ['capacity']:
                                                              for corroboration_threshold in config['corroboration_threshold']:
             
                                                                 print "Case", i, "being executed"
                                                                 print "running for %d/%d facts per group %d groups %d agents"\
                                                                     %(num_fpro+num_fcon, num_npro+num_ncon, num_groups, num_agents)
                                                                 print "\t%d agents per fact "\
                                                                     %agent_per_fact
                                                                 print "\t%s/%.1f graph for %s steps" \
                                                                     %(graph_type, radius, num_steps)
                                                                 print "\tw:%.1f/c:%.1f/e:%.1f/d:%.1f for %d trials"\
                                                                     %(w,c,e,d,num_trials)
                                                                 print "\tagent setup", agent_setup
                                                                 i += 1
                                                                 results = sim.run_simulation(num_fpro, \
                                                                                              num_fcon, \
                                                                                              num_npro,\
                                                                                              num_ncon, \
                                                                                              num_groups, \
                                                                                              num_agents, \
                                                                                              agent_per_fact,\
                                                                                              radius, \
                                                                                              num_steps, \
                                                                                              w, c, e, d, \
                                                                                              corroboration_threshold, \
                                                                                              cap, \
                                                                                              num_trials, \
                                                                                              graph_type,\
                                                                                              agent_setup,\
                                                                                              spam, selfish,\
                                                                                              trust_used,\
                                                                                              inbox_trust_sorted, \
                                                                                              trust_filter_on)
                                                                 output(output_loc, is_slave, identity, sj.dumps(results) + '\n' )
Пример #2
0
   for value in params[param]:
      for layer in range(5):
        change_list = [value]
        change_list.append(range(pow(2,layer)-1,pow(2,layer+1)-1))
        agent_setup = [{param : change_list}]
        for (num_npro, num_ncon) in [ (150,0), (125,25),(100,50),  (75,75), (50,100), (25,125), (0,150)  ]:
                results = sim.run_simulation(num_fpro, \
                                             num_fcon, \
                                             num_npro,\
                                             num_ncon, \
                                             num_groups, \
                                             num_agents, \
                                             agent_per_fact,\
                                             radius, \
                                             num_steps, \
                                             w, c, e, decisiveness, cm, \
                                             corroboration_threshold, \
                                             disp, \
                                             cap, \
                                             num_trials, \
                                             graph_type,\
                                             agent_setup,\
                                             spam, selfish,\
                                             trust_used,\
                                             inbox_trust_sorted, \
                                             trust_filter_on)

                f.write(sj.dumps(results) + "\n")

                

                infostr = "comp: %.2f, e: %.2f, good: %d/%d, bad: %d/%d, "\
def run(config_file, output_loc, is_slave, identity):
    random.seed(10)

    ## Read input configuration
    f = open(config_file)
    config = sj.loads(f.read())
    f.close()

    ## Set output configuration
    output(output_loc, is_slave, identity, sj.dumps(config) + '\n')

    num_steps = config['num_steps']
    num_trials = config['num_trials']
    trust_used = config['trust_used']
    inbox_trust_sorted = config['inbox_trust_sorted']
    if 'trust_filter_on' in config.keys():
        trust_filter_on = config['trust_filter_on']
    else:
        trust_filter_on = True

    i = 1

    corroboration_threshold = 4

    for num_fpro in config['num_fpro']:
        for num_fcon in config['num_fcon']:
            for num_npro in config['num_npro']:
                for num_ncon in config['num_ncon']:
                    for num_groups in config['num_groups']:
                        for num_agents in config['num_agents']:
                            for agent_per_fact in config['agent_per_fact']:
                                for graph in config['graph_description']:
                                    graph_type = graph['type']
                                    radius = graph['radius']
                                    for agent_setup in config['agent_setup']:
                                        for w in config['willingness']:
                                            for c in config['competence']:
                                                for spam in config[
                                                        'spamminess']:
                                                    for selfish in config[
                                                            'selfishness']:
                                                        for e in config[
                                                                'engagement']:
                                                            for d in config[
                                                                    'decisiveness']:
                                                                for cap in config[
                                                                        'capacity']:
                                                                    for corroboration_threshold in config[
                                                                            'corroboration_threshold']:

                                                                        print "Case", i, "being executed"
                                                                        print "running for %d/%d facts per group %d groups %d agents"\
                                                                            %(num_fpro+num_fcon, num_npro+num_ncon, num_groups, num_agents)
                                                                        print "\t%d agents per fact "\
                                                                            %agent_per_fact
                                                                        print "\t%s/%.1f graph for %s steps" \
                                                                            %(graph_type, radius, num_steps)
                                                                        print "\tw:%.1f/c:%.1f/e:%.1f/d:%.1f for %d trials"\
                                                                            %(w,c,e,d,num_trials)
                                                                        print "\tagent setup", agent_setup
                                                                        i += 1
                                                                        results = sim.run_simulation(num_fpro, \
                                                                                                     num_fcon, \
                                                                                                     num_npro,\
                                                                                                     num_ncon, \
                                                                                                     num_groups, \
                                                                                                     num_agents, \
                                                                                                     agent_per_fact,\
                                                                                                     radius, \
                                                                                                     num_steps, \
                                                                                                     w, c, e, d, \
                                                                                                     corroboration_threshold, \
                                                                                                     cap, \
                                                                                                     num_trials, \
                                                                                                     graph_type,\
                                                                                                     agent_setup,\
                                                                                                     spam, selfish,\
                                                                                                     trust_used,\
                                                                                                     inbox_trust_sorted, \
                                                                                                     trust_filter_on)
                                                                        output(
                                                                            output_loc,
                                                                            is_slave,
                                                                            identity,
                                                                            sj.
                                                                            dumps(
                                                                                results
                                                                            ) +
                                                                            '\n'
                                                                        )