これは追加学習のためのオプションレッスンです。
- アルゴリズムとは何かを学ぶ
- アルゴリズムを作る練習
このレッスンのアクティビティ:
アルゴリズムとは何か?
北米で育った子供たちの多くは、ピーナッツバターとゼリーのサンドイッチが大好きです。ジョナとエヴァンが父親のジョシュにサンドイッチの作り方を教える様子をご覧ください。
出典: “Learning about Artificial Intelligence: A hub of MIT resources for K-12 students”, MIT Media Lab
ビデオの中で、父親であるジョシュは、簡単なステップ・バイ・ステップの命令を受けない限り、何もしません。コンピューターと同じように、彼は正確で的確な指示しか理解しないのです。
ジョンナとエヴァンは父親にサンドイッチを作るアルゴリズムを教えましたが、結果は散々でした。
アルゴリズムとは、段階的な命令の集合のことです。コンピュータに何かをさせるには、アルゴリズムを与える必要があります。
Technovation Girlsでは、モバイルアプリを作るためのアルゴリズムの書き方を学びます!
誰かに従ってもらうために、明確な指示を書く練習をしましょう。
Tip
ベストプラクティス 課題をスモールステップに分解するよう生徒を励ます。これがコーディングへの第一歩であることを思い出させることで、生徒を興奮させ続ける。
オプションのアクティビティピーナッツバターとジャムのアクティビティを生徒と一緒に行う!
もっと背景を:ヨーロッパの学校では、幼い子供たち(4~5歳)にコンピューター・サイエンスを教える方法を実験していたが、誰とでもできる本当に楽しい活動だ!
彼らは、コンピューターは賢くないということを説明したかったのだ。コンピュータは非常に速く(そして間抜けな)機械であり、私たちがプログラムして指示したことは何でもする。コンピュータのように振る舞い、子供たちがコンピュータや教師にPB&Jを作るように「プログラム」するのだ。正しくやれば、これはとても愉快なことだ。なぜなら、目標は命令をできるだけ文字通り受け取ることだからだ。生徒が最初に「パンにピーナツバターを塗る」と言えば、教師/コンピューターはまず当たり前のことをするのではなく、文字通りのことをするだろう。
ビデオ例がある こちらをご覧ください。
生徒への質問他に、アルゴリズムが必要なゲームはありますか?人の注文を聞くダイナーゲームを考えてみよう。まず肉を焼いて、野菜を切って、皿に盛りつけます!オーバークック』みたいにね!アルゴリズムを使った現実のゲームは他にある?ルービックキューブはどうでしょう?四角を好きな場所に移動させるまで特定のパターンを繰り返す、それがアルゴリズムだ!
メンターTipsは、AmeriCorpsから提供されたものです。

アクティビティ1:アルゴリズムを書く
アルゴリズムアクティビティには2種類あります。どちらか一方でもいいですし、両方やってもいいです。最初のアクティビティは体を動かすアクティビティ(ダンス!)なので、チームが直接会ってミーティングをする場合には良い選択肢です。バーチャルでミーティングをするのであれば、2つ目のオプションである描画アクティビティを試すとよいでしょう。どちらのアクティビティもクリックすると説明が読めます。
ダンシングアルゴリズム
- チームメンバーの1人がダンサーを志願し、部屋を出てください。
- 他のチームメンバーはビデオを数回見ます。
- そして、ダンサー以外のメンバーは、ダンサーが従うべきアルゴリズムを書き出します。
- そして、自分のアルゴリズムのステップだけを使って、ダンサーに動きを "教えます"。
- ダンサーにビデオに合わせて踊ってもらい、どれだけ近づけたかを確認しましょう!
ボランティアダンサーが部屋を出ている間に、他のチームメンバーがビデオ(20秒のクリップ)を見て、ダンサーが踊るステップを書き留めます。
反省!
アルゴリズム作家のために
- 言葉だけで指示を伝えることをどう感じましたか?満足でしたか?不満でしたか?その理由はなんですか?
ダンサーの方へ
- 指示は従うのに十分明確でしたか?簡単でしたか?難しかったですか?その理由はなんですか?
描画アルゴリズム
- 各チームメンバーは、他のタブにある図形から1つを選びます。選んだタブをクリックするだけです!
- タブを開いて図形を表示し、その図形を描くアルゴリズムを書きます。
- そして、自分のアルゴリズムを他のチームメイトに渡します。
- もう一人のチームメイトは、図形自体は見ずに、あなたのアルゴリズムに従ってその図形を描きます。
- 二人の出来栄えと、活動中に感じたことを振り返ります。
振り返り
これで、アルゴリズムを作成するために何が必要かを理解していただけたと思います。モバイルアプリに何をすべきかを指示する独自のアルゴリズムを作成します。

主な用語のおさらい
- アルゴリズム- 何かを行う方法を説明するステップ・バイ・ステップの指示
追加リソース
アルゴリズムとは何かについてもう少し詳しく知りたい方は、こちらのビデオをご覧ください。