• 沒有找到結果。

第二章 背景知識與文獻探討

2.1 演化式計算簡介

相對於古典的最佳化的技術,演化式計算為一門相當年輕的最佳化演 算法,主要為根據生物演化觀念所建構成的一種計算模式,利用達爾文進 化論中「適者生存,不適者淘汰 (survival of the fittest)」的理論[1],做為在 廣大空間的搜尋機制,藉此可求解各種困難的組合最佳化問題,找到問題 的最佳解。因此演化式計算可視為一個集合的統稱,依此模式下所發展出 的演算法通稱為演化式演算法 (Evolutionary Algorithm, EA),大致上可分類 成三大類,其中包括基因演算法 (Genetic Algorithm, GA)[2]、演化式規劃 (Evolutionary Programming, EP)[3] 與 演 化 策 略 (Evolution Strategies, ES)[4],三者之間的差異如表 2.1 所示[5, 6]。

族群式 (Population Based)的演化觀念為演化式計算最主要的特色,一 個族群包含著許多個體,對於最佳化的問題上,個體經由特殊的編碼形式,

單一個體就代表著對此問題上的一個潛在解(genotype),個體則由基因變數 的表現型(phenotype)來表現對於最佳化問題上的適應能力。擁有較好適應能 力的個體將有更高的機會被保留並再次進行演化。仿照達爾文「物競天擇,

適者生存」的精神,演化式計算則運用此想法來達到最佳化的目的,對於 一個最佳化的問題,經由不斷的重組、突變、競爭與篩選,個體將逐漸地 朝向問題的最佳解前進,圖2.1 為演化式計算的通用流程圖。其中最主要的

運作機制有下列四點:

一、 重組: 在演化式計算中,重組機制 (Recombination)模仿自然界個 體交配的過程,利用重組所產生的子代,將保留部分父代 個體中的資訊。

二、 突變: 突變 (Mutation)為一個隨機擾動的行為,在最佳化的過程 中,藉由將個體進行突變運算,來對個體的基因變數產生 隨機的擾動,為造成個體彼此間差異的一個主要來源。

三、 競爭: 源自於達爾文「物競天擇」的觀念,個體間彼此相互競爭,

經由計算 (Evaluation)個體的適應能力來評判個體好與壞 的一個過程,擁有較佳適應能力的個體將有較高的機會被 保留下來。

四、 篩選: 源自於達爾文「適者生存」的觀念,擁有較佳適應能力的 個體將在篩選的機制 (Selection)下保留下來並成為下一代

的人口。

圖2.1 演化計算通用示意圖

表2.1 演化策略、演化式規劃、基因演算法比較表

ES EP GA

Representation Real-valued Real-valued Binary-valued

Fitness is Objective function value

Mutation Gaussian, main

operator

Gaussian, only operator Bit-inversion, background operator Recombination Discrete and

intermediate

None z-point crossover,

uniform crossover, only sexual, main operator

Selection Deterministic, extinctive or based

on preservation

Probabilistic, extinctive Probabilistic, based on preservation Constraints Arbitrary

inequality constraints

None Simple bounds by

encoding mechanism

Theory Convergence rate

for special cased,

Convergence rate for special cases,

演化式計算的優點在於對各種類型的最佳化問題都可以表現出一定的 略 (Evolution Strategies, ES)作為研究的主軸,並試圖將其與近年來興起的 粒子演算法(Particle Swarm Optimization, PSO)在搜尋的概念上做結合,因此 在以下兩節中,我們將分別針對演化策略與粒子演算法的基本知識與相關 背景作說明。

表 2.2 演化式計算之優缺點比較表

Advantage Disadvantage

z No presumptions w.r.t. problem space

z Widely applicable

z Low development & application costs

z Easy to incorporate other methods

z Solutions are imperpretable

z Can be run interactively, accommodate user proposed solutions

z Provides many alternative solutions

z Suitable for changing conditions

z No guarantee for optimal solution within finite time

z Weak theoretical basis

z May need parameter tuning

z Often computationally expensive

相關文件