『ロボット工作』『ユークリッド幾何』(山びこ通信2012/6より)

『ロボット工作』『ユークリッド幾何』 (担当:福西亮馬)

『ロボット工作』と『ユークリッド幾何』。なぜそれらがセットになっているのか、不思議に思われるかもしれません。しかし、どちらにも共通要素があります。それは、「簡単なものが複雑なものを構成していること」と、その骨組みが「論理」であるということです。ここでいう「簡単なもの」とは、根っこにあるルール、「原理」のことです。ロボットなら「2進数」が、幾何なら(平行線公理など5つの)「公理」がそれにあたります。また「複雑なもの」とは、ロボットの「動作」ないし幾何の「命題」のことです。

00、01、10、11。これは2ビットの2進数です。ロボット工作では、モーターが1つの場合、00を「停止」、01を「正転」、10を「逆転」といった状態に対応付けます。(ただしここで11は未定義)。さらに桁を倍に増やして、0000、0001、0010、0011、0100、0101、0110、0111とすれば、8つの出来事が定義できます。これでモーターを2個動かすことはもちろん、0~9やA~Fといった文字を7セグメントLEDという素子に表示させることもできます。この2進数の値には、どんな出来事も対応付けることができます。(どうやってそれが可能なのかは、ぜひクラスの中で体験して下さい)。

ロボット工作で「何かを実現したい」と思った時、根っこでは、この0と1で考えます。その原理はシンプルだからこそ様々な応用が利くとも言えます。また数字で表された出来事は「計算」することもできます。そして計算結果を新しい出来事と結びつけた時、それが「驚き」となります。(動いたロボットを見て「おお」という声が上がるわけです)。けれどもその根底で働いているのは、至って単純な計算(の繰り返し)であり、それがプログラムです。その構造は、幾何の証明に使われる論理と全く同じものです。

一方、幾何の世界では、単純な事実の積み重ねから導かれた定理が、にわかには信じられないような結果を述べています。それは見た目を多くはぎ取っている分、より純粋であるとも言えます。そして、そこにある驚きは、ロボットの動作と比して何ら遜色はないでしょう。

このように見た目の違うクラスですが、どちらも合言葉となるのは、「論理」と「分かった!」です。そして小手先の応用にとらわれるよりも、むしろ原理に対する理解を深めることに、時間をかけようと考えています。

(福西亮馬)