• 沒有找到結果。

基因演算法之原理

在文檔中 中 華 大 學 (頁 42-49)

第 四 章 動態交通號誌維修問題之求解程序

4.3 維修路線產生模式之求解方法

4.3.1 基因演算法之原理

基 因 演 算 法(Genetic Algorithm,GA)在 1975 年由密西根大學的 John Holland 教授、及其同事和學生所共同研發出來【23】,其原理 是 從 生 物 科 學 中 獲 得 靈 感 , 將 生 物 演 化 適 者 生 存 的 概 念 應 用 到 數 學 的 機 制 中,最 基 本 的 精 神 在 於「 演 化(Evolution)」與「篩選(Selection)」,

「 演 化 」 即 是 經 過 個 體 的 複 製(Reproduction)、交配(Crossover)及突變 (Mutation)來產生新的個體,而「篩選」則是以評估的方式去架構其環 境 , 然 後 再 依 生 物 學 家 達 爾 文(Darwin) 提出「物競天擇,適者生存」

的 演 化 論 之 演 化 過 程 , 保 留 較 適 合 環 境 的 物 種 個 體 , 並 將 較 差 者 予 以 淘 汰 。 此 演 化 論 是 指 生 物 為 了 適 應 隨 時 間 變 動 的 環 境 而 產 生 的 競 爭 方 式,在 這 場 競 爭 中,失 敗 者 將 被 淘 汰,而 勝 利 者 除 了 可 以 繼 續 生 存 外 , 還 能 經 由 複 製 、 交 配 以 及 突 變 的 演 化 機 制 , 以 自 然 選 擇 適 合 生 存 的 下 一 代 。

基 因 演 算 法 之 演 化 過 程 為 模 擬 基 因(Gene) 組 合 (Genotype) 的 變 化,每 一 串 基 因 組 合 即 為 染 色 體(Chromosome),大量的染色體代表了 一 個 生 物 族 群(Population)。族群裡染色體相互交配便可以產生新的染 色 體 , 進 而 組 成 新 的 族 群 。 新 族 群 是 由 父 代(Parents)染 色 體 所 演 化 而 成,稱 為 子 代(Offspring);所有子代的特徵,都是由父代遺傳下來的,

因 此 在 演 化 的 過 程 中 會 出 現 許 多 具 有 相 同 特 徵 的 染 色 體 , 進 而 使 族 群 越 來 越 趨 相 像 。 另 外 , 突 變 能 增 加 產 生 更 好 的 染 色 體 的 機 會 , 不 至 於 完 全 靠 交 配 產 生 新 的 品 種 。 至 於 篩 選 的 工 作 便 由 適 應 度 函 數(Fitness

Function)來建構其生存環境,保留較適合環境的個體,而將較差者予 以 淘 汰 。

基 因 演 算 法 和 傳 統 數 學 方 法 的 差 異 為 傳 統 的 數 學 方 法 直 接 以 變 數 進 行 求 解 , 故 求 解 空 間 被 侷 限 為 連 續 或 可 微 分 的 問 題 。 而 基 因 演 算 法 將 問 題 的 變 數 編 碼 成 染 色 體 的 字 串 , 然 後 直 接 以 染 色 體 進 行 演 化 求 解 , 其 求 解 的 空 間 不 但 能 處 理 連 續 或 可 微 分 的 問 題 , 而 且 也 能 處 理 不 連 續 或 不 可 微 分 的 問 題 。 此 外 , 傳 統 的 數 學 方 法 一 次 只 能 尋 找 到 一 個 解 , 其 解 容 易 陷 入 局 部 最 佳 解 。 而 基 因 演 算 法 在 開 始 產 生 起 始 解 時 , 並 非 一 次 只 尋 找 出 一 個 解 , 而 是 一 次 進 行 多 方 面 的 搜 尋 , 由 於 同 時 考 慮 多 點 的 搜 尋 , 故 不 易 使 解 陷 入 局 部 最 佳 解 , 能 有 較 好 的 機 會 獲 得 全 域 最 佳 解 , 因 此 , 基 因 演 算 法 具 有 全 域 搜 尋 的 優 點 。 圖 4.4 為基因演 算 法 的 基 本 流 程 圖 , 以 下 詳 細 說 明 每 一 個 演 算 步 驟 之 內 容 。

圖4.4 基 因 演 算 法 之 基 本 流 程 圖

一 、 設 計 問 題 解 的 編 碼(Encoding)方式

應 用 基 因 演 算 法 求 解 問 題 時 , 必 須 依 問 題 本 身 的 特 性 進 行 編 碼 , 經 過 編 碼 後 稱 為 染 色 體 , 而 每 一 個 染 色 體 是 經 由 數 個 基 因 所 組 成 , 每 一 個 基 因 代 表 問 題 之 意 義 , 稱 為 特 徵 質(Feature Value)

【30】。而一般基因演算法使用的編碼方式二進位(Binary)編碼及 順 序(Order)編碼二種,其說明如下:

(一)二進位編碼法

染 色 體 中 的 字 串 是 利 用 二 進 位 來 進 行 編 碼 , 即 基 因 均 以 0、1 來表達,例如編號為 10 的維修點,其染色體的表示方 式 為 01010。

(二)順序編碼法

當 染 色 體 因 問 題 特 性 的 不 同 而 產 生 變 化 , 而 二 進 位 的 編 碼 方 式 又 不 適 用 時 , 則 有 些 研 究 者 發 展 出 順 序 編 碼 方 式 , 其 染 色 體 基 因 的 表 示 方 式 如 「562314」或「BCFADE」。

二 、 設 定 母 體 數 目 (Population Size) 之 大 小 及 初 始 母 體 (Initial Population)

初 始 母 體 即 是 第 一 代 染 色 體 的 數 目,其 母 體 數 目 的 多 寡 會 直 接 影 響 到 求 解 的 品 質 , 若 母 體 數 目 太 少 , 會 產 生 提 早 收 斂 之 問 題;若 母 體 數 目 過 多,則 耗 費 過 多 的 搜 尋 時 間 無 法 發 揮 基 因 演 算 法 強 大 的 搜 尋 功 能【25】,Srinivas 建議母體的數目為 30 至 200 之 間 較 能 兼 顧 求 解 效 率 及 其 時 間。而 在 一 般 基 因 演 算 法 中,初 始 母 體 的 產 生 方 式 有 兩 種,最 常 見 的 一 種 為 隨 機 產 生,而 另 一 種 則 根 據 問 題 本 身 的 特 性 , 再 配 合 相 關 啟 發 式 之 解 法 來 產 生 。

三 、 擬 定 評 估 問 題 解 的 適 應 度 函 數

適 應 度 函 數 決 定 了 每 一 個 染 色 體 適 應 環 境 的 能 力,亦 即 評 斷 其 生 存 與 否 之 依 據,好 的 適 應 度 函 數 往 往 可 以 將 染 色 體 的 優 劣 比 較 出 來 , 故 適 應 度 函 數 通 常 依 系 統 者 針 對 求 解 問 題 的 要 求 而 設 計 。

基 因 算 法 於 搜 尋 最 佳 解 時,通 常 會 遭 遇「 提 早 收 斂(Premature Convergence)」和「無法順利收斂」兩個困難,其中提早收斂問 題 是 因 染 色 體 在 演 化 的 過 程 中,提 早 出 現 一 群 優 良 之 染 色 體,且 大 量 的 被 複 製 於 交 配 池 中,使 得 搜 尋 染 色 體 的 種 類 不 夠 多,降 低 染 色 體 之 多 樣 性(Diversity), 故 經 過 少 次 演 化 後 , 即 產 生 收 斂 而 停 止 演 化,因 此 搜 尋 到 的 解 並 不 是 很 理 想;而 無 法 順 利 收 斂 問 題 則 為 染 色 體 經 過 許 多 代 之 演 化 後,其 交 配 池 中 的 最 佳 適 應 值 持 續 維 持 與 整 體 平 均 適 應 值 相 近 之 值,故 產 生 無 法 預 測 其 演 化 過 程 是 否 能 順 利 收 斂 的 困 難。但 為 克 服 這 些 困 難,可 以 利 用 調 整 適 應 度 函 數 的 方 法 加 以 改 善 , 相 關 的 調 整 方 式 有 線 性 調 整(Linear Scaling)、Sigma 去除法(Sigma Truncation)與級數調整(Power Law Scaling),詳細應用方法可考文獻【25】。

四 、 以 複 製 、 交 配 及 突 變 等 運 算 方 式(遺傳運算元(Genetic Operators)) 產 生 具 競 爭 性 的 子 代

(一) 複製

由 父 代 族 群 繁 衍 出 子 代 族 群 的 第 一 個 步 驟 就 是 染 色 體

( 字 串 ) 複 製 , 複 製 是 利 用 適 應 度 函 數 值 計 算 每 一 個 染 色 體 的 適 應 程 度 並 加 入 一 些 揀 選 的 方 法 , 將 高 適 應 度 函 數 值 的 染 色 體 留 下 來 繁 殖 下 一 代 , 反 之 則 讓 其 自 然 消 失 。 故 複 製 的 目 的 是 在 選 擇 母 體 中 的 染 色 體 , 使 較 優 良 的 染 色 體 被 保 存 , 以 演 化 優 良 的 後 代 。 一 般 學 界 於 基 因 演 算 法 的 篩 選 機 制 常 見 的 有 以 下 兩 種:輪 盤 法(Roulette Wheel Selection),根據個別染 色 體 的 單 一 適 應 值 與 所 有 染 色 體 的 總 適 應 度 函 數 值 比 率 , 做 為 挑 選 的 機 率 , 較 大 者 便 愈 容 易 挑 中 且 大 量 複 製 ; 競 賽 選 擇 法(Tournament Selection)即是應用排列之概念設計而成,按 照 隨 機 方 式 選 出 競 賽 集 合(Tournament Set Size)的組成,即隨 機 選 取 兩 個 或 多 個 染 色 體 , 一 般 設 定 競 賽 集 合 為 2(亦稱為 Binary Tournament),於每個集合中再挑選其最佳染色體參 與 交 配 , 其 中 , 挑 選 的 過 程 即 是 競 賽 的 意 義 , 一 般 預 期 最 好 的 染 色 體 將 於 競 賽 中 獲 勝 兩 次 。 此 作 法 的 優 點 是 不 需 另 外 計 算 各 染 色 體 的 挑 選 機 率 值 , 且 極 適 合 無 論 最 大 化 或 最 小 化 問

題 , 挑 選 機 制 極 易 於 瞭 解 且 進 行 容 易 。 (二) 交配

在 基 因 演 算 法 中 , 交 配 是 將 複 製 後 的 染 色 體 , 隨 機 選 取 成 對 的 染 色 體 , 進 行 部 份 交 換 , 以 達 到 訊 息 交 換 的 目 的 。 經 過 交 配 的 過 程 後 , 不 但 可 以 跳 脫 局 部 最 佳 解 而 朝 向 全 域 最 佳 解 逼 近 , 而 且 可 以 搜 尋 到 更 多 樣 化 的 染 色 體 。 交 配 是 隨 機 的 選 取 交 配 池 中 的 兩 個 父 代 染 色 體 ( 字 串 ) , 彼 此 交 換 位 元 資 訊 , 進 而 組 成 新 的 子 代 染 色 體 。 藉 著 將 兩 個 父 代 染 色 體 中 優 秀 的 基 因 , 進 而 使 子 代 的 適 應 度 函 數 值 比 父 代 染 色 體 都 還 要 高 , 但 也 有 可 能 產 生 較 差 適 應 度 函 數 值 的 子 代 。

完 成 交 配 運 算 需 經 過 下 列 步 驟 :

1. 配 對 (Mating): 選 取 兩 個 染 色 體 ( 字 串 ) 以 作 為 將 進 行 配 對 的 父 代 , 大 部 分 配 對 的 方 式 為 隨 機 選 取 。

2. 決定是否交配:所有成對的染色體(字串)均依交配率 (Crossover Rate)決定是否做基因交換。交配率越大,新 的 結 構 將 會 越 快 出 現 在 群 體 中, 但 若 交 配 率 太 高, 會 使 得 群 體 中 表 現 優 良 者 在 選 取 步 驟 中 發 揮 效 果 前 就 被 改 變 了, 反 之, 過 低 的 交 配 率 將 造 成 系 統 搜 尋 腳 步 停 滯 不 前 。Srinivas 和 Mitsuo【13】建議交配率介於 0.5 到 1.0 之 間 可 以 達 到 最 佳 的 交 換 效 果 。

3. 選取交配點(Crossover Point):所謂交配點即是基因發生 交 換 的 位 置 。 交 配 點 必 須 介 於 字 串 的 首 、 尾 位 元 之 間 , 至 於 交 配 點 的 位 置 一 般 也 是 以 隨 機 的 方 式 產 生 。

4. 交配:將被交配點切開的字串位元在兩父代間做互換(以 單 點 交 配 為 例),以下將常見的順序編碼之交配方式彙整 於 表 4.1。

(三) 突變

突 變 是 屬 於 染 色 體 本 身 擾 動 的 過 程 , 它 雖 然 會 破 壞 遺 傳

表4.1 常見之順序編碼之交配方式彙整表

名 稱 簡 例

順 序 交 配 法 (Order Crossover,OX)

(由 David 所提出)

循 環 交 配 法 (Cycle Crossover,CX) (由 Oliver, Smith, and Holland 所

提 出)

部 分 相 對 交 配 法

(Partial Mapped Crossover,PMX) (由 Goldberg and Lingle 所提出)

資 料 來 源 : 【30】

過 程 中 染 色 體 的 穩 定 性 ,卻 可 以 激 發 群 體 中 的 潛 在 特 性 ,進 而 擴 大 問 題 的 搜 尋 空 間 。 突 變 過 程 是 隨 機 的 選 取 任 一 字 串 , 由 突 變 機 率 控 制 是 否 要 進 行 突 變 , 若 要 進 行 突 變 則 隨 機 的 產 生 突 變 點 並 改 變 字 串 內 的 位 元 資 訊 。

在 基 因 演 算 法 中 , 突 變 的 功 能 是 在 防 止 複 製 和 交 配 的 過

程 中 , 而 遺 失 了 一 些 重 要 的 訊 息 , 同 時 具 有 跳 脫 局 部 解 的 功 能 ,Srinivas 和 Mitsuo【13】建議突變率介於 0.001 到 0.05 之 間 。 以 下 將 一 些 突 變 的 方 法 整 理 於 表 4.2【30】。

表4.2 常見之突變方法彙整表

突 變 法 簡 例

Last-well-be-First 突變法 (LwbF)

Reciprocal Exchange 突變 法(Reciprocal Exchange

Mutation) 資 料 來 源 : 【30】

五 、 取 代(Replacement)

經 過 複 製 、 交 配 以 及 突 變 的 演 化 機 制 後 , 父 母 代 會 產 生 新 的 子 代 , 而 新 的 子 代 母 體 會 取 代 父 母 代 母 體 , 而 此 階 段 是 決 定 新 子 代 母 體 取 代 方 式 。 而 一 般 常 用 的 取 代 方 式 如 下 :

(一) 全部取代政策

不 管 適 應 度 函 數 值 的 高 低 , 全 部 由 新 的 子 代 母 體 取 代 父 母 代 母 體 。

(二) 優生政策

本 方 式 是 要 保 留 複 製 、 交 配 和 突 變 後 較 佳 的 適 應 度 函 數 值,其 保 留 數 量 依 問 題 的 特 性 決 定 之,但 保 留 數 量 不 可 過 高,

以 防 降 低 染 色 體 的 多 樣 化 , 其 餘 不 足 的 母 體 是 由 子 代 母 體 中 適 應 度 函 數 值 較 高 的 染 色 體 取 代 之 。

六 、 停 止 法 則

基 因 演 算 法 是 一 個 無 窮 的 迴 圈 , 所 以 必 須 事 先 設 定 停 止 的 法 則 , 當 整 個 基 因 演 算 法 符 合 所 設 定 之 停 止 條 件 時 , 則 停 止 整 個 演

算 。 一 般 常 見 的 停 止 法 則 有 許 多 種 方 式 , 說 明 如 下 : (一) 當演算世代達到事前所設定的固定世代數值。

(二) 當演算時間達到事前所設定的時間值。

(三) 在搜尋的過程中,當適應度函數值或目標值持續無法得到更 優 之 世 代 數 或 達 到 事 前 所 設 定 之 進 化 世 代 數 。

(四) 當達到最大的預設運算時間。

(五) 當達到符合原需求之解。

在文檔中 中 華 大 學 (頁 42-49)

相關文件