2時間目(2)ゴーレムはプログラムがお好き?
マキナ・アイ先生は、マネキンに精霊を宿らせました。
魔法で動く人形、つまり『ゴーレム』の完成です。
「でも、これだけでは何の役にも立たないただの人形です。いろいろなことを『プログラミング』してあげることで、人の役に立つゴーレムになるのです。今日はその仕組を勉強しちゃいましょう」
「はーい」
「ロボット制御の基礎のようなものか、フフフ……面白い」
知的メガネがトレードマークの利久くんがゴーレムを眺めて、ほくそ笑みます。
「勉強しておけば、異世界にいってから役に立つかもしれないし!」
ファンタジーが大好きな花音さんは、別の意味でやる気まんまんのようです。
『さぁさぁ、早いとこ指示をくれよー、待ってるんだからさー』
小さな妖精、オペレッタちゃんがマネキンの頭の上から、そんな教室の様子を見回して言いました。ちょっとイタズラ好きですが、妖精にもいろいろな性格があるようですね。
自由に動けるようになったマネキンの『マユ次郎』は、教室の真ん中に立ったまま。妖精のオペレッタちゃんの動きに合わせるように、ときどき背筋を伸ばしたり、腰を曲げたり、脚を屈伸させたりしています。妖精のオペレッタちゃんの動きと連動しているようです。
「さぁ、ではルールを説明しますね」
マキナ・アイ先生は魔法の杖をふると、黒板でチョークが滑り出しました。
カツカツと素早く文字を書いてゆきます。チョークを動かしているのは、妖精のコンソルくん。素直で可愛い緑色の髪の妖精です。
「ゴーレムの『マユ次郎』を動かすための『命令』には種類がありますよ。これらはほんの一部ですが、わかりやすくしてあります」
【全体】
・『はじめ』
・『おわり』
【動き】
・『歩く』
・『早足』
・『まわれ右』
・『まわれ左』
・『のぼる』
・『おりる』
・『とまる』
【運ぶ】
・『しゃがむ』
・『背負う』
・『もちあげる』
・『おろす』
・『かつぐ』
【判断】
・『障害物』
・『危険』
・『○○は正しい?』
あっというまに沢山の命令が黒板に並びました。
なかでも『歩く』や『とまる』はわかりますが、『障害物』『危険』なんかは、どういうふうに使うのでしょう?
「動きを単純な言葉に置き換えた命令みたいですね」
「ブロックのように組み合わせることで、プログラムを構成するというわけか」
パソコンに詳しい果穂さんがつぶやきました。頭の回転の速い利久くんも腕組みをしてうなずきます。
「そのとおりです。これらの命令を組み合わせたものを紙に書いて、妖精のオペレッタに読ませます。すると、ゴーレムが指示通りに動いてくれるんです」
マキナ・アイ先生は紙のプリントを配りました。クラスメイト全員でゴーレムを取り囲んでいるので、右から左に紙の束をリレーして渡していきます。
プリントには上下に『はじめ』と『おわり』とだけ印刷されていました。その間は空白なので黒板の命令を見て、書き込んでいくのですね。
「簡単じゃん」
「空を飛ぶってのはないの?」
「攻撃は無いの!? パンチとかキック」
男子たちはすぐにそういうことばかり言います。ほんとうに子供っぽいです。
「これに、黒板の『命令』を書きうつせばいいのね?」
「先生! なにかお手本がほしいです」
もっともな意見に賛成です。私もいきなり書けと言われても、ちょっと困ります。シャープペンシルを片手に、周りの人と顔を見合わせます。
「今日は初めてなので自由に……! といっても困りますよね。難しく考えないで『教室のなかで自由に動かしてみよう』というテーマにしぼりましょう。まずは簡単なお手本をお見せしますね」
マキナ・アイ先生が手に持ったプリントを近くの机に置いて、さらさらとペンで文字を書き入れました。普通の日本語で、きれいな字です。
『はじめ』→『5歩、歩く』→『まわれ右、180度』→『3歩、歩く』→『しゃがむ』→『おわり』
ものの一分もたたないうちに書き終わりました。
矢印で次々と書いていくだけのようです。
「はい、こんな感じです。ゴーレムに動いてほしい命令を並べたもの、つまり『プログラム』の例です」
プリントを高くかかげて、クラスのみんなに見せてくれました。右に左にプリントを動かすたびに、金髪のポニーテールがゆれます。
「ポイントは、『歩く』には歩数を書く必要があります。でも、歩かせすぎると壁にぶつかっちゃいますね。それと『まわれ右』『まわれ左』には角度で曲がり方を指示できます。90度だと、直角に曲がりますし、360度だと一回転しちゃいますね」
クラスの皆も「なるほど」という表情でわかったみたいです。これなら私でもできそうです。
「先生、机にぶつかったらどうなるの?」
さっそく花園さんが質問をぶつけます。
「ゴーレムは命令どおりに歩き続けようとするので、転んだり、壊れたりします。そうならないように判断するための『障害物』という命令がありますが、それはまた後で説明しますね」
説明を終えると、先生は書き終えたプリントを妖精のオペレッタちゃんに差し出しました。
『なになに? ふむふむ……』
A4サイズのプリント用紙は、身長15センチぐらいの妖精さんには大き過ぎます。読み終えるまで持っていてあげなくてはなりません。
『かんたんだなぁ。こんなのでいいのかー?』
「えぇ、頼みますね」
マキナ・アイ先生は小さく「ぽん」と手を打ち鳴らしました。はじめ、の合図です。
すると妖精のオペレッタちゃんが、マネキンの頭の上で「てやっ」と念じました。するとゴーレムの『マユ次郎』がゆっくりと動き始めました。
「おぉ!」
「歩いた……!」
カシャン、カシャン……! と5歩進んだところで、180度回れ右。
さらに3歩進んで、その場にしゃがみこみました。確かに、紙に書かれたプログラムはこれで終わりです。
「簡単じゃん!」
「面白いね!」
拍手が沸き起こりました。
あっけない感じですが、確かにマキナ・アイ先生の書いたプログラム通りに動きました。
「先生を一階から三階まで運べるようにするのは大変そうですね」
夏帆さんが言う通り、そこまで教えるには沢山のプリントが必要かもしれません。
「うふふ、そこまで出来るようになったらいいですが……。今日は簡単なイメージを掴んでもらえれば良いですからね!」
「「「はーい」」」
みんな一斉に、それぞれのプリントに『命令』を書き始めました。
私も何か考えて、面白い動きをさせてみたいです。
杉田くんがマキナ・アイ先生に何かを聞いてから、プリントに書き加えました。書き終えた杉田くんが、妖精のオペレッタちゃんに紙を見せました。
『へぇ? いいよ、やってやるよー』
「たのむぜ」
ゴーレムの『マユ次郎』が動き始めました。コキコキと関節を鳴らしながら5歩いていくと、机の前で止まりました。
すると次に、腕を伸ばして机を持ち上げてます。そして90度回れ右。5歩あるいて別の場所に持っていって、下ろしました。
「荷物運びができた……!」
「な? 思ったとおりじゃん」
得意げな杉田くんのプリント用紙を見ると、机を持ち上げて運ばせる動作のようです。
『はじめ』→『5歩、歩く』→『とまる』→『机があったらもちあげる』→『まわれ右、90度』→『5歩、歩く』→『とまる』→『机をおろす』→『おわり』
「杉田くんが先生に聞いていたのは、目の前にあるものが、机かどうか判断する部分ともちあげた机をおろす部分の書き方です。ゴーレムを操る妖精さんは、物を見分ける事ができます。目の前のものが机か椅子か、判断することができるのです。それをうまく使いましたね」
「ははは、どうよ!」
私たちは、ふだん机を見たら「机だ」「椅子だ」って、一瞬で理解できちゃいます。
なんだかすごいような、すごくないような……?
「それって、すごいことなのかな?」
「コンピュータが物を判断するのは、実はとっても難しいのです。私たち人間や妖精なら簡単にできますが、コンピュータではそうはいきません。妖精の存在はその部分をうまく補ってくれるのです」
実はすごい子なのですね、妖精さんは。
「この部分をコンピュータの言葉に置き換えると、センサーや、判断するための人工知能……AI、エーアイと呼ばれるものになりますね」
皆はその後もいろいろな動きを試しました。ゴーレムをくるくる回してみたり、机と椅子を積み上げてみたり。中には壁にぶつかっても強引に進み続けようとするプログラムもありました。
「なぁ、ヒメ」
「ん? なぁに」
横でプリントに向き合っていたレンが、話しかけてきました。
「書いた『命令』どおり動くのはわかったけどさ、たとえば『命令』にない事が起きたらどうなると思う?」
「……ん? どゆこと?」
レンが何を言っているのかわかりませんでした。ゴーレムは『命令』どおりに動く。
プリントに書いたプログラムに沿って、動く。
それで良いのではないでしょうか。
「だからさ、歩いている途中で何かにつまずいたり、急に誰かがぶつかったりしたら」
「そんなの失敗して動きが止まるにきまってるじゃない。転んだり、倒れたりしちゃうだろうし……」
「でも、人間はちゃんと転ばないように踏ん張ったり、誰かが飛び出してきても避けたりするじゃん」
「それはそうだけど……」
それは人間だからできるのであって、ゴーレムには無理なんじゃないかなぁ。
あれ? でも、どうして人間は出来て、ゴーレムだと出来ないんだろう?
私はレンの変な質問のせいで、プリントを見つめたままペンが止まってしまいました。
<つづく>




