もしも…だったら?

エジソンに判断力をあたえよう

エジソンは決まった動きしかできないわけではありません。自分で判断して動くこともできるのです。分岐命令といいます。
プログラミングの世界で最もよく使われる分岐命令が、IF(イフ)文と呼ばれるものです。「IF〜」は英語で「もし〜だったら」の意味です。分岐命令を使うことで、エジソンは判断力を身に付けることができるのです。例えば、信号が青だったら進め、信号が赤だったら止まれ、のように条件でエジソン自身が判断を変え、行動するわけです。
では実際に「IF」アイコンを使うとどのようなことが起こるか、ライントラッキングのプログラムを作って様子をみてみましょう。

ライントラッキング用のラインの準備

はじめにライントラッキング用のラインを用意します。黒いガムテープを紙に貼って自作することもできますが、エドマットを作成したり、エドブック2の楕円のページをプリントアウトして使うこともできます。
※自作する場合は、ラインと背景の明暗がはっきりしていないとエジソンのセンサーが読み取れないので注意しましょう。

エジソンでライントラッキング

プログラムの準備

プログラムを作って、エジソンに転送しましょう。エジソンを黒いラインの上において、三角のプレイボタンを押します。するとエジソンはラインに沿って動きます。エジソンは自分がラインの上にいるか、外にいるかを確認して、外にいる場合は戻ろうと判断するのです。

if文の完成図

if文の完成図

各アイコンを以下のように配置、設置しましょう。

1.「line tracker」アイコンをドラッグ&ドロップして配置します。プロパティは以下の図で確認しましょう。

「line tracker」アイコン

2.「loop start」アイコンを配置します。
「loop start」アイコン

3.「IF else」アイコンをドラッグ&ドロップして、ループの中に配置します。
「IF else」アイコン

4.「IF else」アイコンのプロパティを設定します。ライントラッカーに設定すると、アイコンの名称が変わります。
「IF else」アイコンのプロパティ設定

5.上の分岐に「dual drive」アイコンを配置して、以下のようにプロパティを設定します。
if06

6.下の分岐に「dual drive」アイコンを配置して、以下のようにプロパティを設定します。
「dual drive」アイコンを配置

プログラムの動き

プログラムは最初にライントラッキング LEDをオンにします。次にエンドレスなループに入ります。このループの中に一番重要な「IF」アイコンがあります。
「IF」アイコンは問いかけます。「ライントラッカーは白っぽい反射しやすい地面の上にいるかな?」もしその答えがイエスだったら、プログラムは「IF」アイコン の上の分岐へと処理を進めます。「dual drive」アイコンの処理ではエジソンを右へ動かします。そしてエジソンを黒いラインの上に誘導します。でも答えがノーの場合は、プログラムは「IF」アイコンの下の分岐へと進みます。「dual drive」アイコンでエジソンを左に回転させ、ラインの外へ動かします。プログラムのループは何度も何度も繰り返します。
エジソンは「IF」文を使って、ライン上にいるか、いないかの確認と判断を常に繰り返します。ライン上にいる時は外に出ようとし、逆にラインの外にいる時はライン上に戻ろうとするのです。 右へ左へイライラしながら動いてるのは、ラインを確認している証拠なのです。

マメ知識

このプログラムはとてもシンプルですが、「人工知能」の原理を示しています。脳科学者はいまだ完全には人間の脳の動きを解明していませんが、今や専門外のコンピューター技術者が彼らの手助けをしています。エジソンはオモチャのように見えますが、ここで使ったIF文はどんなプログラム言語にも必ず使われています。あなたは今、最先端技術の一端を知ってしまったのです。

次はなに?