Example #1
0
def main():
  # Run Experiments
  start = time()
  for cname in sorted(CONTESTS):
    for t in xrange(NTRIALS):
      cattr = CONTESTS[cname]
      c, g, a, params = cattr['c'], cattr['g'], cattr['a'], cattr['p']
      contest = Contest(c, g, a, params)
      e = Election([contest])
      e.run()
      for aname in sorted(AUDITS):
        outcome, nballots = e.audit(AUDITS[aname])[0]  # assumes 1 contest
        if outcome != contest.outcome[0]:
          results[cname][aname]['e'] += 1
        results[cname][aname]['n'] += nballots
  end = time()

  # Report Results
  for cname in sorted(CONTESTS):
    print cname
    for aname in sorted(AUDITS):
      avg_nballots = results[cname][aname]['n'] / float(NTRIALS)
      avg_nerrors = results[cname][aname]['e'] / float(NTRIALS)
      print '\t%s\t%f\t%f' % (aname, avg_nballots, avg_nerrors)
  print 'Runtime: ' + str(end - start)