首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
计算机自适应题库实现
来源:本站整理  作者:佚名  2011-07-14 15:40:18



  (1) 计算一阶导数的函数

  yijiedaoshu(parameters para[ ],integer j, integer n),返回 double 类型的值。其中parameters{ double a,double b,double c,double  ability,double  u}是一个结构体,由某试题的三质量参数a、b、c、应试者当前能力值 ability和做题情况u 组成。

  该函数的功能是计算对某试题的第j次迭代的一阶导数,用于计算具备初始能力值ability的受测者的真实能力值。实现代码如下:

  double result;

  int i;

  for i=1 to n

  result +=  para[i].a * (para[i].u - calculate(para[i].  a,para[i].b,para[i].c,para[i].ability)) & * (calculate

  (para[i].a,para[i].b,para[i].c,para[i].ability) - para  [i].c)

  next i

  if (calculate(para[j].a,para[j].b,para[j].c,para[j].ability))

  * (1 - para[j].c) <> 0 then result = (1.702 *

  result) / (calculate(para[j].a,para[j].b,para[j].c,para [j].ability)) & *(1 - para[j].c);

  else

  MessageBox(“错误提示”,“错误编号:005~r~n计算错误!程序终止!”);

  halt;

  end if

  // 第j次迭代一阶导

  return result

  (2) 计算概率的函数

  calculate(double a ,double b, double c,double ability),返回double 类型的值。

  该函数的功能是计算某试题被答对的概率。实现代码如下:

  double resultnum,mid;

  mid= - 1.702*a*(ability - b);

  if (1+exp(mid)) < > 0 then

  resultnum=(1 - c)/(1+exp(mid))+c;

  else

  MessageBox(“错误提示”,“错误编号:

  006~r~n计算 错误!程序终止

  !”);

  halt;

  end if

  return resultnum;

  (3) 计算信息函数

  information(parameters para[],integer j, double  ability),返回double类型的值。

  该函数的功能是用来计算某试题的信息量,用来为具备ability初始能力值的应试者选择合适的下一道试题。实现代码如下:

  double result=0

  result = (1.702 * 1.702 * para[j].a * para[j].a) * (1 -

  para[j].c);

  if ((para[j].c + exp(1.702 * para[j].a * ((1 - (calculate

  (para[j].a,para[j].b,para[j].c,ability)) &-para[j].b))))* (1 + exp(- 1.702 * para[j].a * (1 -

  (calculate(para[j].a,para[j].b,para[j].c,ability)) & - para[j].b))) * (1 + exp(- 1.702 * para[j].a * (1 -

  (calculate(para[j].a,para[j].b,para[j].c,ability)) &- para[j].b)))) < > 0 then

  result=result/((para[j].c+exp(1.702*para[j].a*((1-(calcu- late(para[j].a,para[j].b,para[j].c,&

  ability))-para[j].b))))*(1+exp(-1.702*para[j].a*(1 - (calculate(para[j].a,para[j].b,para[j].c,&

  ability))-para[j].b)))*(1+exp(-1.702*para[j].a * (1 -  (calculate(para[j].a,para[j].b,para[j].c,&

  ability)) - para[j].b))))

  else

  MessageBox(“错误提示”,“错误编号:007~r~n计算错误!程序终止!”);

  halt;

  end if

  return result

  本计算机自适应题库以经典测量理论和项目反应理论为基础,采用Newton-Raphson迭代法,解决了基于IRT的考试系统建设中出现的系统题库建设的最大难题。
 

上一页  [1] [2] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:111,093.80000 毫秒