• 沒有找到結果。

第一章 緒論

本章節主要探討本論文的研究背景、動機目的與方法,並大略說明各章節的主 要內容及重要特性。

1.1 研究背景

基因演算法(Genetic Algorithms , GAs)[1,2,3]是一種經由模擬自然界中生物族群 的自然天擇(Natural Selection)以及遺傳演化的一般用途搜尋演算法,也是最佳化工程 計算中常用的一種演算工具,於 1975 年由密西根大學 John Holland 教授及他的學生 首先提出之演算法則。這種演算法已經被發現可以用來有效地解決工程上、科學上 以及商業上的問題。然而,當這樣的演算法使用在複雜的問題上,它的計算複雜度 將變得更高。

基因演算法在初始包含了一組基因序列群,經由犧牲其他已經存在的舊有基因 序列後,再生(Regeneration)得到較適合生存的基因序列,除此之外還利用交配

(Crossover)、突變(Mutation)的手段來得到更好的基因序列。突變的方式是改變基因 序列中的個別元素;而交配方式則是在兩個不同的基因序列之間找尋交配點做切割 之後再進行接合。將上述的再生、交配、突變的過程做結合,在此稱之為一個世代

第一章 緒論 衍生(Generation)。這些基因序列的演化也許會經過好幾個世代交替,而最終得到一 個最佳的基因序列也就是接近全域最佳解(Near Global Optimal Solution)。因為基因 演算法具備這樣找尋最佳解的特性,近年來已經普遍地被應用於許多找尋最佳解的 問題,例如:類神經網路(Neural Network)、螞蟻演算法(Ant Algorithm)、影像處理

(Image Processing)、模糊邏輯(Fuzzy Logic)、VLSI 繞線佈局(Place & Route)、灰色理 論(Grey Theory)等。

1.2 研究動機及目的

由於基因演算法常常應用於許多複雜的最佳化搜尋問題上,所以最讓人詬病的 缺點便是它的計算複雜度太高。如果使用軟體來實現基因演算法,則可以預見的結 果是整體的運算效能將會有較差的表現,而且一旦基因演算法實驗的族群數量變多 時,對於某些基因演算法的應用,這些運算時間將會變得更高。然而,如果我們降 低了實驗的族群數量卻又是非常不合適的,因為小的族群數量將使得基因演算法落 入較差的局部最佳解(Local Optimal)。

為了解決這個問題,其中一種降低計算時間的方法就是採用島嶼式基因演算法

(Island GAs)亦可稱為分散式基因演算法(Distributed GAs)。在這樣的島嶼式基因演算 法中有多個族群,每個族群大部分時間是各自獨立演化,不同的族群之間偶爾會互

第一章 緒論 相交換基因序列。由於基因演算法在族群大小為較小的情況下可能會比較快收斂,

但為了找到近似最佳解,較大的族群仍然是必須的,這仍會造成過多計算時間的問 題,因此我們採用島嶼式基因演算法將大的族群分化成許多小的族群獨立演化;此 外,若以軟體實現這樣計算複雜度高的演算法必然需要較長的執行時間,因此本論 文以硬體實現之。

基因演算法第二個缺點就是再生程序主要是基於適應函數上。因此,從族群中 選擇出母代序列於硬體的實現便需要大量的晶片面積(Chip Area),而且如果想要同 時平行處理當下的基因序列在突變(Mutation)和交配(Crossover)的程序,會導致大量 的面積成本的消耗。

本論文主要是為島嶼式基因演算法提出一個 VLSI 的架構,此架構可以加快基 因演算法的計算時間即使是較大的族群。本論文考慮於向量量化器的應用(Vector

Quantizer , VQ) [4],其中的原因在於,當基因演算法應用於向量量化器中碼字 (Codeword)的訓練時,基因演算法依舊需要大量的儲存空間和漫長的訓練時間 [5,6]。因此向量量化器的設計可以為驗證基因演算法架構之有效性作為一個好的範 例。

第一章 緒論 (Population Memory Unit)、交配突變單元(Crossover & Mutation Unit)、適應值計算單 元(Fitness Evaluation Unit)、生存測試更新單元(Survival Test & Update Unit)。為了降

第一章 緒論 低面積成本(Area Cost),我們只採用一個族群記憶體。而交配和突變這兩個程序是可 以同時處理的。此外,適應值計算單元是一個管線化(Pipeline)的架構,搭配使用直 接記憶體存取(Direct Memory Access, DMA)使得電路的效能大幅提升。生存測試單 元則是由一個硬體排序電路組成。

本論文提出的硬體架構實現於 FPGA(Field Programmable Gate Array)[8],這樣的 方式使得本架構中的處理器可以搭配採用軟核處理器(softcore CPUs)[9]。因為使用可 重複編譯的硬體裝置,我們便能夠在可程式化系統晶片(SOPC)為基因向量量化器建 立一個完整的系統。我們拿本硬體系統架構與它相仿的軟體系統作比較,實驗數據 顯示出我們所提的硬體基因向量量化器架構有著較高的效能以及大幅降低向量量化 器的碼字訓練時間。經由這些事實便能夠說明我們架構設計的有效性。

第一章 緒論

1.4 全文架構

本篇論文共分為五個章節,以下為各章的內容概述:

【第一章】緒論

說明本論文的研究背景、動機及目的、方法及本文架構。

相關文件