DATE: --/--/--(--)   CATEGORY: スポンサー広告
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
page top
DATE: 2016/11/22(火)   CATEGORY: 未分類
2016年大会シーズンまとめ



2016年の大会シーズンまとめです.
今年はハーフサイズ競技に参加させていただきました.

今年のシーズンを語るには某赤いマウスの存在が大きいですね.

東日本大会
第5位 ベストタイム 17.273
特別賞シード権

Jr.のデビュー戦でした.
9月初めのころはまともに直進もできない子でしたが,インターンから帰ってきてから
怒涛の10日連続終電追い込みでどうにか間に合いました.
斜め走行を実装する余裕がなく,大回り最短のみの走行でした.
大回り最短のみの走行でしたが5回完走して,特別賞をいただきました.
それと,上位陣の方たちがシード権を蹴られたため自分のところまで降ってきました.
このシード権は今シーズンのモチベーション維持につながりました.
このころは完全にJr.先輩でした.


東北大会
第6位 ベストタイム 9.899

毎年恒例0泊4日弾丸ツアー.
精神と時の部屋にて斜め走行を会得したが大会では失敗.
精神と時の部屋での斜め走行がこちら.




まだJr.先輩.


学生大会
第4位 ベストタイム 7.091

この大会ではほとんどMAXで走ったのでいうことはないです.
ただ言えることはこれだけです.
Jr.後輩になりました.(じゅにあ先輩がいなければ入賞でした)
これからJr.後輩ライフが始まりました.


北陸信越大会
第2位 ベストタイム 5.019

Jr.の初入賞でした.初めて経路導出に手を加えてみた大会です.
直線優先歩数マップを作成し,昨年考えた探索アルゴリズムを実装しました.
がしかし,探索はバグがあり走りたい経路が出ませんでした.
また,迷路路面によって減速時に制御が発散してしまうことも発覚しました.
0.016秒差で1 kgのお米を勝ち取りました.カレーパーティ楽しかったです.
じゅにあ先輩がいなければ優勝してました.
後は,サバ過ぎて鯖になったことくらいでしょうか.

北信越のときのパラメータのまま全日本を迎えることになりました.





全日本大会
第8位 ベストタイム 18.673
団体特別賞

初の32×32の迷路.長い斜め直線が特徴的な迷路でした.
1走目の探索は途中で失敗してしまいました.やはり,32×32探索は難しい.
2走目は途中で迷路データ壊れていたためかスタートだけ切って死にました.
3走目は往復足立法での探索でした.来年こそは自分自身の探索で探索完走したいですね.
4走目はターンが速いパラメータで走ってみたが失敗.
5走目はぶつかりながらも最後に壁切れ判定待ちのおかげでぎりぎりゴールできました.

最初に西側から中にに入ってくるルートを選ぶマウスが多かった印象です.
探索が走れていれば長い斜めのルートを選んでいてくれていたと思うと,Jr.が長い斜め走っているところを見たかった…

まあ結局Jr.は南ルートを選んだわけですけど.大会後に迷路データを吸い出してみたのですが,
壁を読み間違ったわけではなくしっかりと南回りを選んでいてくれた様子.

全日本2016壁

全日本2016最短


これは壁の位置に歩数を置いた斜め対応歩数マップに前回の記事で書いた直線優先を適用した,
斜め対応型直線優先歩数マップです.わずかに南回りの方がコストが低くなっていました.
他の参加者さんの走りをみるに西回りのほうが速いんじゃね?とも思わなくもないです.
来年以降もアルゴリズムの強化は頑張りたいですね.
最後の大会までもじゅにあ先輩の背中を一番近くで見ることになるとは笑.


とこのような流れで2016シーズンを終えたわけですが,
昨年よりも体力的に厳しい戦いが多かったけれど楽しかったです.
やっぱり,マイクロマウスは楽しいですね

今年も多くの人たちと関われて楽しかったです.
大会運営の皆様をはじめ,助けていただいた方たちにはお礼を言わせていただきたいです.
本当にありがとうございました.

大会に出るたびに上がりつづける工芸大さんへの好感度.

最後に全日本大会で苦しくも走りきったJr.の雄姿をどうぞ.


[広告] VPS

スポンサーサイト
DATE: 2016/11/08(火)   CATEGORY: 未分類
フレッシュマン詐欺候補たちへ2

今回は既知区間加速編について更新しよう!と思っていたのですが,
止めました.理由は主に2つです.

① "既知区間加速はかっこいい"が16×16迷路ではその効果は薄い
② Mice guestのドライブに冬の技術交流会で作った簡単な資料をあげてある


今回は今年実装をしたものですが,
フレッシュマンでも簡単に実装できる直線優先歩数マップの作り方を紹介したいと思います.

直線優先歩数マップとは何かというと,
Mice Wikiに記述を見つけたためこちらを参照してください.


フレッシュマンの人たちは足立法ベースの最短経路導出がほとんどだと思います.
しかし,様々な地区大会を経て,

あっちの経路の方が直線多くて良いタイムが出たのに><

という経験も多いのではないかと思います.
そこでこの問題を解決しましょう!(斜め走行はしりません)
これを簡単に解決できるものの一つが直線優先歩数マップです.


今回紹介するのは自分なりの実装なので,Mice Wikiのやり方とは少し変わります.
参考にしてもらえればと思います.
まずは,準備です.

① 歩数マップを16 bit変数に拡張する.
(unsigned char→unsigned short,もしくは,uint8_t→uint16_t)

従来は区画の総数で十分な数でよかったのですが,
重みをつける以上255以上の数になってしまいます.

なので変数の型をより大きなものに変更しましょう.
これで,最大値は65535までとれるようになりました.
32×32の迷路にも対応できますね^^


準備は以上です.それでは直線優先歩数マップを作製していきましょう.
ただ曲がるだけに重みをつけるなら,歩数マップの展開のときに方角の情報を設ける
もしくは,一度展開した歩数マップを簡単に解析する関数があれば,
Mice Wikiの通り簡単にできますね.

しかし,この方法だと長い直線を探すのが面倒そうだと思い,
自分は別の方法をとりました.それを紹介します.

簡単に言うと,"歩数マップの展開の順番を変える"です.

Mice Wikiの迷路を例に説明します.
従来の歩数マップ展開では,以下の順番に次の歩数を決めています.
従来の展開順番

自分の方法ではこういう順番に展開を決めます.
新しい展開順番


違いとしては,従来のゴールを中心に1マスずつ順番に展開していくのではなく,
基点となるマスから4方角の直線状に突き当りがあるまで,
歩数マップを展開していくという点です.
次の基点は左右の分岐がある点のみ候補にします.

この方法なら長い直線を簡単に見つけ出せるかなと考えました.
北に伸ばす例として以下にソースコードを載せます.(見にくいのは許して)
北方向の展開


基本は1歩目は固定として,直線が長くなるにつれて歩数を増やす量を調整しています.
これを残り3方角に伸ばすだけです.
マウスや走行パラメータによって,曲がり角のパラメータや直線減少量を調節してあげると
よりいい経路が得られるかもしれません.
直進優先歩数マップ


これで簡単に直線優先をした経路が見つけられるようになると思います.

ではでは

Copyright © うむ夫の歩み. all rights reserved.
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。