




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、通信網(wǎng)理論基礎(chǔ)實(shí)驗(yàn)報(bào)告信息與通信工程學(xué)院通信網(wǎng)理論基礎(chǔ)實(shí)驗(yàn)報(bào)告班級(jí): 姓名: 學(xué)號(hào): 序號(hào): 日 期: 第15頁 實(shí)驗(yàn)一erlangb公式計(jì)算器一、實(shí)驗(yàn)?zāi)康膃rlang b公式通信網(wǎng)理論基礎(chǔ)這門課程的學(xué)習(xí)重點(diǎn)之一,其表達(dá)了電話交換系統(tǒng)的時(shí)間阻塞率b(s,a)與到達(dá)的呼叫量a以及中繼線的數(shù)目s之間的關(guān)系,為電話網(wǎng)絡(luò)的規(guī)劃和中繼線容量配置奠定了基礎(chǔ)。 本次實(shí)驗(yàn)要求用計(jì)算機(jī)語言編寫erlangb公式計(jì)算器,實(shí)現(xiàn)給定任意兩個(gè)變量求解第三個(gè)變量的功能,掌握erlangb公式的計(jì)算方法,培養(yǎng)數(shù)值分析計(jì)算與算法設(shè)計(jì)能力。二、 實(shí)驗(yàn)內(nèi)容erlang即時(shí)拒絕系統(tǒng)用于建模電話交換系統(tǒng),設(shè)電話呼叫流的到來服從poi
2、sson過程,為呼叫的到達(dá)率,呼叫的持續(xù)時(shí)間服從參數(shù)的負(fù)指數(shù)分布。系統(tǒng)有s條中繼線,呼叫到來時(shí),如系統(tǒng)中有空閑的中繼線,則呼叫可到達(dá)任意一個(gè)空閑的中繼線,如果沒有空閑的中繼線,就拒絕該呼叫。在這樣的情況下,該交換系統(tǒng)的排隊(duì)系統(tǒng)模型為 。利用生滅過程穩(wěn)態(tài)分布的結(jié)論,可求解m/m/s(s)系統(tǒng)的時(shí)間阻塞率為bs,a=ass!r=0sarr!該公式給出了a,s,與b之間的關(guān)系。本次實(shí)驗(yàn)要求編寫erlang b公式的計(jì)算器,實(shí)現(xiàn)給定任意兩個(gè)變量求解第三個(gè)變量的功能:(1) 給定到達(dá)的呼叫量a和中繼線的數(shù)目s,求解系統(tǒng)的時(shí)間阻塞率b;(2) 給定系統(tǒng)的時(shí)間阻塞率的要求b和到達(dá)的呼叫量a,求解中繼線的數(shù)目
3、s,以實(shí)現(xiàn)網(wǎng)絡(luò)規(guī)劃;(3) 給定系統(tǒng)的時(shí)間阻塞率要求b以及中繼線的數(shù)目s,判斷該系統(tǒng)能支持的最大的呼叫量a。三、 實(shí)驗(yàn)要求(1) 兩人一組,利用c+或者java等語言實(shí)現(xiàn)有圖形用戶界面的三向計(jì)算能力的erlang b公式計(jì)算器,生成可獨(dú)立運(yùn)行的可執(zhí)行文件。(2) 與上的計(jì)算器結(jié)果進(jìn)行比對(duì),驗(yàn)證所編寫的erlang b公式計(jì)算器的正確性。(3) 利用所編寫的計(jì)算器,繪制:a給定情況下,b隨s的變化曲線;b給定情況下,s隨a的變化曲線;s給定情況下,b隨a的變化曲線;或者繪制三維圖形,顯示b、s和a三者之間的關(guān)系。四、程序基本信息本次實(shí)驗(yàn)我編寫了兩個(gè)程序,一
4、個(gè)是圖形界面的erlang b公式計(jì)算器,另一個(gè)是專門用于畫erlang b公式里變量關(guān)系曲線的命令行程序。1、設(shè)計(jì)語言及開發(fā)工具:(1)計(jì)算器:c+語言(mfc),采用visual studio 2010開發(fā)與設(shè)計(jì);(2)作圖程序:c語言和matlab語言,采用matlab開發(fā)。本次實(shí)驗(yàn)由于都是簡(jiǎn)單的遞歸、逼近、窮舉算法,基本不涉及面向?qū)ο蟮闹R(shí),所以基本上使用簡(jiǎn)單的c語言就能完成任務(wù)。而mfc由于其編程復(fù)雜,多少涉及了一些c+方面的內(nèi)容。由于作圖需要使用matlab,因此最好實(shí)現(xiàn)c程序和matlab的交互,這樣可以畫出任意情況的曲線。visual studio和matlab都提供了對(duì)對(duì)方的
5、基本支持,但是visual studio無法直接調(diào)用matlab的圖形系統(tǒng),而它又是這個(gè)程序的主要功能。權(quán)衡之下決定用matlab開發(fā)作圖程序。matlab具有c編譯器,可以編譯基本的c程序,在里面加入一些語句,就可以調(diào)用matlab引擎,但是matlab不支持mfc,所以只好舍棄了圖形界面。2、數(shù)據(jù)結(jié)構(gòu):本次實(shí)驗(yàn)由于算法簡(jiǎn)單,每次計(jì)算的數(shù)據(jù)之間也不存在任何關(guān)系(獨(dú)立)的,因此程序設(shè)計(jì)時(shí)只采用了諸如串、數(shù)組等簡(jiǎn)單形式用于存儲(chǔ)數(shù)據(jù),復(fù)雜的數(shù)據(jù)結(jié)構(gòu)思想諸如鏈表、樹等基本沒有采用。3、主要函數(shù)(算法):(1) erlang b計(jì)算器:為簡(jiǎn)單起見和突出重點(diǎn),這里只給出愛爾蘭b公式中變量求解相關(guān)的算法和
6、函數(shù)說明,和mfc界面相關(guān)的函數(shù)不做說明。以下三個(gè)函數(shù)共同使用如下三個(gè)變量,但它們的使用方式不同,可能作為輸出也可能是輸入:a. 到達(dá)呼叫量(bht,非負(fù)雙精度浮點(diǎn)數(shù));b. 時(shí)間阻塞率(blocking,浮點(diǎn)數(shù),取值范圍01);c. 中繼線數(shù)(lines,非負(fù)整數(shù))。double calculateblocking(double bht, int lines)函數(shù)功能:已知到達(dá)呼叫量和中繼線數(shù)(輸入),求時(shí)間阻塞率(輸出),該函數(shù)是本次程序中最基本也是最重要的函數(shù),其它函數(shù)均以它為依存。算法原理:計(jì)算時(shí)間阻塞率可以用愛爾蘭b公式本身實(shí)現(xiàn),但這種算法不僅麻煩,還可能產(chǎn)生數(shù)據(jù)溢出。有一個(gè)更為簡(jiǎn)便
7、的迭代算法。這個(gè)算法可表示為pbm,a=apb(m-1,a)m+apb(m-1,a) (m=0,1,2,n;p0,a=1)其中pb表示阻塞率,m表示中繼線數(shù),a表示到達(dá)呼叫量。這個(gè)算法表明在到達(dá)呼叫量一定時(shí),n條中繼線的阻塞率可以用(n-1)條中繼線的阻塞率表示。若要求n條中繼線的阻塞率,使用這個(gè)算法只需n次迭代就可以實(shí)現(xiàn),大大減少了運(yùn)算次數(shù),而且也不會(huì)出現(xiàn)溢出問題。 算法流程圖: int calculatelines(double bht, double blocking)函數(shù)功能:已知到達(dá)呼叫量和時(shí)間阻塞率(輸入),求中繼線數(shù)(輸出)。算法原理:對(duì)于這個(gè)運(yùn)算尚無有效的快速算法。考慮到目標(biāo)結(jié)
8、果的特殊(非負(fù)整數(shù)),故采用窮舉法,具體見下面流程圖說明。 算法流程: double calculatebht(double blocking, int lines, double presicion)函數(shù)功能:已知中繼線數(shù)、時(shí)間阻塞率和精度(輸入),求到達(dá)呼叫量(輸出)。算法原理:這個(gè)運(yùn)算同樣找不到有效的快速算法。目標(biāo)結(jié)果情況復(fù)雜(可取非負(fù)的任意數(shù),沒有上限),用普通窮舉、二分法逼近不太合適,這里我采用的方法是一種類似于逐次逼近的窮舉法,即還是通過連續(xù)疊加逼近真實(shí)值,但是疊加值逐步縮小,并利用數(shù)學(xué)上的零點(diǎn)定理縮小判定范圍。另外還要考慮精度。 算法流程:(2) 作圖程序:作圖程序仍采用c語言編
9、寫,它采用了與erlang b計(jì)算器相同的計(jì)算函數(shù)代碼,這里不再重復(fù)介紹。為了實(shí)現(xiàn)畫圖功能,里面加入了一些matlab專用的函數(shù)或語句,需要包含engine.h頭文件才能識(shí)別。以下作簡(jiǎn)要介紹。engopen():打開matlab引擎;engevalstring(ep,cmd):在matlab引擎里執(zhí)行cmd中存儲(chǔ)的matlab命令;plot3(x,y,z):matlab命令,在三維坐標(biāo)系里畫出向量;plot(x,y):matlab命令,二維繪圖;engclose():關(guān)閉matlab引擎。五、程序運(yùn)行結(jié)果與分析1、程序運(yùn)行要求:(1)erlang b計(jì)算器:經(jīng)測(cè)試已經(jīng)可以獨(dú)立運(yùn)行,不需要任何軟
10、件支持;(2)作圖程序:該程序內(nèi)部?jī)H包含對(duì)matlab的調(diào)用而不包含matlab本身,需要計(jì)算機(jī)上安裝有matlab軟件。2、erlangb計(jì)算器運(yùn)行結(jié)果:(1)程序主界面及使用說明:該界面的設(shè)計(jì)基本采用了上的計(jì)算器界面。另外增加了一個(gè)列表框,用來顯示以前計(jì)算的結(jié)果。使用方法也與上的計(jì)算器類似。本程序?qū)ψ枞室筝斎?1之間的實(shí)數(shù),中繼線數(shù)要求輸入非負(fù)整數(shù),到達(dá)呼叫量要求輸入非負(fù)實(shí)數(shù)。后兩者支持的輸入范圍非常大,而網(wǎng)上的計(jì)算器則要求信道數(shù)和到達(dá)呼叫量都要小于180,當(dāng)然輸入數(shù)據(jù)越大所需要的計(jì)算時(shí)間也越長(zhǎng)。另外計(jì)算到達(dá)呼叫量時(shí),可以實(shí)現(xiàn)任意精度的運(yùn)
11、算,需要在如下對(duì)話框中指定。以下隨機(jī)選取5組計(jì)算截圖,以驗(yàn)證本計(jì)算器的準(zhǔn)確性。網(wǎng)上的愛爾蘭計(jì)算器源自/calculator/erlb/。 第一組: 第二組: 第三組: 第四組(取精度為0.001): 第五組: 實(shí)際操作中,計(jì)算信道數(shù)可能有1的誤差。 2、作圖程序(兼圖形分析): 為實(shí)現(xiàn)作出不同情況下的圖形,我編了三個(gè)程序,分別是作阻塞率、信道數(shù)和到達(dá)呼叫量三者之間的關(guān)系圖的程序,作信道數(shù)與阻塞率的關(guān)系圖(到達(dá)呼叫量一定)的程序、作到達(dá)呼叫量與阻塞率的關(guān)系圖(信道數(shù)一定)的程序。信道數(shù)與到達(dá)呼叫量關(guān)系的程序由于某些原因沒有編寫成功,只好改用matlab語言
12、重寫了一個(gè)。除了作到達(dá)呼叫量與阻塞率的關(guān)系圖程序外,其它三個(gè)程序都要求輸入相關(guān)信息,如限定量、最大信道數(shù)(呼叫量)、精度等。最大信道數(shù)(呼叫量)越大圖形表示范圍越大,阻塞率精度越小圖形越精密,當(dāng)然要獲得更好的結(jié)果需要更長(zhǎng)的執(zhí)行時(shí)間。選擇好后程序會(huì)給出圖像。 選擇精度和信道數(shù)的界面: 三個(gè)程序的界面是類似的,以下不再給出其他程序的界面。信道數(shù)和阻塞率關(guān)系圖:(最大信道數(shù)100,限定到達(dá)呼叫量30.5erl)圖像分析:信道數(shù)為0時(shí)阻塞率為1(對(duì)到達(dá)呼叫全部拒絕),而后阻塞率隨信道數(shù)增加而大幅減小,信道數(shù)達(dá)到一定程度阻塞率幾乎為0,此時(shí)基本可以保證所有到達(dá)呼叫都能被服務(wù),不需要再增加信道數(shù)。到達(dá)呼叫
13、量和阻塞率關(guān)系圖:(最大到達(dá)呼叫量80,限定信道數(shù)100,呼叫量精度0.1)曲線分析:該圖說明,給定特定個(gè)數(shù)的信道,可以保證一定范圍內(nèi)的到達(dá)呼叫不被拒絕,但是超過這個(gè)范圍后阻塞率就會(huì)急劇增加,此時(shí)需要增加信道。到達(dá)呼叫量和信道數(shù)關(guān)系圖:(阻塞率限定為0.15,最大信道數(shù)100)曲線分析:在保證阻塞率不變的情況下,信道數(shù)與呼叫量大致呈線性正比關(guān)系,也就是說要保證相同的服務(wù)質(zhì)量,到達(dá)的呼叫量越多,相應(yīng)的就要增加更多的信道(中繼線)。阻塞率、信道數(shù)和到達(dá)呼叫量三者之間的關(guān)系圖(三維):(到達(dá)呼叫量精度0.1,最大呼叫量30,最大信道數(shù)50)六、遇到的主要問題算法部分:1、計(jì)算阻塞率時(shí)數(shù)據(jù)有較大誤差。
14、這次實(shí)驗(yàn)涉及的算法精密度非常高,有一個(gè)地方和正確算法不符結(jié)果就會(huì)出現(xiàn)較大誤差,必須要仔細(xì)檢查算法的每一個(gè)步驟。2、計(jì)算阻塞率時(shí)數(shù)據(jù)出現(xiàn)溢出。采用愛爾蘭b公式計(jì)算會(huì)出現(xiàn)這個(gè)問題,導(dǎo)致可計(jì)算的范圍大大縮小,而選用迭代算法后問題就不會(huì)出現(xiàn)。猜想溢出是計(jì)算大數(shù)階乘時(shí)發(fā)生的。3、計(jì)算信道數(shù)時(shí)可能會(huì)有1的誤差。這是與網(wǎng)上的計(jì)算器相比時(shí)出現(xiàn)的。本程序在設(shè)計(jì)算法時(shí),若計(jì)算出的信道數(shù)結(jié)果是非整數(shù),則按向下取整處理的,而網(wǎng)上的計(jì)算器的處理方法可能是按照四舍五入,因此有可能出現(xiàn)這樣的情況。mfc設(shè)計(jì)部分:4、mfc實(shí)際調(diào)試時(shí)三個(gè)單選框沒有關(guān)聯(lián)到一起(出現(xiàn)多選)。給一個(gè)單選框的group屬性設(shè)置為true。5、列表框
15、不顯示結(jié)果。每次更新列表時(shí)都要先初始化,并且要插入新結(jié)果時(shí)還要按如下語句新增一項(xiàng):list-insertitem(0,);6、調(diào)試時(shí),在“精度要求”對(duì)話框中,直接單擊取消會(huì)出現(xiàn)程序錯(cuò)誤。 主程序時(shí)沒有對(duì)該按鈕設(shè)置適當(dāng)?shù)奶幚泶a所致。因?yàn)樵搶?duì)話框只有兩個(gè)按鈕,所以代碼按如下組織:if(dlg.domodal()=idok) precision=dlg.m_input;elsereturn; matlab作圖部分: 7、畫出的圖像元素(如標(biāo)題、坐標(biāo)軸標(biāo)記)缺失。 對(duì)應(yīng)的title,xlabel等語句中包含了不可識(shí)別的字符,這樣的語句matlab不予執(zhí)行。8、最后畫出的圖像有誤,出現(xiàn)直線,調(diào)用mat
16、lab查看時(shí),發(fā)現(xiàn)某些向量所有項(xiàng)都為一個(gè)整數(shù)。 經(jīng)查找資料后發(fā)現(xiàn)問題來自matlab 的c編譯器。原先在visual studio 2010中開發(fā)時(shí),阻塞率和到達(dá)呼叫量都是聲明為double(雙精度浮點(diǎn))型,而matlab的c編譯器似乎把double視為長(zhǎng)整型,因此出現(xiàn)這個(gè)問題。把所有double變量類型改為float后問題解決。 9、編寫完畫信道數(shù)和到達(dá)呼叫量關(guān)系圖的程序后(c語言),調(diào)試時(shí)程序進(jìn)入死循環(huán),無法作圖。 無論輸入怎樣的值都會(huì)出現(xiàn)這種情況,并且檢查程序后也沒有發(fā)現(xiàn)什么問題,嘗試多次后無奈放棄,其他三個(gè)程序并無此問題?,F(xiàn)在猜想可能是由于主函數(shù)以外聲明了兩個(gè)函數(shù),且其中一個(gè)函數(shù)包含對(duì)另一個(gè)函數(shù)的調(diào)用,編譯時(shí)不知道出了什么岔子導(dǎo)致程序陷入死循環(huán)。這個(gè)程序與mfc程序代碼并無較大不同,懷疑是matlab中c編譯器的缺陷。七、實(shí)驗(yàn)總結(jié)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 洼田飲水評(píng)估的操作要點(diǎn)
- 自然語言及語音處理項(xiàng)目式教程 實(shí)訓(xùn)指導(dǎo) 實(shí)訓(xùn)1 配置NLP環(huán)境
- 分析師預(yù)期選股策略月報(bào):分析師預(yù)期修正選股策略今年相對(duì)中證全指超額3.06
- 2025以色列與伊朗沖突全面解析課件
- 氫能源未來2025年加氫站建設(shè)成本效益分析與布局指南報(bào)告
- 2025年家具制造業(yè)個(gè)性化定制生產(chǎn)模式市場(chǎng)風(fēng)險(xiǎn)預(yù)警報(bào)告
- 2025年煤炭清潔燃燒技術(shù)產(chǎn)業(yè)鏈上下游協(xié)同發(fā)展報(bào)告
- 工業(yè)互聯(lián)網(wǎng)平臺(tái)安全多方計(jì)算在智能倉儲(chǔ)物流中的應(yīng)用報(bào)告
- 教育大數(shù)據(jù)分析2025年:教育資源配置優(yōu)化與教育公平研究報(bào)告
- 工業(yè)互聯(lián)網(wǎng)平臺(tái)網(wǎng)絡(luò)安全態(tài)勢(shì)感知技術(shù)在電力行業(yè)的應(yīng)用與優(yōu)化報(bào)告
- 貴陽市南明區(qū)吉祥寵物醫(yī)院建設(shè)項(xiàng)目環(huán)評(píng)報(bào)告
- 智能制造裝備及系統(tǒng) 配套課件
- 遼寧省沈陽市沈北新區(qū)2022-2023學(xué)年六年級(jí)下學(xué)期期末考試語文試題
- 北師大版七年級(jí)上冊(cè)數(shù)學(xué)27有理數(shù)的乘法課件(2課時(shí))
- 安全生產(chǎn)標(biāo)準(zhǔn)化推進(jìn)計(jì)劃 模板
- 2022年咖啡師資格證考試參考題庫及答案
- 新視野大學(xué)英語第三版第一冊(cè)電子書
- 野生動(dòng)物管理學(xué)知到章節(jié)答案智慧樹2023年東北林業(yè)大學(xué)
- 2023年黑龍江省文化和旅游系統(tǒng)事業(yè)單位人員招聘筆試模擬試題及答案解析
- 口才與演講實(shí)訓(xùn)教程智慧樹知到答案章節(jié)測(cè)試2023年湖南師范大學(xué)
- 部編版六年級(jí)語文下冊(cè)課件第1課《北京的春節(jié)》《臘八粥》
評(píng)論
0/150
提交評(píng)論