連載20:軟件體系設計新方向:數學抽象、設計模式、系統架構與方案設計(簡化版)(袁曉河著)

等價關係和劃分

 

R 是集合 A 上的一個二元關係,若R滿足:

ü 自反性: a ∈A, => (a, a)  R

ü 對稱性:(a, b) ∈R∧ a ≠ b => (b, a)∈R

ü 傳遞性:(a, b)∈R,(b, c)∈R =>(a, c)∈R

則稱 R 是定義在 A 上的一個等價關係。設 R 是一個等價關係,若(a, b) ∈ R,則稱 a 等價於 b,記作 a ~ b

R爲非空集合上的等價關係,"xA,令[x]R={y|yÎAxRy},稱[x]x關於R的等價類,簡稱爲x的等價類,簡記爲[x]

A爲非空集合,若A的子集族π,是A的子集構成的集合)滿足以下的條件:

ü π集合不爲空

ü π中任意兩個集合不相交

ü π中所有集合的並集等於A

則稱πA的一個劃分,稱π中的元素爲A的劃分塊。

所以根據不同的關係劃分,在以函數和變量爲置換點的區域內,可以通過不同的等價關係劃分出不同的類,所以這些類結構體在此幾何平面上的描述可以使用域的方式來進行劃分,其最佳的劃分形式就是等價的,在圖形中就是不同的域之間不相互重合,如圖2-6所示:

 blob.png

 

2-6

 

所以,我們在現實中如何劃分類呢?其實這裏可以採用的方法就是是否爲等價關係,如果一個類中的所以置換點都是在這樣的關係中進行劃分,那麼這樣的置換點集合就可以劃分成一個類。等價類劃分的子集無重合,這樣的劃分纔是等價的劃分,只有這樣的劃分纔是重複度最小,代價最小的劃分。當然,這樣的劃分可能不是唯一的,有可能在不同的立場上對這樣的劃分有區別。

由於不同層面的置換點,所以我們不能僅僅限制我們所理解的面向對象中的類的等價劃分,對於其他層面的置換其實也是具有這樣的特性,例如在泛型化編程中,其不同的容器的等價劃分也可以通過在某個劃分標準中劃分出其等價的特徵,以此進行分類。這種分類其以爲能夠使用通用的方式來進行集成和綜合。由此可以進一步推進對泛型編程的進一步發展。

分類是一種廣泛的處理過程,但是其分類的過程中,由於採用的等價的劃分形式,所以將不同的可置換點劃分到一個不同的區域之中,這些可置換點不可能即屬於一個分類同時又屬於另一個分類,“非此即彼”的處理可能在很多時候,在現實處理過程中顯得非常困難,因爲我們很難找準這樣的等價條件,所以,可以採用一些聚類的手段來解決這樣的問題。但也可以通過一些手段或者判斷方法忽略這樣的可置換點,這樣有助於進行有效的分類劃分。

聚類:

將物理或抽象對象的集合分成由類似的對象組成的多個類的過程被稱爲聚類。由聚類所生成的簇是一組數據對象的集合,這些對象與同一個簇中的對象彼此相似,與其他簇中的對象相異。聚類分析又稱羣分析,它是研究(樣品或指標)分類問題的一種統計分析方法。聚類分析起源於分類學,但是聚類不等於分類。聚類與分類的不同在於,聚類所要求劃分的類是未知的。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章