論文:基於遺傳演算法的電工學組卷程式的研究

論文:基於遺傳演算法的電工學組卷程式的研究

  摘要:電工學是非電類工科學生的重要基礎課程。由於手工命題出卷存在難度不一,試題分佈不盡合理和出卷工作繁重等問題,開發了電工學組卷程式。組卷程式可以根據不同的教學內容選擇試題範圍、試題形式、題目分值和計算題的知識點,採用遺傳演算法從試題庫中選擇合適的試題,給出試卷和答卷。經試用後表明該組卷程式的介面簡潔,操作簡單,能滿足課程的要求。

  教育期刊網

  關鍵詞 :組卷程式;電工學;遺傳演算法;試題選擇

  中圖分類號:TN710?34;TP301.6 文獻標識碼:A 文章編號:1004?373X(2015)20?0078?03

  Study on electrotechnics test?paper combination program based on genetic algorithmU Genzhong,LI Jianqing

  (College of Information Engineering,Zhejiang University of Technology,Hangzhou 310023,China)

  Abstract:Electrotechnics is an important basic course for non?electrical engineering students. To solve the problems of un?equal difficulty,unreasonable distribution of test questions and heavy ork by traditional manual test paper setting,an electro?technics test?paper combination program as designed,hich can choose the type and range of test,subject score and knoledgeof questions according to different teaching contents. The test paper and anser sheet are selected from test database base on ge?netic algorithm to produce the test paper and anser sheet. The results sho that the program has the advantages of concise inter?face and easy operation to meet the requirements of the course.

  Keyords:test paper combination program;electrotechnics;genetic algorithm;item selection

  0 引言

  電工學對於非電類工科學生,特別是機電一體化、機自、化自等專業的學生來說是一門非常重要的課程,電工學課程一般分為電工技術基礎和電子技術基礎兩部分。課程考試模式的改革一直是高校教學改革的重點之一。傳統的考試模式通常都是由任課教師輪流命題出卷,由於是人工出卷在試卷的難度、卷面的考題分佈、題型分配和評分標準等各方面都會帶來一定的主觀隨意性和不確定性,也難以真正實現考教分離1?2]。組卷程式的開發是解決上述問題的有效方法之一,它不僅可以讓教師從繁重的出卷工作中解脫出來,防止試卷的題目偏離教學大綱,試卷難易程度相差較大,題型變化多等問題的出現,同時也可以促使學生全面學習,提高學習的主動性,還有利於提高考試成績的真實性和可比性。因此組卷程式的開發越來越受到各類高校的重視。

  1 組卷系統要求

  電工學組卷程式主要面向電工學這門課程。目前我校的電工學課程分為電工技術基礎(1~7 章)和電子技術基礎(8~14章)兩部分,分上下兩個學期授課,總計104 學時,採用的教材是顧偉駟老師主編的《現代電工學》(第2版)3]。根據我校的實際教學情況,要求組卷程式能根據不同的教學內容生成相應的試卷,如果是第一學期的考卷,系統將從1~7章中選擇題目生成試卷,如果是第二學期,系統將從8~14章中選擇題目生成試卷4]。在設計組卷程式時,需要考慮的約束條件主要有:試卷難度、試卷總分、知識點的分佈、各種題型比例、試題出現的頻次以及考試時間等,教師可以根據這些引數,生成一份符合教學大綱要求的、科學的試卷。在題型上設定了填空題、選擇題、判斷題、簡答題和計算題等5種類型4],教師可以透過自動組卷介面選擇相應的題型和對應數量。在分數設定上,每一種題型都可以設定相應的分數,在生成試卷時,每一題的分數隨試題列印在試題上。在難易程度方面透過兩方面加以保證:整份試卷有一個總體難度係數;每一個計算題又都單獨設定了難度係數和知識點範圍。透過這些選項可以保證試題的範圍不會超綱,難度可控,保證了考卷的質量。

  2 組卷系統功能

  組卷系統主要有註冊、登陸、新增試題、刪除試題、查詢試題、修改試題、試題查詢、自動組卷、手工組卷和下載試題等功能,其功能簡介如下:

  (1)註冊:使用者填寫個人資訊,如使用者名稱、密碼等;

  (2)登陸:可以根據已註冊的使用者名稱和密碼登入到系統中;

  (3)試題匯入:實現單個試題和批次試題的匯入;

  (4)修改試題:對試題庫中的試題內容和試題資訊進行修改;

  (5)試題刪除:把試題從資料庫中刪除;

  (6)試題查詢:對試題庫中試題內容和試題資訊進行檢視;

  (7)自動組卷:使用者在介面上設定相應的引數,如難度、章節、題型等,組卷程式根據使用者的輸入需求,透過一定的演算法從資料庫中查找出符合要求的題目,並把這些題目組成一份試卷;

  (8)手工組卷:使用者在試題庫中手動選擇試題,最後生成試卷;

  (9)下載試題和答案:使用者可以將生成的試卷和答案進行下載。

  3 資料庫

  根據上述組卷程式的約束條件和功能,在資料庫中需要對使用者資訊、試題資訊和試題答案等設定相應的資料庫表。下面列出組卷程式中用到的資料庫表及結構。

  (1)教師資訊表。教師資訊表有4個欄位,分別表示教師編號、教師使用者名稱、密碼和許可權。教師資訊表字段展示如表1所示。

  (2)試題資訊表。試題資訊表共有9個欄位,分別表示題目編號、題目型別、所屬單元、單元內編號、難度、被抽中次數、題目文字篇幅、答案文字篇幅和題目分數。題目資訊表的欄位展示如表2所示。

  (3)試題答案表。試題答案表由3個欄位組成,分別為試題編號、試題內容和答案內容。試題答案表字段展示如表3所示。

  4 組卷引數屬性

  在組捲過程中,需要根據使用者輸入的組卷條件即各種試卷引數,將這些資訊傳到後臺,經過一系列的計算,再由系統選擇出符合組卷要求的試卷並將其以ord文件輸出。一份試卷的質量好壞,主要體現在試卷的題型、難度、重複率、知識點的覆蓋面等幾方面。其中難度又分為試卷的總體難度以及每一道試題的難度。一份試卷是由各種題目組成的,試卷的質量是根據試題的屬性來綜合決定的。

  (1)試題屬性。對於一道試題一般有如下的屬性:章節、難度、分值、要求、題型等。本系統涉及到的試題的屬性如表4所示。

  (2)試卷屬性。組卷的試卷屬性包括:試卷編號、難度分佈、覆蓋度和被抽中次數。本系統涉及組卷的試卷屬性如表5所示。

  5 遺傳演算法

  組卷程式的質量也取決於其演算法。目前組卷程式中常用演算法有:遺傳演算法、模擬退火遺傳演算法、定性對映方法、智慧補償法、隨機抽取法、回溯試探法等5],各種方法各有其優缺點,本組卷程式中採用了遺傳演算法。遺傳演算法的操作步驟為根據相應條件編碼、隨機產生一個初始種群、構建適應度函式、對這個初始種群迭代執行選擇、交叉、變異等操作產生下一代種群,最終獲得最優解和解碼。演算法的過程如圖1所示。

  下面對遺傳演算法中的適應度函式設計和選擇運算元的方法進行說明。

  (1)適應度函式的設計。適應度函式對遺傳演算法的.收斂速度以及能否找到最優解有直接的影響,同時遺傳演算法的複雜度主要由適應度函式的複雜程度決定。考慮到組卷程式的實際情況,適應度函式應儘可能簡單。

  (2)選擇運算元。在遺傳演算法中需要按照一定的選擇機率對種群進行復制,一般情況下選擇適應度較好的個體生成下一代。為保證種群的多樣性,適應度較差的個體也可能被選中,本系統中選擇運算元採用輪盤賭演算法。個體的相對適應度計算公式為:式中:size 為種群大小;f 為個體適應度;Qi 為相對適應度。

  6 組卷程式介面

  根據上述的要求和演算法,最後得到的組卷程式的介面見圖2,圖3。使用者在圖2所示的自動組卷介面中選擇難度、題型和分值後點擊“開始組卷”,就能實現自動組卷。

  在圖2介面的左下角點選“電工學1”右側的“展開”或“電工學2”右側的“展開”,可以進一步得到如圖3所示的知識點展開介面,對試卷範圍進行更具體的選擇。

  7 結語

  透過多次的試驗和修改,該組卷系統實現了預定的功能,透過該組卷程式自動生成試卷能選擇試題的題型和分值,還能指定在某個章節中安排計算題,使得試卷能更大程度地符合出卷教師的意願。

最近訪問