當前位置:首頁 » 操作系統 » 目標判重演算法

目標判重演算法

發布時間: 2022-05-15 16:03:51

❶ 路由演算法的設計目標

路由演算法通常具有下列設計目標的一個或多個:優化、簡單、低耗、健壯、穩定、快速聚合、靈活性。
(1)最優化:指路由演算法選擇最佳路徑的能力。根據metric的值和權值來計算。
(2)簡潔性:演算法設計必須簡潔。路由協議在網路中必須高效地提供其功能,盡量減少軟體和應用的開銷。這在當實現路由演算法的軟體必須運行在物理資源有限的計算機上時尤其重要。
(3)堅固性:路由演算法處於非正常或不可預料的環境時,如硬體故障、負載過高或操作失誤時,都能正確運行。由於路由器分布在網路聯接點上,所以在它們出故障時會產生嚴重後果。最好的路由器演算法通常能經受時間的考驗,並在各種網路環境下被證實是可靠的。
(4)快速收斂:收斂是在最佳路徑的判斷上所有路由器達到一致的過程。當某個網路事件引起路由可用或不可用時,路由器就發出更新信息。路由更新信息遍及整個網路,引發重新計算最佳路徑,最終達到所有路由器一致公認的最佳路徑。收斂慢的路由演算法會造成路徑循環或網路中斷。
(5)靈活性:路由演算法要求可以快速、准確地適應各種網路環境。例如,某個網段發生故障,路由演算法要能很快發現故障,並為使用該網段的所有路由選擇另一條最佳路徑。

❷ 搜索演算法的應用案例

(1)題目:黑白棋游戲
黑白棋游戲的棋盤由4×4方格陣列構成。棋盤的每一方格中放有1枚棋子,共有8枚白棋子和8枚黑棋子。這16枚棋子的每一種放置方案都構成一個游戲狀態。在棋盤上擁有1條公共邊的2個方格稱為相鄰方格。一個方格最多可有4個相鄰方格。在玩黑白棋游戲時,每一步可將任何2個相鄰方格中棋子互換位置。對於給定的初始游戲狀態和目標游戲狀態,編程計算從初始游戲狀態變化到目標游戲狀態的最短著棋序列。
(2)分析
這題我們可以想到用深度優先搜索來做,但是如果下一步出現了以前的狀態怎麼辦?直接判斷時間復雜度的可能會有點大,這題的最優解法是用廣度優先搜索來做。我們就可以有初始狀態按照廣度優先搜索遍歷來擴展每一個點,這樣到達目標狀態的步數一定是最優的(步數的增加時單調的)。但問題是如果出現了重復的情況我們就必須要判重,但是樸素的判重是可以達到狀態數級別的,其實我們可以考慮用hash表來判重。
Hash表:思路是根據關鍵碼值進行直接訪問。也就是說把一個關鍵碼值映射到表中的一個位置來訪問記錄的過程。在Hash表中,一般插入,查找的時間復雜度可以在O(1)的時間復雜度內搞定。對於這一題我們可以用二進制值表示其hash值,最多2^16次方,所以我們開個2^16次方的表記錄這個狀態出現沒有,這樣可以在O(1)的時間復雜度內解決判重問題。
進一步考慮:從初始狀態到目標狀態,必定會產生很多無用的狀態,那還有什麼優化可以減少這時間復雜度?我們可以考慮把初始狀態和目標狀態一起擴展,這樣如果初始狀態的某個被擴展的點與目標狀態所擴展的點相同時,那這兩個點不用擴展下去,而兩個擴展的步數和也就是答案。
上面的想法是雙向廣度優先搜索:
就像圖二一樣,多擴展了很多不必要的狀態。
從上面一題可以看到我們用到了兩種優化方法,即Hash表優化和雙向廣搜優化。一般的廣度優先搜索用這兩個優化就足以解決。

❸ 關於ACM的深搜和廣搜以及動態規劃

你好,親,這段講解使我們集訓隊代課老師給我們的,希望有幫助。
搜索演算法階段性總結:
BFS與DFS的討論:BFS:這是一種基於隊列這種數據結構的搜索方式,它的特點是由每一個狀態可以擴展出許多狀態,然後再以此擴展,直到找到目標狀態或者隊列中頭尾指針相遇,即隊列中所有狀態都已處理完畢。
DFS:基於遞歸的搜索方式,它的特點是由一個狀態拓展一個狀態,然後不停拓展,直到找到目標或者無法繼續拓展結束一個狀態的遞歸。

優缺點:BFS:對於解決最短或最少問題特別有效,而且尋找深度小,但缺點是內存耗費量大(需要開大量的數組單元用來存儲狀態)。
DFS:對於解決遍歷和求所有問題有效,對於問題搜索深度小的時候處理速度迅速,然而在深度很大的情況下效率不高

總結:不管是BFS還是DFS,它們雖然好用,但由於時間和空間的局限性,以至於它們只能解決數據量小的問題。

各種搜索題目歸類:

坐標類型搜索 :這種類型的搜索題目通常來說簡單的比較簡單,復雜的通常在邊界的處理和情況的討論方面會比較復雜,分析這類問題,我們首先要抓住題目的意思,看具體是怎麼建立坐標系(特別重要),然後仔細分析到搜索的每一個階段是如何通過條件轉移到下一個階段的。確定每一次遞歸(對於DFS)的回溯和深入條件,對於BFS,要注意每一次入隊的條件同時注意判重。要牢牢把握目標狀態是一個什麼狀態,在什麼時候結束搜索。還有,DFS過程的參數如何設定,是帶參數還是不帶參數,帶的話各個參數一定要保證能完全的表示一個狀態,不會出現一個狀態對應多個參數,而這一點對於BFS來說就稍簡單些,只需要多設置些變數就可以了。
經典題目:細胞(NDK1435)、Tyvj:乳草的入侵、武士風度的牛

數值類型搜索:(雖然我也不知道該怎麼叫,就起這個名字吧),這種類型的搜索就需要仔細分析分析了,一般來說採用DFS,而且它的終止條件一般都是很明顯的,難就難在對於過程的把握,過程的把握類似於坐標類型的搜索(判重、深入、枚舉),注意這種類型的搜索通常還要用到剪枝優化,對於那些明顯不符合要求的特殊狀態我們一定要在之前就去掉它,否則它會像滾雪球一樣越滾越大,浪費我們的時間。
經典題目:Tyvj:派對;售貨員的難題,以及各種有關題目搜索演算法階段性總結

你好,明天可以發你幾道這類題,而且還有代碼,親。

❹ 遺傳演算法

遺傳演算法是從代表問題可能潛在解集的一個種群開始的,而一個種群則由經過基因編碼的一定數目的個體組成。每個個體實際上是染色體帶有特徵的實體。染色體作為遺傳物質的主要載體,即多個基因的集合,其內部表現(即基因型)是某種基因的組合,它決定了個體形狀的外部表現,如黑頭發的特徵是由染色體中控制這一特徵的某種基因組合決定的。因此,在一開始需要實現從表現型到基因型的映射即編碼工作。由於仿照基因編碼的工作很復雜,我們往往進行簡化,如二進制編碼。初始種群產生之後,按照適者生存和優勝劣汰的原理,逐代(generation)演化產生出越來越好的近似解。在每一代,根據問題域中個體的適應度(fitness)大小挑選(selection)個體,並藉助於自然遺傳學的遺傳運算元(genetic operators)進行組合交叉(crossover)和變異(mutation),產生出代表新的解集的種群。這個過程將導致種群自然進化一樣的後生代種群比前代更加適應環境,末代種群中的最優個體經過編碼(decoding),可以作為問題近似最優解。

5.4.1 非線性優化與模型編碼

假定有一組未知參量

xi(i=1,2,…,M)

構成模型向量m,它的非線性目標函數為Φ(m)。根據先驗知識,對每個未知量都有上下界αi及bi,即αi≤x≤bi,同時可用間隔di把它離散化,使

di=(bii)/N (5.4.1)

於是,所有允許的模型m將被限制在集

xii+jdi(j=0,1,…,N) (5.4.2)

之內。

通常目標泛函(如經濟學中的成本函數)表示觀測函數與某種期望模型的失擬,因此非線性優化問題即為在上述限制的模型中求使Φ(m)極小的模型。對少數要求擬合最佳的問題,求目標函數的極大與失擬函數求極小是一致的。對於地球物理問題,通常要進行殺重離散化。首先,地球模型一般用連續函數表示,反演時要離散化為參數集才能用於計算。有時,也將未知函數展開成已知基函數的集,用其系數作為離散化的參數集xi,第二次離散化的需要是因為每一個未知參數在其變化范圍內再次被離散化,以使離散模型空間最終包含著有限個非線性優化可選擇的模型,其個數為

地球物理數據處理教程

其中M為未知參數xi的個數。由此式可見,K決定於每個參數離散化的間隔di及其變化范圍(αi,bi),在大多數情況下它們只能靠先驗知識來選擇。

一般而言,優化問題非線性化的程度越高,逐次線性化的方法越不穩定,而對蒙特卡洛法卻沒有影響,因為此法從有限模型空間中隨機地挑選新模型並計算其目標函數 Φ(m)。遺傳演算法與此不同的是同時計算一組模型(開始時是隨機地選擇的),然後把它進行二進制編碼,並通過繁殖、雜交和變異產生一組新模型進一步有限的模型空間搜索。編碼的方法可有多種,下面舉最簡單的例說明之,對於有符號的地球物理參數反演時的編碼方式一般要更復雜些。

假設地球為有三個水平層的層次模型,含層底界面深度hj(j=1,2,3)及層速度vj(j=1,2,3)這兩組參數。如某個模型的參數值為(十進制):

h1=6,h2=18,h3=28,單位為10m

v1=6,v2=18,v3=28,單位為 hm/s

按正常的二進制編碼法它們可分別用以下字元串表示為:

地球物理數據處理教程

為了減少位元組,這種編碼方式改變了慣用的單位制,只是按精度要求(深度為10m,波速為hm/s)來規定參數的碼值,同時也意味著模型空間離散化間距di都規格化為一個單位(即10m,或hm/s)。當然,在此編碼的基礎上,還可以寫出多種新的編碼字元串。例如,三參數值的對應位元組順序重排,就可組成以下新的二進制碼串:

地球物理數據處理教程

模型參數的二進制編碼是一種數學上的抽象,通過編碼把具體的非線性問題和生物演化過程聯系了起來,因為這時形成的編碼字元串就相當於一組遺傳基因的密碼。不僅是二進制編碼,十進制編碼也可直接用於遺傳演算法。根據生物系統傳代過程的規律,這些基因信息將在繁殖中傳到下一帶,而下一代將按照「適者生存」的原則決定種屬的發展和消亡,而優化准則或目標函數就起到了決定「適者生存」的作用,即保留失擬較小的新模型,而放棄失擬大的模型。在傳帶過程中用編碼表示的基因部分地交合和變異,即字元串中的一些子串被保留,有的改變,以使傳代的過程向優化的目標演化。總的來說,遺傳演算法可分為三步:繁殖、雜交和變異。其具體實現過程見圖5.8。

圖5.8 遺傳演算法實現過程

5.4.2 遺傳演算法在地震反演中的應用

以地震走時反演為例,根據最小二乘准則使合成記錄與實測數據的擬合差取極小,目標函數可取為

地球物理數據處理教程

式中:Ti,0為觀測資料中提取出的地震走時;Ti,s為合成地震或射線追蹤算出的地震走時;ΔT為所有合成地震走時的平均值;NA為合成地震數據的個數,它可以少於實測Ti,0的個數,因為在射線追蹤時有陰影區存在,不一定能算出合成數據Tj,0。利用射線追蹤計算走時的方法很多,參見上一章。對於少數幾個波速為常數的水平層,走時反演的參數編碼方法可參照上一節介紹的分別對深度和速度編碼方法,二進制碼的字元串位數1不會太大。要注意的是由深度定出的字元串符合數值由淺到深增大的規律,這一約束條件不應在雜交和傳代過程中破壞。這種不等式的約束(h1<h2<h3…)在遺傳演算法中是容易實現的。

對於波場反演,較方便的做法是將地球介質作等間距的劃分。例如,將水平層狀介質細分為100個等厚度的水平層。在上地殼可假定波速小於6400 m/s(相當於解空間的硬約束),而波速空間距為100m/s,則可將波速用100m/s為單位,每層用6位二進制字元串表示波速,地層模型總共用600位二進制字元串表示(l=600)。初始模型可隨機地選取24~192個,然後通過繁殖雜交與變異。雜交概率在0.5~1.0之間,變異概率小於0.01。目標函數(即失擬方程)在頻率域可表示為

地球物理數據處理教程

式中:P0(ωk,vj)為實測地震道的頻譜;ωk為角頻率;vj為第j層的波速;Ps(ωk,vj)為相應的合成地震道;A(ωk)為地震儀及檢波器的頻率濾波器,例如,可取

A(ω)=sinC4(ω/ωN) (5.4.6)

式中ωN為Nyquist頻率,即ωN=π/Δt,Δt為時間采樣率。參數C為振幅擬合因子,它起到合成與觀測記錄之間幅度上匹配的作用。C的計算常用地震道的包絡函數的平均比值。例如,設E[]為波動信號的包絡函數,可令

地球物理數據處理教程

式中:tmax為包絡極大值的對應時間;J為總層數。包絡函數可通過復數道的模擬取得。

用遺傳演算法作波速反演時失擬最小的模型將一直保存到迭代停止。什麼時候停止傳代還沒有理論上可計算的好辦法,一般要顯示解空間的搜索范圍及局部密度,以此來判斷是否可以停止傳代。值得指出的是,由(5.4.4)和(5.4.5)式給出的目標函數對於有誤差的數據是有問題的,反演的目標不是追求對有誤差數據的完美擬合,而是要求出准確而且解析度最高的解估計。

遺傳演算法在執行中可能出現兩類問題。其一稱為「早熟」問題,即在傳代之初就隨機地選中了比較好的模型,它在傳代中起主導作用,而使其後的計算因散不開而白白浪費。通常,增加Q值可以改善這種情況。另一類問題正相反,即傳相當多代後仍然找不到一個特別好的解估計,即可能有幾百個算出的目標函數值都大同小異。這時,最好修改目標函數的比例因子(即(5.4.5)式的分母),以使繁殖概率Ps的變化范圍加大。

對於高維地震模型的反演,由於參數太多,相應的模型字元串太長,目前用遺傳演算法作反演的計算成本還嫌太高。實際上,為了加快計算,不僅要改進反演技巧和傳代的控制技術,而且還要大幅度提高正演計算的速度,避免對遺傳演算法大量的計算花費在正演合成上。

❺ 簡述回溯法的2種演算法框架,並分別舉出適合用這兩種框架解決的一個問題實例

回溯法(探索與回溯法)是一種選優搜索法,又稱為試探法,按選優條件向前搜索,以達到目標。但當探索到某一步時,發現原先選擇並不優或達不到目標,就退回一步重新選擇,這種走不通就退回再走的技術為回溯法,而滿足回溯條件的某個狀態的點稱為「回溯點」。
基本思想
在包含問題的所有解的解空間樹中,按照深度優先搜索的策略,從根結點出發深度探索解空間樹。當探索到某一結點時,要先判斷該結點是否包含問題的解,如果包含,就從該結點出發繼續探索下去,如果該結點不包含問題的解,則逐層向其祖先結點回溯。(其實回溯法就是對隱式圖的深度優先搜索演算法)。 若用回溯法求問題的所有解時,要回溯到根,且根結點的所有可行的子樹都要已被搜索遍才結束。 而若使用回溯法求任一個解時,只要搜索到問題的一個解就可以結束

一般表達
可用回溯法求解的問題P,通常要能表達為:對於已知的由n元組(x1,x2,…,xn)組成的一個狀態空間E={(x1,x2,…,xn)∣xi∈Si ,i=1,2,…,n},給定關於n元組中的一個分量的一個約束集D,要求E中滿足D的全部約束條件的所有n元組。其中Si是分量xi的定義域,且 |Si| 有限,i=1,2,…,n。我們稱E中滿足D的全部約束條件的任一n元組為問題P的一個解。
解問題P的最樸素的方法就是枚舉法,即對E中的所有n元組逐一地檢測其是否滿足D的全部約束,若滿足,則為問題P的一個解。但顯然,其計算量是相當大的。

規律
我們發現,對於許多問題,所給定的約束集D具有完備性,即i元組(x1,x2,…,xi)滿足D中僅涉及到x1,x2,…,xi的所有約束意味著j(j<=i)元組(x1,x2,…,xj)一定也滿足d中僅涉及到x1,x2,…,xj的所有約束,i=1,2,…,n。換句話說,只要存在0≤j≤n-1,使得(x1,x2,…,xj)違反d中僅涉及到x1,x2,…,xj的約束之一,則以(x1,x2,…,xj)為前綴的任何n元組(x1,x2,…,xj,xj+1,…,xn)一定也違反d中僅涉及到x1,x2,…,xi的一個約束,n≥i≥j。因此,對於約束集d具有完備性的問題p,一旦檢測斷定某個j元組(x1,x2,…,xj)違反d中僅涉及x1,x2,…,xj的一個約束,就可以肯定,以(x1,x2,…,xj)為前綴的任何n元組(x1,x2,…,xj,xj+1,…,xn)都不會是問題p的解,因而就不必去搜索它們、檢測它們。回溯法正是針對這類問題,利用這類問題的上述性質而提出來的比枚舉法效率更高的演算法。

❻ A*演算法的問題

演算法沒有錯。只是考慮到所有可能的情況。
如果x出現在close集中,並且新的估價小於原有估價,說明還存在另一條經過x到達目標並且更快捷路徑是之前沒有搜索到的。這時當然要重新把x放回open集中統一考慮。
依你所講,大概你是在方格棋盤類的路徑搜索。則上述情況不會出現,因為方格棋盤構造出的圖很規則。但如果是在某一非常奇怪的圖上,比如兩行星之間有個蟲洞,經過後可以使時間倒流時(哈哈,暫時只想到這樣一個奇怪的例子),則很有可能出現上述情況。
所以,不是演算法誰對誰錯,而是在不同問題中做法不一樣。網路給出的演算法考慮情況更全面。

❼ 6、演算法式、手段一目的分析法、逆向推理法、爬山法、計劃簡化法是五種解決問

摘要 1.手段—目的分析

❽ 求理想點法及層次分析法,演算法原理及步驟什麼的

信息熵

熵權法是一種客觀賦權方法。按照資訊理論基本原理的解釋,信息是系統有序程度的一個度量,熵是系統無序程度的一個度量;如果指標的信息熵越小,該指標提供的信息量越大,在綜合評價中所起作用理當越大,權重就應該越高。
單位質量物質的熵稱為比熵,記為s。熵最初是根據熱力學第二定律引出的一個反映自發過程不可逆性的物質狀態參量。熱力學第二定律是根據大量觀察結果總結出來的規律,有下述表述方式:

理想點的原理

理想點法是C.L.Hwang 和 K.Yoon 兩人於1981年首次提出,理想點法根據有限個評價對象與理想化目標的接近程度進行排序的方法,是在現有的對象中進行相對優劣的評價理想點法是多目標決策分析中一種常用的有效方法,又稱為優劣解距離法。
其基本原理,是通過檢測評價對象與最優解、最劣解的距離來進行排序,若評價對象最靠近最優解同時又最遠離最劣解,則為最好;否則為最差。其中最優解的各指標值都達到各評價指標的最優值。最劣解的各指標值都達到各評價指標的最差值。

層次分析法的原理

人們在進行社會的、經濟的以及科學管理領域問題的系統分析中,面臨的常常是一個由相互關聯、相互制約的眾多因素構成的復雜而往往缺少定量數據的系統。層次分析法為這類問題的決策和排序提供了一種新的、簡潔而實用的建模方法。

變數的不確定性越大,熵也就越大,把它搞清楚所需要的信息量也就越大。 信息熵是資訊理論中用於度量信息量的一個概念。一個系統越是有序,信息熵就越低; 反之,一個系統越是混亂,信息熵就越高。所以,信息熵也可以說是系統有序化程度的一個度量。

❾ 目標跟蹤中,怎樣判斷一個演算法對目標定位更准確

一般採用合作目標進行動態或靜態的檢測,合作目標由目標發生器來產生,在視場內做已知運動,或使用靶標,測量視場以及定位精度。

熱點內容
Java開羅 發布:2024-04-19 10:50:55 瀏覽:958
linux音頻驅動 發布:2024-04-19 10:50:04 瀏覽:714
資料庫的表怎麼看 發布:2024-04-19 10:43:52 瀏覽:562
空調壓縮機不響 發布:2024-04-19 10:42:22 瀏覽:51
linux下的ftp工具 發布:2024-04-19 10:42:15 瀏覽:930
橡膠圈壓縮 發布:2024-04-19 10:29:50 瀏覽:170
風雲tv密碼哪裡有 發布:2024-04-19 10:20:03 瀏覽:997
小翼管家如何查看密碼 發布:2024-04-19 09:57:31 瀏覽:156
怎麼緩存小品 發布:2024-04-19 09:49:02 瀏覽:411
在系統編程 發布:2024-04-19 08:54:55 瀏覽:235