剣を振るときはフィードフォワード制御で
フィードフォワード制御とはあらかじめ目標値を設定し、一方的にそれを実現するような入力をする制御法です。
制御工学などで用いられる用語です。
例えば電気湯沸かし器について考えてみましょう。
フィードフォワード制御でお湯を沸かすときはあらかじめ目標とする温度を決めておき、水の量と時間当たりのヒーターの発熱量を調べておきます。
次にそれらの情報からヒーターで熱する時間を計算します。
あとはその時間だけヒーターのスイッチをつけておくだけです。
一方、フィードバック制御というものもあります。
こちらの方が一般的に知られていると思います。
フィードバック制御とは制御対象の現在値と目標値の差をもとめ、その差を減らすような入力をする制御法です。
やはり、湯沸かし器を例にすると
目標となる温度を決めておき、常に現在の水の温度を監視します。
水の温度が目標の温度より低いうちはヒーターのスイッチをつけ、目標の温度より高くなったらスイッチをきります。
これらの制御法の特徴をまとめると以下のようになります。
フィードフォワード
- すばやい制御ができる
あらかじめスイッチを何分つければ水の温度が何度上がるか分かっているので目標の温度を少しだけ高くしたいときでもぴったりその温度で止めることができる。
- 外乱に弱い
加熱しているとき、水の量が変化したりすると温度が目標より高くなったり低くなったりします。
フィードバック
- すばやい制御ができない
目標の温度になってからスイッチをきっているので目標値より少し温度が高くなったりして、ぴったり止めることは難しい。
- 外乱に強い
常に現在の温度を監視しているので途中で水の量がいくら減ろうが増えようが関係ない。
人は剣を振るとき、はじめのうちはフィードバック制御してしまいます。
つまり、
剣の位置を知る>目標の位置にあるか判断する>手で力加減を調整する
というループをしています。
なので、目標の位置に剣を止めたくても行き過ぎてしまったり、ピタッと止まらずにゆるゆると止めてしまったりします。
これをフィードフォワード制御にすると
どの位置で加速し減速するか知っておく>その通り動く
という感じになります。
これなら自分の判断が入る余地はありません。
目標の位置でピタッと止まるような動きをすればいいだけです。
ここで重要なのはあらかじめ剣の重さや自身の能力などを知っておかなくてはいけないということです。
そのためにはやはり何度も振る動きを体験して、どのような入力をすればよいか覚えなくてはいけないわけです。
さて、問題となってくるのはフィードフォワードは外乱に弱いという点です。
結論から言うとうまい人はフィードバックとフィードフォワードの併用をしています。
ただし、あくまでメインはフィードフォワードでフィードバックによる修正はわずかです。
そのため、途中で修正しているようにはほとんど見えません。
これらのことは剣を振る動作以外にも適用できると思うのですがどうでしょうか。
フィードフォワード制御ができるようになるということは、自分の中に動きのイメージができていて、目的の動きをするためにはどのような体の操作をすればよいか予測できるようにするということです。
とか、人間を機械として見たら、私はこんな感じになりました。
という武術的アプローチ。