2章 行ける場所ってどこだ?その1

ロボットのアルゴリズム2
ランナーのいる高さに行ける場合、そこへ向かう。
ロボットのアルゴリズム3
ランナーのいる高さに行けない場合、行ける場所から優先順位の高い位置へ向かう。

 よし待ってろ今行く。


アルゴリズム1(地続き)でなければ、これをチェックするのですが…
そのためには「ロボットが行けると思い込む位置」を知る必要があるわけです。

「ロボットが行ける場所」を理解するにはロボットが見ている範囲(視界)を理解する必要があります。
ロボットの視界は「ヨコ行ってタテ」で定義されます。
この横に見ていく範囲を「横視界」、
横視界内から上下に進める範囲を「縦視界」とします。
「行ける場所」は「縦視界」内の何ヶ所かになります。
→

「行ける場所」をすべて洗い出したら、その中にランナーの高さと同じ場所があるかで
どっちの法則で動くか決まります。


まず横視界から範囲を確認しよう

基本的には、ロボがヨコに行ける範囲が横視界になります。
例外もあるんで、画像とあわせて確認。

 壁があったらそこで横視界は終了
 はしごとバーは移動できる。金塊はブランクと同じ。
 穴があったらそこで横視界終了
 落とし穴はブランクと同じ。

横視界のまとめ
・ロボが横移動できる範囲が横視界。

縦視界の範囲も確認しよう

横視界内にはしごがあった場合、そこから上に縦視界がのびます。
横視界内に下に行ける要素(落下、バーから手を放せる、はしごを下りられる)があった場合、
そこから下に縦視界がのびます。

まず上から。
 ここから考えて、
 横視界内の上に行ける箇所をチェック!(はしごしかないね)
 上方向の縦視界は一段上がったところからはしごの上までできる。


上がわかったら次は下。
 ここから考えて、

 横視界内の降りられる箇所をチェック!

 そこからレンガかコンクリまで行ったら縦視界(下)完成。

(具体例)
 実例。左上のロボにとっての縦視界は…

 この5本。


1章へ  3章へ
トップに戻る