PowerPoint プレゼンテーション

進捗報告会 (2004.07.28)
進捗報告
グループ:Gridグループ
発表者 :梶原広輝
Intelligent Systems Design Laboratory, Doshisha Univ
発表の流れ
1.研究背景
2.進捗報告
 逐次版DGAの実装
 mpiJavaの利用
 MPI版DGAの実装
 Webサービスの利用
3.現在の課題
4.今後の展望
Intelligent Systems Design Laboratory, Doshisha Univ
研究背景
最適化
・大規模複雑な最適化問題を解く
例)・タンパク質立体構造予測
・ディーゼルエンジン噴射燃料スケジュール
新たな最適化手法の開発
既存の最適化手法の利用
基盤システムの構築
・Webサービス
・Gridサービス
Intelligent Systems Design Laboratory, Doshisha Univ
分散遺伝的アルゴリズムとは
分散遺伝的アルゴリズム(DGA:Distributed
Genetic Algorithms)
・母集団をサブ母集団に分割し,GAの処理を並
列に行う
特徴
・移住操作による個体の移動
・GA処理の並列化
多様性の維持
負荷分散
Intelligent Systems Design Laboratory, Doshisha Univ
DGAのアルゴリズム
Intelligent Systems Design Laboratory, Doshisha Univ
パラメータ
パラメータ
値
総個体数
設計変数
染色体長
突然変異率
トーナメントサイズ
交叉点
交叉率
試行回数
最大世代数
400
10
100
0.01
4
2
1.0
100
500
島数
一島あたりの個体数
一島あたりのエリート
個体数
移住率
移住間隔
40
10
1
0.5
5
Intelligent Systems Design Laboratory, Doshisha Univ
性能比較(Rastrigin関数)
Intelligent Systems Design Laboratory, Doshisha Univ
mpiJavaとは
MPI(Message Passing Interface)
・並列計算プログラミングでのメッセージパッシン
グのAPIの標準
・仕様だけを提供
・代表的な実装→MPICH, LAM, MPICH-GM
mpiJava
・MPIのJavaからの呼び出し形式を策定したのが
Java-MPI仕様
・Java-MPIに基づいて設計され,MPICHなどを
Javaから呼び出すインタフェース
Intelligent Systems Design Laboratory, Doshisha Univ
代表的なAPI(1)
MPI.Init(args)
- MPI実行環境を初期化する
int MPI.COMM_WORLD.Size()
- 使用するプロセッサ数を得る
int MPI.COMM_WORLD.Rank()
- 実行しているプロセッサのランク(ID)
MPI.Finalize()
-MPI実行環境を終了
Intelligent Systems Design Laboratory, Doshisha Univ
代表的なAPI(2)
void Send(buf, offset, count, type, dest, tag)
・buf – メッセージバッファ
・offset – bufの開始位置
・count – 送信データ数
・type – データ型
・dest – 送信先のランク番号
・tag – メッセージを区別する識別子
void Recv(buf, offset, count, type, src, tag)
・src – 送信元のランク番号
Intelligent Systems Design Laboratory, Doshisha Univ
MPI版DGAの概要
Intelligent Systems Design Laboratory, Doshisha Univ
MPI版DGAの実装
/* スレーブノード */
if (rank != 0) {
World world = new World();
world.run();
} else {
/* マスタノード */
if (generation % migrationInterval == 0) {
/* スレーブノードからの個体を受信 */
MPI.COMM_WORLD.Recv(population, 0, 1, MPI.OBJECT, i, 1);
allPopulations[i-1] = population[0];
/* 移住 */
allPopulations = migration.migrate(allPopulations);
/* スレーブノードへ個体を送信 */
MPI.COMM_WORLD.Send(allPopulations, i-1, 1, MPI.OBJECT, i, 2);
}
}
Intelligent Systems Design Laboratory, Doshisha Univ
パラメータ
パラメータ
値
総個体数
設計変数
染色体長
突然変異率
トーナメントサイズ
交叉点
交叉率
試行回数
最大世代数
400
10
100
0.01
4
2
1.0
100
500
島数
一島あたりの個体数
一島あたりのエリート
個体数
移住率
移住間隔
40
10
1
0.5
5
Intelligent Systems Design Laboratory, Doshisha Univ
性能比較(Rastrigin関数)
Intelligent Systems Design Laboratory, Doshisha Univ
Webサービスとは
Webサービスとは
・インターネット上に分散するサービスを連携した,
インターネットアプリケーション
特徴
・プログラム間でサービスのやりとりが可能
・プラットフォームや開発言語に依存しない
WSDL, SOAP, UDDI, XML
Intelligent Systems Design Laboratory, Doshisha Univ
Webサービスの概要(三者モデル)
Intelligent Systems Design Laboratory, Doshisha Univ
WSDLとは
WSDL(Web Services Description Language)
・プログラムが理解可能な形式でのインタフェー
スやプロトコルなどの仕様の記述方法を標準化
した仕様
Intelligent Systems Design Laboratory, Doshisha Univ
SOAPとは
SOAP(Simple object Access Protocol)
・Webサービスにおいて,XML形式のデータをや
りとりするための仕様
Intelligent Systems Design Laboratory, Doshisha Univ
UDDIとは
UDDI(Universal Description Discovery, and
Integration)
・Webサービスを提供するProviderの位置(URL)
を発見するための仕組み
Intelligent Systems Design Laboratory, Doshisha Univ
Webサービスの利用(二者モデル)
DGAパラメータ
結果
DGA
Intelligent Systems Design Laboratory, Doshisha Univ
現在の課題
MPI版DGAの改良
・島数が増加したときに“移住操作”によるマスタノードへ
の負荷増大
マスタノードはランダムリングを管理するだけ
移住はスレーブノード同士が行う
Intelligent Systems Design Laboratory, Doshisha Univ
今後の展望
Webサービスの構築
・最適化手法のサービス化
・既存のサービスを利用するための基盤構築
Gridサービスの利用
・Webサービス+Grid技術
OGSA(Open Grid Services Architecture)
WSRF(WS-Resource Framework)
Intelligent Systems Design Laboratory, Doshisha Univ
おわり
ありがとうございました
Intelligent Systems Design Laboratory, Doshisha Univ
性能比較(Rastrigin関数)
Intelligent Systems Design Laboratory, Doshisha Univ
性能比較(Schwefel関数)
Intelligent Systems Design Laboratory, Doshisha Univ
性能比較(Griwank関数)
Intelligent Systems Design Laboratory, Doshisha Univ
性能比較(Rosenbrock関数)
Intelligent Systems Design Laboratory, Doshisha Univ
性能比較(Ridge関数)
Intelligent Systems Design Laboratory, Doshisha Univ
性能比較(Rastrigin関数)
Intelligent Systems Design Laboratory, Doshisha Univ
性能比較(Schwefel関数)
Intelligent Systems Design Laboratory, Doshisha Univ
性能比較(Griwank関数)
Intelligent Systems Design Laboratory, Doshisha Univ
性能比較(Rosenbrock関数)
Intelligent Systems Design Laboratory, Doshisha Univ
性能比較(Ridge関数)
Intelligent Systems Design Laboratory, Doshisha Univ
MPICH, LAM, MPICH-GM
MPICH
・ゴードン国立研究室(米)
・ほとんどのベンダの並列計算機上で動作
LAM
・ノートルダム大学
・デバッキングツール,モニタリングツール
・デーモンプロセスを起動
MPICH-GM
・Myricom社
・Myrinetネットワークを利用
Intelligent Systems Design Laboratory, Doshisha Univ
WSDL文章
Intelligent Systems Design Laboratory, Doshisha Univ
SOAPメッセージ
Intelligent Systems Design Laboratory, Doshisha Univ
Axis, Tomcat
Apache-Axis
・JavaベースのWebサービスミドルウェア
・サーブレット+ミドルウェアAPI+ユティリティプ
ログラム
Tomcat
・JavaベースのWWWサービス+サーブレットコン
テナ+JSPコンテナ
Intelligent Systems Design Laboratory, Doshisha Univ
OGSA
Webサービス+グリッド技術
・Webサービスでは不足している機能を補う
「必要なときに資源を集め,使用し,目的が
終了したら,資源を解放する」
WSRF(WS-Resource Framework)
・OGSI(Open Grid Service Infrastructure)に置き
換わり,グリッドの標準仕様「Open Grid Services
Architecture」(OGSA)の基盤となる
Intelligent Systems Design Laboratory, Doshisha Univ