• 沒有找到結果。

第三章  研究方法

3.2 改良式粒子群優化演算法

3.2.2 邊界移動法

在結構最佳化設計中,我們知道最佳解通常是位於合理解與不合理解的邊界 上,因此我們將這塊區域視為重要區域,而越遠離這塊區域的地方則視為不重要 區域。在搜尋前期於解空間中隨機分佈的粒子群,會花費一些時間逐步更新各自 及群體所經歷過的最佳解,使粒子群由不重要區域逐漸趨向重要區域,如圖3-3 所示。因此本研究中提出了一種取名為「邊界移動法」的策略,該策略的主要構 想為使前期全域搜尋階段的粒子能在短時間內就可快速移動到鄰近的重要區域 上,藉此降低粒子群於不重要區域裡的搜尋時間及一些不必要的運算,該示意圖 如圖3-4 所示。

以結構矩陣做結構分析時,很重要的一個方程式如(3-26)式所示:

(3-26)

22

其中:

:節點所受的外力矩陣 :結構之整體勁度矩陣 :節點變位矩陣

由(3-26)式我們知道 ,且由(3-25)式亦可知 ,可得

(3-27) 同時由(3-22)式中,亦可得到

(3-28) 由(3-27)及(3-28)式我們得知,當桁架結構中所有桿件的斷面積同時發生線性 改變時,各節點的位移及各桿件的應力也會呈現線性改變。另外,由於桁架結構 的尺寸最佳化設計中,需在結構的任一節點位移達到最大容許位移或任一桿件應 力達最大容許應力等條件下,得到一組最經濟斷面,即為最佳設計斷面。對於一 個具有 n 根桿件及 m 個自由度的桁架結構而言,邊界移動法的主要概念步驟如 下:

1. 將一開始隨機產生之粒子,進行結構矩陣分析並求出該組斷面相對應的各節 點位移及各桿件應力。

2. 將最大容許應力除以各桿件應力中的最大值,可得到一比值如下所示:

, , 1,2, … , (3-29) 其中:

, :第i 根桿件的最大容許應力 :第 i 根桿件的應力

3. 將最大容許位移除以各節點位移中的最大值,可得到另一比值如下所示:

, 1,2, … , (3-30) 其中:

:節點的最大容許位移

23

:第j 個自由度的位移

4. 將該組桿件斷面積除以比值 及 的較小者,即可得到一組更新後的斷面積 如下所示:

⁄ , , , (3-31) 其中:

:經由邊界移動法後得到之新的斷面積 :桿件的斷面積

5. 更新桿件的斷面積後,藉由(2-3)及(2-2)式來更新粒子下一代的速度及位置,

並做完結構矩陣分析,再重複步驟2 至 5,直到迭代次數達邊界移動法之使 用代數為止。

在經過上述邊界移動法的步驟後,可使一開始均勻隨機分布在解空間中的粒 子群,在很短的時間內直接移動到離該粒子最近的合理解與不合理解之邊界上,

有效的增加前期的收斂速度並減少不必要的運算。此外,由於邊界移動法是為了 讓粒子於搜尋前期可以很快速的移動至合理解與不合理解的邊界上,藉此降低粒 子於搜尋前期時在不重要區域中的搜尋時間,因此當粒子群整體相當靠近收斂中 心時,卻仍然使用此策略的話,則有可能會減緩甚至阻止粒子收斂至收斂中心。

所以在這個考慮下,本人在此做了一個測試,其設定如下所示:

1. 以標準粒子群優化演算法為測試標準。

2. 使用 10 根平面桁架做為測試案例。

3. 使用邊界移動法的次數分別為不使用、1 次、5 次、10 次及 20 次等五 種案例。

4. 每種案例皆個別獨立執行 30 次,取最常出現的收斂類型為該種案例的 代表,藉此比較邊界移動法的最佳使用次數。

圖 3-5 及圖 3-6 所示即為標準粒子群優化演算法以 10 根平面桁架為測試案 例,在邊界移動法使用不同次數下的收斂情形。由圖中可以看出粒子群優化演算 法在加入邊界移動法後,其初始的適應值相對於沒有使用邊界移動法的粒子群優 化演算法是好許多的,而隨後幾次迭代搜尋的收斂速度也會因此而有大幅的提升,

讓粒子群在開始搜尋後沒多久的時間內,即找到一定程度的問題解。

24

在這個測試中,我們得知若於第一代搜尋時使用邊界移動法,可以有效的降 低初始的適應值,而其中使用5 次、10 次及 20 次邊界移動法的測試案例,則於 第一代搜尋後仍然以很快的收斂速度在進行搜尋,並且獲得更好的問題解。然而,

由於是以隨機亂數來產生初始位置的關係,所以在使用這三種次數限制做測試時,

都有機率可以在很少的迭代次數中就獲得很好的問題解,但是在各自經過30 次 的獨立測試後,發現使用20 次的邊界移動法時,平均上能有比較好的收斂結果,

因此在本研究中,邊界移動法的使用代數則設定為只在演算法開始搜尋時的前 20 代為止。

相關文件