SSブログ

SwitchでBASIC その3 [ゲーム欲 BASIC]

今回作ったプログラムについて説明します.自己満足ですけど.
  「拡張左手法」で迷路を探索するマイクロマウスのシミュレーターです.

メインプログラムは,SS$に指令を入れて呼び出すサブルーチンです.
  MAP0配列に迷路の答えが入っています.16×16区画の迷路.
  スタートとゴール位置はわかっているものとして,1区画ずつ進む.
  指令は,”F”で1歩前進,"R"/"L"で90度旋回です.進めないと”N”.
  壁の探索は,”S”で前の壁の有無;壁ありで”1”が返値になります.

<趣味画像 9760> 手動で動かすのはたいへんです
9760 迷路202008-13.jpg

手動で動かしてみて,メインルーチンの動作を確認しました.
  そして,指令を自動生成する部分が「拡張左手法」です.
  MAP1に認識した壁のDATA,MAP2に通過済み区画のチェック,
  MAP3に,その区画から出た方向を記録します.

<趣味画像 9761> 拡張左手法でゴールできました
9761 迷路202008-14.jpg

「左手法」ですから,左に壁がなければその区画に進むのが基本です.
  これだけでは,迷路の外周しか探索が出来ません.
  一度通った区画へ入ったときに(MAP2),同じ探索をしない(MAP3),
  そのルールを入れる事で,だんだん内側を探索して,ゴールに着きます.
  そのまま探索を続けてゴールからスタートへ戻ると,全面探索ができます.

<趣味画像 9762> 全面探索ができます
9762 迷路202008-15.jpg

実際のマイクロマウス競技では,全面探索しないで最短経路を見つけるので,
  そのプログラムも勢いで作ってしまいましたが,またの機会に.
  それにしても,BASIC処理も早くなりましたね.Switch優秀です.
  Wait を入れないで計算させると,32×32区画迷路が1秒もかかりません.
  探索歩数で比較しないと,探索能力は比べられないかもしれません.

<趣味画像 9763> 32×32区画迷路を最短経路計算法で探索する
9763 迷路202008-16.jpg

Switchは,ワンタッチで30秒動画や画面キャプチャーができるので,
  動画で探索の様子を見せたいのですが,このブログには重たいので,
  別のホームページで,迷路探索の特集をしようと思っています.
  迷路を動画で解説してYouTubeにしたり,迷路特集を電子本にしても良いな.

<関連記事>
3471 迷路シミュレーター504.jpg 平成27年4月8日 迷路探索シミュレーター A法その2
3441 迷路シミュレーター402.jpg 平成27年3月27日 迷路ルーチン 拡張左手法その3

最後まで読んでいただいて,ありがとうございます.
ほかの記事も読んでくださると,うれしいです.

Programming in BASIC to use the Switch (2020, No.3): Private Material Life.

nice!(24)  コメント(0) 

nice! 24

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

私的物欲生活

生活の中で,自分なりのこだわりで選んだ買い物.なぜ,これでなければならなかったのか.買い物してしまって後悔しません.無理に勧めません. お気に入りなだけです.

Private Material Life.