Arcgis 幾何網絡分析


ArcGIS:網絡分析(轉)

 

 

由於之前對網絡分析的理解有很多問題,所以在網上找了一些資料,這是其中一篇我覺得比較好的,所以就整理了一下,發到網上來,留個底吧,呵呵

注:關於幾何網絡的建立見前面的《空間數據采集組織篇》

理論基礎圖論運籌學

定義:利用運籌學建立模型,再利用其網絡本身的空間關系,采用數學的方法來實現這個模型,最終得到結果,來指導現實和應用。

網絡分析的基礎知識:

1、網絡的兩個基本成分:線(edges)交點(junctions)。

邊線可以表示街道、管線和河流等信息,交點可以表示路口、電閘及河流的交匯點等信息。邊線通過交點連接在一起,組成網絡,汽車、電流和水流等均可以從一條邊通過交點轉移到另一條邊。

2、網絡模型

①幾何網絡和邏輯網絡

二.網絡模型 
二.網絡模型

①幾何網絡和邏輯網絡

在ArcInfo中,一個網絡可以由多個要素類(Feature class)組成。例如:在電力系統中,可以由電線、開關、保險絲和變壓器等構成一個網絡。因為要素具有幾何形狀並且可以顯示,所以這種網絡被稱為幾何網絡(geometric network)。在一個幾何網絡中只能包含線要素和點要素。

對於每一個幾何網絡,均對應一個邏輯網絡,它是一個幕后的數據結構,存儲邊線和交點的連接關系。當一個幾何網絡被生成時,一個邏輯網絡將自動被ArcInfo產生和維護。在我們進行網絡流向分析時,將只涉及到邏輯網絡。

幾何網絡的內容:

* 組織所有要素類,構成網絡。  

* 包括邊線和交點要素。 

* 在幾何網絡上進行編輯和顯示。 

* 包括所有屬性、關系和有效性規則。 

邏輯網絡的內容:

* 存儲網絡的連通性。  

* 包括邊線和交點元素。 

* 開發網絡分析程序將只涉及到邏輯網絡。 

* 邏輯網絡由一些表(Table)組成,不包含幾何信息。 

* 當幾何網絡被修改后,邏輯網絡自動被維護。 

②要素類(Feature class)

要素類在網絡中分四大類 :簡單邊線(Simple edge)、簡單交點(Simple junction)、復雜邊線(Complex edge)、復雜交點(Complex junction)。此外,在每一個網絡中還有一個要素類,用於存儲孤立的交點。

(1) 簡單邊線和簡單交點

簡單交點在點要素和交點元素之間具有一一對應關系,簡單邊線在線要素和邊線元素之間也有一一對應關系,即幾何網絡中的要素(Feature)與邏輯網絡中的元素(Element)存在一一對應。

例如,在城際路網中,一個城市可以用一個點要素表示,並且對應於邏輯網絡中的一個交點元素;一條公路可以用一個線要素表示,並且對應於邏輯網絡中的一個邊線元素。許多網絡可以用簡單邊線和簡單交點很容易地建模。 在一些網絡中,幾何要素與邏輯元素之間一一對應的關系具有很大限制性。復雜邊線和復雜交叉點在網絡建模中提供了更有力的手段。

(2) 復雜邊線

假設在一條街道上有一條幾百米長的自來水管線,沿着這條管線有許多分接頭(交點)連接到通往住宅的管線。所有數據查詢和維護工作需要將這條管線當作一條單一要素,但是,因為在你的網絡分析中需要構建自來水的流向,邏輯網絡需要將分接頭之間的管線當成一條邊。當使用簡單邊線時,自來水主管線將被分割成許多段(形成許多要素),從而對數據的查詢和維護造成很大的困難。

復雜邊線可以將交點放置在邊線的任何位置上,而不對邊線要素進行分割,使用這種方法可以解決線段的破碎問題。一個帶有復雜邊線的幾何網絡對於每一個要素可以產生很多邊線元素。當你生成一個幾何網絡時,你必須指定一個線要素類是復雜邊線還是簡單邊線。假如它是復雜邊線,當你增加新的交叉點時,邊要素將不會被分割。

(3) 復雜交點

理解復雜交點的最好方法是在一個電力網絡中假設一個開關櫃。開關櫃在網絡中是一個復雜交點,但實際上是一個縮小了的網絡,由簡單交點和簡單邊線組成。

在幾何網絡中,開關(SW-2)被當作一個復雜的交點要素,有兩條電線連入,兩條電線連出。在邏輯網絡中,開關模型由四條邊線和五個交點組成。為實現上述開關對象,需要編寫代碼,在邏輯網絡中增加邊線和交點元素。

(4) 孤立交點

孤立交點是在網絡建立和編輯過程中產生的,孤立交點維護那些不能由簡單交點和復雜交點所標識的邊線的端點。網絡建立過程總是由邊線終點生成孤立交點開始,然后比較孤立交點的位置和任何點要素的位置。假如發現一個匹配(在snapping容差內),則點要素被使用,孤立交點被舍棄。假如沒有發現任何匹配,則孤立交點被寫入一個孤立交點要素類。

③網絡流向

網絡分為兩種:市政網絡和交通網絡。在交通網絡中,物質在網絡中流動,可以有“它們自己的意願”,例如,汽車司機可以決定他們在網絡中的行駛方向。在市政網絡中,物質(水、電流、石油)在網絡中流動,不能有“自己的意願”,例如,在上水管線中,自來水不能任意方向流動。

網絡通過設置源頭、終點和開關決定流向。在市政網絡的應用中,物質沿着邊線的流動方向是確定的,而不是在需要時臨時計算產生的。舉例說明,在一個進行決策支持的幾何網絡中,決定是否關閉一個開關或者打開一個閥門之前,你必須知道當前的流向,以產生正確的決策,並且你還必須知道決策是否產生正確的流向。網絡設施的狀態影響流向,因此,你需要知道網絡中的源頭、終點的位置及開關和閥門等設施的狀態。

幾何網絡有一個建立流向的方法。這種方法是根據當前設置的源頭、終點的位置和每個要素的Enabled/Disabled狀態,決定物質在網絡中的流向。流向可以是沿着線段數字化的方向,也可以是逆着線段數字化方向。

(1) 源頭(Sources)和終點(Sinks)

在一個市政網絡中,設置源頭和終點的位置,可以用來指定流向。任何交點要素均能夠作為源頭或終點。源頭是物質流出的起點,例如,一個發電廠。終點是物質流入的盡頭,例如,一個污水處理廠。當你構建和編輯一個幾何網絡時,你可以指定一個點要素是否是源頭或終點。

(2) Enabled/Disabled要素

所有網絡中的要素都有一個Enabled/Disabled狀態。具有Disabled狀態的要素不參與網絡流向分析,沒有任何物質流入或流出該要素。在打開電閘開關或關閉閥門的應用中,要素的Disabled狀態非常重要。

源頭、終點和要素的Enabled/Disable狀態均對建立網絡流向產生影響。

(3) 不明確的流向

當源頭、終點和要素的Enabled/Disabled 狀態信息不足或有誤時,可能無法確定一條邊的流向,則該條邊的流向稱為不明確的流向。

(4) 未初始化流向

當一些邊與其它有流向的邊沒有連接,並且在這些邊上也沒有源頭和終點時,則這些邊的流向不能確定,稱為未初始化的流向。 

④權值

邊線和交點可以包含任意數量的權值。權值主要用於存儲穿過一條邊或者通過一個交點時所需要的開銷。一種典型的權值就是邊線的長度。權值存儲在邊線和交點的屬性字段上。

權值存儲在邏輯網絡中,分析程序可以很有效地存取它們。當要素屬性表中的一個權值被修改后,邏輯網絡中的權值被自動被修改。任何數字字段都可以成為權值。確定哪些字段作為權值完全依賴於你打算執行何種分析。Bitgate是一種特殊類型的權值,主要用於數據具有多種類型,例如一條街道上允許通過哪種類型的車輛。 

⑤有方向的權值

邊線的權值可以和線段的數字化方向相關。你可以用一個邊線的權值代表沿着線段數字化方向(from-to)行進時的開銷,另一個權值代表逆着線段數字化方向(to-from)行進時的開銷。

具有方向的權值主要用於運輸網絡中,道路兩邊均有交通流向。使用有方向權值的情況如下:

* 每天往返上班時間,早晨進城道路交通堵塞,離城道路交通暢通。

* 單行線,某一個流向的權值是負值,意味着該方向不允許通過(權值為負值,意味開銷無限大)。

* 山區,某些交通工具(卡車、自行車)上山時速度較慢。  ⑥連通性規則

在很多網絡中,不是所有類型的邊線可以連接到所有類型的交點上。同樣,不是所有類型的邊線通過交點能夠和其它類型的邊線相接。例如,在一個自來水網中,一個消防支線可以連接到一個消防栓,但不能連接到一個維修支線上。同樣地,在相同的自來水網中,一個10英寸的主管可以通過一個減壓器連接到一個8英寸的主管上。

網絡連通性規則能夠設置相互連接的網絡要素類型及可以與另一種要素連接的任一特定要素的數量。通過建立網絡連通性規則及其它規則(例如,屬性域),你可以維護數據庫中網絡數據的完整性。在任何時候,你都能夠有選擇地驗證數據庫中的要素,產生報告,指出網絡中哪些要素違反連通性規則或者其它規則。

(1) 邊線-交點規則(Edge-junction rule)

類型A的邊線能夠與類型B的交點相連接的關系。

(2) 邊線-邊線規則(Edge-edge rule)

類型A的邊線能夠通過類型C的交點與類型B的邊線相連通的關系。邊線-邊線規則中總是包含一個交點類型。

(3) 缺省的交點類型(Default junction type) 

兩種類型的邊線可以通過多種類型的交點相連通。你能夠確定哪種類型的交點為上述邊線相接時的缺省交點。這種交點類型為缺省的交點類型。

(4) 邊線-交點基數(Edge-junction cardinality) 

可以存在一種規則,允許類型A的邊線連接到類型B的交點上。缺省情況下,類型A任何數量的邊線可以連接到同一類型B的交點上。你可能需要限制這種情況。你能夠指定2至5條類型 A的邊線能夠連接到類型B的交點上,但是如果少於兩條邊線或者多於5條邊線與該交點相接,將違反連通性規則。同樣地,你能夠限制與任一個類型D的邊線相連的類型C的交點的數量。這種可允許的連接范圍被稱為邊線-交點基數。 

三.網絡分析

在ArcInfo中,網絡分析通過程序,利用網絡的連通性產生一些有意思的結果,例如,由網絡中的一個點追溯到其上游的所有元素,或者尋找兩點之間的最短路徑。當然,還有一些其它的分析工具,例如,你可以在ArcMap中使用基本的選擇工具選擇邊線要素,然后統計各種類型邊線的總長度。這種方式當然也可以對網絡進行有效的分析,但是因為沒有用到網絡的連通性,所以不是我們現在所論述的網絡分析。 

①解算程序(Solvers)

解算程序即執行網絡分析的程序。例如,為了使一條上水管線斷流,應關閉哪些閥門?在上例中,解算程序需要對一個邏輯網絡進行分析,包括由管線組成的邊線(Edge),和閥門組成的交點(Junction)。輸出結果為所有被關閉的閥門。

對於各種各樣的網絡分析,有各種各樣的解算程序。ArcInfo的策略是,對於一些通用問題提供豐富的解算程序,方便用戶直接使用;對於一些少見的網絡分析問題,開發者可以通過ArcInfo的組件,使用任何程序開發語言,很容易地創建解算程序。 

②網絡標識(NetFlags)

網絡標識用於標識網絡中的一個位置。解算程序使用網絡標識代表許多現實世界中的對象,例如,最短路徑的終點,網絡追蹤的起點,閥門的位置及設施的位置等。網絡標識不是邏輯網絡的一個部分,它們只是用來描述網絡中的任一位置。

有兩種類型的網絡標識:邊線標識(Edgeflags)和交點標識(Junctionflags)。網絡標識的屬性包括元素的要素類名稱、要素ID和要素的子ID。交點標識包括上述三個屬性。邊線標識除上述三個屬性外,還包括該位置在邊線中的相對位置(邊線標識點和邊線起點的距離與邊線長度的百分比)。這意味着邊線標識點可以在邊線的任何位置,從0%(起始點)到100%(終點)。 

3.障礙(Barriers)

在解算程序中,障礙代表邏輯網絡中元素的Disabled狀態。設置障礙與設置網絡元素Enabled/Disabled狀態為Disabled的作用相同,只不過障礙不存儲在邏輯網絡中,障礙只能被解算程序所識別

障礙只是將網絡元素的狀態臨時設為Disabled,它既不是邊線要素也不是交點要素。在解算程序中有四種方法設置障礙:簡單障礙、被選擇的要素、要素類和權值過濾器。

(1) 簡單障礙(Simple barriers)

簡單障礙是一些邊線和交點元素的集合。ArcInfo允許你使用一個障礙工具交互地生成簡單的障礙 。你可以使用該工具,在屏幕上點擊你想設為障礙的要素。

(2) 被選擇的要素(Selected features)

ArcMap中有很多選擇要素的工具(圖形選擇或屬性選擇工具),用來生成一個選擇集。一個解算程序可以將該選擇集設為屏蔽或設為非屏蔽。

(3)要素類(Feature class)

整個要素類可以被用來設為屏蔽或非屏蔽。

(4)權值過濾器(Weight Filters)

你可以設定一個權值或一個權值范圍內的要素為障礙或非障礙。 

④追蹤(Tracing)

追蹤是指在網絡中沿着或者逆着流向前進,直到一種情況發生為止。例如,逆着電流方向找到一個變壓器,或者向上追蹤發現所有閥門。障礙能夠影響追蹤結果,例如:向上追蹤時,遇到障礙該方向的追蹤將停止。因此,在給水網絡中,你可以用障礙代表閥門,確定關閉這些閥門后哪些管線將停水。

(1) 逆向追蹤

從一個網絡標識(Netflag)開始,逆着網絡流向進行追蹤。當遇到障礙、終點及Disabled狀態的網絡元素時,追蹤停止。

(2) 順流追蹤

從一個網絡標識(Netflag)開始,沿着網絡流向進行追蹤。當遇到障礙、終點及Disabled狀態的網絡元素時,追蹤停止。

(3) 尋找公共源頭

從所有網絡標識開始,逆流追蹤,尋找它們的公共源頭。 

5.其它網絡分析

(1) 尋找相通要素

尋找所有與網絡標識相通的邊線和交點。

(2) 最佳路徑

 

文章出處:http://blog.sina.com.cn/s/blog_6e09af650100r1ay.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM