摘 要
随着当今世界互联网信息技术的飞速发展,互联网在人们生活中的应用越来越广泛,在线考试成为选拔人才的重要方法。实现一个基于AI技术的智能考试系统,该系统采用Java编程语言实现。通过使用自然语言处理技术和机器学习算法,该系统能够自动评分、人脸识别、在线实时监控,自动生成答案解析等。实验结果表明,该系统可以准确地评估学生的学习情况,提高考试的效率和准确性。该系统基于B/S模式,采用Java语言spring boot技术、DIV+CSS配置方法、MySQL数据库技术和TomCat服务器,实现了B/S模式下的智能考试系统。
系统由三类用户组成:学生、教师和系统管理员。学生可以登录系统进行在线考试、在考试前进行人脸检测,并且考试过程中进行人脸监测,浏览器窗口检测。学生提交成绩之后可在一定时间之后,进行成绩查询和一些个人信息的修改。登录后,教师可以管理试卷,查看系统AI自动评分信息,也可以修改个人信息。登录后,管理员可以与用户维护试题,实现用户信息和试题的批量部署。该系统具有高可用性,可用于各种计算机语言课程的考试。
关键词:AI智能考试;人脸监控;自动评分;java;mysql
Abstract
With the rapid development of internet information technology in today's world, the application of the internet in people's lives is becoming increasingly widespread, and online exams have become an important method for selecting talents. Implement an intelligent exam system based on AI technology, which is implemented using Java programming language. Through the use of natural language processing technology and machine learning algorithms, the system can automatically score, recognize faces, monitor online in real time, and automatically generate answer analysis. The experimental results indicate that the system can accurately evaluate students' learning situation and improve the efficiency and accuracy of exams. The system is based on B/S mode and adopts Java language spring boot technology, DIV+CSS configuration method, MySQL database technology, and TomCat server to implement an intelligent exam system in B/S mode.
The system consists of three types of users: students, teachers, and system administrators. Students can log on to the system for online tests, face detection before the test, and face monitoring and browser window detection during the test process. After submitting their scores, students can query their scores and modify their personal information after a certain period of time. After logging in, the teacher can manage the test paper, view the system AI automatic scoring information, or modify the personal information. After login, the administrator can maintain the test questions with the user, and realize the batch deployment of the user information and test questions. The system is highly available and can be used for various examinations of computer language courses.
Keywords: AI intelligence test; face monitoring;Automatic rating; java; mysql
目 录
第1章 绪 论
1.1问题的提出
1.2系统开发目标
1.3开发工具的选择
1.4开发本系统的意义
1.5研究设计方法
1.6研究设计思路
第2章 系统分析与介绍
2.1 技术可行性分析
2.2经济可行性
2.3 方案可行性
2.4环境介绍
第3章 需求分析
3.1系统用户
3.2管理员
3.3实体关系图
第4章 总体设计
4.1系统功能模块图
4.2系统功能模块
4.3后台数据库的设计
4.3.1数据库表结构的设计
4.3.2数据库的连接
第5章 详细设计
5.1公共类的设计
5.1.1 Domain类设计
5.1.2 工具类的设计
5.2在线考试模块
5.2.1智能考试流程
5.2.2智能成绩查询模块
5.2.3智能考生试卷管理模块
5.2.4智能分数段统计模块
5.2.5试题维护模块
5.2.6 考试设置信息维护模块
5.2.7 用户管理模块
5.3个人信息维护模块
5.4系统界面
5.4.1 系统主界面
5.4.2 考试界面
第6章 系统测试
6.1账户测试
6.2测试结果
第7章 总结
致 谢
参考文献
第1章 绪 论
1.1问题的提出
互联网时代信息化技术以及人工智能技术快速发展,国内甚至是世界上,稀缺的不再是人才,而是行业的经营,选拔精英人才所经之道,那就是考试。而且现在正在读书的学生学校测试的频率也逐渐频繁,且前几年因为疫情影响,线上测试也越发常见。传统的学校考试模式是学科老师聚在一起出题,然后通过印刷,学生统一在指定的考试时间进行答题,然后主动提交试卷,或者等待时间结束之后,系统自动保存现有答题,自动提交,老师通过人工进行判卷。这种传统的考试模式会占用大量的老师的时间,而且效率也不高,出错率也会高,而且在疫情期间学生是不能到达指定地点进行测试。因此传统的考试模式也不能满足各种场景需求。人们需要一款结合信息化技术,使用先进的互联网技术实现在线考试,在线考试能减少教师的工作量,还能提升工作效率,降低出错率。
随着科技的不断发展,人工智能技术已经在各个领域得到了广泛应用。教育领域也不例外。智能教育系统、智能评估系统等应用层出不穷。其中,智能考试系统是一个比较重要的应用,可以提高考试的效率和准确性,减轻教师的工作负担。使用在线学习系统,在一定程度上提高了学生的学习兴趣。
1.2系统开发目标
该系统计划实现一个AI技术的智能考试系统,开发语言是基于java。该系统主要从角色上面进行划分,角色主要分为普通的用户角色,使用系统进行测试、考试的用户,以及系统管理员角色老师。普通注册用户、实名认证、考试信息人脸识别,在线考试,考试结束后,系统自动评分客观问题。教师注册系统将查看学生的试卷。在老师评价主观问题后,系统可计算学生总分,生成各分数段的分布信息,为老师提供参考。进行中的考试,可通过系统进行监控是否是本人等。
1.3开发工具的选择
该系统的开发语言为JAVA,开发环境为IDEA,前端页面主要使用Vscode开发。由于该系统的数据量和负载很大,所以从经济性和效率的角度出发,我们选择了一个具有免费关系持久存储的MySQL8数据库。此系统的数据库不限制问题的数量。因为TomCat是java发展至进,java运行服务环境首选,该服务器是免费开源的,并且springboot中默认集成的就是该服务器,所以选择改服务作为Web服务器。
1.4开发本系统的意义
从电子文档、多媒体应用到上网实验,网络已经渗透到教育系统的各个层面。而在线考试在其中扮演着重要的角色,也逐渐收到相关人员的关注,除了满足传统的考试需求之外,在保证公平公正进行的基础上,还存在一些新的特点,详细信息如下:
1. 从管理者和教师的角度出发,智能考试系统能够帮助教师减轻一定的工作量,提高老师的工作效率,并降低错误率。而且和老师管理这进行互补,达到更高的出题目的,主要在问题的设计方面、考试环境的实施角度、学生考试的进行监督、试题判断依据等,实现了在线智能考试,脱了纸质化考试,有效实现了教学与考试的分离。
2. 在沿用传统考试的思想基础上进行加强,考试的用户只需要根据分配的账户,进行登录验证通过之后,进行系统页面,选择需要进行的考试,即可进行在线测试,当题目都完成之后,便可进行提交[1]。
3. 及时准确地反馈试验结果。当老师完成复习后,你可以了解考试结果,并提供反馈信息让考生知道你犯了什嚒样的问题。考生的考试成绩可以保存下来,使老师能够进行分析、统计和观察。
1.5研究设计方法
首先采用了调查法和文献研究法,对系统进行的大体的方向确认,然后分析系统的设计以及目的,然后再进行整理系统设计的意义,并进行详细的整理文档化。通过实证研究法加上代码逻辑实现测试验证。在对系统整个过程中,主要包含了系统的数据对象E-R图、对象关系数据库表;然后确认系统整理流程以及功能模块,然后通过代码实现功能语言的优缺点以及测试分析的简洁快速迭代,最终终确定了采用java语言,mysql数据库,自然语言作为本次毕业设计的技术选型[2]。
1.6研究设计思路
确定系统的研究方法之后,仔细设计了系统的研究思路,并整理研究思路,如图1.1所示。主要步骤为调查分析,然后选定题目,确定题目便着手分析功能,利用网上资源,以及国内外研究现状对系统进行总体设计,总体设计结束之后,对系统进行详细设计,详细设计结束,便可根据详细设计进行代码开发,实现系统的功能,开发的功能一定需要经过测试,这样才算作该系统的结束。