趙杰
摘要:組卷問題需要在特定的約束條件下對(duì)多個(gè)目標(biāo)參數(shù)進(jìn)行科學(xué)的優(yōu)化,應(yīng)用傳統(tǒng)的數(shù)學(xué)方法將十分困難。針對(duì)自動(dòng)組卷系統(tǒng)而言,其應(yīng)用效率與試題庫(kù)設(shè)計(jì)和題目抽取算法有著直接的關(guān)系,遺傳算法體現(xiàn)出較大的優(yōu)勢(shì),遺傳算法是一種通過模擬生物界自然選擇和遺傳變異的機(jī)制來求解復(fù)雜問題的隨機(jī)搜索和優(yōu)化的方法。本文結(jié)合遺傳算法的原理,對(duì)自定組卷問題的數(shù)學(xué)模型進(jìn)行了分析,提出了系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)方法。
關(guān)鍵詞:自動(dòng)組卷 遺傳算法 研究和應(yīng)用
中圖分類號(hào):TP311.52 文獻(xiàn)識(shí)別碼:A 文章編號(hào):1007-9416(2016)05-0000-00
1 遺傳算法的原理
遺傳算法應(yīng)用,以自然遺傳學(xué)為基礎(chǔ),結(jié)合群體進(jìn)化理論,對(duì)群體中所有備選解進(jìn)行最優(yōu)選擇,通過交叉和變異等迭代運(yùn)算,尋找滿意解,每一次迭代稱為一代,之后對(duì)函數(shù)進(jìn)行評(píng)價(jià)后保留一部分染色體進(jìn)入到下一代,借助遺傳算子補(bǔ)充染色體,最后得出最優(yōu)的群體,實(shí)現(xiàn)問題的求解。[1]
2 自動(dòng)組卷的數(shù)學(xué)模型
自動(dòng)組卷過程中需要從相應(yīng)的試題庫(kù)中找出滿足約束條件的試題組成試卷。例如一份試卷中有m道試題,不同的試題有n個(gè)屬性,生成試卷過程矩陣為m×n即:
其中S表示目標(biāo)矩陣,S必須滿足以下約束條件:
試卷總分約束,即,其中ai2表示第i道試題的分值,S為總分,默認(rèn)試卷滿分100分。
題型分值約束,,其中Tt表示第t中題型的分?jǐn)?shù),C1i表示單項(xiàng)選擇、多項(xiàng)選擇或者計(jì)算等題型,t表示題型號(hào)。
章節(jié)分值約束,,其中Zt表示第t章中要求的分?jǐn)?shù),t表示章節(jié)號(hào)。
知識(shí)點(diǎn)分值約束,,其中ZSt表示第t個(gè)知識(shí)點(diǎn)的分值,t表示知識(shí)點(diǎn)號(hào)。
難度約束,,其中ai4表示第i道試題的難度,S′表示試卷的總分值。
3 群體初始化
結(jié)合試卷內(nèi)容和不同題型的數(shù)量,保證一份試卷中知識(shí)點(diǎn)不重復(fù),之后隨即生成初始群體p(0),群體規(guī)模為P,P值取為50-100,方案如下。
public class Unit
{
public Unit()
{
ID = 0;
AdaptationDegree = 0.00;
KPCoverage = 0.00;
ProblemList = new List
}
public double Difficulty
{
get
{
double diff = 0.00;
ProblemList.ForEach(delegate(Problem p)
{
diff += p.Difficulty * p.Score;
});
return diff / SumScore;
}
}
///
public int ProblemCount
{
get
{
return ProblemList.Count;
}
}
///
public int SumScore
{
get
{
int sum = 0;
ProblemList.ForEach(delegate(Problem p)
{
sum += p.Score;
});
return sum;
}
}
public double KPCoverage { get; set; }
///
public List
}
4結(jié)語(yǔ)
自動(dòng)組卷問題需要滿足多個(gè)約束條件,是一種的典型的多目標(biāo)求解問題,將組卷系統(tǒng)應(yīng)用于實(shí)際教學(xué),有利于解決組卷難題,獲得良好的教學(xué)效果。
參考文獻(xiàn)
[1]陳曉東.一種基于改進(jìn)遺傳算法的組卷算法[J].哈爾濱工業(yè)大學(xué)學(xué)報(bào),2014,37(9):117.
[2]魏平,熊偉清.用遺傳算法解組卷問題的設(shè)計(jì)與實(shí)現(xiàn)[J].微電子學(xué)與計(jì)算機(jī),2011,19(4):48.