算法效率

算法效率是指算法執(zhí)行的時(shí)間,算法執(zhí)行時(shí)間需通過依據(jù)該算法編制的程序在計(jì)算機(jī)上運(yùn)行時(shí)所消耗的時(shí)間來度量。

算法效率基本信息

中文名 算法效率 外文名 algorithm efficiency
依????據(jù) 程序在計(jì)算機(jī)上運(yùn)行消耗時(shí)間 方????法 事后統(tǒng)計(jì)的方法等
類????型 算法執(zhí)行時(shí)間 使用范圍 計(jì)算機(jī)程序語言

對(duì)數(shù)據(jù)的邏輯結(jié)構(gòu)進(jìn)行選擇,是構(gòu)造數(shù)學(xué)模型一大關(guān)鍵,而算法又是用來解決數(shù)學(xué)模型的。要使算法效率高,首先必須選好數(shù)據(jù)的邏輯結(jié)構(gòu)。選擇邏輯結(jié)構(gòu)的目的是提高信息的利用效果。在解決問題的過程中,選擇合理的邏輯結(jié)構(gòu)是相當(dāng)重要的環(huán)節(jié)。

算法效率選擇合理的存儲(chǔ)結(jié)構(gòu)

數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu),分為順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。順序存儲(chǔ)結(jié)構(gòu)的特點(diǎn)是借助元素在存儲(chǔ)器中的相對(duì)位置來表示數(shù)據(jù)元素之間的邏輯關(guān)系;鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)則是借助指示元素存儲(chǔ)地址的指針表示數(shù)據(jù)元素之間的邏輯關(guān)系。因?yàn)閮煞N存儲(chǔ)結(jié)構(gòu)的不同,導(dǎo)致這兩種存儲(chǔ)結(jié)構(gòu)在具體使用時(shí)也分別存在著優(yōu)點(diǎn)和缺點(diǎn)。 這里有一個(gè)較簡(jiǎn)單的例子:我們需要記錄一個(gè)n×n的矩陣,矩陣中包含的非0元素為m個(gè)。 此時(shí),我們?nèi)舨捎庙樞虼鎯?chǔ)結(jié)構(gòu),就會(huì)使用一個(gè)n×n的二維數(shù)組,將所有數(shù)據(jù)元素全部記錄下來;若采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu),則需要使用一個(gè)包含m個(gè)結(jié)點(diǎn)的鏈表,記錄所有非0的m個(gè)數(shù)據(jù)元素。由這樣兩種不同的記錄方式,我們可以通過對(duì)數(shù)據(jù)的不同操作來分析它們的優(yōu)點(diǎn)和缺點(diǎn)。

1. 隨機(jī)訪問矩陣中任意元素。由于順序結(jié)構(gòu)在物理位置上是相鄰的,所以可以很容易地獲得任意元素的存儲(chǔ)地址,其復(fù)雜度為O(1);對(duì)于鏈?zhǔn)浇Y(jié)構(gòu),由于不具備物理位置相鄰的特點(diǎn),所以首先必須對(duì)整個(gè)鏈表進(jìn)行一次遍歷,尋找需進(jìn)行訪問的元素的存儲(chǔ)地址,其復(fù)雜度為O(m)。此時(shí)使用順序結(jié)構(gòu)顯然效率更高。

2. 對(duì)所有數(shù)據(jù)進(jìn)行遍歷。兩種存儲(chǔ)結(jié)構(gòu)對(duì)于這種操作的復(fù)雜度是顯而易見的,順序結(jié)構(gòu)的復(fù)雜度為O(n2),鏈?zhǔn)浇Y(jié)構(gòu)為O(m)。由于在一般情況下m要遠(yuǎn)小于n2,所以此時(shí)鏈?zhǔn)浇Y(jié)構(gòu)的效率要高上許多。除上述兩種操作外,對(duì)于其它的操作,這兩種結(jié)構(gòu)都不存在很明顯的優(yōu)點(diǎn)和缺點(diǎn),如對(duì)鏈表進(jìn)行刪除或插入操作,在順序結(jié)構(gòu)中可表示為改變相應(yīng)位置的數(shù)據(jù)元素。 既然兩種存儲(chǔ)結(jié)構(gòu)對(duì)于不同的操作,其效率存在較大的差異,那么我們?cè)诖_定存儲(chǔ)結(jié)構(gòu)時(shí),必須仔細(xì)分析算法中操作的需要,合理地選擇一種能夠“揚(yáng)長(zhǎng)避短”的存儲(chǔ)結(jié)構(gòu)。

存儲(chǔ)結(jié)構(gòu)的選擇包括以下兩種。

一、合理采用順序存儲(chǔ)結(jié)構(gòu)。我們?cè)谄匠W鲱}時(shí),大多都是使用順序存儲(chǔ)結(jié)構(gòu)對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)。究其原因,一方面是出于順序結(jié)構(gòu)操作方便的考慮,另一方面是在程序?qū)崿F(xiàn)的過程中,使用順序結(jié)構(gòu)相對(duì)于鏈?zhǔn)浇Y(jié)構(gòu)更便于對(duì)程序進(jìn)行調(diào)試和查找錯(cuò)誤。因此,大多數(shù)人習(xí)慣上認(rèn)為,能夠使用順序結(jié)構(gòu)進(jìn)行存儲(chǔ)的問題,最“好”采用順序存儲(chǔ)結(jié)構(gòu)。其實(shí),這個(gè)所謂的“好”只是一個(gè)相對(duì)的標(biāo)準(zhǔn),是建立在以下兩個(gè)前提條件之下的:

1. 鏈?zhǔn)浇Y(jié)構(gòu)存儲(chǔ)的結(jié)點(diǎn)與順序結(jié)構(gòu)存儲(chǔ)的結(jié)點(diǎn)數(shù)目相差不大。這種情況下,由于存儲(chǔ)的結(jié)點(diǎn)數(shù)目比較接近,使用鏈?zhǔn)浇Y(jié)構(gòu)完全不能體現(xiàn)出記錄結(jié)點(diǎn)少的優(yōu)點(diǎn),并且可能會(huì)由于指針操作較慢而降低算法的效率。更有甚者,由于指針自身占用的空間較大,且結(jié)點(diǎn)數(shù)目較多,因而算法對(duì)空間的要求可能根本無法得到滿足。

2. 并非算法效率的瓶頸所在。由于不是算法最費(fèi)時(shí)間的地方,這里是否進(jìn)行改進(jìn),顯然是不會(huì)對(duì)整個(gè)算法構(gòu)成太大影響的,若使用鏈?zhǔn)浇Y(jié)構(gòu)反而會(huì)顯得操作過于繁瑣。

二、必要時(shí)采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。

由于鏈?zhǔn)浇Y(jié)構(gòu)中指針操作確實(shí)較繁瑣,并且速度也較慢,調(diào)試也不方便,因而大家一般都不太愿意用鏈?zhǔn)降拇鎯?chǔ)結(jié)構(gòu)。但是,這只是一般的觀點(diǎn),當(dāng)鏈?zhǔn)浇Y(jié)構(gòu)確實(shí)對(duì)算法有很大改進(jìn)時(shí),我們還是不得不進(jìn)行考慮的。

然而,如果我們采用的是鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu),那么我們需要多少數(shù)據(jù),就只會(huì)遍歷多少數(shù)據(jù),這樣不僅充分發(fā)揮了鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的優(yōu)點(diǎn),而且由于不需單獨(dú)對(duì)某一個(gè)數(shù)據(jù)進(jìn)行提取,每次都是對(duì)所有數(shù)據(jù)進(jìn)行判斷,從而避免了鏈?zhǔn)浇Y(jié)構(gòu)的最大缺點(diǎn)。我們使用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu),雖然沒有降低問題的時(shí)間復(fù)雜度(鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)在最壞情況下的存儲(chǔ)量與順序存儲(chǔ)結(jié)構(gòu)的存儲(chǔ)量幾乎相同),但由于體現(xiàn)了前文所述選擇存儲(chǔ)結(jié)構(gòu)時(shí)揚(yáng)長(zhǎng)避短的原則,因而算法的效率也大為提高。我們選擇鏈?zhǔn)降拇鎯?chǔ)結(jié)構(gòu),雖然操作上可能稍復(fù)雜一些,但由于改進(jìn)了算法的瓶頸,算法的效率自然也今非昔比。由此可見,必要時(shí)選擇鏈?zhǔn)浇Y(jié)構(gòu)這一方法,其效果是不容忽視的。

算法效率使用直接初始化

與直接初始化對(duì)應(yīng)的是復(fù)制初始化,什么是直接初始化?什么又是復(fù)制初始化?舉個(gè)簡(jiǎn)單的例子,

ClassTestct1;ClassTestct2(ct1);//直接初始化ClassTestct3=ct1;//復(fù)制初始化

那么直接初始化與復(fù)制初始化又有什么不同呢?直接初始化是直接以一個(gè)對(duì)象來構(gòu)造另一個(gè)對(duì)象,如用ct1來構(gòu)造ct2,復(fù)制初始化是先構(gòu)造一個(gè)對(duì)象,再把另一個(gè)對(duì)象值復(fù)制給這個(gè)對(duì)象,如先構(gòu)造一個(gè)對(duì)象ct3,再把ct1中的成員變量的值復(fù)制給ct3,從這里,可以看出直接初始化的效率更高一點(diǎn),而且使用直接初始化還是一個(gè)好處,就是對(duì)于不能進(jìn)行復(fù)制操作的對(duì)象,如流對(duì)象,是不能使用賦值初始化的,只能進(jìn)行直接初始化??赡芪艺f得不太清楚,那么下面就引用一下經(jīng)典吧!

以下是Primer是的原話:

“當(dāng)用于類類型對(duì)象時(shí),初始化的復(fù)制形式和直接形式有所不同:直接初始化直接調(diào)用與實(shí)參匹配的構(gòu)造函數(shù),復(fù)制初始化總是調(diào)用復(fù)制構(gòu)造函數(shù)。復(fù)制初始化首先使用指定構(gòu)造函數(shù)創(chuàng)建一個(gè)臨時(shí)對(duì)象,然后用復(fù)制構(gòu)造函數(shù)將那個(gè)臨時(shí)對(duì)象復(fù)制到正在創(chuàng)建的對(duì)象”,還有一段這樣說,“通常直接初始化和復(fù)制初始化僅在低級(jí)別優(yōu)化上存在差異,然而,對(duì)于不支持復(fù)制的類型,或者使用非explicit構(gòu)造函數(shù)的時(shí)候,它們有本質(zhì)區(qū)別:

ifstreamfile1("filename")://ok:directinitializationifstreamfile2="filename";//error:copyconstructorisprivate

算法效率盡量減少值傳遞,多用引用來傳遞參數(shù)。

如果參數(shù)是int等語言自定義的類型可能能性能的影響還不是很大,但是如果參數(shù)是一個(gè)類的對(duì)象,那么其效率問題就不言而喻了。例如一個(gè)判斷兩個(gè)字符串是否相等的函數(shù),其聲明如下:

boolCompare(strings1,strings2)boolCompare(string*s1,string*s2)boolCompare(string&s1,string&s2)boolCompare(conststring&s1,conststring&s2)

其中若使用第一個(gè)函數(shù)(值傳遞),則在參數(shù)傳遞和函數(shù)返回時(shí),需要調(diào)用string的構(gòu)造函數(shù)和析構(gòu)函數(shù)兩次(即共多調(diào)用了四個(gè)函數(shù)),而其他的三個(gè)函數(shù)(指針傳遞和引用傳遞)則不需要調(diào)用這四個(gè)函數(shù)。因?yàn)橹羔樅鸵枚疾粫?huì)創(chuàng)建新的對(duì)象。如果一個(gè)構(gòu)造一個(gè)對(duì)象和析構(gòu)一個(gè)對(duì)象的開銷是龐大的,這就是會(huì)效率造成一定的影響。

然而在很多人的眼中,指針是一個(gè)惡夢(mèng),使用指針就意味著錯(cuò)誤,那么就使用引用吧!它與使用普通值傳遞一樣方便直觀,同時(shí)具有指針傳遞的高效和能力。因?yàn)橐檬且粋€(gè)變量的別名,對(duì)其操作等同于對(duì)實(shí)際對(duì)象操作,所以當(dāng)你確定在你的函數(shù)是不會(huì)或不需要變量參數(shù)的值時(shí),就大膽地在聲明的前面加上一個(gè)const吧,就如最后的一個(gè)函數(shù)聲明一樣。

同時(shí)加上一個(gè)const還有一個(gè)好處,就是可以對(duì)常量進(jìn)行引用,若不加上const修飾符,引用是不能引用常量的。

算法效率減少除法運(yùn)算的使用

無論是整數(shù)還是浮點(diǎn)數(shù)運(yùn)算,除法都是一件運(yùn)算速度很慢的指令,在計(jì)算機(jī)中實(shí)現(xiàn)除法是比較復(fù)雜的。所以要減少除法運(yùn)算的次數(shù),下面介紹一些簡(jiǎn)單方法來提高效率:

1、通過數(shù)學(xué)的方法,把除法變?yōu)槌朔ㄟ\(yùn)算,如if(a > b/c),如果a、b、c都是正數(shù),則可寫成if(a*c > b)

2、讓編譯器有優(yōu)化的余地,如里你要做的運(yùn)算是int型的n/8的話,寫成(unsigned)n/8有利于編譯器的優(yōu)化。而要讓編譯器有優(yōu)化的余地,則除數(shù)必須為常數(shù),而這也可以用const修飾一個(gè)變量來達(dá)到目的。

算法效率避免使用多重繼承

在C 中,支持多繼承,即一個(gè)子類可以有多個(gè)父類。書上都會(huì)告訴我們,多重繼承的復(fù)雜性和使用的困難,并告誡我們不要輕易使用多重繼承。其實(shí)多重繼承并不僅僅使程序和代碼變得更加復(fù)雜,還會(huì)影響程序的運(yùn)行效率。

這是因?yàn)樵贑 中每個(gè)對(duì)象都有一個(gè)this指針指向?qū)ο蟊旧?,而C 中類對(duì)成員變量的使用是通過this的地址加偏移量來計(jì)算的,而在多重繼承的情況下,這個(gè)計(jì)算會(huì)變量更加復(fù)雜,從而降低程序的運(yùn)行效率。而為了解決二義性,而使用虛基類的多重繼承對(duì)效率的影響更為嚴(yán)重,因?yàn)槠淅^承關(guān)系更加復(fù)雜和成員變量所屬的父類關(guān)系更加復(fù)雜。

算法效率將小粒度函數(shù)聲明為內(nèi)聯(lián)函數(shù)

調(diào)用函數(shù)是需要保護(hù)現(xiàn)場(chǎng),為局部變量分配內(nèi)存,函數(shù)結(jié)束后還要恢復(fù)現(xiàn)場(chǎng)等開銷,而內(nèi)聯(lián)函數(shù)則是把它的代碼直接寫到調(diào)用函數(shù)處,所以不需要這些開銷,但會(huì)使程序的源代碼長(zhǎng)度變大。

所以若是小粒度的函數(shù),如下面的Max函數(shù),由于不需要調(diào)用普通函數(shù)的開銷,所以可以提高程序的效率。

intMax(inta,intb)
{
returna>b"J-main-content-end-dom">

算法效率造價(jià)信息

市場(chǎng)價(jià) 信息價(jià) 詢價(jià)
材料名稱 規(guī)格/型號(hào) 市場(chǎng)價(jià)
(除稅)
工程建議價(jià)
(除稅)
行情 品牌 單位 稅率 供應(yīng)商 報(bào)價(jià)日期
SDK算法接入軟件 算法倉庫的功能包括算法管理、調(diào)度管理和算法評(píng)價(jià)等.通過統(tǒng)一發(fā)布的標(biāo)準(zhǔn)接口 支持以SDK對(duì)接調(diào)用的方式接入任意廠家的任意分析算法. 查看價(jià)格 查看價(jià)格

L.JOY

13% 南京埃爾喬億自控設(shè)備有限公司
算法建庫質(zhì)量評(píng)價(jià)軟件 算法評(píng)價(jià)是算法倉庫作為平臺(tái)的一個(gè)評(píng)分功能 建庫質(zhì)量評(píng)價(jià). 查看價(jià)格 查看價(jià)格

L.JOY

13% 南京埃爾喬億自控設(shè)備有限公司
算法比對(duì)質(zhì)量評(píng)價(jià)軟件 算法評(píng)價(jià)是算法倉庫作為平臺(tái)的一個(gè)評(píng)分功能 比對(duì)質(zhì)量評(píng)價(jià). 查看價(jià)格 查看價(jià)格

L.JOY

13% 南京埃爾喬億自控設(shè)備有限公司
燃燒效率分析儀 型號(hào):km400;系列:煙氣分析儀;說明:可測(cè)O2/CO/溫度/壓力,大屏幕液晶顯示; 查看價(jià)格 查看價(jià)格

凱恩

13% 重慶德源勝儀器有限公司
燃燒效率分析儀 型號(hào):km250;系列:煙氣分析儀;說明:可測(cè)O2/CO/溫度; 查看價(jià)格 查看價(jià)格

凱恩

13% 重慶德源勝儀器有限公司
算法攝像機(jī) 圖像傳感器具有1/1.8cmOS;分辨率支持2560×1440;鏡頭:37倍光學(xué)變倍 焦距5.6-208mm;支持多算法切換:支持人臉抓拍、 查看價(jià)格 查看價(jià)格

臺(tái)

13% 東莞廣恩電子有限公司
人臉算法系統(tǒng)V1.0 規(guī)格mm 型號(hào)V1.0 材質(zhì)1、支持200臺(tái)終端;2、可支撐5萬用戶量. 查看價(jià)格 查看價(jià)格

13% 重慶匯騰酒店設(shè)備有限公司
400萬多算法筒型攝像機(jī) 車輛識(shí)別柔光筒型攝像機(jī) 查看價(jià)格 查看價(jià)格

華為

臺(tái) 13% 北京宏遠(yuǎn)合創(chuàng)科技有限公司
材料名稱 規(guī)格/型號(hào) 除稅
信息價(jià)
含稅
信息價(jià)
行情 品牌 單位 稅率 地區(qū)/時(shí)間
暫無數(shù)據(jù)
材料名稱 規(guī)格/需求量 報(bào)價(jià)數(shù) 最新報(bào)價(jià)
(元)
供應(yīng)商 報(bào)價(jià)地區(qū) 最新報(bào)價(jià)時(shí)間
AI算法訓(xùn)練 AI算法訓(xùn)練|25天 3 查看價(jià)格 廣州市熹尚科技設(shè)備有限公司 廣東   2021-07-16
AI算法訓(xùn)練 AI算法訓(xùn)練|60天 3 查看價(jià)格 浙江大華技術(shù)股份有限公司深圳分公司 廣東   2021-03-31
客流算法授權(quán) 客流分析算法授權(quán)|109路 2 查看價(jià)格 廣州天銳信息工程有限公司 全國(guó)   2021-05-31
人臉算法授權(quán) 人臉算法,按照接入路數(shù)收費(fèi),前端抓拍機(jī)數(shù)量|1000路 1 查看價(jià)格 廣州帝視尼電子科技有限公司 廣東   2019-10-30
500萬高空拋物攝像機(jī)-算法 高空拋物算法|42路 1 查看價(jià)格 廣州市熹尚科技設(shè)備有限公司 全國(guó)   2021-12-02
算法軟件 /|1臺(tái) 1 查看價(jià)格 廣州市熹尚科技設(shè)備有限公司 廣東  深圳市 2021-12-27
??低暩呖諕佄?font color='red'>算法軟件系統(tǒng) ??低暩呖諕佄?font color='red'>算法軟件系統(tǒng)|1項(xiàng) 1 查看價(jià)格 廣州賽瑞電子有限公司 廣東  深圳市 2022-08-12
人臉識(shí)別算法 1.包含算法系統(tǒng)和承載服務(wù)器;2.支持多達(dá)200臺(tái)終端,最高可支撐2萬用戶量;3.提供web管理服務(wù);4.識(shí)別日志可保持六個(gè)月;5.處理器:不低于Intel至強(qiáng)E3-1200;CPU頻率:3.3|1臺(tái) 1 查看價(jià)格 南京小牛智能科技有限公司 全國(guó)   2019-12-03

算法效率定義

算法效率是指算法執(zhí)行的時(shí)間,算法執(zhí)行時(shí)間需通過依據(jù)該算法編制的程序在計(jì)算機(jī)上運(yùn)行時(shí)所消耗的時(shí)間來度量。在現(xiàn)在的計(jì)算機(jī)硬件環(huán)境中,比較少需要考慮這個(gè)問題了,特別是pc機(jī)的編程,內(nèi)存空間越來越大,所以被考慮得也越來越少,不過一個(gè)好的程序員,都應(yīng)該對(duì)自己的程序有要求,每一個(gè)for比別人少一次判斷1000個(gè)for就能夠少掉很多的運(yùn)行時(shí)間。所以能夠理解,能夠大概的去運(yùn)用"效率度量"還是有很大意義的。

算法效率度量方法

度量一個(gè)程序的執(zhí)行時(shí)間通常有兩種方法:(一)事后統(tǒng)計(jì)的方法(二)事前分析估算的方法。

事后統(tǒng)計(jì)的方法不利于較大范圍內(nèi)的算法比較(異地,異時(shí),異境)。

事前分析估算的方法與許多因素有關(guān),包括算法本身選用的策略、問題的規(guī)模、書寫程序的語言、編譯產(chǎn)生的機(jī)器代碼質(zhì)量和機(jī)器執(zhí)行指令的速度等。為便于比較算法本身的優(yōu)劣,應(yīng)排除其它影響算法效率的因素。從算法中選取一種對(duì)于所研究的問題來說是基本操作的原操作,以該基本操作重復(fù)執(zhí)行的次數(shù)作為算法的時(shí)間量。(原操作在所有該問題的算法中都相同)

度量一個(gè)程序運(yùn)行時(shí)間的方式通過時(shí)間復(fù)雜度和空間復(fù)雜度來表征。

上式表示隨問題規(guī)模n的增大,算法執(zhí)行時(shí)間的增長(zhǎng)率和f(n)的增長(zhǎng)率相同,稱作算法的漸近時(shí)間復(fù)雜度,簡(jiǎn)稱時(shí)間復(fù)雜度。

上式表示空間復(fù)雜度。空間復(fù)雜度可以作為算法所需存儲(chǔ)空間的量度。若額外空間相對(duì)于輸入數(shù)據(jù)量來說是常數(shù),則稱此算法為原地工作。原地工作意思是一個(gè)算法需要少量的輔助空間,且其大小不隨問題規(guī)模的大小而改變。如果所占空間量依賴于特定的輸入,則除特別指明外,均按最壞情況來分析 。

算法效率算法的最優(yōu)、最差和平均效率

最差效率:指當(dāng)輸入規(guī)模為n時(shí),算法的最壞情況下的效率。

最優(yōu)效率:指當(dāng)輸入規(guī)模為n時(shí),算法在最優(yōu)情況下的效率。

平均效率:指當(dāng)輸入規(guī)模為n時(shí),算法的平均效率。

大量實(shí)踐經(jīng)驗(yàn)告訴我們,我們?cè)u(píng)價(jià)一個(gè)算法是應(yīng)該重點(diǎn)考慮最差效率這一點(diǎn)。

算法效率常見問題

  • 算法?

    短跑的就是計(jì)算150厚度,按其水平投影面積計(jì)算,包含一半的梯井調(diào)出的板應(yīng)該是單獨(dú)計(jì)算,計(jì)入在挑檐板中吧

  • 算法

    一般都是300寬  3MM厚,這樣每米重量為0.3*3*7.85=7.065kg,這樣一噸為1000/7.065=141m

  • 算法

    也是計(jì)算的混凝土的體積啊只是要扣減壓型棱槽

算法效率文獻(xiàn)

基于權(quán)重與匹配效率的防火墻規(guī)則集優(yōu)化算法 基于權(quán)重與匹配效率的防火墻規(guī)則集優(yōu)化算法

格式:pdf

大?。?span id="aiqkqqs" class="single-tag-height">441KB

頁數(shù): 未知

評(píng)分: 4.4

研究并分析防火墻規(guī)則集的優(yōu)化方法,給出規(guī)則與網(wǎng)絡(luò)數(shù)據(jù)包的的匹配頻率、匹配熱度和規(guī)則權(quán)重的關(guān)系公式;設(shè)計(jì)并編寫基于權(quán)重與基于匹配效率的規(guī)則集優(yōu)化算法程序;最后通過對(duì)相應(yīng)的實(shí)驗(yàn)數(shù)據(jù)的分析比較,得出兩種算法均可較大幅度的降低防火墻規(guī)則集與網(wǎng)絡(luò)數(shù)據(jù)包的匹配次數(shù),從而優(yōu)化防火墻性能的結(jié)論。

立即下載
凝汽式汽輪機(jī)低壓缸相對(duì)內(nèi)效率的改進(jìn)算法 凝汽式汽輪機(jī)低壓缸相對(duì)內(nèi)效率的改進(jìn)算法

格式:pdf

大小:441KB

頁數(shù): 6頁

評(píng)分: 4.6

根據(jù)汽輪機(jī)低壓缸相對(duì)內(nèi)效率與其影響因素之間的映射關(guān)系,提出了一種基于免疫原理的多層徑向基函數(shù)(RBF)神經(jīng)網(wǎng)絡(luò)數(shù)學(xué)模型來計(jì)算汽輪機(jī)的低壓缸相對(duì)內(nèi)效率,并以某電廠300MW汽輪機(jī)低壓缸為例,對(duì)其相對(duì)內(nèi)效率進(jìn)行了實(shí)際計(jì)算分析.結(jié)果表明:該模型收斂速度快、計(jì)算精度高,并有較好的泛化能力.該神經(jīng)網(wǎng)絡(luò)數(shù)學(xué)模型為汽輪機(jī)相對(duì)內(nèi)效率的在線性能監(jiān)測(cè)提供了一種可行的方法.

立即下載

DFSA算法可采用各種方法預(yù)測(cè)待識(shí)別的標(biāo)簽數(shù)量,然后動(dòng)態(tài)調(diào)整最優(yōu)幀長(zhǎng),與FSA相比,系統(tǒng)效率有明顯改善,接近36.8%。但是,當(dāng)標(biāo)簽數(shù)量較多(特別是標(biāo)簽數(shù)量大于500)時(shí),采用由預(yù)測(cè)標(biāo)簽數(shù)量設(shè)置最優(yōu)幀長(zhǎng)的方案會(huì)使系統(tǒng)效率急劇下降。因此,在標(biāo)簽數(shù)量較多的情況下,為了使系統(tǒng)效率得到提高,EPCClass1Gen2標(biāo)準(zhǔn)中采用了Q值算法,該算法可以實(shí)時(shí)自適應(yīng)地調(diào)整幀長(zhǎng) 。

Q值算法

在Q值算法中,閱讀器首先發(fā)送Query命令,該命令中含有一個(gè)參數(shù)Q(取值范圍0~15),接收到命令的標(biāo)簽可在[0,2Q-1]范圍內(nèi)(稱為幀長(zhǎng))隨機(jī)選擇時(shí)隙,并將選擇的值存入標(biāo)簽的時(shí)隙計(jì)數(shù)器中,只有計(jì)數(shù)器為0的標(biāo)簽才能響應(yīng),其余標(biāo)簽保持沉默狀態(tài)。當(dāng)標(biāo)簽接收到閱讀器發(fā)送的QueryRep命令時(shí),將其時(shí)隙計(jì)數(shù)器減1,若減為0,則給閱讀器發(fā)送一個(gè)應(yīng)答信號(hào)。標(biāo)簽被成功識(shí)別后,退出這輪盤存。當(dāng)有兩個(gè)以上標(biāo)簽的計(jì)數(shù)器都為0時(shí),它們會(huì)同時(shí)對(duì)閱讀器進(jìn)行應(yīng)答,造成碰撞。閱讀器檢測(cè)到碰撞后,發(fā)出指令將產(chǎn)生碰撞的標(biāo)簽時(shí)隙計(jì)數(shù)器設(shè)為最大值(2Q-1),繼續(xù)留在這一輪盤存周期中,系統(tǒng)繼續(xù)盤存直到所有標(biāo)簽都被查詢過,然后閱讀器發(fā)送重置命令,使碰撞過的標(biāo)簽生成新的隨機(jī)數(shù) 。

根據(jù)上一輪識(shí)別的情況,閱讀器發(fā)送Query-Adjust命令來調(diào)整Q的值,當(dāng)標(biāo)簽接收到Query-Adjust命令時(shí),先更新Q值,然后在[0,2Q-1]范圍內(nèi)選擇隨機(jī)值。EPCClass1Gen2標(biāo)準(zhǔn)中提供了一種參考算法來確定Q值的范圍.其中:Qfp為浮點(diǎn)數(shù),其初值一般設(shè)為4.0,對(duì)Qfp四舍五入取整后得到的值即為Q;C為調(diào)整步長(zhǎng),其典型取值范圍是0.1

該算法在參數(shù)C的輔助下對(duì)Q值進(jìn)行動(dòng)態(tài)調(diào)整,但是C太大會(huì)造成Q值變化過于頻繁,導(dǎo)致幀長(zhǎng)調(diào)整過于頻繁,C太小又不能快速地實(shí)現(xiàn)最優(yōu)幀長(zhǎng)的選擇。因此,研究者們對(duì)Q值的調(diào)整進(jìn)行了各種優(yōu)化 。

基于最大吞吐量調(diào)整Q值的算法

文獻(xiàn)提出一種基于最大吞吐量對(duì)Q值進(jìn)行調(diào)整的算法,其中定義了以下變量:Nt為已識(shí)別的標(biāo)簽個(gè)數(shù);N為識(shí)別標(biāo)簽所需的總時(shí)隙數(shù);NC為沖突時(shí)隙的個(gè)數(shù);nu為上一輪未識(shí)別的標(biāo)簽個(gè)數(shù);e為沖突時(shí)隙中的平均標(biāo)簽個(gè)數(shù);PC為沖突時(shí)隙所占的比例 。

這些參數(shù)之間的關(guān)系為PC=NC/N,e=nu/Nc,吞吐量=Nt/N。由于Aloha類算法的最大吞吐量為0.368(e-1)[5],該算法以此作為調(diào)整Q值的依據(jù)。當(dāng)系統(tǒng)吞吐量達(dá)到或接近0.368時(shí),閱讀器僅需調(diào)用2Q-1次QueryRep命令,而不需要在接下來的盤存周期中調(diào)整Q值。當(dāng)吞吐量小于0.368時(shí),根據(jù)未識(shí)別的標(biāo)簽個(gè)數(shù)nu來調(diào)整Q值 .

基于分組的位隙Aloha算法

文獻(xiàn)提出一種基于分組的位隙Aloha算法,該算法采用位隙Aloha算法中的128位預(yù)定序列,代表128個(gè)位隙。若某個(gè)標(biāo)簽選擇了第i個(gè)位隙,則將第i位置1,其余各位都置0。當(dāng)標(biāo)簽數(shù)量為15時(shí),位隙Aloha算法可獲得最大吞吐率88.38%,但隨著標(biāo)簽數(shù)量的增加,算法性能急劇下降 。

因此,基于分組的位隙Aloha算法通過對(duì)標(biāo)簽進(jìn)行分組來提高算法的性能。該算法在查詢命令中設(shè)置了一個(gè)位隙計(jì)數(shù)器的參數(shù)Q(Q為整數(shù),且0≤Q≤15),當(dāng)標(biāo)簽收到閱讀器發(fā)送的查詢命令后,在[0,2Q-1]范圍內(nèi)生成一個(gè)隨機(jī)數(shù),即代表選擇了相應(yīng)的位隙,只有選擇了0的標(biāo)簽才會(huì)立即響應(yīng)。同時(shí),該算法根據(jù)沖突位隙數(shù)動(dòng)態(tài)地對(duì)Q值進(jìn)行調(diào)整:當(dāng)沖突位隙數(shù)小于11時(shí),Q減1且最小為0;當(dāng)沖突位隙數(shù)在11~20之間時(shí),Q保持不變;當(dāng)沖突位隙數(shù)大于20時(shí),Q加1且最大不超過15 。

綜上所述,基于Aloha的防碰撞算法原理簡(jiǎn)單、容易實(shí)現(xiàn),對(duì)新到達(dá)的標(biāo)簽具有較好的適應(yīng)性,尤其對(duì)于標(biāo)簽持續(xù)到達(dá)的情況有較好的解決方案,但該類算法存在幾個(gè)明顯的缺點(diǎn):①響應(yīng)時(shí)間不確定,即同一批標(biāo)簽在不同時(shí)刻進(jìn)行識(shí)別所需要消耗的時(shí)間相差很大;②個(gè)別標(biāo)簽可能永遠(yuǎn)無法被識(shí)別;③Aloha算法達(dá)到最佳吞吐率的條件是其幀長(zhǎng)等于標(biāo)簽數(shù)量,當(dāng)需要識(shí)別的標(biāo)簽數(shù)量較多或選擇的幀長(zhǎng)與實(shí)際待識(shí)別標(biāo)簽數(shù)量不符時(shí),系統(tǒng)性能將明顯下降。而基于樹的算法則很好地解決了這些問題 。

旋轉(zhuǎn)門算法除了平行四邊形算法之外,還能用三角形算法來表示。

效率與所取截面有關(guān)。取壓縮機(jī)進(jìn)口截面和出口截面來計(jì)算效率,則為壓縮機(jī)的效率。如果不包括進(jìn)出氣管在內(nèi),取壓縮機(jī)中第一級(jí)進(jìn)口截面和末級(jí)出口截面計(jì)算效率,則為壓縮機(jī)級(jí)組的效率。如果取壓縮機(jī)的一個(gè)級(jí)的進(jìn)口截面和出口截面計(jì)算效率,則為級(jí)的效率。 2100433B

算法效率相關(guān)推薦
  • 相關(guān)百科
  • 相關(guān)知識(shí)
  • 相關(guān)專欄

最新詞條

安徽省政采項(xiàng)目管理咨詢有限公司 數(shù)字景楓科技發(fā)展(南京)有限公司 懷化市人民政府電子政務(wù)管理辦公室 河北省高速公路京德臨時(shí)籌建處 中石化華東石油工程有限公司工程技術(shù)分公司 手持無線POS機(jī) 廣東合正采購招標(biāo)有限公司 上海城建信息科技有限公司 甘肅鑫禾國(guó)際招標(biāo)有限公司 燒結(jié)金屬材料 齒輪計(jì)量泵 廣州采陽招標(biāo)代理有限公司河源分公司 高鋁碳化硅磚 博洛尼智能科技(青島)有限公司 燒結(jié)剛玉磚 深圳市東海國(guó)際招標(biāo)有限公司 搭建香蕉育苗大棚 SF計(jì)量單位 福建省中億通招標(biāo)咨詢有限公司 泛海三江 威海鼠尾草 Excel 數(shù)據(jù)處理與分析應(yīng)用大全 廣東國(guó)咨招標(biāo)有限公司 甘肅中泰博瑞工程項(xiàng)目管理咨詢有限公司 山東創(chuàng)盈項(xiàng)目管理有限公司 拆邊機(jī) 當(dāng)代建筑大師 廣西北纜電纜有限公司 大山檳榔 上海地鐵維護(hù)保障有限公司通號(hào)分公司 舌花雛菊 甘肅中維國(guó)際招標(biāo)有限公司 華潤(rùn)燃?xì)猓ㄉ虾#┯邢薰? 湖北鑫宇陽光工程咨詢有限公司 GB8163標(biāo)準(zhǔn)無縫鋼管 中國(guó)石油煉化工程建設(shè)項(xiàng)目部 韶關(guān)市優(yōu)采招標(biāo)代理有限公司 莎草目 建設(shè)部關(guān)于開展城市規(guī)劃動(dòng)態(tài)監(jiān)測(cè)工作的通知 電梯平層準(zhǔn)確度 廣州利好來電氣有限公司 四川中澤盛世招標(biāo)代理有限公司