自适应考试系统中能力评估

开发一套自适应考试系统,除了建立题库,按照一套理论(算法)来选题及进行能力的评估也是很重要的组成部分。自适应考试系统,粗浅一些的采用自定义规则,而严格一些的一般会选用“项目反应理论”来作为基础算法。假设,题库已经建立完成,现在需要对测试者进行评分,从而区分测试者。

       假设现在题库分10个等级的选择题,测试方法有做20题,40题,60题与80题。需要在测试者答完题后进行评分,以区分测试的能力水*。

一、  自定义规则的讨论

自定义规则最简单的莫过于答对1题,则抽取下一等级题目,一直到答对10级题目。反之亦然。这样的测试在二维坐标上可以绘制为一条直线。很明显,这种测试的效果并不好。同理,答对3道题升1级与这也没有太大区别。但是这种方法开发成本低廉,还是很有市场的。答对N道题升级,答对M道题降级(一般N != M),还是能对升降机制进行一定的控制。

       我开发系统的过程中发现,用户答对答错*乎*衡的时候,基本为用户的大致水*(有兴趣可以测试一下 http://super.yeshj.com/en   http://super.yeshj.com/jp )。上面的设定也是这两套系统中的设定。用户进入系统,会默认用户为3级。根据用户答对答错,进行级别的升降。如果连续答对,那么会按照很快速度(可以理解为x^-NN < 0  x < 0的速度)往上增长,同样,当答错时,也会很快速(可以理解为x^-NN > 0  x>0 的速度)往下回落。级别将固定在测试在对与错中间徘徊时候的等级(可以理解为sin(x))。总是保证,做完20题有可能升到最高级。

       有其它更好做法的朋友,可以交流一下。

二、  项目反应理论

项目反应理论一共有3个公式:

1、  p(i) = 1/(1+e^-D(i-b))  (单参数模式)

2、  p(i) = 1/(1+e^-Da(i-b))  (双参数模式)

3、  p(i) = c + (1-c)1/(1+e^-Da(i-b)) (三参数模式)

D=1.702是个常量,i为测试者能力,a为题目区分度,b表示题目难度,c表示题目的猜测系数。

 

       从中可以看出,单参数模式不涉及题目区分度(a)与猜测系数(c),双参数模式不涉及猜测系数(c)。如果现在题库是选择题,这两个公式显然都不适合。如果题目有4个选项,那么猜测系数应该是25%

       如果按照这个理论来开发,系统的算法就会很复杂了。计算i的值,计算a的值都是很有挑战性的工作。单参数模式中,当能力值与难度相当的时候,答对概率是50%。而假设区分度是1,在三参数模型中,这个概率提高到了0.625。而在能力大于难度的时候,e的指数就是负值(难度系数数值越大,则难度越大),而答对概率也会提升。只有当能力减去难度趋*于无穷大的时候,p(i)才会等于1

       按照这套理论,假如进入系统时设定用户能力为0.3(这里采用设定能力与当前题目难度相等的做法,能有效减轻工作量),同时采用3级题库,难度为0.3。这里不自动计算区分度,设定区分度为1。那么用户答N题,正确率在M以上就可以进入下一级。同时把能力设定为下一个级别,一直到答完设定题目。

 

       对项目反应理论感兴趣的朋友,可以去网上查找这方面的资料。这里只作了部分简单介绍。

posted @ 2009-02-12 16:55  Birdshover  阅读(2738)  评论(2编辑  收藏  举报