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

2016年10月26日(水) 20:50

また曲がれない

 1周目(2周目すぐ)は動作したスクリプトが、2周目(3周目すぐ)には動作しない。

 想定済みの事態とはいえ、初期状態が少し変わっただけで自動運転は失敗する。手続き型アルゴリズムでクルマをマトモに走らせるのは、難しい。

 S-JET 最適化スクリプトその1の最後は、直進部分を除外して結果を出力する。
 スクリプトその2では、まず直進から開始することで削除した走行を補う。
 そのように作ったのだが、直進突入で即座にブレーキが必要という訳じゃなかった。

 解が出力された状態から直進すれば良いのは間違っていないが、ブレーキは1フレーム遅らせて掛け始めないと内部速度が2304に戻らない。
 ここをキッチリと考慮すれば、直進のみで無事に速度が戻る。スクリプト2も、予定通りに動作するようになった。

 だが、スクリプト2が右コーナーを曲がり切れない。

 思い切りアウト側に膨らんだ走行ラインを取ってしまう。

 1周前に比べると、今回はスクリプト1の終了位置が手前になっている。そのままスクリプト2を動かすと、コーナーリングが早過ぎるのだ。最初にキツく曲がり過ぎるために、後半の走行ラインが苦しくなってアウトに膨らむ。
 1周前はたまたま、ちょうど良い開始位置だったようだ。

 開始位置が異なっても、適切なタイミングでコーナーリングできるスクリプトでなければならない。
 前周は、たまたまうまく行っただけだった。その事実が、発覚した。

 初期条件が少し違うだけで動作しなくなるスクリプトの多いこと多いこと。というか、動いてくれる方が少ない。この厄介さが面白くもある。単純作業になったら、やっててつまらない。趣味として楽しむのに、適度な難易度だ。

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