田剛 中共陜西省委黨校(陜西行政學(xué)院)
解決課程安排問題通過對(duì)國內(nèi)外現(xiàn)狀的分析只能采用近似算法,下面對(duì)動(dòng)態(tài)規(guī)劃、貪心算法和回溯法的設(shè)計(jì)思想進(jìn)行介紹并對(duì)算法使用效果進(jìn)行了比較分析。
動(dòng)態(tài)規(guī)劃法是定義一個(gè)最優(yōu)函數(shù),按樹形結(jié)構(gòu)從根節(jié)點(diǎn)開始自頂向下定義最優(yōu)解直到可以直接求出其解的子問題;自底向上尋找最優(yōu)子結(jié)構(gòu)并記錄最優(yōu)子問題信息。
設(shè)計(jì)一個(gè)動(dòng)態(tài)規(guī)劃算法,通常可按以下幾個(gè)步驟進(jìn)行:
1.分析最優(yōu)解的性質(zhì)及最優(yōu)子結(jié)構(gòu);
2.遞歸的定義最優(yōu)解;
3.自底向上計(jì)算最優(yōu)解并記錄相關(guān)信息;
4.根據(jù)記錄的相關(guān)信息,構(gòu)造問題最優(yōu)解。
貪心算法是根據(jù)一種策略加快問題求解的過程,使其盡快給出一個(gè)問題的解作出在當(dāng)前看來最好的選擇。貪心策略對(duì)問題的求解并不能給出問題的整體最優(yōu)解,只考慮在局部狀態(tài)下的最優(yōu)選擇。雖然貪心算法不能對(duì)所有問題的整體最優(yōu)解做出選擇,但在一定范圍內(nèi),在確定有效貪心策略基礎(chǔ)上可以產(chǎn)生問題全局最優(yōu)解。典型的貪心算法應(yīng)用實(shí)例,如求解有向網(wǎng)單源最短路徑問題的Dijkstra算法、最小生成樹問題等等。在一些情況下,使用貪心算法可以獲得問題的基本最優(yōu)解。
回溯法是常用的求解問題方法之一,需定義約束函數(shù)和目標(biāo)函數(shù),回溯法是一個(gè)按照約束條件進(jìn)行深度優(yōu)先搜索并帶有回溯的方法。針對(duì)求解問題的所有可能解建立一棵狀態(tài)空間樹,按照基于約束條件的深度優(yōu)先搜索策略,從根節(jié)點(diǎn)出發(fā)搜索每一個(gè)滿足約束條件的結(jié)點(diǎn),繼續(xù)搜索其未被搜索的孩子結(jié)點(diǎn);針對(duì)不滿足約束條件的結(jié)點(diǎn)則回退到其雙親結(jié)點(diǎn)選擇一個(gè)未被搜索的孩子結(jié)點(diǎn)進(jìn)行搜索,如果當(dāng)前結(jié)點(diǎn)的所有孩子結(jié)點(diǎn)都被搜索了,則繼續(xù)回退到其雙親結(jié)點(diǎn),重復(fù)以上過程,直到找到一個(gè)滿足目標(biāo)函數(shù)的結(jié)點(diǎn),該結(jié)點(diǎn)所表示的狀態(tài)就是問題一個(gè)解;如果需要找出問題的所有解,繼續(xù)從該結(jié)點(diǎn)回退重復(fù)以上過程,直到搜索到狀態(tài)空間樹上的所有結(jié)點(diǎn)為止。
在本系統(tǒng)中,學(xué)生可以完成的操作有每個(gè)學(xué)期的注冊(cè)、新生班級(jí)選擇、通知查詢、作業(yè)信息、實(shí)驗(yàn)信息、作業(yè)提交、成績查詢、個(gè)人資料修改等。各項(xiàng)具體功能如下:
1.注冊(cè):所有學(xué)生均可在本站注冊(cè);
2.登錄:注冊(cè)后,先登錄才能進(jìn)入系統(tǒng);
3.選擇班級(jí):事物規(guī)定4個(gè)班,每個(gè)班的上課時(shí)間和教學(xué)方式不一樣,學(xué)生可以根據(jù)自己的情況進(jìn)行選擇,選擇后不可更改;
1.通知查詢:查看老師發(fā)布的通知;
2.作業(yè)信息:了解老師布置的作業(yè)情況;
3.實(shí)驗(yàn)信息:了解老師布置的實(shí)驗(yàn)情況;
4.作業(yè)提交:提交老師布置的作業(yè);
5.成績查詢:查看各學(xué)員的成績情況;
6.個(gè)人資料修改:修改個(gè)人的注冊(cè)資料。
系統(tǒng)為教師所提供的操作有授課班級(jí)信息查詢、實(shí)驗(yàn)信息及作業(yè)信息的發(fā)布,錄輸入學(xué)生成績、查詢學(xué)生成績等。各項(xiàng)具體功能如下:
1.成績管理:管理學(xué)生的課程成績,包括作業(yè)成績、考試成績、最后的總成績;
2.作業(yè)管理:對(duì)有關(guān)作業(yè)信息進(jìn)行管理;
3.實(shí)驗(yàn)管理:對(duì)實(shí)驗(yàn)課的情況進(jìn)行管理。
課程安排管理功能需要根據(jù)學(xué)校任課教師信息、班級(jí)信息、本學(xué)期課程信息、實(shí)驗(yàn)條件信息等,制定具有以下要求的設(shè)計(jì)時(shí)要達(dá)到如下要求:
1.運(yùn)算穩(wěn)定,系統(tǒng)可靠;
2.操作簡單,明了,界面清晰;
3.排課活動(dòng)符合教學(xué)規(guī)則和學(xué)校資源配置要求。
本文從背景和可行性分析對(duì)教學(xué)輔助系統(tǒng)的開發(fā)意義和用途以及開發(fā)的可行性進(jìn)行了分析,其次對(duì)系統(tǒng)的主要關(guān)鍵模塊進(jìn)行了詳細(xì)設(shè)計(jì)和實(shí)現(xiàn)。
在開發(fā)上述原型系統(tǒng)過程中,所完成的主要工作如下:
1.對(duì)本校教師的教務(wù)工作做了詳細(xì)的調(diào)研和分析,給出了系統(tǒng)的功能需求和性能指標(biāo)。
2.根據(jù)所確定的需求系統(tǒng)實(shí)現(xiàn)了學(xué)生可以進(jìn)行自助課程查詢、選擇班級(jí)、遞交作業(yè)、學(xué)校公告信息查看和考試結(jié)果查詢等模塊;教師可以進(jìn)行上課考勤點(diǎn)名管理,作業(yè)管理,學(xué)生信息管理,成績管理,課程進(jìn)度管理,系統(tǒng)管理、班級(jí)調(diào)整、通知發(fā)布和分?jǐn)?shù)錄入等模塊。
3.重點(diǎn)對(duì)課程管理功能,結(jié)合貪心算法思想進(jìn)行了分析和實(shí)現(xiàn)。
4.對(duì)系統(tǒng)進(jìn)行了功能,性能測試。
對(duì)于高校教師教務(wù)工作輔助的管理,目前市面上的系統(tǒng)都不能覆蓋所有的功能,如何將成績管理,學(xué)生信息,課程進(jìn)度等各個(gè)方面的管理融為一個(gè)完善的系統(tǒng)是一個(gè)新的挑戰(zhàn),不僅是技術(shù)上,更是對(duì)于設(shè)計(jì)上的一個(gè)挑戰(zhàn)。但不管有多難,這都是現(xiàn)代化管理發(fā)展的必然趨勢。但相信經(jīng)過過我們不斷地努力,這個(gè)系統(tǒng)會(huì)應(yīng)用在更寬廣的領(lǐng)域。