SeaGateロボット研究室

マイクロマウスやNHKロボコンなどに参加する大学生のロボット製作日記。HDDとは関係ありません。

しみゅれーたーの準備

 

全日本大会の敗因を考えてみるとやはり探索不足にあるでしょう。今回の大会ではスラロームの調整に時間を取られ、探索のアルゴリズムを考える時間がほとんどありませんでした。どんなにターンや直進の速度を上げても、最短経路を通らねば意味がないと身に染みて感じた次第です。

そこで次の大会までに迷路シミュレーターをつくり、探索アルゴリズムにこだわりたい。

まずC#で作ろうとしたのですが、思いのほか苦戦しています。それにマウスのプログラムをそのまま持ってこれるようにC(C++)で作成したいところ。

今、大会後の懇親会で聞いたDXライブラリに興味を持っているのですが・・・どうなんでしょうか。

いろいろと調べてみる必要がありそうです。

 

ところで、実は7月くらいにすでにシミュレーターを作っていました。

Processingというソフトで描いたのですが、実際にマウスのプログラムを始める前のことなので、わりと変なことをやっています。

f:id:N_SeaGate_Mouser:20151201192454p:plain

[ ↑ (歩数的に)最短経路を導出できる。ハーフには未対応 ]

 

例えば、迷路情報の記憶についてですが、

壁の位置 0bit:上 1bit:右 2bit:下 3bit:左 1:壁有り 0:壁無し 

壁の探索 4bit:上 5bit:右 6bit:下 7bit:左 1:済み 0:未探索

とはせず、15x16の配列を"行"と"列"の2つ用意して記憶していました。

 

また、いかにも斜め走行しそうな線が描いてありますが、当時はななめ走行という方法すら知りませんでした。この線はマスとマスの間にノードをつくり、ただ連結しただけです。

 

いろいろ馬鹿なことをやってはいますが、迷路情報の記憶だけは悪くない方法だと思っています。実装するのもいいかも。夢が広がります!