ロボットプログラミングの授業を受講しているFくんも、かなりの段階まで進んできていて、今は「変数上級」という段階の課題に取り組んでいます。
この動画のロボットは、2回に分けての動作を行うのですが、1度目の前進のときには壁までの距離(時間)をロボットに内蔵されたタイマーで測り、時間を覚えておきます。
そしてまたスタート地点にまで戻った後に、2度目の前進では「今度は壁にぶつかる寸前で止まるように、先ほど測った時間から0.1秒を引いた時間分、前進させて壁の手前で止まるかどうか」といった課題に取り組んでいる様子です。
本人も言っていましたが、モータの制御、センサー値の取り扱いや、タイマーや変数の使い方を学んで、これらの機能同士もうまく組み合わせられるようになり、
「もうだいぶこのロボットを使いこなせるようになった」と思います。
それでも、授業中、うまく動かないことがありますが、実はそこが論理の組み立て(頭で考えたり、机上で鉛筆を持って)で考えが抜け落ちていたり、ミスをしていたりするポイントです。
コンピュータやロボットなどの機械は、「人間のように気を利かしてなんとか上手いことやっておく」ということがものすごく苦手です。すべての動きを、作る段階できちんと設計をしておかないと些細なミスで全体が動かなくなってしまったり、うまく動かないということが起こるのですね。「人間のように気を利かす」ということは、AIが発達している現代においても、機械にとってものすごく苦手なことですね。
これからの時代、機械に任せる仕事も増えてくる時代でしょうが、「〇〇の仕事は人がやったほうがいいこと」「□□の仕事は機械でも十分にこなせること(もしくは機械の方が得意)」なんていうイメージが少しづつ彼の頭の中でイメージできているのではないでしょうか。
機械に任せられる仕事も、その機械が実際にどんな論理で動いているかが想像できれば、今度は人と機械の役割分担を上手に行うための方法論などの検討もできるようになるかも知れませんね。
いずれにせよ、ロボットを通じて、論理的に物事を考えるチカラはこの2〜3年の間の授業でだいぶついてきましたね!(^ ^)