• 沒有找到結果。

2. 文獻探討

2.7. 預測法之探討

2.7.3. 演化策略法

2.7.3.1.演化策略法之特色

根據吳子逢(2003)的彙整了解,演化策略是一個有效的最佳化搜尋方法,它具 有下述的優點:

1. 多點搜尋容易維持條件限制下合理的解;

2. 變數為實數型有利於連續型變數問題直接設計;

3. 容易加入啟發性 (heuristic) 知識;

4. 有能力找到全域近似最佳解 (global near-optimum);演化策略在每一迭代 中只有針對現有的解產生若干個突變運算,係採用高斯分布隨機產生再測 試 (generate and test) 的方法產生新解。

演化策略(Evolutionary Strategy, ES)是於 1964 年德國人 Rechenberg 為了解決流體 力學中模型控制問題而發展出的方法。演化策略法基本上屬於人工智慧(Artificial Intelligence , AI)領域中的一種,是模擬達爾文提出的「物競天擇,適者生存」的進化 論(evolutionism)為基礎的最佳化模型。

因為GA 為主要演化式演算法的基本型,大部分演化式計算模型都是由 GA 加

45

強、延伸而來的,ES 與 GA 最大不同之處在於 ES 中個體的染色體是以實數所表現,

而非如遺傳演算法一般,以位元為基本單位,利用實數表示染色體可避免在合適度評 估時做數值轉換。

最早的ES 為隨機搜尋只有突變與選擇機制並不包含重組,稱為「1+1演化策 略」( (1+1)-ES, 單成員的 ES,運算過程透過一個父代解經由突變機制(利用平均值為 0,標準差為 s)產生一個下一子代,接著透過適應函數比較父代與子代,在進行下代 演化)。隨後發展了族群式演化策略,((μ+λ)演化策略 和(μ,λ)演化策略),並加 入新的演化運算元-重組機制(recombination),使控制演化的策略參數隨著各單元一 同演化。此兩種不同 ES 主要差異為(μ+λ)-ES, μ個父代產生λ的子代,且從這μ+

λ個解中挑選最佳的μ個為父,再進行下一代運算;而 (μ,λ)-ES, μ個父代中產生 λ>μ個子代後,並只考慮新產生的子代,選出最佳μ個做為父代,再進行下一代運 算)。ES 至此奠定雛型。

一般演化策略的重要機制包含:編碼型式 (representation) 與適應函式(fitness function) 、重組 (recombination) 、突變 (mutation) 與選擇 (selection),以下針對這 些機制作一概述。

2.7.3.2.編碼與適應函式

演化策略的應用多半在於連續函數問題的最佳解設計上,須先將問題編碼成 Rn

XG∈

形 式 , 其 中 n 為 問 題 變 數 個 數 , 接 著 給 定 目 標 函 式 (object function) f :RnR , 且 適 應 函 式 (fitness function) Φ 原 則 與 目 標 函 式 一 致

( )

aG = f(xG)

Φ , 其中xG 為aG

組成之一,即aG =(x1,x2,...,xn,

α

1,

α

2,...

α

m)

x為變數α 為 策略參數,(α 是問題變數的標準差以作為突變機制的依據)α 個數1≤mn。當在做 問題描述時必須定義清楚,之後我們才可以利用適應函式Φ 作為演化依據。

假設我們針對 n 個實數變數進行計問題為佳化設計,第一部主要是進行變數編碼

(

x x x xn

)

xG∈ 1, 2, 3,...,

,接著給定目標函式 f(xG)∈R,接著設定策略參數α ,最後組成適 應函式Φ

(

x1,x2,x3,...,xn,

α

1,

α

2,

α

3,...,

α

n

)

46

2.7.3.3.重組(recombination)

當演化策略法為(μ+λ)-ES 和(μ,λ)-ES 會多出重組步驟與 GA 步驟中的交配相 同,主要是為了讓父代個體染色體互相交換有用的資訊,使子代染色體獲得更高的合 適度,以改善父代染色體。除了目標變數進行重組運算外,策略參數也可隨著各單元 一 同 演 化 。 演 化 策 略 有 許 多 種 重 組 方 式 , 一 般 可 以 分 為 離 散 型 及 中 間 產 物 型 (intermediate) ,運算方法如下所式:

z 離散型式

從父代中集合中選取兩組解,p1{10,20,30,40,50}與 p2{12,24,28,44,48},接下透過 離散重組式{1,1,2,2,1}(選擇子代解變數繼承的對象,1 代表由 p1 選取 2 代表由 p2 選 取),產出子代{10,20,28,44,50},如下圖所示:

圖 2-14離散重組示意圖

z 中間產物型(intermediate)

中間產物主要是利用加權平均的概念運算,如下圖中中間產物運算子

{0.4,0.3,0.6,0.6,.5}意味著新子代的各個變數的解是經由父代依比例產生;child 中的第一 個變數11.2 即是10×0.4+12×

(

1−0.4

)

計算求得。

47

圖 2-15 中間產物形示意圖

2.7.3.4.突變

在演化策略法中,若各子代來自於父母的基因組合時,染色體的內容即是問題的可 能解,可避免個體在合適度評估時做數值轉換,但只進行重組運算時無法產生差異度較 大的子代,容易陷入區域最佳解(local solution)中,透過突變機制可使目標變數達到最佳 化,策略參數也可透過突變獲得效率最高的演化參數。

突變公式如下:

( ) ( )

(

0,1 0,1

)

exp '

' i N N

i =

σ

τ

⋅ +

τ

σ

i=1,2,3,...,nσ. (0,1)

'

' x N

xj = jj j =1,2,3,...,n

其中,

σ

i為父代中第i 個策略參數,

σ

i'為子代中第i 個策略參數,而

xj

為父代中第j 個目標變數,x'j為子代中第j 個目標變數 2 1

= n

τ

全域學習率(global learning rate),n=目標變數個數

' = 2n1

τ

區域學習率(local learning rate),n=目標變數個數

2.7.3.5. 選擇與終止

選擇機制在演化策略中方式是決定論的 (deterministic) ,可以分為((μ+λ)演化策 略 和(μ,λ)演化策略),主要差異在主要分別在於(μ+λ)ES 中,在於父代經過重組 與突變後產生λ個子代,之後再進行適性函數評估時,會將父代與子代(μ+λ)同時進

48

行考慮選出μ個為下一代的父集合;(μ,λ)ES 則是在評估時只考慮λ個子代,之後選 出μ個為下一代的父代;演化流程如圖 2-16 所示。

在正常運作下,要中止演化,通常有下列方式,視資料與問題複雜度設定之。常見 的方法有1.直接設定演化代數;2.設定演化時間;3.設定每代合適性之差異程度,當差 異小到預設值時即停止。

產生初代母體族群

由母體中挑選父代執行 重組運算,產生子代

進行子代突變

適應函數評估值選擇下 一世代父解

是否達到演 化終止條件

最佳解 否

圖 2-16 演化流程圖

針對文獻探討確認的預測方法和程序,於下一章節依此建構本計畫針對完整運籌環 境下,需求方與實體運輸方協同運輸網絡配置模型進行建模程序。

49