未探索区画では,毎回最短経路を計算しています.(少し無駄です)
実際のマウス競技では,まだ改良が必要です.
でも,BASICのわりには処理が速く,ピコピコ軽快に進みます.
<趣味画像 3468> 3歩進んで戻る
3歩進んだ区画で最短経路を計算し直すと,戻って右へ進む.
迷ったら,壁が無いものとして最短コースを求め直します.
解ける迷路なら,必ずゴールへ到着します.
「求心法」というアルゴリズムも別にありますが,
ゴールの位置が中心とは限らず,探索には使えません.
<趣味画像 3469> ゴールまで1回目到着
ゴールに着いても,そこから目的地を切り替えて,
最短コースでスタートを目指すことで,
別の最短コースの可能性を探れます.
迷路の端にあるスタートの方が,迷いにくいことが多いはずです.
<趣味画像 3470> スタートに戻ってみる
スタートに戻れても,まだ「最短コースが確定していない」と判定されれば,
もう一度ゴールを目指します.
1回の試走で,最短コースを確定させることができます.
<趣味画像 3471> 行き来しているうちに最短確定
迷路の全面探索をするまでも無く,
ここまで探索すれば,最短が求まるようです.
もちろん,実際のマウス競技では,
斜め走行や,直線加速も考慮しての最短コースを求めます.
マウスの走行の正確さが,勝敗を分けます.
次回は,プログラム公開です.
<関連記事>


最後まで読んでいただいて,ありがとうございます.
ほかの記事も読んでくださると,うれしいです.
I make the maze program in Puchikon (A-No.2): Private Material Life.