首页> 外文会议>International Conference on Data and Software Engineering >UGrade: Autograder for Competitive Programming Using Contestant PC as Worker
【24h】

UGrade: Autograder for Competitive Programming Using Contestant PC as Worker

机译:UPGrade:使用竞争者PC作为工作程序进行竞争性编程的自动分级机

获取原文

摘要

Competitive programming is a computer science competition where the contestants compete to solve computer science problems by writing a program which satisfies the problem constraints. The autograder is used to grade contestant solutions automatically in real-time. Usually, autograder is deployed in many computers to increase grading performance. In this research, contestants’ computers are used as a worker to run autograder. By using contestants’ computers as a worker, the number of workers will proportional to the number of contestants’ submissions, thus increasing grading performance. Every contestants’ computers have different specification and can affect grading fairness. To keep the fairness of the grading process, contestant’s solution and jury’s solution are executed in contestant’s computer then compared to check whether contestant’s solution satisfies the problem constraints. In order to evaluate the correctness of contestant’s solution, the autograder uses input test-case to execute the contestant’s solution and compares the output with the output test-case. Usually, the test-cases are some big text files generated by the problem setters. In this research, the test-case files are generated in the contestant computer using test-case generator program created by problem setter. In order to improve the security aspect, every contestant submission is graded multiple times. This research was tested by simulating grading process in contestants’ computers. The testing result indicates that using contestants’ computers as a worker gives performance improvement to the grading process. Further research is needed to improve the security aspect of this work. However, this research can be used to organize some competitive programming competition such as ACM-ICPC.
机译:竞争性编程是计算机科学竞赛,参赛者通过编写满足问题约束的程序来竞争解决计算机科学问题。自动分级机用于实时自动对选手解决方案进行分级。通常,将自动分级器部署在许多计算机中以提高分级性能。在这项研究中,参赛者的计算机被用作运行自动平地机的工人。通过使用参赛者的计算机作为工作人员,工作人员的数量将与参赛者提交的内容成比例,从而提高评分表现。每个参赛者的计算机都有不同的规格,并且会影响评分的公平性。为了保持评分过程的公平性,将参赛者的解决方案和陪审团的解决方案在参赛者的计算机中执行,然后进行比较以检查参赛者的解决方案是否满足问题约束。为了评估参赛者解决方案的正确性,自动分级机使用输入测试用例来执行参赛者的解决方案,并将输出与输出测试用例进行比较。通常,测试用例是问题设置者生成的一些大文本文件。在这项研究中,测试案例文件是使用问题设置者创建的测试案例生成器程序在竞赛计算机中生成的。为了提高安全性,每个参赛者提交的内容都经过多次评分。通过模拟参赛者计算机中的评分过程对这项研究进行了测试。测试结果表明,使用参赛者的计算机作为工作人员,可以改善评分过程的性能。需要进一步研究以改善这项工作的安全性。但是,该研究可用于组织一些竞争性编程竞赛,例如ACM-ICPC。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号