Upgrade to Pro — share decks privately, control downloads, hide ads and more …

作業領域内の障害物を回避可能なバイナリマニピュレータの設計 / Design of binary manipulator avoiding obstacles in workspace

konakalab
February 07, 2024

作業領域内の障害物を回避可能なバイナリマニピュレータの設計 / Design of binary manipulator avoiding obstacles in workspace

アクチュエータが伸縮の二値をとる特殊なマニピュレータ(バイナリマニピュレータ)について,ピックアンドプレイスと障害物回避を考慮した構造設計手法を進化計算で解く方法を提案しました.

2023年度名城大学理工学研究科情報工学専攻修士論文公聴会で発表したスライドです.

konakalab

February 07, 2024
Tweet

More Decks by konakalab

Other Decks in Science

Transcript

  1. 223426012 小中研究室 杉林 恵多*
    作業領域内の障害物を回避可能な
    バイナリマニピュレータの設計
    Design of binary manipulator avoiding
    obstacles in workspace

    View full-size slide

  2. 1
    2
    3
    4
    5
    研究背景
    問題設定
    提案手法
    数値実験
    まとめ まとめ
    今後の課題
    実験条件
    実験結果
    最適化手法
    評価指標
    問題と研究目的
    バイナリマニピュレータ
    目次

    View full-size slide

  3. 1
    2
    3
    4
    5
    研究背景
    問題設定
    提案手法
    数値実験
    まとめ まとめ
    今後の課題
    実験条件
    実験結果
    最適化手法
    評価指標
    問題と研究目的
    バイナリマニピュレータ
    目次

    View full-size slide

  4. 様々なマニピュレータ
    基本的な2種類のマニピュレータ
    [1]https://robotics.kawasaki.com/ja1/xyz/jp/1804-03/
    Links are connected in
    serial
    リンクの構造の種類に基づく分類

    View full-size slide

  5. バイナリマニピュレータ:
    バイナリアクチュエータと3bitモジュール
    3bitモジュールは3つのバイナリアクチュエータで構成
    バイナリアクチュエータの23(伸縮)パターンと対応した形状

    View full-size slide

  6. バイナリマニピュレータ:
    3bitモジュールの直列結合
    • 利点
    – モジュール故障に
    対する冗長性
    – 低帯域幅通信
    パスによる
    遠隔制御
    [2]Konaka, SICE Magazine, Vol.56, No.7, pp.503-508, 2017 (in Japanese)
    𝐵個のモジュール = 23𝐵形状

    View full-size slide

  7. 1
    2
    3
    4
    5
    研究背景
    問題設定
    提案手法
    数値実験
    まとめ まとめ
    今後の課題
    実験条件
    実験結果
    最適化手法
    評価指標
    問題と研究目的
    バイナリマニピュレータ
    目次

    View full-size slide

  8. 手先到達点の分布の設計
    • 到達点: 離散的な分布
    • バイナリアクチュエータの
    伸縮長に依存
    手先到達点の分布
    手先の分布 伸縮長
    広い 長い
    狭い 短く
    目標位置とは常に誤差が生じる

    View full-size slide

  9. 先行研究:2つに分離した作業領域
    • 2つに分離した作業領域に対する伸縮長の設計
    – 分布の均一性に関する評価指標(最大空円𝑟𝑚𝑒𝑐
    、KS統計量𝐷)
    – GAによる最適化
    [3] Keita Sugibayashi, Eiji Konaka, Design of three-dimensional binary manipulators based on
    the KS statistic and maximum empty circles, IEEE,IECON2023, (2023)
    作業領域
    作業領域

    View full-size slide

  10. 問題:障害物を回避可能な設計
    • ピックアンドプレイス:ロボットマニピュレータの主な作業
    – ピックとプレイスの作業する2領域の間に障害物が存在する
    • 先行研究[3]は、領域の間に存在する障害物を考慮していない

    View full-size slide

  11. 問題:障害物を回避可能な設計
    • ピックアンドプレイス:ロボットマニピュレータの主な作業
    – ピックとプレイスの作業する2領域の間に障害物が存在する
    • 先行研究[3]は、領域の間に存在する障害物を考慮していない
    障害物を回避可能な軌道をもつマニピュレータの設計

    View full-size slide

  12. 研究目的
    • 研究目的
    – 各バイナリアクチュエータの伸縮長の設計
    – 作業領域内での誤差の最小化
    – 障害物回避が可能な設計
    • 手法
    – GAベースの最適化
    – 評価指標の修正
    • 障害物を回避可能な軌道の有無の評価
    • 数値実験

    View full-size slide

  13. 1
    2
    3
    4
    5
    研究背景
    問題設定
    提案手法
    数値実験
    まとめ まとめ
    今後の課題
    実験条件
    実験結果
    最適化手法
    評価指標
    問題と研究目的
    バイナリマニピュレータ
    目次

    View full-size slide

  14. 提案手法 :GAに基づく確率的最適化
    ∆𝒅 = ∆𝑑1
    , ⋯ ∆𝑑𝑖
    , ⋯ ∆𝑑6×𝐵
    𝑇
    • 遺伝的アルゴリズム (GA)
    – 生物の遺伝と進化に基づいた最適化アルゴリズム
    – 解の候補を遺伝子として コード化
    – 遺伝子は評価指標で評価される
    • GAでは適応度関数と呼ばれる
    – 淘汰と遺伝的操作により、新しいよい遺伝子を生成
    • 淘汰:悪い遺伝子を集団から取り除く
    • 遺伝的操作: 交叉、突然変異
    • 遺伝子のコード化
    – 各バイナリアクチュエータの基準の長さを𝐷0
    とした伸縮の長さ

    View full-size slide

  15. 提案手法のアルゴリズム (1,2/8)
    初期個体群
    1. 適応度関数として𝐽 = 𝑤1
    × 𝑟𝑚𝑒𝑐
    + 𝑤2
    × 𝐷 を定義
    遺伝子の生存条件を「実行可能な手先の軌道が存在」
    2. 初期個体を 𝐼個生成する
    ・・・個体
    ・・・遺伝子

    View full-size slide

  16. 提案手法のアルゴリズム (3/8)
    適応度
    0.3
    0.4
    0.5
    0.6
    0.7
    3. 適応度関数を用いてそれぞれの個体の適応度と
    実行可能な手先の軌道の有無を判定
    ・・・個体
    ・・・遺伝子
    生存条件
    (軌道)





    View full-size slide

  17. 提案手法のアルゴリズム (4/8)
    4. 淘汰: 個体群の下位40%または実行可能な手先軌道が存在し
    ない個体を淘汰
    4 5
    0.5 0.7
    無 無
    rank 1 2 3
    個体
    適応度 0.3 0.4 0.6
    軌道 有 有 有
    淘汰
    ・・・個体
    ・・・遺伝子

    View full-size slide

  18. 提案手法のアルゴリズム (5,6/8)
    5. 遺伝的操作: エリートな2つの個体を選択して二点交叉を行う
    6. 遺伝的操作: ランダムな遺伝子の一部を突然変異で変化

    View full-size slide

  19. 提案手法のアルゴリズム (7,8/8)
    𝑔 generation 𝑔 + 1 generation
    7. 次世代の作成.
    8. G世代まで繰り返す. 最適な個体を解として出力する
    ・・・個体
    ・・・遺伝子

    View full-size slide

  20. 提案手法のアルゴリズム (7,8/8)
    𝐺 generation
    ・・・
    𝑔 generation 𝑔 + 1 generation
    7. 次世代の作成.
    8. G世代まで繰り返す. 最適な個体を解として出力する
    ・・・個体
    ・・・遺伝子

    View full-size slide

  21. 1
    2
    3
    4
    5
    研究背景
    問題設定
    提案手法
    数値実験
    まとめ まとめ
    今後の課題
    実験条件
    実験結果
    最適化手法
    評価指標
    問題と研究目的
    バイナリマニピュレータ
    目次

    View full-size slide

  22. 最大空円 (MEC)
    大 小
    低 高
    半径
    密度
    MECの半径が小さい =作業領域内での誤差が小さく、高密度
    作業領域
    MEC

    View full-size slide

  23. KS統計量
    手先の到達点の分布 理想的な分布
    • 理想的な分布:作業領域内の均一な分布
    KS統計量は分布の均一性を測ることができる。
    作業領域

    View full-size slide

  24. 手先の軌道の評価
    障害物 障害物
    作業領域内で実行可能な手先の軌道が
    存在するかを判定する
    無向グラフを利用して手先の軌道の評価を行う

    View full-size slide

  25. 手先の軌道の評価のアルゴリズム (1/7)
    障害物
    障害物を考慮して作業領域を定義
    (黄色の部分を作業領域とする)

    View full-size slide

  26. 手先の軌道の評価のアルゴリズム (2/7)
    手先の到達点を求める

    View full-size slide

  27. 手先の軌道の評価のアルゴリズム (3/7)
    作業領域内にある手先の到達点を求める

    View full-size slide

  28. 手先の軌道の評価のアルゴリズム (4/7)
    作業領域内にある手先の到達点から
    無向グラフを構成
    バイナリマニピュレータの姿勢が1ビットのみ
    異なるノード同士をエッジで繋げる

    View full-size slide

  29. 手先の軌道の評価のアルゴリズム (5/7)
    作業領域外を通る手先の軌道を調べる
    (赤色の直線:作業領域外を通る手先の軌道)
    (緑色の直線:作業領域内を通る手先の軌道)

    View full-size slide

  30. 手先の軌道の評価のアルゴリズム (5/7)
    それぞれの手先の軌道に対して、軌道の線を細分化して、
    それら全ての点が作業領域内にあるかを調べる
    (赤色の直線:作業領域外を通る手先の軌道)

    View full-size slide

  31. 手先の軌道の評価のアルゴリズム (6/7)
    障害物
    1つでも作業領域外に点がある辺を全て削除し、
    新しい無向グラフを構成する
    (緑色の直線:作業領域内を通る手先の軌道)

    View full-size slide

  32. 手先の軌道の評価のアルゴリズム (7/7)
    障害物
    新しい無向グラフに対して、2つの点を指定して、
    グラフの連結性を判定する。
    (緑色の直線:作業領域内を通る手先の軌道)

    View full-size slide

  33. 1
    2
    3
    4
    5
    研究背景
    問題設定
    提案手法
    数値実験
    まとめ まとめ
    今後の課題
    実験条件
    実験結果
    最適化手法
    評価指標
    問題と研究目的
    バイナリマニピュレータ
    目次

    View full-size slide

  34. 数値実験:実験条件
    𝑩 = 𝟒のバイナリマニピュレータの伸縮長を設計
    Symbol 値
    重み (𝑤1
    , 𝑤2
    ) (0.75,0.25)
    個体数 𝐼 50
    突然変異の発生率 𝑚 0.15
    世代数 𝐺 500
    GAで用いるパラメータ
    作業領域
    手先が通過
    してよい領域

    View full-size slide

  35. 数値実験:実験結果 (世代ごと)
    設計された到達点の分布
    評価関数の値
    作業領域
    手先が通過
    してよい領域
    設計されたアクチュエータの伸縮長

    View full-size slide

  36. 数値実験:実験結果 (手先の軌道)
    作業領域外の到達点を取り除く前
    作業領域
    手先が通過
    してよい領域
    作業領域
    手先が通過
    してよい領域
    作業領域外の到達点を取り除いた後

    View full-size slide

  37. 数値実験:実験結果 (不適切な軌道)
    手先の軌道が不適切と評価された
    バイナリマニピュレータの手先の軌道
    手先が通過
    してよい領域
    作業領域
    手先が通過
    してよい領域
    作業領域

    View full-size slide

  38. 数値実験:実験結果 (適切な軌道)
    手先の軌道が適切と評価された
    バイナリマニピュレータの手先の軌道
    手先が通過
    してよい領域
    作業領域
    手先が通過
    してよい領域
    作業領域

    View full-size slide

  39. 数値実験:実験結果 (比較)
    手先の軌道が不適切 手先の軌道が適切
    障害物を回避して、作業することができる設計が可能

    View full-size slide

  40. 1
    2
    3
    4
    5
    研究背景
    問題設定
    提案手法
    数値実験
    まとめ まとめ
    今後の課題
    実験条件
    実験結果
    最適化手法
    評価指標
    問題と研究目的
    バイナリマニピュレータ
    目次

    View full-size slide

  41. まとめ
    • 手先の到達点から
    アクチュエータの伸縮
    の状態を求める。
    • 障害物を想定して、手先
    の軌道が適切かの判定
    を最適化に組み込む
    • 作業領域内の手先分布の
    密度を高くしつつ、
    障害物を回避可能な設計
    • GAに基づく最適化により、
    バイナリマニピュレータの
    設計

    View full-size slide

  42. 今後の課題
    • 冗長性があるバイナリマニピュレータの設計
    • 一部のアクチュエータが故障しても、
    制御性能が低下しない設計

    View full-size slide

  43. 3bitモジュールの順運動学 (1/5)
    1. 𝐶0
    と𝐶1
    を重心とする正三角形の1辺の長さは𝐷𝐿

    View full-size slide

  44. 3bitモジュールの順運動学 (2/5)
    例: 𝒒1
    = 0,0,1 Τ
    (0・・・縮み、1・・・伸び)
    2. バイナリアクチュエータの状態 𝒒1
    を決める

    View full-size slide

  45. 3bitモジュールの順運動学 (3/5)
    3. それぞれの状態に対応する𝐷𝑚𝑖𝑛
    と𝐷𝑚𝑎𝑥
    の値を
    𝑑1,1
    、 𝑑1,2
    および𝑑1,3
    に代入する
    例: 𝒒1
    = 0,0,1 Τ
    (0・・・縮み、1・・・伸び)

    View full-size slide

  46. 3bitモジュールの順運動学 (4-1/5)
    4. Newton法を用いて、各バイナリアクチュエータの重心に
    対する角度を求める
    例: 𝒒1
    = 0,0,1 Τ
    (0・・・縮み、1・・・伸び)

    View full-size slide

  47. 3bitモジュールの順運動学 (4-2/5)
    4. Newton法を用いて、各バイナリアクチュエータの重心に
    対する角度を求める
    𝒙𝒏+𝟏
    = 𝒙𝒏
    − (𝐽(𝒙𝒏
    )) −1 𝑓(𝒙𝒏
    )
    𝑓 𝒙𝒏
    =
    𝑓1
    (𝒙1,𝑛
    , 𝒙2,𝑛
    , 𝒙3,𝑛
    )
    𝑓2
    (𝒙1,𝑛
    , 𝒙2,𝑛
    , 𝒙3,𝑛
    )
    𝑓3
    (𝒙1,𝑛
    , 𝒙2,𝑛
    , 𝒙3,𝑛
    )
    𝐽 𝑥 =
    𝜕𝑓1
    𝜕𝑥1
    𝜕𝑓1
    𝜕𝑥2
    𝜕𝑓1
    𝜕𝑥3
    𝜕𝑓2
    𝜕𝑥1
    𝜕𝑓2
    𝜕𝑥2
    𝜕𝑓2
    𝜕𝑥3
    𝜕𝑓3
    𝜕𝑥1
    𝜕𝑓3
    𝜕𝑥2
    𝜕𝑓3
    𝜕𝑥3
    𝒙𝒏
    =
    𝒙𝟏,𝒏
    𝒙𝟐,𝒏
    𝒙𝟑,𝒏
    𝒙𝒏
    ・・・各バイナリアクチュエータの重心に対する角度(推定値ベクトル)
    𝐽(𝒙𝒏
    )・・・ 𝒙𝒏
    における𝑓の各変数に関する偏微分を含む行列(𝑓(𝒙𝒏
    )のヤコビ行列)
    𝑓(𝒙𝒏
    )・・・各バイナリアクチュエータの位置に関する方程式の関数ベクトル

    View full-size slide

  48. 3bitモジュールの順運動学 (4-3/5)
    4. Newton法を用いて、各バイナリアクチュエータの重心に
    対する角度を求める
    例: 𝒒1
    = 0,0,1 Τ
    (0・・・縮み、1・・・伸び)

    View full-size slide

  49. 3bitモジュールの順運動学 (5/5)
    5. 𝐶0
    から𝐶1
    への同次変換行列𝑻を求める
    例: 𝒒1
    = 0,0,1 Τ
    (0・・・縮み、1・・・伸び)

    View full-size slide

  50. 順運動学と逆運動学
    順運動学 解きやすい 解きにくい
    逆運動学 解きにくい 解きやすい

    View full-size slide

  51. 3bitモジュールの順運動学 –機械学習-
    Newton法では初期値が悪いと
    解への収束が遅くなる
    適切な初期値を与えることで
    解への収束を早くする
    3bitモジュールの順運動学で
    Newton法を利用

    View full-size slide

  52. 数値実験:実験結果 –機械学習-
    手法 入力 出力
    3 input
    3 output
    3つのアクチュエータの
    長さ
    3つのアクチュエータの
    重心に対する角度
    3 input
    1 output
    3つのアクチュエータの
    長さ
    1つのアクチュエータの
    重心に対する角度
    (i=1,2,3)
    Normal
    各アクチュエータの重心に対する角度
    (初期値)を全て0とした場合
    比較する手法

    View full-size slide

  53. 数値実験:実験結果 –機械学習-
    手法 反復回数 計算時間[s]
    3 input
    3 output
    2.1611 3.2669 × 10−5
    3 input
    1 output
    2.1611 2. 9548 × 10−5
    Normal 2.6117 3.5207 × 10−5
    10,000回試行
    計算時間と反復回数の平均値

    View full-size slide

  54. 数値実験:実験結果 –機械学習-
    手法
    反復回数 計算時間[s]
    max min max min
    3 input
    3 output
    5 2 1.0000 × 10−3 2.6100 × 10−5
    3 input
    1 output
    5 2 1.4000 × 10−3 2.3600 × 10−5
    Normal 6 1 5.1420 × 10−4 1.4500 × 10−5
    10,000回試行
    計算時間と反復回数の最大値と最小値

    View full-size slide

  55. MECの算出 (1/3)
    空間上に作業させたい領域を定義する
    手先の到達点(母点)

    View full-size slide

  56. MECの算出 (1/3)
    空間上に作業させたい領域を定義する
    手先の到達点(母点)

    View full-size slide

  57. MECの算出 (2/3)
    母点と隣接するボロノイ頂点の距離の最大値を求める
    手先の到達点(母点) ボロノイ頂点

    View full-size slide

  58. MECの算出 (3/3)
    母点と隣接するボロノイ頂点の距離の最大値を求める
    手先の到達点(母点) ボロノイ頂点

    View full-size slide

  59. KS統計量の算出 (1/2)
    𝐷𝑥
    = max
    𝑥

    𝐹 𝑥 − 𝐺(𝑥)
    • 𝐺(𝑥): Hypothetical
    CDF(Cumulative
    distribution function)
    • CDF of uniform
    distribution
    • ෠
    𝐹(𝑥): Empirical CDF
    • CDF of reachable
    points of the
    manipulator

    View full-size slide

  60. KS統計量の算出 (1/2)
    𝐷𝑥
    = max
    𝑥

    𝐹 𝑥 − 𝐺(𝑥)
    • 𝐺(𝑥): Hypothetical
    CDF(Cumulative
    distribution function)
    • CDF of uniform
    distribution
    • ෠
    𝐹(𝑥): Empirical CDF
    • CDF of reachable
    points of the
    manipulator

    View full-size slide

  61. KS統計量の算出 (2/2)
    𝐷 = max 𝐷𝑥
    , 𝐷𝑦
    , 𝐷𝑧
    𝑥
    𝑦
    𝑧
    𝐷𝑧
    𝐷𝑦 𝐷𝑥

    View full-size slide

  62. 先行研究の評価指標
    𝑤1
    , 𝑤2
    > 0 𝑤1
    +𝑤2
    = 1
    𝐽 = 𝑤1
    × 𝑟𝑚𝑒𝑐
    + 𝑤2
    × 𝐷
    MECの半径 KS統計量
    • MECの半径が小さい = 高密度
    • KS統計量が小さい = 一様分布に近い
    • バイナリマニピュレータの設計 = Jを最小化する

    View full-size slide

  63. 数値実験:実験条件 -実行環境-
    環境要素 実行環境の情報
    CPU
    11th Gen Intel® Core i7-1165G7
    ( 4コア / 8スレッド / 2.40GHz)
    メモリ 64GB
    OS Windows 11 Pro
    プログラミング言語 MATLAB
    数値実験の計算機環境

    View full-size slide

  64. 数値実験:実験結果 -計算時間-
    計算時間:1.7395 × 104[s] (約4.8時間)
    第1世代の最良の個体 第500世代の最良の個体

    View full-size slide

  65. 各モジュールの障害物回避
    本研究の提案手法を各モジュールの到達点に対して適用することで、
    手先以外のモジュールの障害物を回避可能な設計を行うことができる

    View full-size slide

  66. バイナリマニピュレータの到達点
    バイナリマニピュレータの伸縮の状態を変化するとき、
    伸縮の途中の到達点は連続値となる。

    View full-size slide

  67. 3bitモジュールの 伸縮の間は連続値
    計算時間:1.7395 × 104[s] (約4.8時間)
    第1世代の最良の個体 第500世代の最良の個体

    View full-size slide