互动型知识问答系统的设计与实现

2019-08-12 01:27文家朝王波
电脑知识与技术 2019年16期
关键词:互动

文家朝 王波

摘要:互动型知识问答环节在许多比赛中仍然是非常重要的一个部分。在许多比赛中,选手的综合成绩,包括了才艺表演成绩和知识问答成绩,两个各占有一定的比例。为了公平起见,知识问答系统必须也是一个随机抽题系统。该文从一场学校大礼堂为场景的实际要求出發,根据比赛会场所具备的条件,研究设计出适合于该会场所需要的知识问答系统,实践表明,该系统可以取得很好的效果。

关键词:知识问答;互动;问答系统;VBA;随机抽题系统

中图分类号:TP311     文献标识码:A

文章编号:1009-3044(2019)16-0053-04

开放科学(资源服务)标识码(OSID):

Abstract: Interactive knowledge Q&A is still a very important part in many competitions. In many competitions, the overall performance of the players, including the performance of talent and knowledge of the question and answer results, each occupies a certain proportion. In order to be fair, the KQA system must also be a random question extraction system. Starting from the actual requirements of a school auditorium as a scene and according to the conditions of the competition venue, this paper studies and designs a knowledge question-and-answer system suitable for the needs of the venue. Practice shows that the system can achieve good results.

Key words: knowledge Q&A; interactive; question answering system; VBA; random question extraction system

1 问题提出

在现实生活中,学校或者单位组织的许多节目中,除了必要的才艺表演外,也加入知识问答环节,两者的综合成绩,作为选手的最终成绩。例如在凯里学院举行的第十一届中国-东盟教育交流周“中国-东盟大学生旅游形象大使选拔赛”中,为了达到想要的节目效果,在知识问题环节中,做出以下要求:

1)从49道选择题中抽取一道题目、从49道判断题中抽取出一道题目,组成一个新的题目,一共49道题目,每道题包括1个选择题和1个判断题,这新组成的49道题,作为选手的知识问答的题目。

2)所有的抽取的题目不重复、并且在某道题目被抽取之后,下一个选手,不可以再选择该题。

3)在选手答完题之后,显示题目答案。

4)除了这个基础要求之外,另外要求抽题界面简洁、易于操作、不易出错。

2 问答系统的技术分析

此类问题,归根结底是要从给定的题库中实现随机抽题。

传统的方法,是让选手从1-49个题目中,选择一个序号作为他/她的题目,主持人从现有的纸制的题目中,念出题目,让选手听题后并回答,最后由主持人或者指定的其他人给出题目答案。此种方法由于选手和观众并没有看到题目,难度较大、互动性较差,在本系统中,被排除。

在较为成熟的方法中,根据比赛场所的条件,在具有大屏幕投影的环境中,可以让所有现场的人看得见题目的抽取过程、抽取的题目内容,在选手回答后,所有人都可以看得见答案的互动方式,虽然可能不是最好,但无疑是最适合的。

3 问答系统的解决方案

此类的解决方案,可以有许多种。接下来分析各种解决方案的优势和劣势。

3.1 客户端/服务器模式

C/S(Client/Server)模式,即客户机/服务器模式。它以服务器为整个网络的核心,客户端通过单机或者网络访问服务器。当客户机和服务器安装在同一台计算机时,通过本机访问,也就是单机访问。当服务器安装在网络上时,需要通过网络进行访问。客户端/服务器模式的优点是可以充分发挥客户端的处理能力,在客户端处理完后再一同提交给服务器[1]。该模式也同样存在缺点,即任何的一台计算机如果出现问题,例如病毒、木马、硬件问题等,都需要重新安装软件,严重情况下,还需要先重装安装操作系统,再安装服务器或客户端程序。即使计算机不出现问题,在需要进行客户端升级时,同样也需要重新安装软件。可见,使用客户端/服务器模式,维护和升级成本非常高[2]。

3.2 浏览器/服务器模式

B/S(Browser/Server)模式,是在网页兴起后的结构模式,它最主要的特点是,通过浏览器访问服务器的内容,与客户端/服务器相比,它简化了系统的开发、维护。浏览器/服务器模式的最大优点是:在使用上,只需要安装服务器即可,在客户机上只需要安装一个浏览器,有时候浏览器需要安装某些插件。浏览器/服务器主要是利用不断成熟的浏览器技术和网络技术,借助网络和浏览器,完成对服务器资源的访问,并在浏览器端展示。在现实中,浏览器/服务器模式是很常见的,例如各政府、学校、购物网站。

3.3 只使用PowerPoint演示文档

在思考针对本问题提出的解决方案中,除了以上两种常用的方案外,本文创造性地提出,就使用常见的微软公司的演示文档软件PowerPoint来处理该问题。只使用PowerPoint软件处理该问题,有以下好处。

1)可以借助PowerPoint强大的制作功能、强大的文字编辑功能、丰富的段落格式以及强大的色彩表现力,来制作出丰富的抽题内容。另外,在使用普及上,微软的PowerPoint,许多人都使用过,使用起来也比较方便。

2)通用性极强。使用微软的PowerPoint做出来的问答系统,只需要在安装有微软的Office办公软件的计算机就可以使用,有时候跟版本有关系,可以在多台计算机中安装同一个版本的Office软件。甚至使用金山的WPS Office也可以很好地兼容。

3)展示功能强大。微软的PowerPoint演示内容,可以包括文本、图形、图表、图片、音频和视频等信息,可以做出较好的交互功能和演示效果。本案例可以通过加入PowerPoint动画,很好地展示出抽题的题目及显示答案。

4)支持VBA编程。微软的PowerPoint软件,除了以上的强大的功能和好处外,它还内置了系统开发工具VBA(Visual Basic for Application),它是Visual Basic的一种宏语言[3]。可以很好地实现对程序的编程,例如某个题目被选择(即,单击)之后,它不可以再被点击。

举办比赛的场地有如下设施:一个可以通过计算机投影的超大屏幕,投影的计算机所在位置无网络。根据这个条件,将以上提到的三种方案出比较,如表1所示。

可见,第三种方案,优势明显。本文选择第三种方案开展进一步研究。

4 系统设计

系统设计,可分为三大部分,分别是抽题首页界面设计、题目展示设计、相关的编程。

4.1抽题首页界面设计

抽题首页,要求有一个显眼的标题和一个简洁的抽题界面。为达到这个要求,可以使用PowerPoint的“标题和内容”版式,如图1所示。将显眼的标题放置在“标题”中,将抽题的序号图标放置在“内容”中。

标题显示当前举办的活动名称,例如本次的案例:第十一届中国-东盟教育交流周“中国-东盟大学生旅游形象大使选拔赛”。抽题界面,可以看到所有的题目序号,例如1至49。在选手选择了相应的题目之后,显示该题目内容,在返回抽题首页后,该题目序号打上已抽题的标记,并且不可再抽该题目。设计如图2所示的抽题界面。

为了重置所有题目到初始状态,即可抽题状态,另外在页面最底端设置了一个按钮,在点击该按钮后,所有题目恢复到初始状态。

4.2 题目展示设计

借助PowerPoint强大的制作功能,题目展示可以很轻松地做出来。由于抽到的题目,包括两个小题,在选手答案完毕后,显示答案。可以将题目展示设计为图3所示。

题目展示的五个部分,出场顺序如下:

第一部分:出现并自始至终存在。

第二部分:动画设置为“进入_飞入”,自底部。

第四部分:动画设置为“进入_飞入”,自底部。

第三部分:动画设置为“进入_飞入”,自右侧。

第五部分:动画设置为“进入_飞入”,自右侧。

根据总要求,除了第一页作为抽题首页外,剩余的49页都要以统一的背景、标题和动画顺序。显然,单独去设置每一页的标题、背景和动画顺序的做法不现实。为此,本文提出使用幻灯片自定义版式的方法,在该自定义版式中,设定好标题、背景和动画顺序。在所有的五个部分都全部展示完毕后,在页面底端出现“返回抽题页”的超链接,点击返回抽题页。新的版式如图4所示。

图4中的“1、2、3、4”的阿拉伯数字为设定的动画。除了抽题首页,其他页都全部应用该自定义版式。

4.3 随机抽题

从49道选择题、49道判断题的题库中,随机抽出1道选择题和1道判断题,作为新的题目。本文使用的方法是在EXCEL中插件公式“=RANDBETWEEN(1,49)”,随机生成两次1-49之间的整数,第一次生成的整数,作为选择题的第1个题目序号,第二次生成的整数,作为判断题的第1个题目序号。假设生成的两次整数是20和40,则新题库中的第20号选择题和40号判断题组成第一组新题目。通过加一的方式,得出第21号选择题和41号判断题组成第二组新题目。如表2所示,从选择题和判断题中,各抽取一道题,作为新的题目。

根据抽题结果,将题目和答案,复制到对应的幻灯片中。其中,第一页幻灯片作为抽题页,第二页幻灯片作为新题的第一题,第三页幻灯片作为新题的第二题,依此类推。

4.4 相关的编程

本系统涉及的编程包括了49个同类型抽题按钮和1个重置按钮的编程。

由于有了首页作为抽题页,因此,设计这49个按钮的动作为:点击1号按钮,跳转到第2页,点击2号按钮,跳转到第3页,依此类推,点击第49号按钮,跳转到第50页。在点击了某号按钮之后,设计该按钮的文字显示为“已抽”,并设置该按钮的Enabled屬性为False,即不可使用。第1号按钮的代码如下所示:

点击重置按钮,则所有题目,皆可重新抽题,设置所有按钮的Enabled属性为True,即可用,并设置该按钮的显示内容为原来的序号。部分代码如下所示:

4.5 系统运行

本系统运行,如图5所示。所有题目都未抽题。表面上,本系统使用的展示和平常所见的演示文档无异。但是,由于使用了VBA编程,在保存时,使用的扩展名为启用宏pptm。

运行本系统后,抽题总量及当前已被抽取的题目一目了然,参赛选手可以选择其中未抽过的题目进行知识问答。通过后台技术人员人工点击题目的形式,选择并跳转至对应的题目。例如选择了第22题。第22题的具体题目展示如图6所示。

在参赛选手回答出答案之后,通过后台技术人员操作演示文档,显示出答案。如图7所示。

点击底部的“返回抽题页”,返回到首页,此时,首页的第22题已经出现了变化,“22”的字已经被修改为“已抽”,并且不可再进行抽题,如图8所示。

5 创新点与不足

创新点:

在实现互动型知识问题上,本系统使用的方法在创新点在于使用现有的成熟,也是较为简单的技术,来实现所有的需求。本系统对计算机硬件和软件的要求都不高,只需要一台普通的计算机,安装上办公软件MS Office。通过测试,使用学生的普通笔记本电脑,也可以完美运行该系统。最后,本系统顺利的零差错通过了第十一届中国-东盟教育交流周“中国-东盟大学生旅游形象大使选拔赛”知识问答环节的实践考验。

不足:

当然,本系统在界面设计上仍有许多可以美化的工作可以做,在抽题的算法上,仍有提升的空间,在与观众的互动上,仍需要进一步优化。

参考文献:

[1] 张敏. C/S与B/S混合软件体系结构系统的设计与应用[J].嘉应学院学报: 自然科学, 2013, 31(2): 34-36.

[2] 张友生. 软件体系结构[M]. 北京: 清华大学出版社, 2008.

[3] 维基百科. VBA[EB/OL]. https://en.wikipedia.org/wiki/VBA.

【通联编辑:谢媛媛】

猜你喜欢
互动
手机报面临的发展困境及纾解之道
浅谈粉丝经济与网络造星的互动关系
奥巴马与劳尔本周“互动”