2018年4月30日月曜日

[NMP]アルゴリズムのデザイン

水泳のアルゴリズムをデザインするときのステップをまとめる。

1.動きをストロークフェーズで分解する

ストロークフェーズを7つに分解する。
  • グライド
  • スイッチ
  • リカバリー
  • エントリー
  • キャッチ/プル
  • プッシュ
  • フィニッシュ

2.それぞれのフェーズの目的を明らかにする

  • グライド:滑る=支える+乗る=支える+(前に水を押す+動く)
  • スイッチ:両手のタイミングを合わせる
  • リカバリー:水上の手で重心を前に動かす
  • エントリー:手の重みで入水する手を素早く伸ばす
  • キャッチ/プル:手に水を当てて支えにする
  • プッシュ:水を後ろに押す
  • フィニッシュ:水中で水を放って手を水上で引き寄せる

3.支えとなる部位や固定する部位を決める

  • グライド:水中で伸ばした手
  • スイッチ:頭(スイング動作)、伸ばした手/肘(入水動作)
  • リカバリー:水中で伸ばした手、胸鎖関節、水上の手の上腕
  • エントリー:入水の手の上腕、胸鎖関節
  • キャッチ/プル:肘(手首の回転)、上腕(前腕動作)
  • プッシュ:上腕(前腕動作)、体幹(肘を伸ばす動作)
  • フィニッシュ:上腕(放つ動作)、胸鎖関節(引き寄せ動作)

4.動かす部位を時間順に決める

  • グライドの例
    伸ばす手を支えにする→伸ばす手の垂直方向を決める→伸ばす手の水平方向を決める→からだの長軸の回転角を決める→からだの短軸の回転角を決める→腰の位置を決める→両足の間隔を狭める(股間を締める)

5.条件判断のためのインプットと変化させる内容を決める

  • グライドの例
    ー伸ばす手の上と下を通る水の流れ:下の方を厚くする
    ー胸で受ける水の塊:増える手の方向とからだの回転角を見つける

6.意識して動かす部位の順番と条件判断を組み合わせる

  • グライドの例
    「手の上下を通る水の流れ」と「胸で押す水の面積」が最大になるように伸ばす手の方向を垂直/水平に動かして変える

7.ラベル化する

  • 一連の動作を簡単な表現に置き換える
    →動詞のみ、動詞+目的語、動詞+目的語+修飾語
  • インプット(感覚や知覚)を簡単な表現に置き換える
アルゴリズムが正しく動作するかは条件判断で使用するインプットにかかっている。どのタイミングでどのような感覚や知覚が得られるか。さらに文字化するためには、その文字を見れば対応した感覚が想起できるような文字を選ぶ必要がある。

またアルゴリズム全体を暗記しやすくさせる必要もある。組み込み関数を増やして、文字を見ればその動作ができるようになれば複雑な動きでも正しく動作させることができる。







0 件のコメント:

コメントを投稿