ロボットプログラマーをマスターする
TLDR: ロボットプログラマーは、プログラムを書くゲームです。プログラムを書き、ターン・左・前・右のステップをキューに追加し、実行を押してロボットが実行するのを観察します。リアルタイムでロボットを操作するのではなく、プログラムを書き、実行する前にロボットの動きを想像する必要があります。エラーが発生したときは、ステップごとにデバッグして修正するのではなく、再起動の信号としてではなく、デバッグのヒントとして扱う必要があります。
ロボットプログラマーの本質を理解する
ロボットプログラマーは、ロボットを制御するためのコーディングパズルです。ロボットをリアルタイムで操作するゲームではありません。代わりに、ターン・左・前・右のステップのシーケンスをプログラムに追加し、実行を押してロボットがプログラムを実行します。この直接制御からシーケンスの計画に移行するのが、脳トレーニングのポイントです。
ロボットは、特定の位置と向きでスタートし、ゴールマーカーはそのロボットの周りにある迷路の中にあります。壁は部屋と廊下を区切っています。ロボットをゴールまで導くプログラムを書くのが、ロボットプログラマーの主なタスクです。ロボットが壁に当たるとゲームは終了します。ターンは何度でも可能ですが、ロボットは壁に当たる前に前進する必要があります。
レベルが上がると、迷路は行と列が増え、ルートは長く複雑になりますが、必ず1つの解決策が存在します。ロボットプログラマーは、迷路を解決するためのプログラムを書くゲームです。
このゲームが鍛えるスキル
ロボットプログラマーは、3つの関連性のある認知スキルを鍛える。
シーケンスは、ステップを正確かつ論理的な順序で並べることです。各ステップは他のステップと相対的に正しい位置に来なければなりません。左にターンして前進すると、右にターンして前進すると異なる結果になります。ステップの順序は重要です。
空間的視覚化は、ロボットの位置と向きを想像する能力です。ロボットの位置と向きを想像するには、迷路、ロボットのスタート位置、向きを想像し、ターンごとにロボットを回転させ、前進ごとにロボットを廊下に進める必要があります。この想像力は、初心者にとって初期の段階で苦手な部分ですが、練習することで大幅に改善されます。
デバッグは、デバッグの仕事です。ロボットがクラッシュしたり、ゴールに到達しなかったりすると、プログラムをステップごとに読み、再現し、失敗の原因を特定する必要があります。ターンを間違えたか、前進を 1 つ多くしたか、コーナーにターンを忘れたかなどを確認する必要があります。この読み-計画-修正ループは、プロフェッショナルプログラマーが毎日行うことであり、ゲーム以外の分野でも役立つスキルです。
最初のプログラムを作る
最初は最短のルートから始めましょう。初級レベルでは、広い廊下と明らかなルートを持つ小さな迷路が含まれます。ゴールの位置とロボットのスタート位置と向きを確認してみましょう。
ゴールがロボットの前にある場合は、前進のステップのみで済みます。ゴールが右にある場合は、右にターンしてから前進します。ゴールがロボットの後ろにある場合は、2 つの左ターン (または 2 つの右ターン) を実行してロボットを 180 度回転させます。
初級レベルでは、Undo を積極的に使用してください。各ステップ (ターン・左・前・右) を追加するたびに、プログラムキューに 1 つのステップが追加されます。間違ったステップを認識した場合は、Undo を押してステップを削除するのではなく、Clear を押してからゼロから始めるのではなく、ステップを削除してから正しいステップを追加するのを繰り返します。これにより、実験をペナルティなしで行うことができ、各ステップのロボットの軌道に影響を与える方法を学ぶことができます。
実際のパスを想像してプログラムを作る。ロボットのスタート位置を迷路の表示にマークし、ゴールに向かって廊下を通って、ターンごとにロボットの向きを考慮しながら、実際のパスを描きます。この実際のパスは、プログラムを作るためのblueprintになります。プログラムキューに追加するステップは、パスをステップに書き込んだものです。
メンタル実行テクニック
ロボットがクラッシュしないようにするには、プログラムを実行する前にロボットの動きを想像することが重要です。各ステップをキューに追加した後、ロボットの現在の位置と向きを確認する必要があります。
例えば、ロボットが上向きにスタートし、プログラムが [右にターン、前進、前進、左にターン、前進] である場合、ロボットの動きを想像してみましょう。
- 右にターン - ロボットは右向きになります。
- 前進 - ロボットは 1 つ右に移動します。
- 前進 - ロボットはもう 1 つ右に移動します。
- 左にターン - ロボットは上向きになります。
- 前進 - ロボットは 1 つ上に移動します。
ロボットがゴールに到達し、壁に当たることなく移動することを確認した後、実行を押す必要があります。この習慣は、クラッシュを大幅に減らすことができます。
プレビュー-実行パターン。各ステップを追加した後、プログラムを最初から実行してみましょう。ロボットの位置と向きがわからなくなったり、向きがわからなくなったりしたら、実行を押してみましょう。実際の実行は、想像力と実際の動作の間のずれを明確に示します。これにより、デバッグのターゲットが明確になります。
位置と向きを 2 つ追跡する。ターン後は向きが変わりますが、位置は変わりません。前進後は位置が変わりますが、向きは変わりません。位置と向きを混同しないようにすることで、最も一般的な想像力のエラーを回避できます。
最も一般的なミスと修正方法
前進の距離を過大評価する。前進ボタンを 1 回押すと、ロボットは現在の向きに 1 つのセルだけ進みます。廊下が 3 セルある場合、3 つの前進ステップが必要です。距離を誤って計算すると、プログラムが不足したステップを実行したり、ロボットが壁に当たる 1 セル前に到達したりすることがよくあります。
方向を思い出す。ロボットは、現在の向きに前進できますが、向きを変えるにはターンする必要があります。前進を押すと、ロボットは直線に進みます。
方向のずれ。数回のターン後、多くのプレイヤーはロボットの向きを思い出すことができなくなります。ロボットの向きを明確にラベル付けし、ターンごとにロボットの向きを確認する必要があります。確信が持てない場合は、実行を押して実際の結果を確認するのを待ってください。
複数のステップを連続して実行する。15 ステップを 1 回に実行し、実行を押すのは、クラッシュを簡単に診断できないゲームです。複雑なタスクを小さな、検証可能な部分に分割することは、経験豊富なプログラマーにとってのベストプラクティスです。複雑なルートがある場合は、5 ステップごとに実行してみましょう。
長い迷路のための戦略
迷路が大きくなると、ステップごとに実行するのは実行不能になります。構造化された戦略が必要になります。
ウェイポイント方式。迷路を中間目標 (ドアや廊下の交差点) に分割します。最初のウェイポイントに到達するためのサブプログラムを作成し、確認します。次のセグメントを追加します。複雑なルートを小さな部分に分割することで、クラッシュが発生したときにデバッグが簡単になります。なぜなら、失敗したセグメントを特定できるからです。
ターンを最小限に抑える。ターンはステップとともに消費され、メンタルオーバーヘッドもかかります。可能な限り直進するのではなく、コーナーにターンしてすぐに戻るのではなく、コーナーにターンする必要があります。迷路によっては、蛇行するルートが最適ですが、多くの迷路では、直進するルートが最適です。異なるルートを試して、最初の試みで最も少ないターンを選択します。
ステップが少ないほど、ミスが少ない。2 つのルートがゴールに到達し、1 つは 12 ステップで、もう 1 つは 18 ステップで、短いルートはほとんどの場合、最初の試みで最も良いルートです。ステップが少ないほど、メンタルシミュレーションとデバッグが簡単になります。
新しい迷路のレイアウトを学習する。レベルが上がると、迷路が拡大します。迷路を拡大する前に、10 秒間で最も広い廊下と最も直接的なルートを特定してみましょう。視覚的に最も長いルートは、プログラムで実行するべきルートではありません。
クラッシュ後のデバッグ
ロボットがクラッシュしたときは、Clear を押してゼロから始めるのではなく、プログラムをステップごとに読み、クラッシュの原因を特定する必要があります。
クラッシュしたロボットの位置と向きを確認し、クラッシュの原因を特定します。クラッシュしたステップを特定したら、Undo を使用してそのステップと追加したステップを削除し、正しいステップを追加します。このターゲットされた修正は、ゼロから始めるよりも速く、空間的計画を学ぶことができます。
同じ場所で 2 回クラッシュする。ロボットが同じ壁に 2 回クラッシュした場合、迷路のレイアウトについて間違った仮定をしていることになります。迷路のレイアウトを確認するために、最小限のテストプログラム (2 つまたは 3 つのステップ) を実行してみましょう。
単一ステップの進捗。複雑なセクションに詰まったときは、1 つの前進ステップを追加し、実行を押すのを繰り返します。これは遅いですが、確実です。また、メンタル実行能力を直接鍛えることができます。ロボットの予測と実際の動作のズレを確認することで、空間的推論の改善の最速のフィードバックループになります。
你的練習スケジュール
初期セッション: ストリークの長さを気にせずに、レベルを完了し、実行を押する前にプログラムをメンタルシミュレートする習慣を身に付けましょう。クラッシュはデバッグの教材として扱いましょう。
メンタルシミュレーションが自然になる: ストリークの長さを伸ばすために挑戦しましょう。各レベルを前の試みよりも少ないステップで完了するようにします。これにより、ルートの効率と迷路の幾何学を考慮するようになり、ただしルートが機能するようにするのではなく、ルートの最適化に焦点を当てるようになります。
高レベルと大きな迷路: ゼロクラッシュの目標を設定しましょう。これにより、ゲームは単に試行錯誤のゲームから、空間的推論の実際のテストに変わります。ストリークが自然に伸びるように、精度よりもスピードを優先するようになります。
マスターのマイルストーン。ロボットプログラマーを完全にマスターするには、最初または 2 回目の試みでレベルを完了し、ロボットの動きを自信を持って予測し、メンタルシミュレーションでエラーが発生した場合はプログラムを修正する必要があることを認識する必要があります。
ロボットプログラマーは、忍耐力、視覚化の練習、方法論的な思考を重視するゲームです。各レベルを完了することで、シーケンスの計画と空間的推論の能力が強化されます。続けてプレイし、メンタルシミュレーションに信頼を置き、複雑さが増すにつれて脳が適応するのを待ちましょう。
ロボットプログラム
回転と前進でプログラムを組んで実行し、ロボットを迷路に通してゴールへ · レベルが上がるほど迷路は大きくなる
今すぐプレイ - 無料アカウント不要。あらゆるデバイスで動作。