Darkside(リンクエラー修正しました)

2016年11月11日(金) 21:44

まだまだバグあり

 またしても、鬼門の S-JET 最適化が始まった。

 直線部分はトラブルが起きないはずだが、スクリプトが出力した解がおかしい。第2周期が内部速度 2304 に戻っていないのだ。
 見て見ぬ振りをして右旋回最適化を走らせてみたものの、先送りしてもいずれ修正せねばならないのだから、やはり今のうちに調査する。

 ガードビームに接触させて減速を強化するパターンは、連続接触が4フレーム・3フレーム・2フレームの3通りある。それとは別に、全く接触無しでのパターンも。
 それらのうち、接触無しはミュートシティーで実績がある操作パターンである。また、連続4フレームと3フレームに関しても、既存ラップでの動作実績がある。だが、2フレームのパターンだけは、理論上のコードであって動作実績がない。
 今回謎の速度不整合を発生させたのは、まさにその2フレーム連続接触パターンだ。

 その結果、どうやら単純な計算ミスがあったようで、ブレーキを掛けるタイミングが3フレーム早くなっていた。
 修正してスクリプトを動作させると、第2周期にはガードビームとの接触減速解が存在しないと判明。接触無しのパターンが採用された。

 これで一件落着と思いきや、第3周期もおかしい。
 第3周期は、実績のある4フレーム連続接触のパターンである。しかし、もう直線部分の終了が近いので、最後の方の操作をカットして解が出力される。その解を引き継いでも、想定したような速度変化にならない。

 半端なところで解を出力するのは、次のスクリプトにリレーする都合である。だが、ここまで動かして来て、直進最適化の後はすぐ右旋回全数探索にブチ込むのがベターであるという感触を強く持った。作ったばかりの右旋回全数探索スクリプトでは、人間が開始タイミングを手動調整する必要がある。それが嫌なのだが、S-JET 最適化は複雑過ぎて、どっちみちフルオートは困難。
 人力調整するのであれば、操作をカットせずに本来の解を出力しておいた方が分かり易い。

written by higashino [ゲーム] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]

この記事へのトラックバックPingURL

Comments

TrackBacks

Darkside(リンクエラー修正しました)

Generated by MySketch GE 1.4.1

Remodelling origin is MySketch 2.7.4