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

181 遺伝アルゴリズムによる NQueen 解法 ~GPU

N/A
N/A
Protected

Academic year: 2021

シェア "181 遺伝アルゴリズムによる NQueen 解法 ~GPU"

Copied!
1
0
0

読み込み中.... (全文を見る)

全文

(1)

181 遺伝アルゴリズムによる NQueen 解法

~GPU

実装

~

情報論理工学研究室 今村 光良 共同研究者 瀬渡 昭良 奥野 裕太 馬場 亮輔

1.

組み合わせ最適化問題を解く方法の一つに遺伝アル ゴリズム(以降

GA

とする)1)がある。GAとは生物の遺 伝と進化のメカニズムを工学的にモデル化したもので あり、生物の進化過程における遺伝的操作を模倣した最 適解探索手法である。GAは評価関数のみに依存して解 探索を行うため問題の定式化を行うことなく有効な解 探索が可能である。しかしながら、最適解が複数存在す る問題に対しては通常

1

つの解しか探索できない単純

GA

では不十分である。そこで本研究では多峰性が認め られる最適化問題に威力を発揮できるよう、複数の解を 導出できる

GA

を提案する。多峰性最適化問題としてN クイーン問題を用い、GAの改良にともない予測される 計算量増大による実行時間の増加を抑えるため、GA 高速化に焦点をあて研究を進めていく。

2.

研究内容

GA

では初期集団の増加や遺伝オペレーティングの複 雑化による実行時間の低速化が問題である。しかしなが ら、各遺伝子の計算自体は独立しており、並列化が十分 に可能であると考えられる。そこで今回、処理時間が初 期集団の数とともに増大していくクイーンの配置およ び競合数判定部分を

GPU

上に実装することで遺伝オペ レーティング全体の高速化を試みる。

GPU

実装にあたり今回は

NVIDIA

の提供する

GPU

向けの

C

言語の統合開発環境である

CUDA

2)を使用し た。本研究ではブロックの集まりを遺伝子の集団とし、

駒の位置情報を図

1

に示すように、各駒を

Y

座標から なる

1

次元配列により表現した。これにより、GPU に確保した配列へのアクセスをビルドイン変数 1)によ って高速に処理できるようにした。また駒の配置を

CPU

側と

GPU

側で確認できるように位置情報はグロ ーバルメモリに保存する

1 GPU

上のクイーンの配置表現

3.

結果・考察

今回は

N=8

とし、初期集団の数を

100、終了世代を 1000

世代目、遺伝オペレーティングなどの条件を同一 のものと設定し、

CPU

のみで処理を行った場合と

GPU

も用いて処理を行った場合の

N

クイーン問題の解を求 め る 実 行 時 間 の 比 較 を 行 っ た 。 本 研 究 で 用 い た

CPU,GPU

を以下に示す。

CPU : Intel(R)Celeron(R) CPU G530 @ 2.4GHz GPU : Geforce 210

1 Nクイーン問題の実行時間(N=8)

CPU

単独 CPU

GPU

実行時間

11850ms 1120ms

1

に示す通り、

CPU

単独で解を求めた場合に比べ て、

GPU

も用いた場合約

10

倍の速度向上が得られた。

また初期集団の数が大きくなるにつれ

CPU

単独より

GPU

も用いたほうがより高速に処理することができた。

しかしながら、実際には予想される速度向上には至らな かった。これは各遺伝オペレーティングにおけるコマの 配置のみを並列化しており、乱数生成部分は

CPU

で処 理しているため、遺伝オペレーティングのループを完全 に並列化できていないことや、ループ内での

GPU

CPU

間の通信が多発したためではないかと考えられる。

4.

今回の研究で

GPU

による

GAの高速化を実現できた。

しかしながら当初の目的としていた

GPU

上での実装に は至らなかった。並列化に関してもブロックとスレッド のみの使用であり、GPU 本来の性能を十二分に引き出 せたとは言い難い。今後の課題としては、GPU 上で遺 伝オペレーティングを実装すること、GPU のグリッド を用いて並列

GA

における島モデルを実装すること、ス レッドとブロック数の制限をなくすため複数の

GPU

並列

GA

を実現することなどが考えられる。

参考文献

1) 伊庭斉志:遺伝的アルゴリズムの基礎,オーム社(1994).

2) 青木尊之:はじめてのCUDAプログラミング―驚異の 開発環境[GPU+CUDA]を使いこなす!, 工学社(2009).

3) 棟朝雅晴:遺伝的アルゴリズム―その理論と先端的手 法, 森北出版 (2008).

表 1 N クイーン問題の実行時間 (N=8)  CPU 単独  CPU  と GPU  実行時間  11850ms 1120ms  表 1 に示す通り、 CPU 単独で解を求めた場合に比べ て、 GPU も用いた場合約 10 倍の速度向上が得られた。 また初期集団の数が大きくなるにつれ CPU 単独より GPU も用いたほうがより高速に処理することができた。 しかしながら、実際には予想される速度向上には至らな かった。これは各遺伝オペレーティングにおけるコマの 配置のみを並列化しており、乱数生成部分は C

参照

関連したドキュメント

これらの定義でも分かるように, Impairment に関しては解剖学的または生理学的な異常 としてほぼ続一されているが, disability と

子どもたちは、全5回のプログラムで学習したこと を思い出しながら、 「昔の人は霧ヶ峰に何をしにきてい

しかし , 特性関数 を使った証明には複素解析や Fourier 解析の知識が多少必要となってくるため , ここではより初等的な道 具のみで証明を実行できる Stein の方法

しかしながら、世の中には相当情報がはんらんしておりまして、中には怪しいような情 報もあります。先ほど芳住先生からお話があったのは

雇用契約としての扱い等の検討が行われている︒しかしながらこれらの尽力によっても︑婚姻制度上の難点や人格的

としても極少数である︒そしてこのような区分は困難で相対的かつ不明確な区分となりがちである︒したがってその

あの汚いボロボロの建物で、雨漏りし て、風呂は薪で沸かして、雑魚寝で。雑

・私は小さい頃は人見知りの激しい子どもでした。しかし、当時の担任の先生が遊びを