• 沒有找到結果。

中 華 大 學

N/A
N/A
Protected

Academic year: 2022

Share "中 華 大 學"

Copied!
70
0
0

加載中.... (立即查看全文)

全文

(1)

中 華 大 學

碩 士 論 文

生物晶片之探針配置問題

Probe Placement Problems on Biochips

系 所 別:資訊工程學系碩士班 學 號 姓 名:M09402030 陳顧仁

指 導 教 授: 吳哲賢 博士

中 華 民 國 九 十 六 年 七 月

(2)

中文摘要 i

生物晶片之探針配置問題

研究生:陳顧仁 指導教授:吳哲賢 中華大學資訊工程研究所

摘 要

中文摘要

生物晶片的用途可針對大量基因組同時做檢測與分析,目前生物晶片製造過 程有點墨法與光罩蝕刻法兩種,光罩蝕刻法之光罩序列又分為非週期、週期同 步、以及週期非同步三大類。本論文主要針對,在光罩蝕刻法之週期性同步光罩 序列下,探討探針配置問題。

探針配置問題是利用邊界最短問題來評估好壞,目前相關研究有利用旅行員 推銷問題演算法,以及列磊晶配置演算法。針對探針配置問題,我們首先利用基 因演算法來求解;接著改良列磊晶配置演算法,提出隨機列交換配置演算法;最 後結合上述兩種方法,設計出基因式隨機列交換配置演算法。

根據實驗結果分析,我們提出之基因式隨機列交換演算法,利用邊界最短問 題來評估探針配置好壞,所得到的結果優於目前相關研究。執行時間方面,亦有 不錯的表現。

關鍵字:生物晶片、探針配置問題、基因演算法

(3)

英文摘要 ii

Probe Placement Problems on Biochips

Student:Gu-Ren Chen Advisor:Dr. Jer-Shyan Wu

Institute of Computer Science and Information Engineering

Chung Hua University

ABSTRACT

英文摘要

There are two kinds of spotted and photolithographic methods for biochip manufacture process; the mask sequence of photolithographic includes three types:

non-periodic, periodically synchronous, and periodically asynchronous cases. The thesis mainly focuses on probe placement problems with periodically synchronous mask sequence of photolithographic.

Until now, related researches have proposed TSP(Traveling Salesmen Problem) and row-epitaxial placement algorithms. In the thesis, we first make use of genetic algorithms, and then derive random row-exchange algorithms, finally propose genetic random row-exchange algorithms.

According to experimental results, genetic random row-exchange algorithms is better than the past researches of measuring BMP(Border Minimization Problem).

Keywords:biochip, probe placement problems, genetic algorithms

(4)

誌 謝 iii

誌 謝

本論文能順利的完成首先要感謝恩師 吳哲賢教授悉心指導與督促。在就讀

研究所兩年期間,在學術研究及學養方面,不論是研究方向的確立、研究的過程 及撰寫定稿,皆蒙吳教授細心的指導與叮嚀,才能使得本論文能完成。

其次是資工所的授課老師,在修課上面給予的指導與教誨,還要感謝我的家 人,由於你們的全力支持,使我能夠專心在研究上作努力,今日才得以完成碩士 學位,僅能以此論文的完成來感謝你們為我所做的一切。

最後,感謝在求學跟上曾幫助我的師長、學長、同學…等,在此致上一份最 真誠的謝意,因為有你們的協助,才能順利克服各種困難,使得本論文完成。

(5)

目錄 iv

目錄

中文摘要... I 英文摘要...II 誌 謝... III 目錄... IV 圖目錄...VII

第一章 導論...1

1.1 生物晶片簡介...1

1.1.1 生物晶片的歷史...2

1.1.2 生物晶片的發展...3

1.2 生物晶片種類...4

1.2.1 微陣列晶片...4

1.2.2 微處理晶片...5

1.3 探針合成與配置問題...6

1.3.1 探針合成問題...6

1.3.2 探針邊界最短問題...9

1.4 探針配置問題...10

1.5 研究動機與目的 ... 11

第二章 探針配置問題...12

2.1 探針配置問題下限值 ...13

2.2 旅行員推銷問題路徑配置演算法...14

2.3 列磊晶配置演算法...16

2.3.1 磊晶配置演算法...16

(6)

目錄 v

2.3.2 列磊晶配置演算法...19

第三章 基因演算法...20

3.1 基因演算法的起源 ...20

3.2 演算法的步驟 ...21

3.2.1 初始族群...24

3.2.2 編碼方式...25

3.2.3 適應函數...27

3.2.4 複製過程...28

3.2.5 交配過程...30

3.2.6 突變過程...33

3.2.7 族群取代...34

3.2.8 結束搜尋...35

第四章 基因式探針配置演算法 ...37

4.1 探針配置問題基因演算法...37

4.1.1 初始狀態...38

4.1.2 複製過程...39

4.1.3 交配過程...40

4.1.4 突變過程...43

4.1.5 終止條件...44

4.2 探針配置問題隨機列交換配置演算法...45

4.2.1 隨機列交換演算法...45

4.3 探針配置問題基因式隨機列交換演算法...47

4.3.1 初始設定...47

4.3.2 複製過程...48

(7)

目錄 vi

4.3.3 交配過程...49

4.4.4 突變過程...50

4.4.5 終止條件...51

4.4 實驗結果與分析...52

4.4.1 輸入格式設定...52

4.4.2 探針配置問題之配置演算法比較...54

第五章 結論...57

5.1 研究成果 ...57

5.2 未來研究方向 ...58

參考文獻...59

(8)

圖目錄 vii

圖目錄

圖 1.1、生物晶片架構...2

圖 1.2、光罩蝕刻法示意圖...3

圖 1.3、探針合成示意圖...6

圖 1.4、三大探針合成步驟: (A)光罩序列、(B)週期性同步、(C)週期性非同步、(D) 非週期性...8

圖 2.1、漢明圖...12

圖 2.2、探針配置問題下限值示意圖 ...13

圖 2.3、旅行員推銷問題配置示意圖 ...14

圖 2.4、磊晶配置步驟...17

圖 2.5、列磊晶配置步驟...19

圖 3.2.、基因演算法之流程圖 ...22

圖 3.2.、編碼方式...26

圖 3.3、單點交配...30

圖 3.4、多點交配-兩點交配 ...31

圖 3.5、均勻交配...32

圖 3.6、突變示意圖...33

圖 4.1、循環交配示意圖...41

圖 4.2、循環最短邊界示意圖 ...42

圖 4.3、隨機列交換演算法的配置步驟 ...46

圖 4.5、配置演算法之輸入格式 ...53

(9)

第一章 導論 1

第一章 導論

人類基因組計畫的提前完成,生物科技上的研究也正式進入了後基因時代,

下一步的工作為解讀基因序列,以求辨認新的基因序列並探索其功能、特性及與 基因之間之交互過程。

1.1 生物晶片簡介

生物晶片(Biochip)(如圖 1.1),又名微陣列晶片(Microarray Chip)或微陣列處 理晶片(Micro-processing Chip)是採用資訊工程半導體策略,用於生物分析研究所

產生的微小化裝置,即是將傳統大型分析、檢測儀器縮小為具有體積輕巧、快速 分析、平行處理及同時檢測大量樣本等優點的小型分析晶片[1-2, 9-11, 18-19]。

生物晶片通常以玻璃、矽晶片、尼龍薄膜或高密度塑膠材質作為基底,使用 微小化整合技術植入生物有機分子或構成元件(核甘酸、蛋白質)化為生物探針 (probe),並配合精密加工及自動化等技術,以利在微小面積上或空間裡同步且快 速進行大量之生化感測及反應。

(10)

第一章 導論 2

圖1.1、生物晶片架構

1.1.1 生物晶片的歷史

生物晶片的起源可以追朔到80 年代,研究人員將分子生物應用於電腦晶片 上,接下來的重要發展由 Manz 及其團隊於 Ciba Geigy 公司發展出第一套微型完 整分析系統(micro total analytical system, μTAS)。更進一步具體研究發展則是由 Affymax(Affymetrix 的母公司),利用光罩蝕刻法(Photolithographic)的技術(如圖 1.2) [4],主要利用 DNA 的 A、C、G、T 四種鹼基,以一層層不同組合光罩,逐 一往上合成長度約為 20~25 的生物晶片。另一重要的進展為,賓州大學和 Lawrence Livermore 實驗室所共同發展出的微小 PCR 反應器。

(11)

第一章 導論 3

圖1.2、光罩蝕刻法示意圖

1.1.2 生物晶片的發展

目前生物晶片技術研發增長趨勢發展迅速,根據工研院 IEK 提供的數據顯 示,2005 年全球的生物晶片市場為 25.7 億美元,較 2004 年的 20.6 億美元成長 了24.7%,預計 2008 年市場規模可達 47 億美元,其中臨床應用更具市場潛力。

台灣生技產業產值,由於發展起步較晚,許多技術已受專利上的限制,但政 府每年編有1~2 億研發經費,並將生物晶片列為「製藥與生物科技國家型計畫」

之一環,且工研院結合國內廠商,包括華聯生技、神隆生技、永匯豐科技、威茂 生技、鈦昇科技及開物科技,於2006 年 12 月 22 日宣佈成立「生物晶片臨床應 用聯盟」,進行生物晶片製造及研發服務產業垂直整合,串聯供需鏈結及應用服 務,創造台灣生技醫療產業新商機[13-14, 19-21, 23-25]。

(12)

第一章 導論 4

1.2 生物晶片種類

現階段生物晶片發展大致可以區分為可以獲得大量資訊的微陣列晶片以及 功能整合的微處理晶片兩大類,並可再細分成數種不同類型及用途之生物晶片。

除上述兩大晶片外,亦有多間公司積極發展於整合型生物晶片,希望將結合上述 兩大晶片之優點將檢體的製備、處理、分析到結果檢測,都可以在同一片晶片上 面完成。

1.2.1 微陣列晶片

微陣列晶片為於晶片基底上排列大量生物探針(DNA 或蛋白質),利用 DNA

雜交反應或蛋白質的特異性結合,進行檢測與分析。又因為探針的標的物不同,

可分為基因晶片(Gene Chip)及蛋白質晶片(Protein Chip)。

基因晶片為所有生物晶片種類中發展最早且技術較成熟,經過軟體運算、對 比及設計等過程之基因探針,透過「點墨法」或「光罩蝕刻法」之製程及點陣技 術植入晶片,再與標的物中的核甘酸互補序列片段產生結合,將反應後之基因表 現訊號進一步分析處理。

蛋白基晶片則是在晶片載體上固定蛋白質、胜肰(Peptide)或其他非 DNA 之 特定分子,用以檢測蛋白質進行特異性結合的反應;與基因晶片相較,蛋白質結 構較複雜和活性對於環境的微小變化較敏感,且蛋白質合成技術性較高,固定於 晶片上又容易造成結構改變而導致蛋白質之變性(Denaturation),故此製程技術較 為困難。

(13)

第一章 導論 5

1.2.2 微處理晶片

微處理晶片又稱為實驗室晶片(Lab-on-a-chip)或微流體晶片(Microfluidics),

即是將一實驗室之各種操作及生化分析等活動於一個晶片上完成,與一般實驗室 設備相比,其優點為(1)結構較簡單且費用低廉,實驗時所需之反應物合檢測試 濟均大量減少,故實驗成本可大幅降低。(2)實驗時所需要之反應時間短,可提 高實驗之效率。由於其結合微機電(Microelectromechanical system, MEMS)、微流 體(Microfluidic)、微動力及微閥控制等多項高科技技術,故開發困難度較微陣列 晶片高。

(14)

第一章 導論 6

1.3 探針合成與配置問題

由光罩蝕刻法的技術所產生的生物晶片,會有因為光線干擾或是其他因素造 成讓晶片上的不需要感光的位置感光。所以在製造晶片過程中產生了探針合成與 探針配置的問題。

1.3.1 探針合成問題

探針合成(Probe Synthesis)為在微陣列晶片上針對每一個位置所配置的 DNA 探針,利用光罩蝕刻法合成所配置之探針。圖1.3(a)表示晶片上九個位置之 DNA 探針配置,圖1.3(b)利用光罩蝕刻法,合成順序為 A、C、T,利用光罩遮蓋不需 合成之位置,最後在每一位置合成所需要之探針。

圖1.3、探針合成示意圖

(15)

第一章 導論 7

探針合成型態可分為三大類:週期性同步探針合成(Periodic Synchronous Probe Synthesis) 、 週 期 性 非 同 步 探 針 合 成 (Periodic Asynchronous Probe Synthesis)、以及非週期性探針合成(Non-Periodic Probe Synthesis)。

[週期性探針合成]

週期性探針合成之定義為:在合成步驟時,依照A、C、T、G、A、C、T、

G … 的順序,一組{A、C、T、G}為一週期,每一週期裡的每一探針只能合成 一個核甘酸稱為同步探針合成(如圖 1.4(b));若在一個週期內,可以合成兩個以 上之核甘酸,則稱為非同步探針合成(如圖 1.4(c))。

[非週期性探針合成]

目前最少週期性同步探針合成步驟的研究[9, 16],大多利用最短共通超序列 SCS (Shortest Common Supersequence)的技巧,在給定多條長度不一的探針序列 組,求出一條新的共通序列,這條新的共通探針序列必需包含目前所有任意長度 不一的探針序列,此新求出之共通序列即為一開始給定序列組之最短共通超序列 (最短共通超序列可能不唯一)。

(16)

第一章 導論 8

圖1.4、三大探針合成步驟: (a)光罩序列、(b)週期性同步、(c)週期性非同步、

(d)非週期性

圖 1.4 為只有兩個探針位置的生物晶片,探針配置分別為 AGTA 以及 GTGA。圖 1.4(a)表示為週期性光源合成:A、C、T、G 順序;圖 1.4(b)為同步探 針合成,每一週期每一探針只合成一次;圖1.4(c)則為非同步探針合成,探針隨 時可以合成;圖1.4(d)則為非週期性探針合成步驟,只需五次合成步驟即可。

(17)

第一章 導論 9

1.3.2 探針邊界最短問題

探針邊界最短問題(Border Minimization Problem)為可評估探針合成之製程 好壞。光罩蝕刻法是利用光罩遮蓋不需合成之位置,無遮蓋位置感光合成為探針 所需之DNA 或蛋白質。但因為製程環境的影響,可能造成光罩邊界感光的誤差,

產生光罩處合成錯誤結果。這個錯誤的主要原因是原先被光罩遮住的部份,會因 為光線的散射、干擾及人為疏忽等因素,產生感光反應,而全部合成步驟之光罩 邊界總長等同於探針合成誤差,因此被廣泛用來評估探針合成之製程好壞[7, 13-16]。

在圖1.3 中合成順序為 A、C、T,光罩邊界依序為:8、6、8,合成步驟為 3,全部光罩邊界的總長為 8 + 6 + 8 = 22。圖 1.4(b)為同步探針合成,合成步驟為 13,全部光罩邊界的總長為 1 + 1 + 1 + 1 + 1 + 1 + 0 = 6;圖 1.4(c)為非同步探針 合成,合成步驟為9,全部光罩邊界的總長為 1 + 0 + 0 + 1 + 0 = 2;圖四(d)為非 週期探針合成,合成步驟為5,全部光罩邊界的總長為 1 + 0 + 0 + 1 + 0 = 2。

(18)

第一章 導論 10

1.4 探針配置問題

探針配置問題為給定生物晶片以及一組探針,找出最佳探針配置,擁有最短 全部光罩邊界的總長,即為最佳化之探針配置。可以看出探針配置問題較邊界最 短問題更為複雜,其最佳解求法亦更為困難。

針對週期性同步探針合成之探針配置問題,目前大部分的分析都針對週期性 同步探針合成[3-8, 17]。可發現生物晶片上兩相鄰長度相同探針序列上若有一核

甘酸字母不同,其BMP 差距值為 2,若利用漢明距離(Hamming distance)之技巧,

可以得知光罩邊界的總長等同於相鄰探針漢明距離總長之兩倍。

圖 1.4(b)為週期性同步探針合成,兩相鄰探針分別為 AGTA、GTGA,其漢 明距離為3,所以光罩邊界的總長為 6。

(19)

第一章 導論 11

1.5 研究動機與目的

本論文主要針對週期性同步合成步驟下。根據探針邊界最短問題評估標準之 下,尋找最佳化之探針配置。在此合成步驟下,所有合成步驟之光罩邊界的總長 等同於相鄰探針漢明距離總長之兩倍。

首先分析及比較目前週期性同步合成步驟下已有的研究方法:旅行員推銷問 題 路 徑 配 置 演 算 法(TSP tour Placement Algorithm) 、 列 磊 晶 配 置 演 算 法 (Row-Epitaxial Placement Algorithm)之特性及優缺點。

接著提出利用基因演算法,嘗試找出降低最短的漢明距離總長之探針配置位 置,並將結果和上述二種方法做比較。

(20)

第二章 探針配置問題 12

第二章 探針配置問題

由光罩蝕刻法所產生之生物晶片,會有製程環境上的誤差情況,進而產生探 針邊界最短問題,由於探針邊界值是漢明距離之兩倍,故利用漢明距離求解的技 巧,來降低錯誤率的發生。例如圖 1.4 中 AGTA 以及 GTGA 兩序列之漢明距離 即為 3,所以在週期性同步合成步驟下,圖 1.4(b)全部光罩邊界的總長為 6,即 為漢明距離3 的兩倍。

給予一組長度相同之探針,以兩兩探針間的漢明距離為依據,製作成圖形,

稱漢明圖(Hamming Graph)。在漢明圖中,點代表每一探針,兩兩探針序列間之

漢明距離,即為兩點間之距離。圖2.1 為長度為 3 的九個探針序列,可看出其漢 明圖為九個點的完全圖形(Complete Graph)。

圖2.1、漢明圖

(21)

第二章 探針配置問題 13

2.1 探針配置問題下限值

給定N × N 大小的晶片探討探針配置問題時,共有 2 * N(N - 1)條邊界。而 最理想狀態的探針配置問題的答案往往是很難去尋找出來的,因為總共有 N!情 況的排列組合數,故提出一個方法推導探針配置問題的下限。

首先由漢明圖中找出分別與這 N2個探針點間最短的四個邊界,將這 4N2個 邊界距離做加總,然後將這4N2的距離中最長的4N 個邊減去,最後再除以 2 即 為探針配置問題之下限值(如圖 2.2)。

圖2.2、探針配置問題下限值示意圖

(22)

第二章 探針配置問題 14

2.2 旅行員推銷問題路徑配置演算法

旅行員推銷問題路徑配置(Traveling Salesman Problem Tour Placement)演算 法,為在漢明圖上尋找通過每一個點一次的最短旅行員推銷問題路徑,已知旅行 員推銷問題其為NP-hard 問題。

首先在漢明圖上找出旅行員推銷問題路徑,將尋找出來的路徑排列於晶片 上,從晶片左上方開始以S 形排列,稱為列依序(Row-by-Row)排列方式。在 N × N 的晶片上,共有 2 * N(N - 1)條邊界。

圖2.3、旅行員推銷問題配置示意圖

(23)

第二章 探針配置問題 15

圖2.3 為 4 × 4 規格之 16 個探針位置之生物晶片,共有 2 * 4 (4 - 1) = 24 個探 針邊界距離。擁有最少之全部24 個漢明距離總長之探針配置,即為最佳化探針 配置。圖六之TSP 路徑包含 15 個最短漢明距離總長,但另外 24 - 15 = 9 個邊界 距離,則無法確定其大小。

(24)

第二章 探針配置問題 16

2.3 列磊晶配置演算法

磊晶配置(Epitaxial Placement)演算法,最早是由 K. Shahookar 等人開發於超 大型積體電路(Very-Large Scale Integrated Circuits, VLSI)製作上,爾後由 A.

Kahng 等人將其用於生物晶片配置問題,並提出列磊晶配置(Row-Epitaxial Placement)演算法,進而對生物晶片探針配置問題進行討論。

2.3.1 磊晶配置演算法

磊晶配置(Epitaxial Placement)演算法[16],因為其配置方式類似於水晶狀,

又稱之為種子水晶成長(seeded crystal growth)方法。此方法為在生物晶片上中心 位置放置一個探針(如圖 2.4),再依漢明圖之漢明距離尋找與其最短距離的四個

探針放置中心探針四周圍,再分別由這四探針開始向周邊發展,直到探針全部配 置完成。

首先找出一個中心探針稱為種子(Seed),種子探針從所有探針隨機選取出,

再將之放置於晶片的中心位置,此晶片中心位置設定為「滿」表示於晶片中上已 經配置探針,而其於未配置到的位置稱之為「空」,接著以此中心位置點出發,

尋找其他尚未配置的探針如何配置於晶片之上。

當尋找到「空」的位置時,若此位置的四個相鄰邊皆已被標示為「滿」的狀 態時,由尚未放入晶片中的探針群組裡選出一探針放置於位置上,而這個探針稱 為最佳可能(Best Possible)探針。被選出來的探針需與其相鄰四個探針依照漢明圖

(25)

第二章 探針配置問題 17

上之距離值做加總比較,若此探針加總值優於其他探針之加總值,此探針則為最 佳探針,然後將原先「空」的位置設定為「滿」。

若在「空」的位置發現其相鄰四個邊中有一不為「滿」時,即「滿」小於4 時,則將算出來的漢明距離加總值乘上一干擾係數ki值以避開重覆計算,其值範 圍為0 < ki < 1,i=1、2、3。i 值代表與「空」位置上的相鄰的四個探針裡有幾個 位置為「滿」。將持續上述動作,直到晶片上所有位置皆被配置為止。演算法描 述如表2.1。

圖2.4、磊晶配置步驟

(26)

第二章 探針配置問題 18

表2.1、磊晶配置演算法

Input: Set P of N2 probes, scaling coefficients ki, i = 1, . . . , 3 Output: Assignment of the probes to the sites of an N × N grid

1. Mark all grid sites as empty

2. Assign a randomly chosen probe to the center site and mark this site as full 3. While there are empty sites, do

If there exists an empty site c with all 4 neighbors full, then

Find probe p(c) ∈ P with minimum sum of Hamming distances to the neighboring probes

Assign probe p(c) to site c and mark c as full Else

For each empty site c with i > 0 adjacent full sites, find probe

p(c) ∈ P with minimum sum S of Hamming distances to the

probes in full neighbors, and let norm_cost(c) = kiS/i.

Let c be the site with minimum norm_cost Assign probe p(c) to site c and mark c as full

(27)

第二章 探針配置問題 19

2.3.2 列磊晶配置演算法

列磊晶配置(Row-Epitaxial Placement)演算法是由磊晶配置演算法演化而 來,當磊晶配置演算法完成後的探針,稱為水晶探針(crystallized probe),其配置 位置將有機會被重新排列,保留左上方已被配置完成的探針,依照特定的順序(例 如列依序)排列,利用漢明距離做為評估標準,如果此兩探針距離交換後可減少 原先的配置距離,則交換此兩探針位置。如圖 2.5,(i, j)位置和其他尚未固定位 置交換探針,得到較短之漢明距離,則此兩探針彼此互換位置,重覆這個動作直 到所有探針配置完成為止。

圖2.5、列磊晶配置步驟

(28)

第三章 基因演算法 20

第三章 基因演算法

基因演算法(Genetic Algorithms, GA)[12, 26],又稱為遺傳演算法或基因遺傳 演算法。以達爾文(Charles Darwing)進化論中「適者生存、不適者淘汰」(Survive of the first)的精神,將不適生存者淘汰,而生存者繼續藉由繁殖,不僅將優良的

基因延續,且可能使下一代擁有更好的基因。經多年的發展與改良後,基因演算 法被用於許多地方,且被證明為一有效最佳化的搜尋方法。

3.1 基因演算法的起源

基因演算法可以追朔到1950 時期,由生物學家與電腦學者合作,嘗試於電 腦上模擬物種間「適者生存、不適者淘汰」的基因演化過程。John Von Neurmann 提出自我複製理論,奠定基因演算法之基礎;爾後在1960 年代初期,密西根大 學 John Holland 和其團隊將電腦化的遺傳學(染色體、基因、配對基因、適配函 數…)應用到其他領域,奠定了基因演算法的發展基礎與思考架構。

(29)

第三章 基因演算法 21

3.2 演算法的步驟

在基因演算法過程中每一個體稱為染色體(Chromosome),而每一世代的染色 體的集合稱為群體(Population)。在基因演化過程中,每一世代中的每一個染色體

皆會以「適者生存、不適者淘汰」的原則相互競爭,其較適合生存的染色體有較 高的適應值(Fitness value),且可以複製出較多的子代,然後從其中選擇預交配 (Crossover)之配對對象產生下一代,以預期產生適應度較高下一代的可能。然而 為了怕有遺失其他更佳適應值的可能性,加入了突變(Mutate)的過程,進而製造 產生出有用資訊的可能性,不過一般來說突變的機率(Mutate Rate)通常是很低的。

基因演算法的限制為不保證找出真正的最佳解,而是找到近似解;當染色體 代代相傳的演化下去,經過廣大的解答範圍及演化過程所得到某種程度的可能最 佳解,即是所需要的解。使用基因演算法亦需要考慮以下要素:

1. 解決問題之字串表示方式(編碼方式)。

2. 起始解之產生及族群數目決定。

3. 適當定義出評估問題解之適應函數。

4. 基因運算元的運作,子代的產生方式。

5. 決定基因演算法之參數(遺傳代數、互換率、突變率…等等)。

(30)

第三章 基因演算法 22

基因演算法的基本流程為選擇、交配和突變等機制(如圖 3.1),而這些機制

具有平行及機率性搜尋的特性,並具有多方面快速搜尋及避免落入區域性最佳解 之優點,其基本之演算法(Simple Genetic Algorithm, SGA)描述如表 3.1。

圖3.2.、基因演算法之流程圖

(31)

第三章 基因演算法 23

表3.1、基因演算法 SGA( ){

Generation = 0;

Initial population( );

Cal_fitness( );

While(termination_condition != true){

Crossover( );

Mutate( );

Cal_fitness( );

Generation = Generation + 1;

} }

//初始世代 //初始族群 //計算適應函數 //設定終止條件 //交配運算 //突變運算 //計算適應函數 //下一世代

(32)

第三章 基因演算法 24

3.2.1 初始族群

執行基因演算法時,必須先了解其基本概念,在演算過程中,通常利用最簡 單的隨機方式來產生,即由所有可能解當中隨機挑選出的N2個染色體,而這N2 個染色體稱為初始族群(Initial Population)。族群中每一染色體亦稱為一個個體 (Individual)。利用隨機選擇的方式讓族群中的個體具有多樣性,同時使得搜尋能 具有隨機和多點的特性,避免掉若初始族群過於集中,而掉入局部最佳解(Local Optimal)的情況。

另一種產生初始族群的方法根據是依題目所預搜尋之解的特徵,利用這些特 徵個體分類,使得初始族群在最初產生的時候就能比較接近所要尋找的解,其最 大的好處是可以減少基因演算法之後所要執行的次數,進而達到縮短基因演算法 所要花費的時間。因此,解的特徵條件就顯得十分重要,若特徵設定的方向不好,

則不但無法縮短搜尋時間,最糟糕的情況是有可能使得初始族群掉入局部最佳 解,而使得所要搜尋出來的解不易出現。

初始族群的數目是一項十分重要的問題,若初始族群數目過於稀少,容易讓 基因演算法收斂速度過快,而搜尋到較差的解,所以初始族群數目的大小可以依 據問題複雜度而設定,愈複雜的問題所需的族群愈大,相對於每一世代的演化過 程就需要更長的運算時間與空間。

(33)

第三章 基因演算法 25

3.2.2 編碼方式

基因演算法的編碼方式稱為基因編碼(Gene Encoding),其編碼資料型態可包 含二進位(Binary)編碼方式、整數編碼方式、實數編碼(Real Number)方式、文字 編碼方式及符號編碼方式等多種型態,其中以二進位編碼方式與實數編碼方式最 為常見。在個體中通常只使用一種資料編碼方式,但也可以混合使用各種型態編 碼,至於要選擇何種編碼方式,則要視問題所追求的目標之特性來決定,有時候 也不一定需要經過編碼的動作,直接利用原始的資料格式進行搜尋。

[二進位編碼方式]

二進位編碼(Binary Encoding)方式是以位元為單位,一個族群可以包含多個 染色體,每一個染色體由一個或一個以上的基因組成用來代表參數。基因演算法 與其他求解最佳化技術的不同之處,只需以 0 與 1 這兩種符號排列成列成基因 組,卻不在意這一些位元組合所代表的值為多少,只有在適應函數中其值才有意 義。圖3.2(a)為一個染色體有 6 個基因,每一個基因使用 3 位元來編碼,是典型 的二進位編碼方式。

[實數編碼方式]

相較於二進位編碼方式中個體皆為0 與 1 所組成,多個個體組成族群,個體 本身即表示適應函數中所需要搜索的參數;實數編碼(Real Number Encoding)並非

(34)

第三章 基因演算法 26

是由0 與 1 所組成,而是一個數字本身就代表一個個體。

事實上並不難發現基因演算法在編碼及解碼上花費了相當的時間,特別是當 所需要的參數增加或是過大時,編碼及解碼所需的浮點運算將會嚴重的延遲程式 執行的時間,而且編碼長度不夠時可能使其搜尋到的解未並是整體的最佳解 (Global Optimal)。所以直接以原來的實數下去運算,可以避免掉編碼與解碼的運

算時間、而且可以提高系統精確度。圖 3.2(b)是實數編碼的例子,此染色體有 6 個基因,每一個基因對應一個實數變數。

圖3.2.、編碼方式

(35)

第三章 基因演算法 27

3.2.3 適應函數

達爾文進化論中所提「適者生存、不適者淘汰」的理論,為基因演算法之主 要概念,應用到基因演算法之中,適應函數(Fitness Function)即是這基因演化中 的一個性能指標(Performance Index)。

適應函數主要是用來評估族群中每一個個體的適應值,針對不同的問題適應 函數會有不同的設計方式,而個體經由適應函數所產生的值稱為適應值(Fitness Value),適應值愈高,表示個體本身競爭力愈強,此個體則有較大的機率將本身 的基因留到下一個新的族群身上,而繼續進行基因演算法。

將基因演算法應用到實際上面的問題,則必須將最佳化問題及目標適當的以 適應函數來表示。舉例來說,若如想要尋找某生物晶片中排列方式能夠達到探針 邊界最小值或是符合及達到探針配置問題的規定條件,那麼適應函數即是朝向此 目標來訂定。

(36)

第三章 基因演算法 28

3.2.4 複製過程

複製過程又稱為選擇過程,在基因演算法中即是扮演天擇的角色,其主要目 的是利用適應函數所挑選適應值較佳的個體,來決定該個體被複製的機率。一般 而言,適應函數值愈高,表示該個體之染色體有更大的機率被挑選進入到下一個 步驟,進而到下一個世代,其他適應值過低而淘汰的個體,可以使得下一世代的 族群適應函數值提高。

決定完適應值函數後,必須決定要以什麼樣的方式讓個體進入到基因演算法 下一個步驟。而目前最常見的複製過程中有三種:輪盤式選擇法(Roulette-Whell Selection)、菁英式選擇法(Elitism Selection)、競爭式選擇法(Tournament Selection)。

[輪盤式選擇法]

輪 盤 式 選 擇 法(Roulette-Whell Selection) 又 稱 為 比 例 選 擇 法 (Proportional Selection),顧名思義主要利用族群中每一個體的適應值在整個族群所佔有的百分 比,來決定個體被選擇複製的機率。每一個適應函數值如同在輪盤中所佔有的面 積,所以適應值愈高,所佔有的輪盤面積就愈大,挑選出來的機率愈大,反之則 越小。

(37)

第三章 基因演算法 29

[菁英式選擇法]

菁英式選擇法(Elitism Selection)亦是常被拿來做為複製過程的選擇方式,主 要概念為將目前群體中適應值最高的個體直接選取,此做法不需要進行一些額外 的運算過程,而是直接利用它來替換經過交配與突變等過程後所產生的適應值個 體。菁英法的優點是可以快速的收斂物種,且保證個體不會被交配等過程所破 壞,但另一方面也容易使適應值落入局部最佳解,造成無法搜尋整體最佳解。

[競爭式選擇法]

競爭式選擇法(Tournament Selection)類似於輪盤式選擇法,同樣是適應函數 值愈高的個體愈容易被選中,不同的是競爭式選擇法是在每一次的演化過程中,

隨機選取二個或是多個個體互相競爭,將適應值較高的物種保留下來以進行交配 等動作。

以上介紹的這三種選擇方式,都對於適應值較高的物種有較高的存活率,一 般而言選擇與複製的動作,主要目的是為選擇較為優秀的個體,複製到下一世代 進行交配與突變的運算,至於要選擇多少個個體複製到下一世代則是要看適應函 數或是問題的需求來決定。

(38)

第三章 基因演算法 30

3.2.5 交配過程

交配(Crossover)的過程為隨機方式由先前複製過程中所挑選出來的選擇二 個個體稱為雙親(Parents),再隨機選擇一交配點(Crossover Point),彼此交換這兩 親代之基因(位元)資料,藉由交配這兩親代的優秀基因資訊,產生出來的新的世

代,期望能夠繁殖出更好的適應值個體。但並非所有被選中的親代個體全部都要 進行交配動作,而是以預先設定之交配機率(Probability of Crossover)來決定是否 交配。基本上,交配的方式有三種,分別為單點交配(Single-Point Crossover)、多 點交配(Multi-Point Crossover)及均勻交配(Uniform Crossover)。

[單點交配]

單點交配(Single-Point Crossover)為隨機選擇一交配點,以交配點作為分界,

將兩親代於交配點之後的基因進行互換(如圖 3.3),而形成兩個新的子代。

圖3.3、單點交配

(39)

第三章 基因演算法 31

[多點交配]

多點交配(Multi-Point Crossover)與單點交配類似,唯一不同之處為其擁有多 個交配點(如圖 3.4)。即每對染色體隨機挑選兩個或兩個以上的交配點,並於這 些交配點之間進行基因互換,以產生新的兩個子代。

圖3.4、多點交配-兩點交配

[均勻交配]

均勻交配(Uniform Crossover)由 Syswerdy(1989)所提出的交配方式,亦被稱 為字罩交配,原因為使用均勻交配時必須先產生一字罩,字罩的內容為隨機產生 且長度與親代染色體長度相同。進行交配動作是依照字罩的機率來決定,因此交 配方式為每一個點都是交配點,每一交配點的交配機率為獨立且均等(如圖 3.5)。

(40)

第三章 基因演算法 32

圖3.5、均勻交配

基本上來說,最常用的交配方式為多點交配中的兩點交配(Two-Point Crossover)(如圖 3.4)。但在實際應用上,該選擇哪一種交配方式,則需要依 問題之要求與基因編碼方式等因素來決定,不同的交配方式也將會產生不同 的結果。

(41)

第三章 基因演算法 33

3.2.6 突變過程

最佳化的問題中,純粹靠交配與複製這兩種運算方式,所產生的多種下一世 代個體,並不能夠演化出一個具有新的特性的基因資訊,而使得演化結果侷限於 特定的少數解。因此,加入突變的動作讓個體能有新的資訊產生。在自然界中,

生物是經由突變來創造新的物種,基因演算法亦是藉由自然界中突變的方式,讓 其演化結果具有多樣性,而不是侷限於某些特定的解。

突變的過程與交配過程類似(如圖 3.6),須先設定一個突變機率(Mutate Probability),而在族群中每一個個體的基因,皆依照此突變機率來決定是否要進

行突變的動作。一般而言,突變機率值大多不會設定太高,太高的突變機率會使 基因演算法搜尋變動的情形太過複雜。

圖3.6、突變示意圖

(42)

第三章 基因演算法 34

3.2.7 族群取代

經過了複製、交配及突變三個過程之後,所產生新的世代族群與新的個體,

這新的族群必須取代原先的族群並負起演化下一代的任務。通常族群取代的方式 有下列兩種:

1. 全部取代: 直接將舊有的族群中的所有個體全部以新的個體取代,成 為新的族群。

2. 保留菁英: 將舊有的族群中的適應函數值最高者或前幾名保留下來,

新的個體則淘汰掉最差的幾名個體後取代舊有族群,成為新的族群。保 留菁英的最大好處是可以確保新一代族群適應函數值不會降低。

(43)

第三章 基因演算法 35

3.2.8 結束搜尋

一般而言,基因演算法的結束搜尋條件有三種方式:

1. 當搜尋結果無法改進或是停滯不前時。

2. 當執行到指定的次數時。

3. 當搜尋的結果達到題目所欲追求的目標時。

(44)

第三章 基因演算法 36

截至目前為止,並沒有任何一套完整的理論,能被用來證明基因演算法一定 能夠找到整體之最佳解,但有許多的研究及應用實例,間接地證明了基因演算法 的搜尋能力,並且也有愈來愈多的研究人員投入了基因演算法的研究,使其技術 與理論更加的成熟完整。目前基因演算法被廣泛的應用在無法預知最佳解的問 題、或是在搜尋時間極大、成本極高的狀況下,以求得一個系統化的方法且在合 理的時間內求得合理解。

(45)

第四章 基因式探針配置演算法 37

第四章 基因式探針配置演算法

本章我們首先介紹應用於基因演算法於探針配置問題上,與提出之隨機列交 換 (Random Row-Exchange)方法,最後提出結合上述兩種方法之基因式隨機列交 換配置 (Genetic Random Row-Exchange Placement) 方式。

4.1 探針配置問題基因演算法

探針配置問題基因演算法(Genetic Algorithm for Probe Placement Problem)是 以基因演算法為基礎、並且以探針邊界最短問題做為評估條件,進而針對探針配 置問題做進一步的設定與探討,目的為求出比先前所有配置方法更加接近最佳解 之探針配置。

(46)

第四章 基因式探針配置演算法 38

4.1.1 初始狀態

設定基因演算法時,我們先直接利用探針邊界最短問題來當我們的適應函數 值的條件,並且以基因演算法中最常使用的隨機方式,來產生最初的探針配置族 群。

在編碼方式上,由於此 N2個探針分別代表著不同的意義,並且探針與探針 之間的漢明距離,也不能因編碼方式而有所改變,所以並不需要額外的編碼方 式,因此我們採取實數編碼方式,直接對這N2個探針進行基因演算法的動作。

當決定了適應函數與編碼方式後就可以產生初始族群。初始族群是由隨機的 方式產生K 種的探針配置情況,而這 K 種配置方式也是代表每一代探針配置之 固定數目。初始族群產生後,將使利用適應函數對這些探針配置情況做分析,以 對每一種探針配置方式產生相對應之適應值。

(47)

第四章 基因式探針配置演算法 39

4.1.2 複製過程

進行基因演算法之複製過程,我們首先針對族群裡面所有探針配置情況所產 生的邊界配置解邊界配置解做分數的高低排列。由於我們所追求的是最近整體解 的最佳化探針配置情形,因此以探針邊界最短問題來做為評估方式,將探針配置 的邊界配置解較高的配置情況捨棄,並將邊界配置解較小即配置方式較為優良之 探針配置方式,進入到下一步的交配與突變步驟,然後結束此複製過程。

(48)

第四章 基因式探針配置演算法 40

4.1.3 交配過程

在交配過程裡,我們針對這些由先前複製過程中所選出來的較優良的配置方 式,設計兩種不同的交配過程,以進行此交配動作。這兩種交配過程分別為循環 交 配(Cycle Crossover) 與 循 環 最 短 邊 交 配 (Cycle Minimize Borer Length Crossover )。

[循環交配]

循環交配(Cycle Crossover)的方式是以交換點為分隔,分別執行循環選擇的 動作,並且是分別有親代個體A 與親代個體 B 依序操作。首先針對親代個體 A 排序的第一個位置為 I,對應到親代個體 B 之排序第一個位置內容為 i,再從親 代個體A 中尋找與 i 值相同之內容,如此重覆下去到親代個體 B 中找個內容為 I 值時結束;接著再從交換點之另一邊的親代個體 B 中未被選為循環之第一個值 重覆上述動作,直到親代個體A 與 B 找不到循環為止。(如圖 4.1)

(49)

第四章 基因式探針配置演算法 41

圖4.1、循環交配示意圖

[循環最短邊界交配]

為了更加快速的得到較好的配置情形,我們提出了循環最短邊界交配(Cycle Minimize Borer Length Crossover)。為在循環交配法裡,加入了兩點之間最短邊

界值的比較,而兩點之間的最短邊界值可以由最初的漢明圖所得知。這個方法可 以有效增加執行速度,並減少一半的配置情況,以達到更優良的配置方式。

圖4.2 中親代個體 A 與親代個體 B,依照循環規則可以得到圖 4.2 (b)的四種 循環集合,並且由漢明圖中列出如圖 4.2(c)的距離做最短邊界比較得到圖 4.2(a) 之距離大小。由於目標為較短之邊界,故取比值較小的邊界,如有邊界相等的情 況,則取親代個體A 之邊界,再將由親代個體 A 或 B 所取出之值從集合中刪除,

(50)

第四章 基因式探針配置演算法 42

且只容許集合內的值做比較,如有出現非集合內的值的情況,則取另一親代個體 之值,若上下皆有此情況,就依照原位置屬於第幾集合,將集合剩下值置入。

圖4.2、循環最短邊界示意圖

(51)

第四章 基因式探針配置演算法 43

4.1.4 突變過程

完成交配過程後,進入突變的步驟。由於我們分別針對向量交配與循環交配 做測試,所有這兩種交配方式有個別不同的突變方式,以下我們分別介紹向量交 配與循環交配之突變方法。

首先是向量突變,我們亦隨機選取一個突變位置與突變值,在長度為 N2的 排列上,其突變位置可接受的長度範圍為(1, …, N2-1),減 1 的原因是因為向量是 以排列中的位置到排列最後一個位置的名次,所以最後一個排列位置固定為1,

故將長度限定為N2-1;突變值方面亦必須符合由當前第 i 個位置到 N2 – i + 1 的 位置之間,所又將突變值的隨機範圍設於此限。如一3 × 3 大小共 9 個探針的生 物晶片,其向量排列方式為(9, 4, 4, 2, 3, 3, 3 ,1, 1),隨機突變位置為 7,突變值的

範圍即為1 到 3 (9 – 7 + 1 = 3)之間。若最後突變值為 2,則向量排列為(9, 4, 4, 2, 3, 3, 2 ,1, 1),轉換為序列排列則是(9, 4, 5, 2, 6, 7, 3, 1, 8)。

循環突變則較為簡單,類似於實數編碼突變方式,我們採取較為簡單的方法 為任兩點工作位置交換,即若排列為(9, 4, 5, 2, 6, 7, 8, 1, 3)的列依序配置方式,

隨機先擇兩個交配點為8 與 3,則經過突變步驟後可以得到(9, 4, 1, 2, 6, 7, 8, 5, 3) 的答案。

(52)

第四章 基因式探針配置演算法 44

4.1.5 終止條件

探針配置問題基因演算法的結束搜尋條件,採用上述三種結束條件中的「當 搜尋結果無法改進或是停滯不前」為基因演算法的結束條件。我們首先設定一個 參數為EC(Ending Condition)。此參數表示世代中最佳的邊界配置解的配置執行 EC 次數後,邊界配置解若未能得到改善,即終止我們所預尋找的最佳化探針配 置,並結束執行此基因演算法。

(53)

第四章 基因式探針配置演算法 45

4.2 探針配置問題隨機列交換配置演算法

探針配置問題隨機列交換配置演算法(Random Row-Exchange Algorithm for Probe Placement Problem),為基因演算法後所提出的改進方式。其主要目的為我

們認為基因演算法之初始族群設定上是採取隨機產生的,若加上部份特徴上的限 制條件,可以更加快速的達到我們所預追求的目標。

4.2.1 隨機列交換演算法

隨機列交換演算法(Random Row-Exchange Algorithm)是以列磊晶配置演算 法為基礎而來的。列磊晶配置演算法,是由A. Kahng 針對磊晶配置演算法所提 出改進方法;其為在磊晶配置與其配置完成之後,依據探針配置問題中兩兩探針 間的漢明距離做列依序探針交換動作。

我們認為列磊晶配置演算法,與磊晶配置方式亦需要一個決定性的種子 (Seed)探針,才開始進行列依序的探針交換動作。雖然其要求必需經由磊晶配置 後才能進行, 但若發生最壞的情況(Worst Case)時,總共 N2個被配置完成的探 針位置裡,只有一個探針位置被保留及使用,相對其他的配置的探針位置及執行 磊晶配置演算法的時間都等同於浪費,故我們提出了隨機列交換的配置方式。

(54)

第四章 基因式探針配置演算法 46

隨機列交換的配置方法與列磊晶配置演算法相同,唯一不同之處為列磊晶配 置演算法是建構在磊晶配置演算法完成之後執行;而隨機列交換演算法則以類似 的配置方式,先找出一個主要的種子探針,再直接進行列依序的探針交換動作(如 圖4.3)。

圖4.3、隨機列交換演算法的配置步驟

(55)

第四章 基因式探針配置演算法 47

4.3 探針配置問題基因式隨機列交換演算法

基因式隨機列交換演算法(Genetic Random Row-Exchange Algorithm)為改良

之前基因演算法中有可能缺失的地方,並加強其於交配上之能力,再加入隨機列 交換之功能,進而達到我們預追求的整體最佳化探針配置的情況。

4.3.1 初始設定

基因式隨機列交換演算法的目的,為求出探針配置問題中的整體最佳化的探 針配置情況。由先前的介紹可以得知所有的配置方式總共有 N2階層種的排列組 合數,故捨去一般基因演算法最常用的亂數產生初始族群,採取另一種依照題目 所預搜尋之解的特徵,讓初始族群在最初產生的時候就能比較接近所要尋找的 解。

在設定初始族群時,我們利用先前所提出的隨機列交換的配置方式,以求大 量減少原先共有 N2階層種的排列組合,並且可以減少如果若由隨機產生的配置 方式到最佳解之探針配置所要執行的次數及所要花費的時間。

(56)

第四章 基因式探針配置演算法 48

4.3.2 複製過程

進行基因式隨機列交換演算法之複製過程,我們首先針對族群裡面所有探針 配置情況所產生的邊界配置解做分數的高低排列。由於我們所追求的是最近整體 解的最佳化探針配置情形,依照探針邊界最短問題來做為評估方式,將探針配置 的邊界配置解較高的配置情況捨棄,並將邊界配置解較小即配置方式較為優良之 探針配置方式,進入到下一步的交配與突變步驟,然後結束此複製過程。

(57)

第四章 基因式探針配置演算法 49

4.3.3 交配過程

進入交配的過程,我們隨機挑選出二個個體,再利用循環最短邊交配方式,

彼此交換這兩親代之基因資料,藉由交配這兩親代的優秀基因資訊,產生出來的 新的世代,期望能夠繁殖出更好的邊界配置解個體。

(58)

第四章 基因式探針配置演算法 50

4.4.4 突變過程

進入突變的步驟,為了讓個體能有新的資訊產生且具有多樣性,而不是侷限 於某些特定的解,並針對所提出之循環最短邊界交配之方法,與循環邊界交配方 式同樣採取實數編碼突變方式,任兩點工作位置交換,即若排列為(9, 4, 5, 2, 6, 7, 8, 1, 3)的列依序配置方式,隨機先擇兩個交配點為 8 與 3,則經過突變步驟後可 以得到(9, 4, 1, 2, 6, 7, 8, 5, 3)的答案。

(59)

第四章 基因式探針配置演算法 51

4.4.5 終止條件

探針配置問題基因式隨機列交換演算法的結束搜尋條件,採用「當搜尋結果 無法改進或是停滯不前」為基因式隨機列交換演算法的結束條件。我們首先設定 一個參數為EC(Ending Condition)。此參數表示世代中最佳的邊界配置解的配置 執行EC 次數後,邊界配置解若未能得到改善,即終止我們所預尋找的最佳化探 針配置,並結束執行此基因演算法。

(60)

第四章 基因式探針配置演算法 52

4.4 實驗結果與分析

我們首先探討由前人所提出的旅行員推銷員路徑配置與列磊晶配置演算法 之情況,再依序討論探針配置問題對於基因式演算法、隨機列交換演算、及最後 的基因式隨機列交換演算法之結果與比較。

4.4.1 輸入格式設定

在說明探針配置問題對各種配置演算法之比較前,我們先介紹輸入格式,由 於我們主要的目的為求出最佳化之探針配置情形,利用求解漢明距離的技巧,來 降低錯誤率的發生;故我們給定一組長度相等之探針組(如圖 4.4),來計算兩兩

探針之邊界長度,以探針邊界最短問題為評估方式,去尋找其最佳化之探針配置 解。

我們所使用的測試平台為作業系統:Windows XP,CPU:AMD 2.8G,記憶 體:992MB,實驗數據組為 5 組,實驗探針範圍為 100、900、2500、4900 個探 針,所使用語言為JAVA Language,其可以接受堆積(heap)最大空間範圍為 1G , 故我們測式最大探針數為4900 個探針,交配機率為八十個百分比(80%),突變機 率為十個百分比(10%)。

(61)

第四章 基因式探針配置演算法 53

圖4.4、配置演算法之輸入格式

(62)

第四章 基因式探針配置演算法 54

4.4.2 探針配置問題之配置演算法比較

介紹完輸入格式,我們將依序說明各種探針配置演算法對於探針配置問題之 比較,並且針對其結果做評估與說明。首先針對前人所提之旅行員推銷問路路徑 配置演算法與列磊晶配置演算之比較做說明。由表4.1 中可以看出列磊晶配置演 算法所配置之結果,在於時間及邊界配置解上面都明顯較旅行員推銷問題來的優 良。

基因演算法來求解探針配置問題的情況,由表4.1 中可以看出若是單純使用 隨機產生初始族群,而非依特徵來設定的情況下的基因演算法,會因為總共有 N2 階層的可能性,造成求解配置問題上的困難。再針對兩種交配方式,可以看 出若是在不考慮時間的情況下,使用循環交配的方式會略比向量交配的方式來的 優良,而我們的目的為求出更接近整體最佳解之配置情況,故以循環交配為之後 的基因式隨機列交配演算法之交配方式。

我們將列磊晶配置演算法與隨機列交換配置的方法做一個比較,以證明若使 用隨機列交換的方式快速且有效的接近整體的最佳配置解。從表4.1 中可以看出 不論是列磊晶配置或是隨機列交換配置所得到之最短邊界值各有勝負,所以可以 證實若將其用於基因式隨機列交換演算法之初始族群設定,是可以更加快速得到 預求的整體最佳配置。

(63)

第四章 基因式探針配置演算法 55

最後我們利用完整的基因式隨機列交換演算法,包含了隨機列交換演算法、

循環最短邊交配的方法與上述的配置方法做一個比較。由表4.1 可以得知,在為 了求解整體最佳配置情況下,基因式隨機列交換演算法所得到的配置邊界配置解 優於其他各項探針配置演算法。雖然在與列磊晶配置演算法相較之下只有略勝一 籌,但是與旅行員推銷問題路徑配置演算法相比時則更佔優勢,所以基因式隨機 列交換演算法有助於在求解整體最佳配置的問題上,並且於製作生物晶片上可以 減少其製作成本的。

(64)

第四章 基因式探針配置演算法 56

表4.1 探針配置問題之配置演算法比較表。橫坐標分別為 100、900、2500、4900 個探針實驗組,縱坐標第一行為針對配置問題所提出之各種演算法,第二行為5 組實驗組之平均邊界配置解及執行時間。

10×10(100) 30×30(900) 50×50(2500) 70×70(4900)

配置問題下限 邊界配置解 7899 55204 134397 236369 邊界配置解 10926 93646 251371 477916 旅行員推銷問題

路徑配置演算法 執行時間(sec) 1 3 16 53

邊界配置解 9892 77175 195632 357386

列磊晶配置演算

法 執行時間(sec) 3 8 29 78

邊界配置解 13140 129110 365000 720990 基因演算法之循

環交配 執行時間(sec) 1 63 327 1421

邊界配置解 12750 122430 343550 706160 基因演算法之循

環最短邊交配 執行時間(sec) 1 20 292 730

邊界配置解 10060 76790 195990 358240 隨機列交換演算

法 執行時間(sec) 1 2 14 50

邊界配置解 9510 76380 183690 336080 基因式隨機列交

換演算法 執行時間(sec) 1 25 256 1054

大小 結果

求值 問題

(65)

第五章 結論 57

第五章 結論

生物晶片的出現為目前廣大的基因組分析上提供了一個快速且有效的方 法,而目前製作生物晶片的成本不低,所以為了生物晶片的製程中,因為光線干 擾所造成晶片上錯誤的情形降低,所以需要有一種方法有效的得到整體最佳化配 置解的情況,所以我們提出了基因式隨機列交換演算法。

5.1 研究成果

在這篇論文中,我們討論了之前的旅行員推銷問題路徑演算法與列磊晶配置 演算法的方法,了解其配置情況與其不足的地方,再使用了基因演算法應用於尋 找探針配置的情形,並利用隨機列交換大幅降低選取到較差的配置情況,且經過 反覆的複製、交配、突變過程,逐步收斂可能的配置情況,最後當達到終止條件 時即結束,並得到我們所預尋找之解。

利用我們的基因式隨機列交換演算法所得到的配置情形,雖然並沒有明顯超 越列磊晶配置演算法,但卻優於以旅行員推銷問題路徑配置之解,並且單就所求 出之探針邊界最小值而言,在製作生物晶片上之成本是可以較為減少的。

(66)

第五章 結論 58

5.2 未來研究方向

在利用基因演算法尋找整體探針最佳配置方面,我們針對了週期同步的方式 設計不同的參數設定,如產生探針配置數目、交配探針配置數目、突變探針配置。

如何避免出現區域最佳解的情況,是未來可以繼續研究的此方向。

配置問題之上尚有週期性非同步合成與非週期性合成這兩種合成方式,此兩 種合成方式所製作出來的晶片,亦是需要探針配置演算法來配合,以求出最佳化 的配置情形,所以未來的研究方向為針對這兩種合成方式,進行更深入的研究。

(67)

參考文獻 59

參考文獻

[1] M. Chee, R. Yang, E. Hubbell, A. Berno, X. Huang, D. Stern, J. Winkler, D.

Lockhart, M. Morris, and S. Fodor, “Accessing genetic information with high-density DNA arrays”, Science Vol. 274, no. 5287, pp. 610-614, 1996.

[2] R. Cho, M. Campbell, E. Winzeler, L. Steinmetz, A. Conway, L. Wodicka, T.

Wolfsberg, A. Gabrielian, D. Landsman, D. Lockhart, and R. Davis, “A genome-wide transcriptional analysis of the mitotic cell cycle”, Molecular Cell, Vol. 2, pp. 65-73, 1998.

[3] W. Feldman and P. Pevzner, “Gray code masks for sequencing by hybridization”, Genomics, vol. 23, no. 1, pp. 233–235, 1994.

[4] S. Fodor, J. Read, M. Pirrung, L. Stryer, L. Tsai, and D. Solas, “Light-directed, spatially addressable parallel chemical synthesis”, Science, vol. 251, no. 4995, pp. 767–773, 1991.

[5] R. Guigó and D. Gusfield, Eds., “Algorithms Bioinformatics”, WABI , Vol. 2452, pp. 435-448, 2002.

[6] S. Hannenhalli, E. Hubbell, R. Lipshutz, and P. Pevzner, “Combinatorial algorithms for design of DNA arrays”, Chip Technology, Springer-Verlag, pp.

1-19, 2002.

[7] A. Kahng, I. I. M˘andoiu, P. Pevzner, S. Reda, and A. Zelikovsky, “Border

(68)

參考文獻 60

length minimization in DNA array design”, in Proc. 2nd Int. Workshop, Vol.

2425, pp. 435-448, 2002.

[8] A. Kahng, I. I. M˘andoiu, P. Pevzner, S. Reda, and A. Zelikovsky,

“Computer-Aided Optimization of DNA Array Design and Manufacturing”, IEEE Trans. Comput. Aided Des., Vol. 25, no. 2, pp. 305-320, 2006.

[9] S. Kasif, Z. Weng, A. Derti, R. Beigel, and C. DeLisi, “A computational framework for optimal masking in the synthesis of oligonucleotide microarrays”, Nucleic Acids Res., vol. 30, no. 20, pp. 1-6, 2002.

[10] R. Lipshutz, S. Fodor, T. Gingeras, and D. Lockhart, “High density synthetic oligonucleotide arrays”, Nat. Genet., vol. 21, no. 1, pp. 20–24, 1999.

[11] D. Lockhart, H Dong, M. Byrne, M. Follettie, M. Gallo, M. Chee, M. Mittmann, C. Wang, M. Kobayashi, H. Horton, and E. Brown, “Expression monitoring by hybridization to high density oligo-nucleotide arrays”, Nature Biotechnology, Vol. 14, pp. 1675-1680, 1996.

[12] Z. Michalewicz, “Genetic Algorithms + Data Structures = Evolution Programs”, Third Edition. Springer, 1996.

[13] W. Miller, M. Vingron, S. Istrail, P. Pevzner, and M. Waterman, “Engineering a scalable placement heuristic for DNA probe arrays”, Proc. 7th Annu. Int. Conf.

Research Computational Molecular Biology (RECOMB), pp. 148–156, 2003.

(69)

參考文獻 61

[14] P. Pevzner, “Computational Molecular Biology: An Algorithmic Approach”, The MIT Press instead, 2000.

[15] S. Singh-Gasson, R. Green, Y. Yue, C. Nelson, F. Blattner, M. Sussman, and F.

Cerrina, “Maskless fabrication of light-directed oligonucleotide microarrays using a digital micromirror array”, Nature Biotechnology, Vol. 17, pp. 974-978, 1999.

[16] K. Shahookar and P. Mazumder, “VLSI cell placement techniques”, Comput.

Surv., vol. 23, no. 2, pp. 143–220, 1991.

[17] A. Tolonen, D. Albeanu, J. Corbett, H. Handley, C. Henson, and P. Malik,

“Optimized in situ construction of oligomers on an array surface”, Nucleic Acids Res., vol. 30, no. 20, pp. 1-5, 2002.

[18] D. Wang, J. Fan, C. Siao, A. Berno, P. Young, R. Sapolsky, G. Ghandour, N.

Perkins, E. Winchester, J. Spencer, L. Kruglyak, L. Stein, L. Hsie, T. Topaloglou, E. Hubbell, E. Robinson, M. Mittmann, M. Morris, N. Shen, D. Kilburn, J.

Rioux, C. Nusbaum, S. Rozen, T. Hudson, R. Lipshutz, M. Chee, and E. Lander,

“Large-scale identification, mapping, and genotyping of single-nucleotide polymorphisms in the human genome”, Science Vol. 280, no. 5366, pp.

1077-1082, 1998.

[19] L. Wodicka, H. Dong, M. Mittmann, M. Ho, and D. Lockhart, “Genome-wide

(70)

參考文獻 62

expression monitoring in saccharomyces cerevisiae”, Nature Biotechnology, Vol.

15, pp. 1359-1367, 1997.

[20] 柳超毅, “利用混合模型對微陣列資料做分群變異數分析”, 國立交通大學, 統計研究所碩士論文, 92 年.

[21] 莊佳叡, “以不同統計方法比較生物微晶片資料之研究”, 國立成功大學, 統 計研究所碩士論文, 92 年.

[22] 鄭銘杰, “生物晶片光罩最小邊界問題之最佳解演算法”, 中華大學, 資訊工 程研究所碩士論文, 92 年.

[23] 林岳鋒, “大氣電漿系統表面改質技術及其於微流體生物晶片製程之應用”, 國立中山大學, 機械與機電工程研究所碩士論文, 93 年.

[24] 曾家彥, “離心力驅動微流體系統之流道設計與分析”, 中原大學, 機械工程 研究所碩士論文, 94 年.

[25] 張媛鈞, “評估 cDNA 微陣列資料的 normalization 方法”, 國立成功大學, 統 計研究所碩士論文, 94 年.

[26] 顏勝茂, “利用基因演算法建構演化樹之分析”, 中華大學, 資訊工程研究所 碩士論文, 93 年.

參考文獻

相關文件

• Recorded video will be available on NTU COOL after the class..

Good Data Structure Needs Proper Accessing Algorithms: get, insert. rule of thumb for speed: often-get

4.2 Copy the selected individuals, then apply genetic operators (crossover and mutation) to them to produce new individuals.. 4.3 Select other individuals at random and

Keyword: Assessment theory, Item selection strategy, Genetic algorithms, Revision of Bloom’s taxonomy.. Student:Shao-Hsuan Huang

According to the related researches the methods to mine association rules, they need too much time to implement their algorithms; therefore, this thesis proposes an efficient

Sharma (1999), “An Intergrated Machine Vision Based System for Solving the Non-Covex Cutting Stock Problem Using Genetic Algorithms,” Journal of Manufacturing Systems, Vol..

Keywords: light guide plate, stamper, etching process, Taguchi orthogonal array, back-propagation neural networks, genetic algorithms, analysis of variance, particle

Proceedings of the Fifth International Conference on Genetic Algorithms, Morgan kaufmann Publishers, San Mateo, California, pp.110~117, 1996. Horn, J., “Finite Markov Chain Analysis