• 検索結果がありません。

遺伝的アルゴ リズムによる波形整形

ドキュメント内 高精度波形整形に関する研究 (ページ 100-105)

第 3 章 適応制御波形整形 91

3.3 遺伝的アルゴ リズムによる波形整形

遺伝的アルゴ リズム(Genetic Algorithm: GA)は最適化制御の中でももっとも広く用いられて いるアルゴ リズムである.GAのフローチャートをFig. 3.1に示す.GAは生物の発生過程をモ デルとしている.まず各世代(generation)で複数の遺伝子個体(individual)を用意する.遺伝子 個体は多くの場合1次元配列であり,今回のモデルでは 128ピクセルのスペクトル位相変調を表 わすマスク関数配列である.その遺伝子個体の中から特に適用度(目的波形からの誤差が小さい) が高い遺伝子個体のみを選択し ,残った遺伝子個体同士で交叉を行なうことによって次の世代の 遺伝子を作り出す.交叉とは世代内のある遺伝子個体の一部を取り出し ,他の遺伝子個体と組み 合わせる作業である .GAの直感的理解は積み木で家を作る場合に似ている .はじめランダ ムに 存在する積み木から ,複数の家(初期遺伝子)を作成する.適用度の高い家を構成する積み木を残 し (淘汰)その積み木のみで再び新たな家構築(交叉)すればさらに適用度の高い家を簡単に作る ことができる.GAは適用度の高い家を造り出す積み木を用いて新たに家を構築した方が更に適 応度の高い家が簡単に作り出すことが可能であるという前提に基づいている.但し ,淘汰によっ て適応度の高い積み木のみを選択し続けると三角の積み木ばかり残ってしまうことがある.そう した遺伝子個体の極端な偏りを防ぐ ために突然変異を取り入れる.位相マスク関数を遺伝子個体 とした場合の突然変異はあるピクセルをある確率でランダムに選択してその値をランダ ムに変化 させる作業である.

GAアルゴ リズムを模式的に示した図が Fig. 3.2である.後に述べるSAとの対比でGAの特 徴を述べると ,始めは広い解空間の中からランダムに遺伝子個体数だけのサンプル点を選択する.

その後 ,その遺伝子個体のうち最適解に近い解のみが生存して ,その解同士で交叉を繰り返すこ とで ,更に最適解に近づける.ここで局所的極小解に陥ることを防ぐ 目的で突然変異を導入する ことである確率で局所的極小解を抜けられる機構を用意しておき ,大域的最適解を見つける.

GAはアルゴ リズムの自由度が高く ,コード はプログラマに大きく依存する.そのためにター

第3章 適応制御波形整形 94

Randomly initialize 1'st generation of P inidividuals

(P1 ~ PP) Start

Set global paramters:

number of inidividuals P,scaling factor S, crossover rate I,

mutation rate m Set target T

Calculate cost function Ci := T - Si and index to Pi

End Change the controller P times

(P1 ~ PP) Measure P times

output signal Si (S1 ~ SP)

Selection

Crossover

Mutation

True if Ci is small, else to next generation

Selection (roulette)

Exit k := 1; k <= P; k++

Select Pi and stack to Qk, where i is Ci-1 '' <= rand [ 0 : CP'' ] < Ci''

(C-1:= 0) Inverse cost Ci' := Max[Ci ] - Ci

Scale: Ci'' := Σji (Cj' S )

Crossover (2 point)

Exit

Mutation

Exit k := 1; k < P; k+=2

Pk : Pk+1 :

k := 1; k <= P; k++

Mutation with rate m Pk :

True False

Overwrite Pi := Qi

swap

Fig.3.1 Flowchart of genetic algorithm. Function Max[Ci] returns the maximum value fromCi, and rand[a:b] generates random value in range fromato b.

ゲットシステムの特性を勘案しつつアルゴ リズムを実装する必要がある.

今回の ,スペクトル位相変調による波形整形をモデルとした計算では ,選択アルゴ リズムには 適応度比例方式,交叉には 2点交叉則を用いた .適応度比例方式はルーレット則とも呼ばれ ,適 応度に応じて選択される確率を決定する.また ,適応度に応じて適応度をどのように (何乗に)比 例させるかを決定するためにスケーリング係数S を導入した .2点交叉では ,あるスペクトルマ スク関数配列からランダ ムに2点を選び ,その2点に挟まれる配列を他の遺伝子個体の同じ 位置 のマスク関数と交換する.詳細なアルゴ リズムは ,Fig. 3.1中に示した .

第3章 適応制御波形整形 95

Solution space

local minimum (LM)

Cost

global minimum (GM)

Genes from generation n

failed selection

Crossover

Genes from generation n+1

Mutation

Fig.3.2 Schematic image of GA.

3.3.2 計算条件

計算で用いた波形整形器の条件は ,§ 2.2に示した.位相変調量の分解能を決定するマスクのグ レーレベルはG= 2π/64 radに設定した.GAアルゴ リズムに与えるパラメータは ,1世代の個 体数P = 30,スケーリング係数S = 1.0,交叉率I = 90 %,突然変異率m= 0.5 %とした .突 然変異率はマスクの全てのピクセルに対して行なった .即ち位相ピ クセル数が 128の場合には , 突然変異によって一つでもマスクが書き変わる確率は47.4%となる.また突然変異率はランダム に値を変えるのではなく,両隣のピクセルの中間の値を取った場合の方が良い結果が得られた .

適応度は SA法と対応させるために以降コストと呼ぶ .ターゲット時間強度波形と整形された 時間強度波形の差をコストと定義してそのコストが最小になるように最適化を行った .すなわち コスト C

C = 1 N

N

i=1

Ii(shaped)(t) N

i=1Ii(shaped)(t) Ii(target)(t) N

i=1Ii(target)(t) 2

(3.1)

で定義した .ここで N は時間波形を格納する配列の要素数 ,Ii(shaped)(t),Ii(target)(t)はそれぞ れ ,整形波形及びターゲット 時間強度波形が格納されている配列のi番目の要素である.また S はスケーリング係数である.

3.3.3 計算結果

理想的な場合

100世代後に得られた ,スペクトル位相変調よる整形パルスを Fig. 3.3に示す .Fig. 3.3(a)の 実線が 整形波形 ,点線がターゲ ット 波形である .ターゲ ット 波形には強度比の異なるダブルパ

第3章 適応制御波形整形 96

0 0.2 0.4 0.6 0.8 1 1.2

-1000 -500 0 500 1000

Time (fs) Target pulse

Shaped pulse

-5 0 5 10 15 20 25 30 35

0 32 64 96 128

Pixel #

6x10-5 8x10-5 1x10-4 1.2x10-4 1.4x10-4

0 20 40 60 80 100

Worst cost Average cost Best cost

Generation #

(a) (b) (c)

Fig.3.3 (a) Shaped pulse with GA algorithm. Shaped pulse and target pulse are shown. (b) Optimized phase mask function. (c) Cost function in respect to generation number.

ル スを設定し た .各世代内でもっとも良いコスト ,悪いコ スト ,またその世代の平均コストを

Fig. 3.3(c)に示す.GAにおいて収束を判断する材料は ,1世代内での最も良いコストと悪いコ

ストの差である.この差が小さくなるということは ,世代を重ねる事によって ,ある世代内の遺 伝子個体の全てが環境に対して高い適応を示すということであり,これはGAの ,環境に適応す る,という目標を達成していることになるので ,この状態で解が収束したと判断できる.今回の 計算では ,各世代の遺伝子個体数P = 30としたので ,100世代で3000回スペクトル位相マスク を書き換えていることになる.

突然変異率を極端に少なくする等,GAに加えるアルゴ リズムのパラメータを変化した結果,世 代が若いうちは ,交叉の影響によってコストが減少することがわかった .世代が進むにつれ ,交 叉の影響のかわりに ,突然変異がコストを低減する主たる要素になる .また ,GAではパラメー タをよほど 大きく変化させない限り ,収束にはそれほど 大きな差は見られず ,アルゴ リズムのパ ラメータに対しては ,それほど 鋭敏ではない.

ノイズが存在する場合

次にノイズが存在するときの,GAの性能を調べる.より実際のモデルに近づけるために ,信号 の揺らぎの大きさは測定信号から見積もった .波形整形器後の光をシングルモード 光ファイバー に入射し ,その伝搬後のパルスをSHG結晶に入射させた .SHG 結晶で発生するSHG光をフォ ト マルで測定しデジタルオシロスコープに取り込み ,信号の揺れの大きさを観測した .Fig. 3.4 にデータ取得毎のSHG信号の揺れを示した.平均光強度を100とすると ,標準偏差2.88 %の大 きさで信号が揺れている.SHGではわずかなピーク強度の変化が変換効率に大きく影響を与える ので ,光ファイバーへのカップ リング 効率のわずかな揺れ ,空気の揺らぎによる波形の乱れなど が影響していると考えられる.

そこで ,計算モデルではコスト Cに対して標準偏差2.88 %の大きさでノイズを加える.その

第3章 適応制御波形整形 97

0.9 0.95 1 1.05 1.1

0 200 400 600 800 1000

Acquisition #

Fig.3.4 Measured SHG signal fluctuation. Seed pulse from a Ti:Sapphire oscillator is first coupled into single mode fiber propagates about 30 cm, and then the output pulse is focused on the BBO crystal. SH generates and it is measured with a photo-multiplier.

The normalized output voltage is shown with respect to the sampling number.

モデルを用いて同様にGAを用いてスペクトル位相変調のみによる波形整形を行なうと ,Fig. 3.5 で示される波形が得られる.

0 0.2 0.4 0.6 0.8 1 1.2

-1000 -500 0 500 1000

Time (fs) Target pulse

Shaped pulse

0 5 10 15 20

0 32 64 96 128

Pixel #

5x10-5 1x10-4 1.5x10-4

0 20 40 60 80 100

Worst cost Average cost Best cost

Generation #

(a) (b) (c)

Cost

Fig.3.5 (a) Shaped pulse with GA algorithm when noise is added to the signal. Shaped pulse and target pulse are shown. (b) Optimized phase mask function. (c) Cost function in respect of the generation number.

GAを用いるとこの程度のノイズでは整形精度にはほとんど 影響を与えず ,コストは理想的な 場合とほぼ同じ値にまで収束することがわかった .ただ ,Fig. 3.3 (a)でもFig. 3.5(a)において も時間波形の振幅には凹凸が目立つ.

第3章 適応制御波形整形 98

3.4 焼きなまし法による波形整形

ドキュメント内 高精度波形整形に関する研究 (ページ 100-105)