天天看點

基于粒子群算法的組卷系統的研究與實作

摘 要

組卷系統的主要任務是根據使用者的需要用目前資料庫中的試題組成一套符合使用者需求的試卷。随着資料庫與題量增大,傳統采用随機選取和回朔試探法的組卷抽提算法因其抽題時間長,占用的空間複雜度太大,容易陷入死循環而被各種智能抽提算法所代替,其中采用粒子群(PSO)算法來組卷是目前較為先進的一種算法。

本文首先對組卷所要考慮的問題與組卷數學模型進行讨論,通過讨論采用粒子群算法作為組卷抽提算法,在算法試題的難度比例、題型的配比、涵蓋的知識點以及認知層次的比例等參數進行了合理地設計。系統采用SQL SERVER為背景資料庫,以c#.net為開發語言設計并實作本系統。最後通過仿真實驗表明該方法能有效提高組卷抽題效率。

關鍵詞:  粒子群算法 智能組卷 收斂速度

Abstract

The main task of paper-compose system is to compose a copy of test paper which should meet the users’ demand from current database.With the growing database and the amount of subject,traditional way of arithmetic,using random select or backtracking heuristics extraction method,as its select time too long,Space complexity it captures too large,and easily get into endless loop,therefor it was replaced by all kinds of intelligent select algorithm.among these algorithms,PSO algorithms is a currently relatively advanced algorithm.

The article firstly discuss the issues we should consider and paper composition’s mathematical model, by discussing the use of particle swarm optimization algorithm for extraction test paper, the proportion of item difficulty in the algorithm, the ratio of kinds of questions, covering the knowledge points and cognition levels and other parameters were the proportion of rational design. System using SQL SERVER as backend database to C #. NET development language for the design and implementation of the system. Finally, the simulation experiments show that the method can improve the efficiency of extracting and test paper.

Keywords: PSO Intelligent Test Paper Convergence rate

目錄

摘 要 I

Abstract II

  1. 緒論 1

    1.1 研究背景及意義 1

    1.2 國内外目前研究狀态 1

    1.3 本文的工作 4

    1.4 論文結構 4

  2. 智能組卷與粒子群算法概述 5

    2.1 智能組卷概述 5

    2.1.1 組卷問題描述 5

    2.1.2 組卷問題的數學模型 6

    2.1.3 智能組卷算法的選擇 6

    2.2 粒子群算法在組卷系統中的應用 7

    2.2.1 粒子群算法簡介 8

    2.2.2 粒子群算法的基本過程 8

    2.3 粒子群算法應用于組卷系統的原理 11

  3. 智能組卷系統的設計 13

    3.1 需求分析 13

    3.2 系統結構 14

    3.3 資料庫設計 16

    3.3.1 資料描述 16

    3.3.2 概念資料庫設計 16

    3.3.3 邏輯資料庫設計 19

    3.4 智能組卷中試卷參數的确定 21

    3.5 粒子群算法實作智能組卷的關鍵技術 22

    3.5.1 慣性權重的設計 22

    3.5.2 加速因子的确定 22

    3.5.3 粒子群數量的選擇 23

    3.5.4 疊代中止的判定 24

  4. 智能組卷系統的實作 26

    4.1 開發環境和開發工具 26

    4.2 智能組卷系統的主要功能實作 27

    4.2.1 使用者登入子產品的實作 27

    4.2.2 添加題目子產品的實作 27

    4.2.3 題目檢視子產品的實作 28

    4.3 粒子群算法組卷的實作 29

    4.4 組卷系統的應用執行個體 36

    4.4.1 使用者登入 36

    4.4.2 知識點管理 37

    4.4.3 題目管理 39

    4.4.4 智能組卷 41

    4.4.5 現有試卷檢視 42

  5. 結束語 45

    5.1 總結 45

    5.2 展望 46

    參考文獻 47

    緻 謝 49

基于粒子群算法的組卷系統的研究與實作

1.緒論

1.1研究背景及意義

目前,在教育系統中,組卷環節存在的問題十分突出。特别是在中學,反複的測驗和模拟考試都離不開試卷,每次考試為了能出一份難易适中,又能展現對能力和知識點全面考察的試卷,教師需花費相當多的時間和精力。即使如此,也很難保證所出的試卷的科學性、合理性,甚至可能會出現試卷偏難或偏易的現象,達不到預期的考察目标。

在這種背景下,一個基于網際網路的非接觸式、智能型、開放式、跨學科、多層次的通用智能組卷系統應運而生。該系統突破了計算機組卷的随機性設計構架,充分運用人工智能技術解決了包含選擇題、判斷題、填空題、組合題、計算題和證明題等多種題型在内的智能組卷問題,實作了題目錄入、題目管理、試卷管理、試卷分析、手工調整、智能組卷和答案生成等環節的全程微機化和網絡化,為教師的工作提供了極大的便利;同時它與網絡線上考試的無縫連接配接,也使之成為網絡課程不可缺少的一部分。

在當今網絡日益普及的資訊時代,組卷系統滿足了随時随地、友善快捷開展組卷工作的需求。減輕了廣大教師的工作壓力,使他們能有更多的精力投入到教學研究中去。該系統以科學的評價标準為依據,采用能力、難度、知識點多向考察的名額體系,進而保證組卷結果的全面性、科學性,是以具有實際的應用前景。

1.2國内外目前研究狀态

目前,計算機和網絡的應用在各行各業已經很廣泛,尤其是在高校。校園網

的建設己逐漸完善,大多數學生也己經具備了利用網絡進行交流和學習的能力。

但是在教學這個環節中,我們仍然過分依賴于傳統的教學模式,對于網絡的開發

和應用程度遠遠不夠。即使是網絡教學系統,也是大多為靜态、無回報的系統,

很少提供線上考試的功能[1]。

自動組卷系統的研究最早是美國首先于上世紀60年代展開的。計算機輔助

考試(CAT)自誕生以來,經曆了近50年的發展,在國外已經得到了非常廣泛的應

用。國外已經有很多教育和考試機構采用計算機輔助測試進行考試。其中著名的

有美國思而文學習系統有限公司(Sylvan Learning Systems Inc.),在全世界五

大洲一百多個國家和地區有其2000多家考試中心。現在大部分的授證機構均通

過思而文公司對參考者進行測試、評估。這其中有資訊産業中絕大部分計算機公

司的認證考試,還有其他專業的認證考試如醫護人員認證考試,美國飛行員考試

等[2]。80年代,考試系統的應用更一步加大,如美國的TOEFL、GRE和GMAT等考

試均采用了計算機考試系統。在國内對組卷系統也有相當的研究,這其中包括:

南京大學計算機科學與技術系研制了PASCAL題庫系統,高教司的重點項目基于

知識點的成卷系統統用外科軟體[3]等系統。

遺傳算法是霍蘭德(Hol land)于1975年在他的著作{Adaptation in Natural

and Artificial systems》中首次提出。遺傳算法是模仿生物遺傳學和自然選擇

機理,通過人工方式構造的一類優化搜尋算法,是對生物進化過程進行的一種數

學仿真,是進行計算的一種最重要的形式[4]。其算法起源于達爾文的物競天擇、

适者生存規律。随後在世界範圍内引起了廣泛的注意并掀起對其的研究熱潮,其

中Goldberg成果最為顯著。他建立了完整的GA體系,且成功的在搜尋、優化及

機器學習等多領域展開應用。特别是基于遺傳算法的智能組卷系統已經成為計算

機輔助測試的一個重要組成部分。

國外對于自動組卷問題主要采用随機線性規則的組卷算法[5],這種方法在算

法上采用結構化設計,實作簡單,速度快,但應用不靈活。

國内經常采用的是以下幾種政策[6]:

1、優先權政策

優先權政策從數量、題型的平均分數、完成率和累計值與名額值差距四個方

面綜合解決了選題組卷開始階段,由于各項屬性都有較大的取值範圍,名額間的

牽涉問題反映緩慢,伴随着試題增加取值逐漸縮小的沖突。

2、随機抽取政策

随機抽取政策是根據組卷名額随機的抽取試題到試卷,此過程不斷重複,直

到組卷完畢或己無法從題庫中抽取滿足名額的試題為止。這種方法結構簡單,對

于單道題的抽取運作速度較快,但這種方法的效率不高,最主要的問題是要求試

題庫題量大,且要分布良好。用随機法組卷通常需要搜尋一段較長的時間,這對于網絡考試是不可忍受的。随機政策有兩種情況,一是從試題庫中随機抽取試題,

然後判斷是否符合試卷的限制條件。二是從符合試卷某項要求的試題庫子集中随

機抽取試題,然後判斷是否符合試卷的其它限制條件。

3、誤差補償政策

誤差補償政策就是在試題生成過程中當不滿足限制條件時,适當地放松限制

條件,讓試題生成在允許的誤差區域内完成。這種政策在允許一定誤差的前提下

減少不必要的循環搜尋,提高組卷的效率和成功率,解決在實際組卷過程中由于

名額問的互相牽制和試題庫題量的有限性容易使計算機的篩選陷入死循環的問

題。

4、回溯試探政策

回溯法是一種“通用的解題法”。屬于有條件的深度優先算法,對于限制集R

維數小的組卷模型(即組卷名額簡單的試卷)而言,組卷成功率較高。但是這種算

法對記憶體的占用量很大,程式結構相對比較複雜,而且選取試題缺乏随機性,組

卷時間長。按照上面提到的三種方法選取試題,随着選題數的增加、名額間的約

束增大,選出來的試題可能不是最優的,此時回溯法往往是行之有效的,充分利

用這一方法一般都能成功地生成試卷。但是其組卷速度慢,而且難以滿足所有約

束條件[7]。在上面介紹的四種政策雖然對小規模的試題庫有着比較好的性能,但

是對于有上萬道試題的大型題庫存在很大的缺陷,這種缺陷使選題工作具有很大

的盲目性;對組卷名額比較複雜的情況,也不能滿足要求。

5、并行政策

解決組卷問題的困難之處在于對名額問進行互相制約。組卷要求同時滿足的

限制名額越多,實作起來就越困難。并行政策是将組卷名額按層次分為主并發指

标和弱并發名額。在組卷過程中,優先保證主并發名額的平衡,然後對已經滿足

主并發名額的試卷進行調整,使其同時滿足弱并發名額。但也存在着試卷生成後

不能同時滿足多項限制條件的問題。

針對以上各種方法存在的不足之處,有大量學者對上述算法作出了部分改

進:例如雷國雨等對組卷參數進行編碼優化,将限制條件轉化為屏蔽碼和條件碼

完成随機抽取過程[8];張國才等提出的基于分割政策的随機組卷方法[9];王萌、

王曉榮等提出了一種集合随機抽選組卷算法,每次抽題均從滿足抽取條件的試題

集合中選取最優試題[10];郝彥、陳麗燕等充分利用題庫中試題的基本資訊,通過

對題量、試題曆史資訊及知識點分布的調整和控制實作試題的智能篩選[11];金漢

均、鄭世珏等将衆多試題資料進行分段處理,在各段内随機抽取[12]。上述的改進

算法在組卷的效率和成功率有了一定程度的提高,且在一些小規模的組卷系統有

較好的性能表現,但對基于大型題庫的多限制條件下的組卷問題仍顯得力不從

心,缺乏智能性,不能很好的滿足選卷需求。

1.3本文的工作

本文對基于粒子群算法的智能組卷系統進行了研究,主要工作如下:

1、介紹智能組卷問題及其數學模型,并分析智能組卷的主要方法,重點

研究利用粒子群算法進行智能組卷的原理、方法和關鍵技術。

2、針對傳統的粒子群算法應用于組卷系統時容易出現陷入局部最優解等問題,本文對簡單粒子群算法的組卷流程、加速系數等關鍵技術進行了優化設計,并采用帶有線性變化的慣性權重的粒子群算法。

3、基于粒子群算法利用ASP.NET MVC2實作了一個智能組卷系統,主要功能包括使用者登入驗證、添加題目、修改題目、删除題目、添加知識點、修改知識點、删除知識點、曆史試卷浏覽、智能組卷。

1.1.111.11.21.31.4論文結構

本論文共分五部分,各個部分的主要内容如下:

第一部分主要介紹本課題的研究背景,課題的研究意義以及本人的工作和論文的整體結構。

第二部分介紹了智能組卷以及粒子群算法應用于組卷系統的一般原理,分析了文獻中提出的智能組卷中改進粒子群算法的方案。

第三部分詳細論述了智能組卷系統的設計思路,提出了粒子群算法組卷的關鍵技術并且詳細論述了本文對關鍵技術的改進方法。

第四部分給出了智能組卷系統主要功能子產品的實作算法,詳細介紹了使用粒子群算法進行組卷的具體實作方法,并對算法進行了評價。

第五部分主要總結了本課題研究所做的工作,提出存在的問題并對未來的工作進行了展望。

1.

2.智能組卷與粒子群算法概述

智能組卷以其智能性、客觀性等特點在考試組卷中發揮着越來越重要的作用,其中組卷算法是實作智能組卷的關鍵。粒子群算法同遺傳算法類似,是一種基于疊代的優化算法。系統初始化為一組随機解,通過疊代搜尋最優值。但是它沒有遺傳算法用的交叉(crossover)以及變異(mutation),而是粒子在解空間追随最優的粒子進行搜尋。同遺傳算法比較,PSO的優勢在于簡單容易實作并且沒有許多參數需要調整,能很好地滿足自動組卷的要求。本部分首先對組卷問題進行描述,并對智能組卷的主要方法進行分析和評述;然後重點介紹利用粒子群算法進行組卷的基本原理以及關鍵技術。

1.1.2.122.1智能組卷概述

122.11.2.2.12.1.1組卷問題描述

智能組卷是按照教師和教學的要求,由計算機自動從試題庫中選擇試題,組成符合要求的試卷,它是考試系統智能化或半智能化操作的核心目标之一,是計算機輔助教學的重要組成部分。智能組卷系統首先需要調用相應的組卷政策,設計出符合使用者要求和一定限制條件的試卷模式,然後再按試卷模式選取試題組成試卷。組卷過程是在題目分數、難度系數、試題覆寫面、題型比例等限制都滿足的條件下,根據經驗和考試目的,通過對不同的知識點賦予恰當的題型組合,由計算機從題庫中抽出合适的題目組成試卷。組卷問題是一個多重限制條件下的組合優化問題,組卷政策的優劣直接影響着組卷系統的性能。智能組卷涉及組卷模型群組卷方法兩個方面的内容。在智能組卷中如何保證生成的試卷能最大程度地滿足使用者的不同需要,并具有随機性、科學性、合理性等特點是系統設計和實作的關鍵所在。尤其在互動式環境下使用者對于組卷速度、題目多樣性、試卷合理性等要求較高,而一個理論上較完美的算法可能會以犧牲時間作為代價,往往還不能達到預期的效果。是以,一個良好的組卷系統對于考生考試來說起着非常重要的作用,而選擇一個高效、科學、合理的算法是實作智能組卷的關鍵。

1.2.2.12.1.12.1.2組卷問題的數學模型

抽題時使用者會對試卷品質提出多方面的要求,如總題量、題型比例、章節比例、知識點分布、難度系數、分數分布等.需要建立滿足上述條件的試題資料庫,每道試題都應該具有5個參數:①題号.試題資料庫索引;②内容要求.試題考察知識點所屬的章節;③題型.以某種方式來進行考察,一般分為判斷題、填空題、選擇題、回答題、計算題、證明題;④難度.試題中每道試題的相對難易程度;⑤分數.本題的滿分值,試題中所有試題的分數總和為該試題的滿分.一道試題主要由上述5個因素決定,其中題号是直接進行編碼的資訊.一道試題可以作為試題庫中一個具體的對象,其有5個私有成員O(x1,x2,x3,x4,x5),對于一套試卷(如n道試題),可以表示為

基于粒子群算法的組卷系統的研究與實作

抽題政策實際上可以轉換為一個問題求解中的目标狀态矩陣,而相應的限制可以表示為:

基于粒子群算法的組卷系統的研究與實作

式中:r,A,m分别為考試課程章節總數、試卷總分數(通常是100分)和考試涉及的所有題型總數;i=1,2,……,n。由此,可以将抽題轉換為一個具有多重限制的目标優化求解問題。

1.2.2.12.1.12.1.22.1.3智能組卷算法的選擇

智能組卷是保證生成的試卷能最大程度的滿足不同使用者的不同需要,并具有随機性、科學性、合理性、精确性,這是實作中的一個難點,也是考試系統自動化或半自動化操作的核心目标之一。尤其在互動式環境下使用者對于組卷速度要求較高,而一個理論上較完美的算法可能會以犧牲時間作為代價.往往不能達到預期的效果。是以,選擇一個高效、科學、合理的算法是自動組卷的關鍵。以往的自動組卷系統大多采用随機選取法和回溯試探法和遺傳算法随機 選取法根據狀态空間的控制名額,由計算機随機的抽取一道試題放入試題庫,此過程不斷重複,直到組卷完畢,或已無法從題庫中抽取滿足控制名額的i句為止。該方法結構簡單,對于單道題的抽取運作速度較快,但對于整個組卷過程來說組卷成功率低。即使組卷成功,花費時間也較長,尤其是當題庫中各狀态類型平均出題量較低時,組卷往往以失敗而告終。回溯試探法這是将随機選取法産生的每一狀态類型紀錄下來,當搜尋失敗時釋放上次紀錄的狀态類型,然後再依據一定的規律,變換一種新的狀态類型進行試探,通過不斷的回溯試探直到試卷生成完畢或退回出發點為止。但是在實際到一個應用時發現這種算法對記憶體的占用量很大,程式結構相對比較複雜,而且選取試題缺乏随機性,組卷時間長,後兩點是使用者無法接受的,是以它也不是一種很好的用來自動組卷的算法。遺傳算法(GeneticAlgorithms)以其具有自适應全局尋優和智能搜尋技術,并且收斂性好的特性能很好地l茜足自動考試組卷的要求。但是遺傳算法需要複雜的許多參數需要調整,搜尋不夠精确,我們引進粒子群優化算法(PSO),系統初始化為一組随機解,通過疊代搜尋最優值。優勢在于簡單容易實作,并且沒有許多參數需要調整。目前已廣泛應用于函數優化,神經網絡訓練,模糊系統控制以及其他遺傳算法的應用領域,本研究就是把此算法應用于智能組卷系統。

2.2粒子群算法在組卷系統中的應用

粒子群算法,也稱粒子群優化算法(Partical Swarm Optimization),縮寫為PSO, 是近年來發展起來的一種新的進化算法((Evolu2tionary Algorithm - EA)。PSO 算法屬于進化算法的一種,和遺傳算法相似,它也是從随機解出發,通過疊代尋找最優解,它也是通過适應度來評價解的品質,但它比遺傳算法規則更為簡單,它沒有遺傳算法的“交叉”(Crossover) 和“變異”(Mutation) 操作,它通過追随目前搜尋到的最優值來尋找全局最優。這種算法以其實作容易、精度高、收斂快等優點引起了學術界的重視,并且在解決實際問題中展示了其優越性。目前已廣泛應用于函數優化,神經網絡訓練,模糊系統控制以及其他遺傳算法的應用領域。

2.2.1粒子群算法簡介

從20世紀90年代初,就産生了模拟自然生物群體(swarm)行為的優化技術。Dorigo等從生物進化的機理中受到啟發,通過模拟螞蟻的尋徑行為,提出了蟻群優化方法;Eberhart和Kennedy于1995年提出的粒子群優化算法是基于對鳥群、魚群的模拟。這些研究可以稱為群體智能( swarmintelligence)。通常單個自然生物并不是智能的,但是整個生物群體卻表現出處理複雜問題的能力,群體智能就是這些團體行為在人工智能問題中的應用。粒子群優化(PSO) 最初是處理連續優化問題的,目前其應用已擴充到組合優化問題[1 ]。由于其簡單、有效的特點, PSO已經得到了衆多學者的重視和研究。

粒子群優化算法是基于群體的演化算法, 其思想來源于人工生命和演化計算理論。Reynolds 對鳥群飛行的研究發現, 鳥僅僅是追蹤它有限數量的鄰居, 但最終的整體結果是整個鳥群好像在一個中心的控制之下, 即複雜的全局行為是由簡單規則的互相作用引起的。PSO 即源于對鳥群捕食行為的研究, 一群鳥在随機搜尋食物, 如果這個區域裡隻有一塊食物, 那麼找到食物的最簡單有效的政策就是搜尋目前離食物最近的鳥的周圍區域。PSO 算法就是從這種模型中得到啟示而産生的, 并用于解決優化問題。另外, 人們通常是以他們自己及他人的經驗來作為決策的依據, 這就構成了PSO 的一個基本概念。PSO 求解優化問題時, 問題的解對應于搜尋空間中一隻鳥的位置, 稱這些鳥為“粒子”(particle) 或“主體” (agent) 。每個粒子都有自己的位置和速度(決定飛行的方向和距離) , 還有一個由被優化函數決定的适應值。各個粒子記憶、追随目前的最優粒子, 在解空間中搜尋。每次疊代的過程不是完全随機的, 如果找到較好解, 将會以此為依據來尋找下一個解。

2.2.2粒子群算法的基本過程

令PSO初始化為一群随機粒子(随機解),在每一次疊代中,粒子通過跟蹤兩個“極值”來更新自己:第一個就是粒子本身所找到的最好解,叫做個體極值點(用pbest 表示其位置),全局版PSO中的另一個極值點是整個種群目前找到的最好解,稱為全局極值點(用gbest表示其位置),而局部版PSO不用整個種群而是用其中一部分作為粒子的鄰居,所有鄰居中的最好解就是局部極值點(用lbest表示其位置)。在找到這兩個最好解後,粒子根據如下的式(1)和式(2)來更新自己的速度和位置。粒子i 的資訊可以用D 維向量表示, 位置表示為Xi = ( Xi1 , Xi2 , . . . , XiD) T , 速度為Vi =( Vi1 , Vi2 , . . . , ViD) T , 其他向量類似。則速度和位置更新方程為

基于粒子群算法的組卷系統的研究與實作

Vkid是粒子i在第k次疊代中第d 維的速度; c1 , c2是加速系數(或稱學習因子) ,分别調節向全局最好粒子和個體最好粒子方向飛行的最大步長, 若太小, 則粒子可能遠離目标區域, 若太大則會導緻突然向目标區域飛去, 或飛過目标區域[2 ] 。合适的c1 , c2 可以加快收斂且不易陷入局部最優, 通常令c1 = c2 = 2 ; rand1 ,2 是[ 0 , 1 ] 之間的随機數;Xkid是粒子i 在第k 次疊代中第d 維的目前位置; pbest id是粒子i 在第d 維的個體極值點的位置(即坐标) ; gbest d 是整個群在第d 維的全局極值點的位置。為防止粒子遠離搜尋空間, 粒子的每一維速度v d 都會被鉗位在[ - Vd max , + Vd max ] 之間,Vd max太大, 粒子将飛離最好解, 太小将會陷入局部最優[2]。假設将搜尋空間的第d 維定義為區間[ - Xd max , + Xd max ] , 則通常Vd max = kx d max , 011≤k ≤110 , 每一維都用相同的設定方法。基本PSO 的流程可以描述為:

Step 1 初始化初始搜尋點的位置X0i及其速度V0i通常是在允許的範圍内随機産生的, 每個粒子的pbest坐标設定為其目前位置,且計算出其相應的個體極值(即個體極值點的适應度值) , 而全局極值(即全局極值點的适應度值) 就是個體極值中最好的, 記錄該最好值的粒子序号, 并将gbest設定為該最好粒子的目前位置。

Step 2 評價每一個粒子計算粒子的适應度值, 如果好于該粒子目前的個體極值, 則将pbest設定為該粒子的位置, 且更新個體極值。如果所有粒子的個體極值中最好的好于目前的全局極值,則将gbest設定為該粒子的位置,記錄該粒子的序号,且更新全局極值。

Step 3 粒子的更新用式(1)和式(2)對每一個粒子的速度和位置進行更新。

Step 4 檢驗是否符合結束條件,如果目前的疊代次數達到了預先設定的最大次數(或達到最小錯誤要求) , 則停止疊代, 輸出最優解, 否則轉到Step 2 。

PSO 的一些特點:

  1. 基本PSO 算法最初是處理連續優化問題的。
  2. 類似于遺傳算法(GA) PSO也是多點搜尋。

    3 ) 式(1)的第一項對應多樣化 (diversification)的特點,第二項、第三項對應于搜尋過程的集中化(intensification)特點,是以這個方法在多樣化和集中化之間建立均衡[1]。

    PSO有全局版和局部版兩種,全局版收斂快,但有時會陷入局部最優。局部版PSO 通過保持多個吸引子來避免早熟,假設每一個粒子在大小l的鄰域内定義為一個集合

    基于粒子群算法的組卷系統的研究與實作

    從Ni中選出最好的,将其位置作為lbest代替公式中的gbest,其他與全局版PSO相同。實驗表明,局部版比全局版收斂慢,但不容易陷入局部最優[3]。在實際應用中,可以先用全局PSO找到大緻的結果,再用局部PSO進行搜尋。

    PSO的程式僞代碼如下:

    For each particle

    Initialize particle

    END

    Do

    For each particle

    Calculate fitness value

    If the fitness value is better than the best fitness value (pBest) in history

    set current value as the new pBest

    End

    Choose the particle with the best fitness value of all the particles as the gBest

    For each particle

    Calculate particle velocity according equation (a)

    Update particle position according equation (b)

    End

    While maximum iterations or minimum error criteria is not attained

    1.2.2.12.22.2.12.2.22.3粒子群算法應用于組卷系統的原理

    使用者在組卷時會有一些試卷的要求,例如題型、題目數量、各難度所占分值、各知識點所占分值等。當由使用者填寫完這些條件後,粒子群先初始化一群随機粒子,然後将每個粒子裡的值和使用者所填的數值代入适應度函數裡分别計算适應值,在疊代次數裡不斷地尋找适應值最小的,然後同時更新其他粒子的位置。最後找出的值将會是最接近使用者所要求的結果。具體流程如下圖所示:

    基于粒子群算法的組卷系統的研究與實作

    3.智能組卷系統的設計

    3.1需求分析

    本系統是為了節約教師日常教學所花費的時間而開發的,下面從三個方面分析系統的需求:

    首先,為了提高教學品質,檢驗教學成果,出于一個教師擔任多個專業的授課,這些專業雖然有些課程的設定相同,但課程要求以及考試的難度都有一定的差别。是以考試組卷時,針對不同的專業一門課程有時需要根據知識點和難度等條件的不同出幾份試卷,教師感到出卷考試的吃力及時間的浪費,急需采用一種更加科學更加便捷的組卷方式;

    其次,教學中存在着多名教師講授同一門課程的情況,考試采用人工組卷時,由于每個教師對所教課程的了解不一樣,每個教師所出的題目都有各自的側重點,這樣不能很好地考查學生對該課程的掌握程度,也會影響到考試的公平與公正性,不利于檢驗和提高教學品質;

    再次,為了滿足考試公平性的需要,考試組卷時有時需要組出幾份名額相同,但題目的内容不同或者題目的順序不同的可比性試卷,這樣可以有效地杜絕考試作弊現象。

    正是基于上述多方面的需求考慮,本人設計了這個智能組卷系統,希望能夠友善教學的考試組卷環節。本系統總體上應該滿足如下原則:

    1.通用性。由于系統要面向學校幾乎所有專業,要求類似的所有課程均能使用,并能夠按課程管理。

    2.靈活性。有些方面的設定會随着教學的發展而改變,為了使系統能适應這些改變而不用開發不必要的新版本,是以要求對一些項目的設定可以根據需要進行更改。如:知識點的劃分、試題難度分類、題型、試卷分值等。

    3.易用性。好的界面是一個實用系統成功的條件之一。由于使用者與界面需要直接互動,使用者操作界面同樣會影響使用者的工作效率,是以要求界面設定合理、功能設定切合實際需要,操作簡單,一看就知道如何上手使用。

    4.穩定性。本系統基于B/S模式,其運作需要多方面的支援,例如Web伺服器,資料庫伺服器及用戶端的浏覽器,這就要求伺服器的搭建,以保證運作穩定,使用流暢。

    1.2.3.3.13.1.13.2系統結構

    智能組卷系統可以友善授課教師出題,使辦公電子化、自動化,采用這套系統後,既大大提高了教師的工作效率,又保證了所出試題的公平性和準确性。本系統采用B/S結構,将使用者界面、功能子產品與資料分層處理,這樣既可以減少子系統間的互相依賴性,降低了編碼的複雜性,同時也便于将來使用者的功能擴充,更有利于系統的維護。系統的總體結構如圖3-1所示。

    。。。。。。。。。。。。。。

    。。。。。。。。。。。。。。。

    基于粒子群算法的組卷系統的研究與實作

。。。。。。。。。。。。。。。。。。。。。。。

論文全部下載下傳位址:點選連結》》》》

繼續閱讀