各國人文指數(shù)指標體系的判別與分析(共44頁)_第1頁
各國人文指數(shù)指標體系的判別與分析(共44頁)_第2頁
各國人文指數(shù)指標體系的判別與分析(共44頁)_第3頁
各國人文指數(shù)指標體系的判別與分析(共44頁)_第4頁
各國人文指數(shù)指標體系的判別與分析(共44頁)_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、計141 201406030105 張梓楊各國人文指數(shù)指標體系的判別與分析PAGE 2PAGE 53 TOC o 1-3 h z u HYPERLINK l _Toc405188754 第1章 緒言(x yn) PAGEREF _Toc405188754 h 1 HYPERLINK l _Toc405188755 1.1 課題(kt)背景 PAGEREF _Toc405188755 h 1 HYPERLINK l _Toc405188756 1.2 課題研究的目的(md)和意義 PAGEREF _Toc405188756 h 1 HYPERLINK l _Toc405188757 1.3 國內(nèi)

2、外研究概況 PAGEREF _Toc405188757 h 2 HYPERLINK l _Toc405188758 1.4 論文主要的研究內(nèi)容 PAGEREF _Toc405188758 h 2 HYPERLINK l _Toc405188759 1.5 論文的組織結(jié)構(gòu) PAGEREF _Toc405188759 h 2 HYPERLINK l _Toc405188760 第2章 算法介紹 PAGEREF _Toc405188760 h 3 HYPERLINK l _Toc405188761 2.1 相關(guān)概念 PAGEREF _Toc405188761 h 3 HYPERLINK l _Toc

3、405188762 2.2 Fisher準則以及算法求解步驟: PAGEREF _Toc405188762 h 4 HYPERLINK l _Toc405188763 第3章 算例分析 PAGEREF _Toc405188763 h 6 HYPERLINK l _Toc405188764 3.1 算法示例 PAGEREF _Toc405188764 h 6 HYPERLINK l _Toc405188765 第4章 需求分析 PAGEREF _Toc405188765 h 8 HYPERLINK l _Toc405188766 4.1 系統(tǒng)總體目標 PAGEREF _Toc405188766

4、h 8 HYPERLINK l _Toc405188767 4.2 用例分析 PAGEREF _Toc405188767 h 8 HYPERLINK l _Toc405188768 4.3 軟件過程管理 PAGEREF _Toc405188768 h 10 HYPERLINK l _Toc405188769 4.3.1 過程模型 PAGEREF _Toc405188769 h 10 HYPERLINK l _Toc405188770 4.3.2 軟件規(guī)模成本估算 PAGEREF _Toc405188770 h 11 HYPERLINK l _Toc405188771 4.3.3 軟件過程管理

5、PAGEREF _Toc405188771 h 12 HYPERLINK l _Toc405188772 第5章 總體設計 PAGEREF _Toc405188772 h 14 HYPERLINK l _Toc405188773 5.1 運行環(huán)境 PAGEREF _Toc405188773 h 14 HYPERLINK l _Toc405188774 5.2 數(shù)據(jù)庫設計 PAGEREF _Toc405188774 h 14 HYPERLINK l _Toc405188775 5.4 順序圖 PAGEREF _Toc405188775 h 16 HYPERLINK l _Toc405188776

6、 5.5 協(xié)作圖 PAGEREF _Toc405188776 h 17 HYPERLINK l _Toc405188777 第6章 詳細設計 PAGEREF _Toc405188777 h 18 HYPERLINK l _Toc405188778 6.1 軟件結(jié)構(gòu) PAGEREF _Toc405188778 h 18 HYPERLINK l _Toc405188779 6.2 軟件設計分層思想 PAGEREF _Toc405188779 h 18 HYPERLINK l _Toc405188780 6.3 系統(tǒng)總體結(jié)構(gòu) PAGEREF _Toc405188780 h 20 HYPERLINK

7、l _Toc405188781 6.4 實現(xiàn)類的類圖 PAGEREF _Toc405188781 h 21 HYPERLINK l _Toc405188782 6.6 活動圖 PAGEREF _Toc405188782 h 23 HYPERLINK l _Toc405188783 6.7 組件圖 PAGEREF _Toc405188783 h 24 HYPERLINK l _Toc405188784 第7章 軟件實現(xiàn) PAGEREF _Toc405188784 h 25 HYPERLINK l _Toc405188785 7.1 軟件界面截圖 PAGEREF _Toc405188785 h 2

8、5 HYPERLINK l _Toc405188786 7.2 核心代碼 PAGEREF _Toc405188786 h 25 HYPERLINK l _Toc405188787 第8章 軟件測試 PAGEREF _Toc405188787 h 36 HYPERLINK l _Toc405188788 8.1 登錄模塊的測試 PAGEREF _Toc405188788 h 36 HYPERLINK l _Toc405188789 8.2 用戶管理模塊的測試 PAGEREF _Toc405188789 h 36 HYPERLINK l _Toc405188790 第9章 結(jié)果分析 PAGEREF

9、 _Toc405188790 h 41 HYPERLINK l _Toc405188791 第10章 總結(jié) PAGEREF _Toc405188791 h 42 HYPERLINK l _Toc405188792 參考文獻 PAGEREF _Toc405188792 h 43各國人文指數(shù)(zhsh)指標體系的判別與分析 作者:計141 201406030105 張梓楊 創(chuàng)作時間:2014年12月1日第1章 緒言(x yn) 我國政府目前(mqin)提出全面建設小康社會,樹立科學發(fā)展觀,走可持續(xù)發(fā)展的道路。新發(fā)展觀在評價經(jīng)濟增長的標準方面由過去狹義的GDP指標擴展到廣義的HDI,這表明人的價值觀

10、正向人本主義回歸的價值轉(zhuǎn)變,同時也把社會與經(jīng)濟之間的關(guān)系表現(xiàn)出來。分析近幾年我國HDI,我們不難看出,我國人民健康水平普遍提高,平均預期壽命大大延長,人口文化素質(zhì)有較大提高,但與發(fā)達國家相比仍處于落后地位,近幾年我國經(jīng)濟持續(xù)增長,但人均GDP水平仍然很低2,提高我國人文發(fā)展水平是社會經(jīng)濟可持續(xù)發(fā)展的需求,也是人民生活水平提高的重要表現(xiàn)。本文通過采用Fisher準則判別分析方法,對各國的人文發(fā)展指數(shù)進行判別分析,為我國實現(xiàn)可持續(xù)發(fā)展提供了可靠的依據(jù)。1.1 課題背景1995年,我國HDI的總體概況3如下:出生時預期壽命:68.5歲(2001年) 成人識字率:79.3%(2001年) 人均GDP(

11、按購買力平價):1950元(2001年) 健康長壽的生命用出生預期壽命來表示,受教育程度用成人識字率來表示,人民的生活水平用人均GDP(按購買力平價)來表示。提高我國人文發(fā)展水平是社會經(jīng)濟可持續(xù)發(fā)展的需求,也是人民生活水平提高的重要表現(xiàn),通過長壽與健康、獲得知識、為提高生活水準而需要的資源這三個基本方面的提高,來促使我國整體社會的發(fā)展,樹立和落實科學發(fā)展觀,實現(xiàn)經(jīng)濟發(fā)展和人口、資源、環(huán)境協(xié)調(diào)發(fā)展。1.2 課題研究的目的和意義當今世界是一個飛速發(fā)展的世界,各國的發(fā)展水平都不盡相同,為了能夠?qū)Ω鲊陌l(fā)展水平做一個比較科學的研究從而促進各國的進一步發(fā)展,聯(lián)合國發(fā)展署于1990年特公布了這一人文發(fā)展指

12、數(shù),在這一指數(shù)中包含三個指標:出生時的預期壽命、成人識字率和實際人均GDP,這樣的三個指標科學的衡量了各國關(guān)于人文方面的發(fā)展狀況,為各個國家的進一步發(fā)展提供了有效的參考數(shù)據(jù)。Fisher準則,作為模式識別中的一個重要理論,為這一研究提供了良好的數(shù)學基礎,本課題研究中所設計的有關(guān)人文發(fā)展指標包含三個,屬于高維空間中的數(shù)學問題,對于這一問題,常常會遭遇到所謂的“維數(shù)災難”的問題,即在低維空間里適用的方法在高維空間里可能完全不使用,因此壓縮特征空間的維數(shù)有時是很重要的。使用Fisher方法,很好的解決了這一問題,這一方法能夠?qū)⒏呔S特征空間的點投影到一條直線上,也就能夠把特征空間壓縮成一維,這時的這一

13、數(shù)學問題得到了很好的解決,接下來的重點工作就是要找到那條投影向量,從而使高維空間的點投影到一維空間后很容易分開,即滿足Fisher準則的核心要求:就是要找到一個最合適的分界面的法線向量,使兩類樣本在該軸上投影的交迭部分最少,從而使分類效果為最佳。該向量的方向選擇應能使兩類樣本投影的均值之差盡可能大些,而使類內(nèi)樣本的離散程度盡可能小。對于這一課題的研究,有助于我們很好的理解世界人文發(fā)展指數(shù)這一科研概念,在當今這樣一個飛速發(fā)展的時代,一個國家對這一方面的注意(zh y)程度大小將直接關(guān)系到整個國家的發(fā)展水平,也能夠是各個國家看到自己所存在的不足從而調(diào)整自己的發(fā)展戰(zhàn)略,是自己得到更好的發(fā)展;其次,能

14、夠運用計算機,編寫出相應的程序,從而使這一問題得到了很好地解決,在這一方面很好的展現(xiàn)了信息劃時代的便捷、高效這一特點,結(jié)合計算機技術(shù)解決科研中的各種問題,這將是整個人類社會當前也是今后的一大發(fā)展趨勢,起到了很好的導向作用。1.3 國內(nèi)外研究(ynji)概況聯(lián)合國開發(fā)署(UNDP)歷次發(fā)表的人文發(fā)展報告中最引人注目、也最有爭議的一個(y )項目是人文發(fā)展指數(shù),顯然,人文發(fā)展指數(shù)的概念要比任何一個指數(shù)或一組指標的內(nèi)容要豐富得多,由于計算HDI的數(shù)據(jù)較容易得到,計算簡單,且有很好的可操作性,且已發(fā)展的較為成熟 因此作為一項綜合的生活質(zhì)量指標,人文發(fā)展指數(shù)終將代替?zhèn)鹘y(tǒng)的人均國名生產(chǎn)總值來衡量一個國家或

15、地區(qū)的經(jīng)濟社會發(fā)展水平。中國已經(jīng)跟上這一趨勢,在短短的幾年中,不僅制定出一些列的政策及原則、措施,而且在社會進步和經(jīng)濟發(fā)展上體現(xiàn)了諸多可持續(xù)發(fā)站目標,然而與發(fā)達國家相比,我國的人文發(fā)展指數(shù)仍處于相對較低的水平上。作為這一領域一個重要的研究方法,F(xiàn)isher準則有它獨特的優(yōu)缺點,運用這一準則,可以很清晰的判別出位置樣本的類別歸屬,得出較精準的結(jié)果,但是,F(xiàn)isher判別法的不足是它不考慮各總體出現(xiàn)概率的大小,也給不出預報的后驗概率及錯判率的估計以及錯判之后造成的損失。1.4 論文主要的研究內(nèi)容本文主要針對世界人文發(fā)展指數(shù)的判別應用軟件進行系統(tǒng)性闡述,其中所涉及到的樣本數(shù)據(jù)均來自1995年聯(lián)合國人

16、文發(fā)展指數(shù)表,通過對這些數(shù)據(jù)進行判別分析,將其分別歸入不同的兩類,即:高發(fā)展水平國家和中等發(fā)展水平國家,通過判別的結(jié)果進行分析,得出相應的結(jié)論。在這一過程中,主要涉及到模式識別領域中的Fisher線性判別準則,通過運用這個準則,使這一問題得到很好解決。1.5 論文的組織結(jié)構(gòu)第一章 緒論,總體概括該論文所研究的內(nèi)容和其中所涉及的相關(guān)知識點,闡述了論文的課題來源、研究背景,國內(nèi)外在相關(guān)領域的研究和應用狀況以及論文結(jié)構(gòu)。第二章 Fisher準則算法介紹,主要介紹相關(guān)概念和算法的求解步驟。第三章 算例分析,對具體的算法實例進行分析,闡述算法思想。第四章 系統(tǒng)設計的需求分析,主要描述用例分析、軟件過程管

17、理以及軟件所采用的原型。第五章 總體設計,介紹系統(tǒng)的運行環(huán)境、數(shù)據(jù)庫設計和UML模型圖。第六章 詳細設計,介紹軟件的結(jié)構(gòu)、分層思想、總體結(jié)構(gòu)和用UML進行建模。第七章 軟件實現(xiàn),用圖形介紹本系統(tǒng)的運行狀況以及相應的核心代碼。第八章 軟件測試,采用(ciyng)黑盒法對軟件進行測試。第九章 結(jié)果分析,對所得結(jié)果進行分析,并用相關(guān)(xinggun)實例加以闡述。第十章 總結(jié)(zngji)第2章 算法(sun f)介紹本章主要(zhyo)介紹有關(guān)Fisher準則算法的相關(guān)概念(ginin)及其求解步驟。Fisher準則的基本原理是:就是要找到一個最合適的分界面的法線向量,使兩類樣本在該軸上投影的交迭

18、部分最少,從而使分類效果為最佳。該向量的方向選擇應能使兩類樣本投影的均值之差盡可能大些,而使類內(nèi)樣本的離散程度盡可能小。2.1 相關(guān)概念人文發(fā)展指數(shù)包含三個指標:出生時預期壽命、成人識字率和人均GDP,顯然這三個指標涉及了多維空間的問題,因此,當樣本在D維空間時,我們定義如下一些參數(shù):1各樣本均值向量: (2-1)2樣本類內(nèi)離散矩陣Si與總類內(nèi)離散矩陣Sw (2-2)兩類總離散度相加 (2-3)注意左邊是列向量,乘以右邊轉(zhuǎn)置行向量, 得到矩陣。說明:相對均值,看離散的情況,x-mi值越小,離散越好3樣本類間離散矩陣 用均值向量來代表樣本間的離散程度。并不是直接算這兩類均值向量的歐氏距離,而是表

19、示成矩陣: (2-4)定義上述三個基本參量的目的:都是為了將Fisher準則化成計算。Fisher準則強調(diào)的是投影,是在法線上的向量的投影。因此它是一維上的“數(shù)”的問題。所以需要將上述參量表示成一維。在一維空間中,我們定義如下參數(shù):1各類樣本均值 (2-5)注意:此時的y不再是向量,而是具體的值。表示的是同一類的投影值的均值。2樣本類內(nèi)離散度和總類內(nèi)離散度 一維情況下考察離散程度只有方差,所以 (2-6) (2-7)在這里定義一維空間兩類數(shù)據(jù)的分布是為了描述空間樣本點到一向量投影(tuyng)的分散情況的,因此也就是對某向量W的投影(tuyng)在W上的分布(fnb)。2.2 Fisher準則

20、以及算法求解步驟:在這里定義一維空間兩類數(shù)據(jù)的分布是為了描述空間樣本點到一向量投影的分散情況的,因此也就是對某向量W的投影在W上的分布。的定義與隨機變量方差相類似。在定義了上述一系列描述量后,可以用這些量給出Fisher準則的函數(shù)形式。根據(jù)Fisher選擇投影方向W的原則,即使原樣本向量在該方向上的投影能兼顧類間分布盡可能分開,類內(nèi)樣本投影盡可能密集的要求,用以評價投影方向W的函數(shù)為: (2-8)這個函數(shù)稱為Fisher準則函數(shù)。但是(2-8)并不是W的顯函數(shù),需進一步化為W的顯函數(shù)。為此需對、等項進一步演化:(2-9)因而(2-9)分子項又可寫成(2-10)同樣也可推出與W的關(guān)系 因此(yn

21、c)(2-11)則可表示(biosh)成(2-12)根據(jù)上述推導過程(guchng),可以將Fisher準則的求解步驟描述如下:(1)對于所給的兩類樣本分別求出各類均值,形成均值向量 (2)分別計算樣本類內(nèi)離散度 (3)根據(jù)所求出的樣本類內(nèi)離散度計算樣本間離散度(4)對樣本間離散度求逆得到(5)計算均值向量之差(6)求出法向量得到線形判別函數(shù)的系數(shù)(7)根據(jù)上面所求出的系數(shù)形成線形判別函數(shù)(8)計算判別臨界值和判別準則 判別臨界值 R(1)=系數(shù)*類別1R(2)=系數(shù)*類別2 判別準則 R(0)=系數(shù)*()/2(9)對輸入的數(shù)據(jù)進行判別第3章 算例分析(fnx)3.1 算法(sun f)示例1

22、995年世界(shji)各國人文發(fā)展指數(shù)的排序中,選取高發(fā)展水平、中等發(fā)展水平的國家各五個作為兩組樣品,另選四個國家作為待判樣品作距離判別分析。見表3.1表3.1 各國人文發(fā)展指數(shù)(1)對于所給的兩類樣本分別求出各類均值向量 (2)分別計算樣本類內(nèi)離散度86.812 117.682 -4895.74117.682 188.672-11316.54-4895.74 -11316.542087384.836.22856.022448.7456.022344.228-252.24448.74-252.2412987.2 (3)根據(jù)所求出的樣本類內(nèi)離散度計算樣本間離散度123.04 173.704 -

23、4447173.704 532.9 -11568.78-4447-11568.78 2100372(4)對樣本間離散(lsn)度求逆得到0.015112058 -0.0048059885.52469E-06-0.0048059880.003659797 9.98259E-065.52469E-06 9.98259E-06 5.42787E-07(5)計算(j sun)均值向量之差(6)求出法向量,得到線形(xin xn)判別函數(shù)的系數(shù)(7)根據(jù)上面所求出的系數(shù)形成線形判別函數(shù)(8)兩類判別函數(shù)均值和判別指標(臨界值)R(1)=12.1653 ;R(2)=9.6291;R(0)=10.8972

24、;因為R(1)R(2)因此,判別準則為當R大于R(0),則屬于第一類;當R小于R(0),則屬于第二類。(9)對待測樣品“中國”進行判別,將其三個指標輸入本系統(tǒng)中,得到的結(jié)果為7.833793,因為7.83379310.8972,所以中國應屬于第二類。第4章 需求(xqi)分析本章主要介紹了本系統(tǒng)設計的需求分析,主要描述用例分析、軟件過程管理以及(yj)軟件所采用的原型。通過本章的介紹,對于系統(tǒng)的設計起到了指導性作用,可以更好的將系統(tǒng)軟件設計出來。4.1 系統(tǒng)(xtng)總體目標系統(tǒng)用于對各國的人文發(fā)展指標進行判別,通過判別的結(jié)果進行分析,找出本國發(fā)展的不足之處。當前我國正處于飛速發(fā)展的階段,衡

25、量我國發(fā)展狀況不再單單靠GDP這一指標來進行,人文發(fā)展指數(shù)(HDI)已經(jīng)逐漸成為衡量我國發(fā)展狀況的量度。通過本系統(tǒng)的應用,可以為國家發(fā)改委提供決策支持,省去了大量的手工勞動,是計算出來的結(jié)果更精確可靠,為促進我國快速穩(wěn)定向前發(fā)展提供了保障。4.2 用例分析本軟件系統(tǒng)包含三個功能模塊:用戶登錄模塊、用戶管理模塊、算法實現(xiàn)模塊。其中,用戶登錄模塊中,用戶可以進行注冊、選擇不同的用戶權(quán)限進行登錄以及退出該系統(tǒng),見圖4.1;用戶管理模塊實現(xiàn)了對系統(tǒng)用戶的管理,包括新用戶進行注冊、管理員審批新注冊用戶、用戶通過審批成為該系統(tǒng)的普通用戶、管理員查詢系統(tǒng)用戶、刪除用戶、查看全部用戶等功能,見圖4.2;判別應

26、用模塊,包括對未知樣本進行判別、生成新的判別函數(shù)、查看樣本數(shù)據(jù)、查找樣本、刪除樣本以及修改樣本,見圖4.3。整個系統(tǒng)的用力關(guān)系圖見圖4.4用戶登錄模塊用戶登陸用戶注冊退出登錄圖4.1 用戶登陸模塊用戶管理模塊審批新注冊的用戶查找用戶刪除用戶查看所有用戶圖4.2用戶(yngh)管理模塊判別應用模塊對未知樣本進行判別生成新的判別函數(shù)查看樣本數(shù)據(jù)查找樣本刪除樣本修改樣本數(shù)據(jù)圖4.3判別應用(yngyng)模塊圖4.4 用例關(guān)系(gun x)圖如圖4.4所示為系統(tǒng)(xtng)用例圖。普通用戶可對本系統(tǒng)(xtng)進行如下操作:用戶注冊用戶登錄進行判別分析,包括:對未知樣本進行判別類別歸屬生成新的判別函

27、數(shù)查看樣本數(shù)據(jù)刪除樣本查找樣本修改樣本管理員可對本系統(tǒng)進行如下操作審批用戶查找用戶刪除用戶查看所有用戶4.3 軟件過程(guchng)管理4.3.1 過程(guchng)模型快速(kui s)原型4是快速建立起來的可以在計算機上運行的程序,它能完成的功能往往是最終產(chǎn)品能完成的功能的一個子集,快速原型模型的第一部是快速建立一個能反映給用戶主要需求的原型系統(tǒng),以便得到用戶的反饋,和用戶達成共識本系統(tǒng)采用的就是快速原型模型,見圖4.5圖4.5快速原型模型4.3.2 軟件規(guī)模成本估算利用經(jīng)驗模型進行成本估算,即COCOMO模型工作量,其中a為模型系數(shù),b為模型指數(shù)詳見表4.1表4.1 COCOMO模型

28、指數(shù)與模型系數(shù)對照表L為代碼行數(shù),其計算公式為:在這里,=2200,=3200,=2825成本因素 詳見表4.1表4.2成本因素及工作量調(diào)整因子系統(tǒng)(xtng)開發(fā)時間 現(xiàn)將各個(gg)數(shù)值帶入進行計算:代碼(di m)行:L=2783.33(LOC)工作量:E=13241.69開發(fā)時間:T=79.134.3.3 軟件過程管理本軟件系統(tǒng)開發(fā)歷時兩個半月,共計十個星期,在開發(fā)過程中,嚴格按照進度安排完成相應的階段任務,具體按進度如下:第五周:算法分析第六周:概要設計(用例分析、類圖分析、軟件原型)第七周:詳細設計(數(shù)據(jù)庫設計、順序圖分析)第八至十一周:算法的實現(xiàn)十二至十四周:軟件功能的完善,包括

29、用戶登錄模塊、用戶管理模塊、算法功能實現(xiàn)模塊具體進度安排甘特圖見圖4.5圖4.5進度(jnd)安排甘特圖第5章 總體設計5.1 運行(ynxng)環(huán)境(1)硬件(yn jin)環(huán)境:Intel Pentium M處理器,1GB內(nèi)存(ni cn)(2)軟件環(huán)境:Windows2000/XP 操作系統(tǒng)、JBuilder 2006開發(fā)環(huán)境、Oracle9i數(shù)據(jù)庫管理系統(tǒng)5.2 數(shù)據(jù)庫設計圖5.1 E-R模型圖用戶信息表,包含三個字段屬性:用戶名、用戶密碼、用戶類別,見表5.1表5.1 用戶信息表表名:user_table主鍵:name字段名數(shù)據(jù)類型說明nameVarchar2(20)用戶名passw

30、ordvarchar2(20)密碼typevarchar2(20)用戶類別人文發(fā)展指標表,包含六個字段屬性:編號、類別、國家名稱、出生時預期壽命、成人識字率、人均GDP ,見表5.2 表5.2人文發(fā)展指標表表名:Develop_Table主鍵:ID_no字段名數(shù)據(jù)類型說明ID_noNumber(3)序號Typevarchar2(10)類別Namevarchar2(20)國家名稱LifeNumber(6,2)出生時預期壽命KnowledgeNumber(6,2)成人識字率GDPNumber(8,2)人均GDP 5.3 頂層(dn cn)的數(shù)據(jù)流圖圖5.2 用戶(yngh)管理數(shù)據(jù)流圖圖5.4為用

31、戶管理模塊的數(shù)據(jù)流圖,普通用戶將自己的信息在該系統(tǒng)中進行注冊,管理員可以對用戶的信息進行查找、刪除、查看以及對用戶的注冊進行審批(shnp),通過這一模塊的實現(xiàn),很好的對系統(tǒng)的用戶進行管理,保證了系統(tǒng)的安全性。圖5.3 判別分析數(shù)據(jù)流圖圖5.5 為系統(tǒng)盤別分析模塊,這一模塊為該系統(tǒng)的主要模塊,用戶可以通過這個模塊,對于未知樣品進行判別,從而對所得到的結(jié)果進行分析,分析本國的發(fā)展狀況,從而能夠促進國家的快速穩(wěn)定的發(fā)展。5.4 順序(shnx)圖圖5.4順序(shnx)圖圖5.4 為該系統(tǒng)的時序圖,他描述了系統(tǒng)的操作順序,從圖中我們可以看出,一個用戶必須注冊成為本系統(tǒng)的普通用戶后才能擁有此系統(tǒng)的使

32、用權(quán),但是,并非所有用戶均能成功的注冊,但一個新用戶填寫注冊信息后,必須經(jīng)過(jnggu)管理員的審批后才能使用本系統(tǒng)對未知樣本進行判別分析。當用戶成功的獲得通過審批后,就能夠應用此系統(tǒng)了,在本系統(tǒng)的判別分析模塊中,用戶輸入用戶名和密碼后,能夠?qū)ξ粗獦颖具M行判別分析,此外還能對原始數(shù)據(jù)進行修改,以便生成用戶滿意的判別函數(shù)。5.5 協(xié)作(xizu)圖圖5.5協(xié)作(xizu)圖圖5.5為系統(tǒng)的協(xié)作圖,該圖描述了本系統(tǒng)中交互對象的靜態(tài)(jngti)鏈接關(guān)系。 第6章 詳細設計6.1 軟件結(jié)構(gòu)C/S(Client/Server,客戶機/服務器)方式的網(wǎng)絡計算模式(msh),工作分別由服務器和客戶機完成

33、。服務器負責管理數(shù)據(jù)庫的訪問,為多個(du )客戶程序管理數(shù)據(jù),對數(shù)據(jù)庫進行檢索和排序,此外還要對客戶機/服務器網(wǎng)絡結(jié)構(gòu)中的數(shù)據(jù)庫安全層層加鎖,進行(jnxng)保護??蛻魴C負責與用戶交互收集用戶信息,通過網(wǎng)絡向服務器請求對諸如數(shù)據(jù)庫,電子表格或文字處理文檔等信息的處理工作??梢?,在C/S模式中,資源明顯不對等,是一種“胖客戶機”,“瘦服務器”結(jié)構(gòu)。最簡單的C/S模式數(shù)據(jù)庫應用,由兩部分組成,即客戶機應用程序和數(shù)據(jù)庫服務器應用程序。兩者可分別稱為前臺程序和后臺程序。運行數(shù)據(jù)庫服務器的機器,稱為應用服務器。服務器程序啟動后,就隨時等待響應客戶程序發(fā)來的請求;客戶程序在客戶使用的計算機上運行,客戶

34、使用的計算機稱之為客戶機。當需要對數(shù)據(jù)庫中的數(shù)據(jù)進行訪問時,客戶程序就自動尋找服務器程序,并向其發(fā)出請求,服務器程序根據(jù)預定的規(guī)則做出應答,送回結(jié)果??紤]到本系統(tǒng)是一個小型的桌面應用系統(tǒng),且目標用戶為一些有專業(yè)技能的人,不具有專業(yè)技能知識的人不能夠很好的理解此軟件的算法,故采用了C/S軟件結(jié)構(gòu),使得該軟件具有一定保密性能。在客戶端應用JAVA高級語言進行編寫,主要向用戶提供與底層數(shù)據(jù)庫進行交互的應用界面,在這一部分,用戶可根據(jù)具體的操作提示使用此軟件,其中包含一些驗證的內(nèi)容,如輸入的用戶名不存在則提示用戶重新輸入或進行注冊,當輸入的信息為空時,則提示用戶輸入完整信息,通過這樣的信息驗證,可以使

35、該系統(tǒng)具有很強的人性化,很好的指導用戶使用本軟件系統(tǒng)。作為客戶端,最重要的作用就是提供人機交互的接口,在這一點上,該軟件頁顯示出其強大的功能,對于用戶要進行的每一步操作,該系統(tǒng)均有相應的數(shù)據(jù)輸入框,當用戶輸入的數(shù)據(jù)有效時,由系統(tǒng)給出相應的操作結(jié)果,例如:當用戶需要進行查詢某一樣本的具體內(nèi)容是,需輸入國家名稱,如果底層數(shù)據(jù)庫中存有該樣本的記錄,系統(tǒng)就將該條記錄顯示給用戶,此時,用戶可以看到該樣本的詳細信息;再如,當用戶想修改一個樣本的具體信息時,同樣,系統(tǒng)也給出一個對話框,要求用戶輸入國家名稱,用戶輸入完之后,系統(tǒng)自動從底層數(shù)據(jù)庫中進行查詢,如果底層數(shù)據(jù)庫中存有該樣本的記錄,則將樣本的信息顯示出

36、來,此時,用戶可以修改樣本的各項指標,以達到用戶滿意為止。綜上,在客戶端,本系統(tǒng)能夠很好的進行人機交互,使用戶操作起來感到便捷,這是本系統(tǒng)的最大特點。其次,在服務器端,采用了大型公司所使用的Oracle數(shù)據(jù)庫管理系統(tǒng),此系統(tǒng)能夠存儲大容量的數(shù)據(jù),這一點對于進行科研工作是十分重要的。由于這種數(shù)據(jù)庫管理系統(tǒng)一般為大型公司所采用,所以在系統(tǒng)安全性方面有突出的優(yōu)點。在這一層上,主要采用的時SQL語句進行數(shù)據(jù)庫的編寫,運用jdbc的方式訪問數(shù)據(jù)庫,并且加工期進行了良好的封裝,當多用戶同時進行訪問時,不會造成系統(tǒng)的崩潰,在這一點上也很好的體現(xiàn)了面向?qū)ο蟮木幊趟枷搿1咎紫到y(tǒng),通過客戶端和服務器端的巧妙結(jié)合,

37、使該系統(tǒng)操做起來十分便捷,計算出的結(jié)果精確,可供科研項目使用。6.2 軟件設計分層思想(sxing)本系統(tǒng)嚴格采用了軟件的分層思想進行編寫(binxi),即數(shù)據(jù)層邏輯(lu j)層表示層,采用這種分層思想,使得該軟件可讀性增強,便于后續(xù)的二次開發(fā)。其層次結(jié)構(gòu)見圖6.1圖6.1 軟件分層結(jié)構(gòu)如圖6.1所示,本系統(tǒng)中,視圖層主要由人機交互的界面組成,在用戶登錄模塊中,主要包括:用戶登陸、用戶注冊;在用戶管理模塊中,主要包括:用戶審批、用戶查找、用戶刪除、用戶查看;在樣本判別應用模塊主要包括:對未知樣本判別、生成新的判別函數(shù)、查找樣本、刪除樣本、查看所有樣本、修改樣本,由這三個模塊的的所有功能界面組

38、成本系統(tǒng)的視圖層。在本系統(tǒng)中,各個模塊均有自己的邏輯操作,如圖6.1中的service,在這一層上,使用java語言編寫出相應的表示動作的代碼,在用戶登錄模塊所涉及到的邏輯操作包括:用戶登陸、登錄驗證、用戶注冊;在用戶管理模塊所設計的邏輯操作包括:對用戶的增、刪、改、查四個操作;在樣本判別應用模塊所涉及到的邏輯操作包括:用樣本的增、刪、改、查、統(tǒng)計樣本個數(shù)五個操作,所有這些操作構(gòu)成系統(tǒng)的邏輯層。在數(shù)據(jù)訪問層中,本系統(tǒng)采用了javabean技術(shù),使用此技術(shù)可以實現(xiàn)良好的數(shù)據(jù)封裝機制,當不同模塊同時訪問數(shù)據(jù)庫時,它們可以同時調(diào)用同一個javabean而互不影響,這樣做降低了代碼的冗余度,使程序運行

39、起來顯得更“輕快”,同時也增強了代碼的可讀性;此外,本系統(tǒng)采用了DAO的模式訪問數(shù)據(jù)庫,采用這一模式可以解決多個用戶并發(fā)訪問致使系統(tǒng)崩潰的問題,實現(xiàn)了面向?qū)ο蟮脑O計方法,提高了系統(tǒng)的安全性。6.3 系統(tǒng)(xtng)總體結(jié)構(gòu)基于Fisher準則的各國人文發(fā)展指標的判別應用系統(tǒng)用戶管理員普通用戶用戶審批用戶查找用戶刪除查看用戶判別未知樣本生成判別函數(shù)查找樣本刪除樣本查看樣本修改樣本圖6.2系統(tǒng)總體(zngt)結(jié)構(gòu)圖6.2詳細描述了本系統(tǒng)的功能模塊結(jié)構(gòu),通過觀察此圖,我們不難發(fā)現(xiàn)本系統(tǒng)主要分為兩大模塊,即用戶管理模塊和判別分析模塊,在前一模塊中,主要對系統(tǒng)的用戶進行管理,包括對用戶的審批、查找、刪除

40、和查看所有(suyu)用戶,這一模塊的主要用戶是系統(tǒng)管理員;判別分析模塊為該系統(tǒng)的主要模塊,實現(xiàn)了本課題所研究的內(nèi)容,在這一模塊中包括六個內(nèi)容,即判別未知樣本、生成判別函數(shù)、查找樣本、刪除樣本、查看樣本、修改樣本,這一模塊的主要用戶為該系統(tǒng)的使用者,亦即普通用戶,其中,判別未知樣本為此模塊的主要功能,用戶通過這個功能,能夠?qū)θ宋陌l(fā)展指數(shù)進行判別,一邊分析發(fā)展狀況。6.4 實現(xiàn)(shxin)類的類圖圖6.3實現(xiàn)(shxin)類的類圖圖6.3為實現(xiàn)類的類圖,本系統(tǒng)中包含了兩張表,分別為用戶表和人文發(fā)展指標表,不同的用戶可以對不同的表進行操作,其中管理員可以對用戶表進行操作,包括對新注冊用戶的審批、

41、查找用戶、查看用戶以及刪除用戶;普通用戶可以對人文發(fā)展指標表進行相應的操作,包括對未知樣品的判別、查找樣品、刪除樣品、查看樣品、生成新的判別函數(shù)以及修改樣品。從這張圖中,我們可以看出每張表都有不同個數(shù)的抽象方法,在定義了這些抽象方法之后,就需要有一個專門的方法來實現(xiàn)它,這樣做將軟件的分層思想(sxing)和面向?qū)ο笏枷塍w現(xiàn)出來。6.5 狀態(tài)圖圖6.4狀態(tài)圖圖6.4為系統(tǒng)的狀態(tài)圖,描述了系統(tǒng)在各個階段的狀態(tài),此圖詳細展示(zhnsh)了系統(tǒng)的的可能狀態(tài)以及引起狀態(tài)轉(zhuǎn)換的事件。6.6 活動(hu dng)圖圖6.5活動(hu dng)圖活動圖描述動作及動作之間的關(guān)系,是狀態(tài)圖的一種,但是,活動圖的

42、主要目的(md)是描述動作及動作的結(jié)果,圖6.5為系統(tǒng)的活動圖,他詳細描述了用戶使用該系統(tǒng)所要進行的相關(guān)動作,從圖中我們可以看出,每一步操作都是有前因和后果的,一個動作的結(jié)束表明下一個動作的開始,其中蘊含了很強的邏輯性,使系統(tǒng)使用起來更具人性化,用戶操作起來才會感到便捷,不至于晦澀難懂。6.7 組件(z jin)圖圖6.6 組件(z jin)圖第7章 軟件(run jin)實現(xiàn)本章通過軟件(run jin)運行的相關(guān)圖片介紹整個軟件系統(tǒng)的運行效果。7.1 軟件(run jin)界面截圖如圖7.1所示,此界面為用戶登陸界面,系統(tǒng)一旦(ydn)運行,用戶便進入此界面,輸入正確的用戶名和密碼后,可以

43、進入不同的管理模塊,管理員進入用戶管理模塊,普通用戶進入判別分析模塊,如果用戶未進行注冊,則必須先進行注冊后才能使用此系統(tǒng),如圖7.2所示。 圖7.1 用戶登錄 圖7.2用戶注冊圖7.3為系統(tǒng)管理員界面的截圖,在這一模塊中,管理員可以對用戶進行查詢,刪除,查看,以及審批用戶操作。如果用戶權(quán)限為普通用戶,則進入判別分析模塊,在這一模塊中,用戶可以對樣本進行判別分析,以及對原始樣本數(shù)據(jù)進行增、刪、改、查操作。 圖 7.3系統(tǒng)管理員模塊 圖 7.9 判別應用系統(tǒng)7.2 核心(hxn)代碼 public void sho(int count1All_1, int count1All_2, int co

44、unt1All_3, int count1, int count2All_1, int count2All_2, int count2All_3, int count2, float txtLife, float txtCulture, float txtGdp) /*對第一類值進行計算,得到(d do)相應的類內(nèi)離散矩陣 /第一個均值(jn zh)向量 try Connection con = Conn.getConnection(); Statement stmt = con.createStatement(); String xl1_sql = select avg(life),avg(

45、knowledge),avg(gdp) from develop_table where type=第一類; ResultSet rs1 = stmt.executeQuery(xl1_sql); System.out.println(第一類的均值:); while (rs1.next() junzhi100 = rs1.getFloat(1); junzhi110 = rs1.getFloat(2); junzhi120 = rs1.getFloat(3); rs1.close(); stmt.close(); con.close(); catch (Exception ex) ex.get

46、StackTrace(); /第一個矩陣 float zhi1_1 = new floatcount1count1All_1; /向量中的數(shù)值 float zhi1_2 = new floatcount1count1All_2; float zhi1_3 = new floatcount1count1All_3; float minus1_1 = new floatcount1count1All_1; /x-m1 float minus1_2 = new floatcount1count1All_1; float minus1_3 = new floatcount1count1All_1; f

47、loat zhi1 = new floatcount13; float minus1 = new floatcount13; count1All = count1All_1 + count1All_2 + count1All_3; / System.out.println(第一類總元素個數(shù): + count1All); int fz1_j =0;/求第一類值的各維向量 try Connection con = Conn.getConnection(); Statement stmt = con.createStatement(); String fz1_sql = select life,kn

48、owledge,gdp from develop_table where type=第一類; ResultSet rs = stmt.executeQuery(fz1_sql); while (rs.next() for (int fz1_i = 0; fz1_i count1; fz1_i+) zhi1_1fz1_ifz1_j = rs.getFloat(1); zhi1_2fz1_ifz1_j = rs.getFloat(2); zhi1_3fz1_ifz1_j = rs.getFloat(3); fz1_j+; /第一類各個值的矩陣(j zhn)形式 int fj1_xa = 0, fj

49、1_xc = 0; for (int fj1_x = 0; fj1_x count1; fj1_x+) int fj1_xb = 0; zhi1fj1_xafj1_xb+ = zhi1_1fj1_xfj1_xc; zhi1fj1_xafj1_xb+ = zhi1_2fj1_xfj1_xc; zhi1fj1_xa+fj1_xb = zhi1_3fj1_xfj1_xc+; rs.close(); stmt.close(); con.close(); catch (Exception e) e.getStackTrace(); /求第一類中向量(xingling)與均值中的值之差 for (int

50、fju_i = 0; fju_i count1; fju_i+) for (int fju_r = 0; fju_r count1; fju_r+) minus1_1fju_ifju_r = zhi1_1fju_ifju_r - junzhi100; minus1_2fju_ifju_r = zhi1_2fju_ifju_r - junzhi110; minus1_3fju_ifju_r = zhi1_3fju_ifju_r - junzhi120; int fju_ya = 0, fju_yc = 0; for (int fju_p = 0; fju_p count1; fju_p+) in

51、t fju_yb = 0; minus1fju_yafju_yb+ = minus1_1fju_pfju_yc; minus1fju_yafju_yb+ = minus1_2fju_pfju_yc; minus1fju_ya+fju_yb = minus1_3fju_pfju_yc+; /*計算(j sun)第一類的類內(nèi)離散矩陣*/ int fln1_i; for (int fln1_z = 0; fln1_z count1; fln1_z+) for (int fln1_b = 0; fln1_b 3; fln1_b+) for (int fln1_c = 0; fln1_c 3; fln1

52、_c+) juzhen1fln1_bfln1_c += minus1fln1_zfln1_b * minus1fln1_zfln1_c; /*對第二類值進行計算(j sun),得到相應的類內(nèi)離散矩陣/第二個均值(jn zh)向量 try Connection con = Conn.getConnection(); Statement stmt = con.createStatement(); String txl2_sql =select avg(life),avg(knowledge),avg(gdp) from develop_table where type=第二類; ResultSet

53、 rs1 = stmt.executeQuery(txl2_sql); while (rs1.next() junzhi200 = rs1.getFloat(1); junzhi210 = rs1.getFloat(2); junzhi220 = rs1.getFloat(3); rs1.close(); stmt.close(); con.close(); catch (Exception ex) ex.getStackTrace(); /第二個矩陣 float zhi2_1 = new floatcount2count2All_1; /第二類向量中的數(shù)值 float zhi2_2 = ne

54、w floatcount2count2All_2; float zhi2_3 = new floatcount2count2All_3; float minus2_1 = new floatcount2count2All_1; /x-m2 float minus2_2 = new floatcount2count2All_1; float minus2_3 = new floatcount2count2All_1; float zhi2 = new floatcount23; float minus2 = new floatcount23; count2All = count2All_1 +

55、count2All_2 + count2All_3; int tj2_j = 0;/求第二類中值(zhn zh)的各維向量 try Connection con = Conn.getConnection(); Statement stmt = con.createStatement(); String tj2_sql = select life,knowledge,gdp from develop_table where type=第二類; ResultSet rs = stmt.executeQuery(tj2_sql); while (rs.next() for (int tj2_i =

56、0; tj2_i count2; tj2_i+) zhi2_1tj2_itj2_j = rs.getFloat(1); zhi2_2tj2_itj2_j = rs.getFloat(2); zhi2_3tj2_itj2_j = rs.getFloat(3); tj2_j+; /第二類各個(gg)值的矩陣形式 int tj2_xa = 0, tj2_xc = 0; for (int tj2_x = 0; tj2_x count2; tj2_x+) int tj2_xb = 0; zhi2tj2_xatj2_xb+ = zhi2_1tj2_xtj2_xc; zhi2tj2_xatj2_xb+ =

57、zhi2_2tj2_xtj2_xc; zhi2tj2_xa+tj2_xb = zhi2_3tj2_xtj2_xc+; rs.close(); stmt.close(); con.close(); catch (Exception e) e.getStackTrace(); /求第二類中向量(xingling)與均值之差 for (int mi2_i = 0; mi2_i count2; mi2_i+) for (int mi2_r = 0; mi2_r count2; mi2_r+) minus2_1mi2_imi2_r = zhi2_1mi2_imi2_r - junzhi200; minu

58、s2_2mi2_imi2_r = zhi2_2mi2_imi2_r - junzhi210; minus2_3mi2_imi2_r = zhi2_3mi2_imi2_r - junzhi220; int mi2_ya = 0, mi2_yc = 0; for (int mi2_p = 0; mi2_p count2; mi2_p+) int mi2_yb = 0; minus2mi2_yami2_yb+ = minus2_1mi2_pmi2_yc; minus2mi2_yami2_yb+ = minus2_2mi2_pmi2_yc; minus2mi2_ya+mi2_yb = minus2_3

59、mi2_pmi2_yc+; /*計算(j sun)第二類的類內(nèi)離散矩陣*/ int lnl2_i; for (int lnl2_z = 0; lnl2_z count2; lnl2_z+) for (int lnl2_b = 0; lnl2_b 3; lnl2_b+) for (int lnl2_c = 0; lnl2_c 3; lnl2_c+) juzhen2lnl2_blnl2_c += minus2lnl2_zlnl2_b * minus2lnl2_zlnl2_c; /計算類間離散(lsn)矩陣 for (int lj2_i = 0; lj2_i 3; lj2_i+) for (int

60、lj2_j = 0; lj2_j 3; lj2_j+) swlj2_ilj2_j = juzhen1lj2_ilj2_j + juzhen2lj2_ilj2_j;/對類間矩陣(j zhn)求逆 int sw_i, sw_j; sw_i = sw_j = 3; for (int sw_a = 0; sw_a 3; sw_a+) for (int sw_b = 0; sw_b 3; sw_b+) SW_sw_a + 1sw_b + 1 = swsw_asw_b; for (int sw_k = 1; sw_k = sw_i; sw_k+) for (int sw_t = sw_j + 1; sw_

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論