並列分散遺伝的アルゴリズムによる ゴルフボールの回転角検出 佐野正樹 廣安知之 三木光範 角田昌也 植田勝彦 大貫正秀 (同志社大学大学院) (同志社大学工学部) (同志社大学工学部) (住友ゴム工業株式会社) (住友ゴム工業株式会社) (住友ゴム工業株式会社) 研究背景 物体の回転は飛行経路に大きく影響 ゴルフボールの回転を高精度に計測すると... ゴルファーの技術の分析 飛行距離の長いボールやゴルフクラブのより効率的な開発 遺伝的アルゴリズム(GA)を用いた ゴルフボールの回転角度検出法 遺伝的アルゴリズム 遺伝的アルゴリズム(Genetic Algorithm : GA) 生物の進化を模倣した最適化手法 探索点を生物個体とみなす 確率的な遺伝的操作 広範な問題に適用可能 多点探索 選択 適合度の 高い個体が 多く生き残る 交叉 個体間の 情報交換 母集団 突然変異 個体 個体情報の 変更 並列分散遺伝的アルゴリズム 分散遺伝的アルゴリズム (Distributed GA : DGA) サブ母集団に分割 各サブ母集団で遺伝的操作 移住 多様性を維持 高い解探索能力 各サブ母集団にプロセッサを割り当てた 並列分散遺伝的アルゴリズム (Paralel DGA : PDGA) を使用 移住 サブ母集団 提案手法 並列分散遺伝的アルゴリズムを用いた ゴルフボールの回転角検出法 飛行するボールを2点で撮影した画像 ボール表面に複数の点(スポット)を描画 画像1 (状態1) 回転角度を 求める 画像2 (状態2) ステップ1 : 基準状態からの回転角度検出 基準状態から各状態への回転角度を検出 描画されたスポットの3次元座標を基準状態とする 状態1と状態2とへの回転行列 (R1, R2)を求める PDGA によるパターンマッチング y y x z 基準状態 回転行列 R1 , R2 撮影画像 (状態1, 2) x PDGAの適合度関数 適合度関数 近接するスポット間の距離の和を最小化 N fitness min(distance(X i , Y j ))2 j i 1 y Xi : 撮影画像上のスポットの2次元座標 (総数 N) Yj : 基準状態から個体に対応する回転を 与えたスポットの座標 (2次元投影) distance (X, Y) : 2つのスポット間の距離 x PDGAの設計変数 設計変数 (6変数) X, Y, Z 軸周りの回転角度 中心位置の座標 (Ox, Oy) 拡大率 m 回転行列 R1 , R2 2次元座標値の補正 撮影画像上の2次元座標値の補正 ボールの輪郭が 不明瞭な画像 y 拡大率 m (半径 1.0 × m) ボールとカメラとの 距離の変化 中心 O x ステップ2 : 2状態間の回転角度の算出 回転行列 R1 , R2 から2状態間の回転角度を算出 y 基準状態 回転行列 R1 回転行列 R2 x y y z R= 画像1 (状態1) x -1 R2・R1 回転角度 θ 回転軸 u 画像2 (状態2) x 提案手法の特徴 特徴 任意のゴルフボールを使用可能 撮影画像において,ボールの中心位置が 未知の場合にも適用可能 ボールの半径(大きさ)が 未知の場合にも適用可能 並列計算機への実装が容易 輪郭が不明瞭な画像 数値実験 実験項目 実験1 : 回転角度の精度 実験2 : 計算時間 計算環境 形態 PC クラスタ プロセッサ Pentium III メモリ 256 MB OS Linux (kernel 2.2.18) ネットワーク Fast Ethernet , TCP/IP 通信ライブラリ MPICH 1.2.1 500 MHz スポット配置法 y スポット配置法 4つのライン (x=0, y=0, z=0, y=x) ランダムに配置 総数 42 x z 2次元座標(画像)のテストデータ 3組のデータについて 20 試行ずつ計算 データ 回転角度 [deg.] 回転軸 (x, y, z) テストデータ 1 (1.000, 0.000, 0.000) 40 テストデータ 2 (0.966, 0.000, 0.259) 40 テストデータ 3 (0.966, 0.000, - 0.259) 40 パラメータ PDGA 個体数 400 サブ母集団数 (プロセス 数) 染色体長(L) 選択法 交叉率 交叉法 突然変異率 移住間隔 移住率 関数評価回数 試行 1, 2, 4, 8 60 (6変数 × 10) ルーレット選択 逐次:0.6, 並列:1.0 一点交叉 0.016667 (1 / L) 5 0.3 400000 60 実験結果1 : 回転角度の精度 得られた回転角度の誤差 (60試行) Number of Trials 60 50 2.0 ≦ error 40 1.0 ≦ error < 2.0 0.0 ≦ error < 1.0 30 単位 [deg] 20 10 0 1 2 4 8 Number of Subpopulations 多くの試行で精度よく求解 (2[deg] 未満の誤差) サブ母集団を増加させると 誤差1[deg] 未満の系列が増加 実験結果2 : 計算時間 1試行あたりの計算時間の平均 250 Elapsed Time [s] Observed Ideal 200 150 100 50 0 0 1 2 3 4 5 6 Number of Processors 理想値に近い計算時間短縮 7 8 まとめ ゴルフボールの回転角検出法の提案 2枚の撮影画像をもとに回転角を検出 並列分散遺伝的アルゴリズム(PDGA) を使用 提案手法の特徴 通常のゴルフボールを使用可能 不明瞭な画像にも有効 数値実験の結果 サブ母集団を増加させると得られる回転角度の精度が向上 並列化により,計算時間短縮 提案手法は,ゴルフボールの回転角検出に対して有効 補足資料 スポット座標の正規化と設計変数の範囲 画像上のスポットの2次元座標値を正規化 y この長さを ボール半径 (1.0)とし, 各スポットの座標値を正規化 x 設計変数のとりうる値の範囲 項目 X, Y, Z 軸周りの回転角度 値の範囲 [ 0, 360 ) 中心位置 O の座標 (Ox, Oy) [ G - α, G - α ) 拡大率 [ 1.0 – β, 1.0 ) 備考 単位 : [degree] G : スポットの重心 裏側のスポットの考慮 投影図の裏側のスポットをボールの外側に配置 ボールの輪郭 裏側を考慮する範囲 (半径×一定割合) 表側のスポット 裏側のスポット 裏側のスポットを, ボールの外側に配置したもの 個体に対応する角度で 基準状態から回転させた投影図 回転角度と回転軸の導出 回転角度 1 cos (r11 r22 r33 1) 2 回転軸 (u1 , u2 , u3 ) (0 ) (r23 r32 , r13 r31 ,r12 r21 ) (r23 r32 ) 2 (r13 r31 ) 2 (r12 r21 ) 2 回転行列 r11 R r21 r 31 r12 r 22 r32 r13 r23 r33 従来手法 ボール表面に描かれたマークの移動量を特定 高速,高精度 輪郭が不明瞭な画像やマークが隠れた場合に測定困難 画像1 (状態1) 回転角度を 求める 画像2 (状態2)
© Copyright 2024 ExpyDoc