詳細データ(Solver出力)の見方 Solverの出力は各マップの詳細解析データの部分とそれをサマライズしたサマリデータの部分に わかれています。 ◇マップ詳細解析データ (例) id mapsize maptype Tnets etime count MOVEs PUSHes --- ----------- -------- ------- ---- --------- ---------- ---------- 101 [17*19(21)] N*G 15858 / 77s Solve( 1) 1161 moves 350 pushes (続く) (続き) m=7,AR=2,SG=0,B/G= 0,gGT=4,Node=(1,5,13),GPC=(1,0,0) id : nnn マップの識別番号。通常は1−306の数字です。 mapsize :[ m*n(k)] マップの大きさ(たて:m、よこ:n)と荷物の数(k) maptype : s,N,G,*の組み合わせでマップの形状を表示 G : ゴールノード(ゴールを含むノード) G*: 複数のゴールノード N : ノーマルノード(ゴールを含まないノード) N*: 複数のノーマルノード s :(Separated) ゴールに荷物が積みあがったとき、領域が分断された状態になるマップ (人の移動もできない状態のもの) x :(未実装) 領域が分断される点はsと同じだが、人の移動は可能なもの (意外とこのタイプが多い) 私のSolverは、NG,N*Gを中心に解法論理をくんでいる。 Tnets : Tnet(展開した局面)の数 探索の範囲をみる目安として表示している aliveによる切り捨てられた局面はカウントしていない etime : 実行時間(秒) 通常は300秒でタイムアウトになる(指定により時間延長が可能) count : Solve( n) これまでに解けたマップの数 歩数 : nnn moves 参考までに出力している。Solverの論理とは無関係 手数 : xxx pushes これも参考データです ここまでは、基本的に高橋さんのSolver出力と合わせているのでわかりやすいとおもいます。 以下の情報は内部の制御情報ですので分かりずらいとおもいますが簡単な説明をしておきます。 m=α : 局面を展開した回数。マクロ機能(togoal,highway)も1と数える。 探索の深さを示す重要な指標。 AR=n : ゴールの順位つけ、荷物とゴールとの対応つけ等がどのレベルまでできたかを 示す指標(GPorderingの結果) n =0:すべて失敗した(ほとんどgiveup) 1:ゴールの順序つけしかできなかった 2:標準の割り当て(荷物とゴールの対応つけ)が成功した (勿論、ゴールの順位つけもできており、最良の状態) 3:代替の割り当て処理が成功した(2が失敗したがリカバリできた) Solverとしては、AR=2,3が望ましい状態 SG=x : SG(SecretGoal:狭義のストック)と認識した場合の表示 x=0:SGではない(通常のマップ) 1:SGと認識したが解析処理は失敗した 10: SGと認識して解析処理を実行した B/G=n : ゴール上にある荷物の数(じゃまものになりやすいので対策が必要) gGT=n : goalGateの数(説明は省略:簡単には説明できない) Node=(n1,n2,n3) : ノードの数(今はまだ使用していない) n1:ゴールノードの数 n2:ノーマルノードの数 n3:パス(幅1の狭いノード)の数 GPC=(m1,m2,m3) : ゴールの形状を分類したもの(GPclass) m1:クラスタ(GPが固まりになっているもの)の数 m2:dense(1間とびで密集しているもの)の数(格子点、市松模様など) (格子点、市松など) m3:scatter(ばらばらに点在するゴール)の数 ◇サマリデータ (例) ====== summary ======= Total OK AR(0) 20 1 AR(1) 170 96 AR(2) 94 64 AR(3) 22 13 Sep 26 4 B/G 104 46 AR2fail 79 - SGtry 39 13 SG 20 1 noEXE 17 - Totalは、解けたかどうかに関係なくすべてを集計 OKは解けたものだけについて集計している AR(n) : AR=nを集計したもの。 Sep : maptypeでsタイプと表示されるものの集計 B/G : B/Gが0でないものの集計 AR2fail : AR2レベルの割り当て処理が失敗したものの数 (AR3,AR1,AR0の順にdegradeしていく) SGtry :SGの解析がうまくいって、探索処理を実行できたもの SG :(言葉が悪いので変更予定) SGの解析に失敗したもの noEXE :SGの結果、探索をとりやめたもの(戦わずして負け) 小さなマップは探索を強行する