CN110852653A - 一种应用于计算机编程题的自动评分系统 - Google Patents

一种应用于计算机编程题的自动评分系统 Download PDF

Info

Publication number
CN110852653A
CN110852653A CN201911157715.7A CN201911157715A CN110852653A CN 110852653 A CN110852653 A CN 110852653A CN 201911157715 A CN201911157715 A CN 201911157715A CN 110852653 A CN110852653 A CN 110852653A
Authority
CN
China
Prior art keywords
answers
module
examinees
standard
answer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911157715.7A
Other languages
English (en)
Inventor
范根
赵启卫
杨坤
苟溟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CHENGDU GOLDTEL INDUSTRY GROUP Co Ltd
Original Assignee
CHENGDU GOLDTEL INDUSTRY GROUP Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CHENGDU GOLDTEL INDUSTRY GROUP Co Ltd filed Critical CHENGDU GOLDTEL INDUSTRY GROUP Co Ltd
Priority to CN201911157715.7A priority Critical patent/CN110852653A/zh
Publication of CN110852653A publication Critical patent/CN110852653A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06393Score-carding, benchmarking or key performance indicator [KPI] analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Educational Administration (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • General Health & Medical Sciences (AREA)
  • Educational Technology (AREA)
  • Game Theory and Decision Science (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

本发明公开了一种应用于计算机编程题的自动评分系统,包括:试题答案存储模块,用于存储教师上传的多个试题标准答案;考生答案获取模块,用于输入考生给出的试题答案;逻辑对比模块,用于对标准答案和考生答案进行逻辑相似度对比,并给出得分;语法对比模块,用于对标准答案和考生答案进行语法相似度对比,并给出得分;结果运算模块,用于运行考生答案,并判断得出的结果与标准答案是否一致,再给出得分。本系统能够实现计算机编程题的自动评分,使得计算机考试能够更好的适应计算机相关学科的考试,降低工作人员发工作量,提示工作效率。

Description

一种应用于计算机编程题的自动评分系统
技术领域
本发明涉及计算机考试评分领域,尤其涉及一种应用于计算机编程题的自动评分系统。
背景技术
随着计算机技术的高速发展,计算机考试逐渐成为一种新的考试方式。计算机考试从一定程度上降低了工作人员的工作量,提高了工作效率。同时计算机考试还具有快捷、方便、高效、安全等许多优点。计算机考试中的一个非常重要的过程就是自动评分。
在计算机考试领域中,针对客观试题的自动评分技术已经比较成熟。受到这几年人工智能、自然语言理解、模式识别等理论与技术的发展,针对主观题型诸如名词解释、简答题以及论述题等的自动评分技术也在快速发展。但是,在诸如计算机相关的学科,由于考试时要编写一些代码,这些代码在答题的时候不能运行,所以在一定程度上不能说明考试的情况,因为代码的某个地方错了,就意味着后面的代码都不能执行。目前尚未出现比较成熟的计算机相关科目编程题自动评分方法。因此,如何利用计算机来实现主观题中编程题的自动评分具有十分重要的实现意义。
发明内容
为了解决上述问题,本发明提出一种应用于计算机编程题的自动评分系统,包括:
试题答案存储模块,用于存储教师上传的多个试题标准答案;
考生答案获取模块,用于输入考生给出的试题答案;
逻辑对比模块,用于对标准答案和考生答案进行逻辑相似度对比,并给出得分;
语法对比模块,用于对标准答案和考生答案进行语法相似度对比,并给出得分;
结果运算模块,用于运行考生答案,并判断得出的结果与标准答案是否一致,再给出得分。
优选的,所述逻辑对比模块将考生答案和多个标准答案形成逻辑流程图,进行一对多匹配,判断学生答案与标准答案的重合部分,按照预设规则给出得分。
优选的,所述语法对比模块采用LDA算法比对学生答案和标准答案的相似度,按照预设规则给出得分。
优选的,所述语法对比模块将实现同一功能的语句进行归类,形成对应表。
优选的,所述结果运算模块采用Docker来创建相应语言的容器,将考生答案写入文件,调用预设的相应语言的执行代码编译代码,输出运行结果。
优选的,所述结果运算模块还包括监测模块,用于监测当前容器状态,若为退出状态时,则销毁容器。
本发明的有益效果在于:本系统能够实现计算机编程题的自动评分,使得计算机考试能够更好的适应计算机相关学科的考试,降低工作人员发工作量,提示工作效率。
附图说明
图1是本系统结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
根据编程题的特性,可以将其分为程序逻辑得分、程序语法得分、程序结果得分,三个部分。实现同一个功能可以选择不同的方法,这样在逻辑上就会有不同,因此在申请通常会给每一道编程题设定多个标准答案。评分过程中对比学生程序和标准答案,根据两者匹配程度给出得分。而实际教师阅卷也会参考多个标准答案
如图1所示,一种应用于计算机编程题的自动评分系统,包括:试题答案存储模块,用于存储教师上传的多个试题标准答案;考生答案获取模块,用于输入考生给出的试题答案;逻辑对比模块,用于对标准答案和考生答案进行逻辑相似度对比,并给出得分;语法对比模块,用于对标准答案和考生答案进行语法相似度对比,并给出得分;结果运算模块,用于运行考生答案,并判断得出的结果与标准答案是否一致,再给出得分。
在本实施例中,所述逻辑对比模块将考生答案和多个标准答案形成逻辑流程图,进行一对多匹配,判断学生答案与标准答案的重合部分,按照预设规则给出得分。具体地,如果学生的答案有和其中某个标准答案一样,程序逻辑得分为满分;只有部分一样,程序逻辑得分就只能得到相应分数;完全不一样,则不得分。
在对语句进行评分时,由于实现一个功能可以有多种方法,因此在本实施例中,首先对实现同样功能发语句进行归类。例如,在P ython中i = i + 1等价于i += 1,这样可以实现不同写法是实现同一功能的评分。在形成相应语言的关键字和语法库后,利用LDA算法比对学生答案和标准答案的相似度,就可以得到程序语句方面的得分情况。
程序的运行结果也是最能反映出是否为试题的正确答案,应该对考生的程序进行运行具有很高的实际意义。在本实施例中,使用Django搭建WEB框架,用Docker来创建相应语言的容器,Docker预先下载好镜像方便创建容器。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、ROM、RAM等。用户提交POST请求到后台,后台将用户提交的代码写入文件。并调用Docker API,创建相应语言环境的容器并共享文件,再通过创建容器后预设的相应语言的执行代码编译代码,Django后台调用Docker API一直检查当前容器状态,当为退出状态时,就调用API获取容器内的输出结果,并销毁容器,返回结果给用户。
在利用本系统进行评卷时,教师上传试题及答案,系统根据老师提供的答案生成关键字;然后学生在考试过程中给出试题答案,系统利用相同算法生成学生答案关键字,和老师提交答案关键字对比。并定出逻辑得分和程序语法得分;系统再将同学提交的答案发送给Docker 进行结果运算,根据运算结果,得出程序运行结果得分;最后将各项得分中和返回到前端统计最终得分。根据考试情况,系统还能够设置为在程序运行报错时,在考试同时提醒同学进行改正。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (6)

1.一种应用于计算机编程题的自动评分系统,其特征在于,包括:
试题答案存储模块,用于存储教师上传的多个试题标准答案;
考生答案获取模块,用于输入考生给出的试题答案;
逻辑对比模块,用于对标准答案和考生答案进行逻辑相似度对比,并给出得分;
语法对比模块,用于对标准答案和考生答案进行语法相似度对比,并给出得分;
结果运算模块,用于运行考生答案,并判断得出的结果与标准答案是否一致,再给出得分。
2.根据权利要求1所述的一种应用于计算机编程题的自动评分系统,其特征在于,所述逻辑对比模块将考生答案和多个标准答案形成逻辑流程图,进行一对多匹配,判断学生答案与标准答案的重合部分,按照预设规则给出得分。
3.根据权利要求1所述的一种应用于计算机编程题的自动评分系统,其特征在于,所述语法对比模块采用LDA算法比对学生答案和标准答案的相似度,按照预设规则给出得分。
4.根据权利要求3所述的一种应用于计算机编程题的自动评分系统,其特征在于,所述语法对比模块将实现同一功能的语句进行归类,形成对应表。
5.根据权利要求1所述的一种应用于计算机编程题的自动评分系统,其特征在于,所述结果运算模块采用Docker来创建相应语言的容器,将考生答案写入文件,调用预设的相应语言的执行代码编译代码,输出运行结果。
6.根据权利要求1所述的一种应用于计算机编程题的自动评分系统,其特征在于,所述结果运算模块还包括监测模块,用于监测当前容器状态,若为退出状态时,则销毁容器。
CN201911157715.7A 2019-11-22 2019-11-22 一种应用于计算机编程题的自动评分系统 Pending CN110852653A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911157715.7A CN110852653A (zh) 2019-11-22 2019-11-22 一种应用于计算机编程题的自动评分系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911157715.7A CN110852653A (zh) 2019-11-22 2019-11-22 一种应用于计算机编程题的自动评分系统

Publications (1)

Publication Number Publication Date
CN110852653A true CN110852653A (zh) 2020-02-28

Family

ID=69603814

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911157715.7A Pending CN110852653A (zh) 2019-11-22 2019-11-22 一种应用于计算机编程题的自动评分系统

Country Status (1)

Country Link
CN (1) CN110852653A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111914541A (zh) * 2020-07-02 2020-11-10 蜂巢在线(广州)教育科技有限公司 计算机程序答题评分系统、方法、装置和存储介质
CN112102124A (zh) * 2020-08-31 2020-12-18 湖北美和易思教育科技有限公司 一种大数据基础算法学习自动评价方法及系统
CN114895973A (zh) * 2022-04-19 2022-08-12 厦门科云信息科技有限公司 一种python编程题目的自动判分方法、装置以及设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104899324A (zh) * 2015-06-19 2015-09-09 成都国腾实业集团有限公司 一种基于idc有害信息监测系统的样本训练系统
CN105224818A (zh) * 2015-11-10 2016-01-06 北京科技大学 一种作业程序自动评分方法及系统
CN106846203A (zh) * 2017-03-09 2017-06-13 常州工学院 一种智能阅卷方法及系统
CN108122181A (zh) * 2017-12-20 2018-06-05 中州大学 一种计算机应用考试系统
CN109683874A (zh) * 2018-11-20 2019-04-26 江西博联科技有限公司 基于编码字符串的审判系统及方法
CN109993387A (zh) * 2017-12-29 2019-07-09 Tcl集团股份有限公司 一种基于nlp的自动评分方法及装置、考试系统
CN110196893A (zh) * 2019-05-05 2019-09-03 平安科技(深圳)有限公司 基于文本相似度的非主观题阅卷方法、装置及存储介质
CN110471936A (zh) * 2019-08-19 2019-11-19 福建工程学院 一种混合式sql自动评分方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104899324A (zh) * 2015-06-19 2015-09-09 成都国腾实业集团有限公司 一种基于idc有害信息监测系统的样本训练系统
CN105224818A (zh) * 2015-11-10 2016-01-06 北京科技大学 一种作业程序自动评分方法及系统
CN106846203A (zh) * 2017-03-09 2017-06-13 常州工学院 一种智能阅卷方法及系统
CN108122181A (zh) * 2017-12-20 2018-06-05 中州大学 一种计算机应用考试系统
CN109993387A (zh) * 2017-12-29 2019-07-09 Tcl集团股份有限公司 一种基于nlp的自动评分方法及装置、考试系统
CN109683874A (zh) * 2018-11-20 2019-04-26 江西博联科技有限公司 基于编码字符串的审判系统及方法
CN110196893A (zh) * 2019-05-05 2019-09-03 平安科技(深圳)有限公司 基于文本相似度的非主观题阅卷方法、装置及存储介质
CN110471936A (zh) * 2019-08-19 2019-11-19 福建工程学院 一种混合式sql自动评分方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111914541A (zh) * 2020-07-02 2020-11-10 蜂巢在线(广州)教育科技有限公司 计算机程序答题评分系统、方法、装置和存储介质
CN112102124A (zh) * 2020-08-31 2020-12-18 湖北美和易思教育科技有限公司 一种大数据基础算法学习自动评价方法及系统
CN114895973A (zh) * 2022-04-19 2022-08-12 厦门科云信息科技有限公司 一种python编程题目的自动判分方法、装置以及设备

Similar Documents

Publication Publication Date Title
Jalil et al. Chatgpt and software testing education: Promises & perils
Finnie-Ansley et al. My ai wants to know if this will be on the exam: Testing openai’s codex on cs2 programming exercises
Carter et al. The normalized programming state model: Predicting student performance in computing courses based on programming behavior
Strauss et al. jTRACE: A reimplementation and extension of the TRACE model of speech perception and spoken word recognition
McLaren et al. Supporting collaborative learning and e-discussions using artificial intelligence techniques
Chapelle et al. The promise of NLP and speech processing technologies in language assessment
CN110852653A (zh) 一种应用于计算机编程题的自动评分系统
Liu et al. Automatic question generation for literature review writing support
Holland et al. Parsers in tutors: What are they good for?
Phothilimthana et al. High-coverage hint generation for massive courses: Do automated hints help CS1 students?
CN105427695A (zh) 编程类考题自动测评方法和系统
Rivers et al. A canonicalizing model for building programming tutors
Cavalcanti et al. Detection and evaluation of cheating on college exams using supervised classification
CN110633072B (zh) 一种可供自动批改的编程训练题目构造方法及装置
Westphal An undergraduate requirements engineering curriculum with formal methods
Nabil et al. Evalseer: an intelligent gamified system for programming assignments assessment
Fang et al. Artificial intelligence-based assessment in education
Ulloa Teaching and learning computer programming: a survey of student problems, teaching methods, and automated instructional tools
Arefin et al. Unmasking the giant: A comprehensive evaluation of ChatGPT's proficiency in coding algorithms and data structures
CN113778454B (zh) 一种人工智能实验平台的自动评测方法及系统
Lloyd et al. A cognitive information processing and information theory approach to diagram clarity: A synthesis and experimental investigation
Carpenter et al. A knowledge modeling approach to evaluating student essays in engineering courses
Sudol et al. Calculating Probabilistic Distance to Solution in a Complex Problem Solving Domain.
Hahn et al. Lud: An automatic scoring and feedback system for programming assignments
Siddiqi et al. On the automated assessment of short free-text responses

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20200228

RJ01 Rejection of invention patent application after publication