예제 #1
0
def generate_syn_type_1(e, args):

    synpar = copy.copy(args)
    default_parameters(synpar)

    generate_election_spec(e, synpar)
    generate_reported(e, synpar)
    generate_audit(e, synpar)

    debug = False
    if debug:
        for key in sorted(vars(e)):
            print(key)
            print("    ", vars(e)[key])

    csv_writers.write_csv(e)
예제 #2
0
def generate_syn_type_2(e, args):

    synpar = copy.copy(args)
    rows = read_syn2_csv(e, synpar)
    process_spec(e, synpar, rows)
    e.audit_seed = 1
    synpar.RandomState = np.random.RandomState(e.audit_seed)
    shuffle_votes(e, synpar)
    audit_orders.compute_audit_orders(e)

    # generate_audit(e, synpar)

    debug = False
    if debug:
        for key in sorted(vars(e)):
            print(key)
            print("    ", vars(e)[key])

    csv_writers.write_csv(e)
예제 #3
0
파일: syn3.py 프로젝트: Dovermore/audit-lab
def generate_syn_type_3(e, args):

    synpar = copy.copy(args)
    meta_rows = read_meta_csv(e, synpar)
    actual_rows = read_vote_csv(e, synpar, False)
    reported_rows = read_vote_csv(e, synpar, True)
    process_spec(e, synpar, meta_rows, actual_rows, reported_rows)
    e.audit_seed = int(time.clock() * 100000)
    synpar.RandomState = np.random.RandomState(e.audit_seed)
    # synpar.RandomState = np.random.RandomState()
    print(f"seed for RandomState: {e.audit_seed}")
    shuffle_votes(e, synpar)
    audit_orders.compute_audit_orders(e)

    debug = False
    if debug:
        for key in sorted(vars(e)):
            logger.info(key)
            logger.info("    ", vars(e)[key])

    csv_writers.write_csv(e)