def submit(name, language, program, filename, tests, time_limit): n = len(tests) testlist = [] program_file = file('files/temp/programs/' + filename, 'w+b') #Temp. File for the program program_file.write(program) for i in range(n): input_file = file('files/temp/inputs/input_file-%d.in' % (i + 1), 'w+b') output_file = file('files/temp/outputs/output_file-%d.out' % (i + 1), 'w+b') input_file.write( tests[i]['input'] ) #Writing data from the list of input/output files supplied output_file.write(tests[i]['output']) #to temp files and testlist.append({ 'input': get_path(input_file), 'output': get_path(output_file) }) #Getting their path to be supplied to evaluator. input_file.close() output_file.close() program_file.close() result = evaluate.evaluate(language, get_path(program_file), testlist, time_limit) result['successful'] = True result['marks'] = 0 if not result['status'] == 'errors': for (i, case) in enumerate(result['status']): if case == 'correct': test = tests[i] time_taken = result['executiontime'][i] if time_taken > test['time_limit_soft']: exceed_time = time_taken - test['time_limit_soft'] max_exceed_time = test['time_limit'] - test[ 'time_limit_soft'] result['marks'] += round( test['marks'] * ((max_exceed_time - exceed_time) / max_exceed_time), 2) else: result['marks'] += test['marks'] else: result['successful'] = False result['error'] = case or 'Runtime Exceeded' break else: result['error'] = 'Compilation Error' result['successful'] = False if not result['successful']: result['marks'] = 0 return result
def submit(name, language,program, tests): ## n = len(tests) testlist = [] timelimit = 15 program_file = file('files/program.'+language, 'w+b') #Temp. File for the program program_file.write(program) for i in range(n): input_file = file('files/input_file-%d.in' %(i+1), 'w+b') output_file = file('files/output_file-%d.out' %(i+1), 'w+b') input_file.write(tests[i]['input']) #Writing data from the list of input/output files supplied output_file.write(tests[i]['output']) #to temp files and testlist.append({'input':get_path(input_file),'output':get_path(output_file)}) #Getting their path to be supplied to evaluator. input_file.close() output_file.close() program_file.close() result = evaluate.evaluate('C',get_path(program_file), testlist, timelimit) return result
def submit(name, language,program,filename, tests, time_limit): n = len(tests) testlist = [] print filename program_file = file('files/temp/programs/'+filename, 'w+b') #Temp. File for the program program_file.write(program) for i in range(n): input_file = file('files/temp/inputs/input_file-%d.in' %(i+1), 'w+b') output_file = file('files/temp/outputs/output_file-%d.out' %(i+1), 'w+b') input_file.write(tests[i]['input']) #Writing data from the list of input/output files supplied output_file.write(tests[i]['output']) #to temp files and testlist.append({'input':get_path(input_file),'output':get_path(output_file)}) #Getting their path to be supplied to evaluator. input_file.close() output_file.close() program_file.close() result = evaluate.evaluate(language, get_path(program_file), testlist, time_limit) result['successful'] = True result['marks'] = 0 if not result['status']=='errors': for (i, case) in enumerate(result['status']): if case == 'correct': test = tests[i] time_taken = result['executiontime'][i] if time_taken > test['time_limit_soft']: exceed_time = time_taken - test['time_limit_soft'] max_exceed_time = test['time_limit'] - test['time_limit_soft'] result['marks'] += round(test['marks']*((max_exceed_time - exceed_time)/max_exceed_time), 2) else: result['marks'] += test['marks'] else: result['successful'] = False result['error']=case or 'Runtime Exceeded' break else: result['error'] = 'Compilation Error' result['successful'] = False if not result['successful']: result['marks'] = 0 return result
'RPDQ': SGDClassifier(learning_rate='constant', class_weight={-1: 1, 1: 1}, query_strategy='RPDQ', query_weight=55), 'AQ': SGDClassifier(learning_rate='constant', class_weight={-1: 1, 1: 1}, query_strategy='AQ', query_weight={-1: 40, 1: 60}), 'BAAQ': SGDClassifier(learning_rate='constant', class_weight={-1: 1, 1: 1}, query_strategy='BAAQ', query_beta=1), 'OA3': OA3Classifier(eta=0.1, class_weight={-1: 0.1, 1: 0.9}, query_weight={-1: 10, 1: 40}, gamma=1), 'OACSL': OACSL(base_model=SGDClassifier(learning_rate='constant', eta0=0.1, query_strategy='BAAQ', query_beta=1), measurement=measurement, window_size=10, eta_rho=0.1), } evaluate(models=imbalance_budget_models, data_set_path="..\\data\\ibcdhps", log_save_path="..\\log", measurement=measurement, test_times=1)