DensanWiki
プロコン
前回のエキシビジョンからどう変えるか
現状
・全通り探索
・計算量が酷い
・人間の意志の反映量が大きすぎる気がする
現在考えてる案
・荷物と荷物のルート探索(A*)をあらかじめ全荷物に対して行う
・GA使って巡回セールスマンを解く。
・できれば多数生成して、競わせた中で一番いいルートを選ぶ
が、面倒だから全通り探索の計算量を低減させて使うことになりそう。
相手の動きを読む?部分がまったく欠落してしまうけどね。
ま、どーせ運ですし。
青の所で戦わないと予選通過は厳しい か。
ルート探索精度に差があまりないからやっぱり運ですね。
簡単に言うと
とりあえず最初にいく目的地を決める
↓
最短でそこまでいく
追記:最初は遠い方がいいかも。最後に近場の荷物を拾う方が効率よさそう。
↓
着いたら荷物拾って次へ(ここから先はなるべく近い順に回った方がいいかもね)
追記:どうも障害物が多くなるとちゃんと考えないと遅くなっちゃうねぇ。。面倒だねぇ('A`)
↓
ループ
↓
荷物を全部回ったらゴール
(まだ荷物が余ってた場合そこまでいってもいい。ただそれで有利になるかといえば微妙)
こんな感じが一番処理も少なくてシンプルかつ融通のきくプログラムが書けるような気がする
まぁ結局は運も大事。
言語はJava。んーJavaがインターフェース作るの楽っ♪(Swing使用)
バグとか結構放置気味だけど、なかなか楽しめる。
大体三日位で書いてみた。(1000行弱)
ま、デバッグ兼ねて公開中
どんな迷路でもサクサク解くのでお試しあれ。(まぁフィールドのサイズは常識の範囲内で)
Java入れてないミジンコはこちらからダウンロードしてくれ
あなたと JAVA,今すぐダウンロード☆
Intneko
私的メモ
線形リストで保持してるもの:荷物。探索されたマス。
内部で距離の取得もやってる。
上記外で計算部で保持してるもの:プレイヤーの位置。開始位置。フィールド。最近のルート。別スレッドの有無~