2

私は現在、Netlogo によるトラフィック シミュレーションに関する卒業論文に取り組んでいます。私のシミュレーションには、一定時間後の車両の駆動サイクルが含まれます。データ (車両の速度、時間、ギア、加速度に関する .txt ファイルの形式) をエクスポートし、MATLAB+Simulink の Quasi-Static Toolbox を使用して Drive Cycle データを解析します。ただし、Quasi-Static Toolbox にデータをフィードするたびに、燃料消費に関するプロットが表示されません。私のインストラクターは、私のデータは QSS Toolbox に対して十分に「クリーン」ではなく、MATLAB がプロットとグラフを表示するには「平滑化」する必要があると言いました。以下に画像を挿入しました。

ここに私のドライブサイクルデータがあります:

ここに画像の説明を入力

私がそれを実行するたびに、プロットはここに見られるように何も与えません:

ここに画像の説明を入力

これは、論文の以前の支持者の 1 人によるサンプル データです。彼のドライブ サイクルがスムーズで、ほとんど箱のようであることに注意してください。

ここに画像の説明を入力

私のインストラクターは、次の理由で MATLAB がプロットを提供しないと言っていました。

a.) ドライブ サイクル入力の数が不足している b.) データが十分に滑らかでない

速度、時間、ギア、加速度の 108000 pts 相当のデータがあるので、ここでは b.) の方が問題だと思います。もしそうなら、どうすればデータを平滑化できますか? Excel を使用しますか? どのように?

編集:負の数の平方根を取っているようです: ここに画像の説明を入力

4

1 に答える 1

1

問題が現在解決されているのか、それとも正確に何を解決したいのかを明確にしてください。

あなたの質問を仮定すると: 上の緑色のボックスのデータを下の緑色のボックスのデータのように見せるにはどうすればよいですか?

ここに方法があります:

データを平滑化します。データがx平滑化できるベクトルにあるとします

x_smooth = smooth(x)

ブロックごとに作成し、境界をどこに配置するかを決定します。たとえば、次のようにします。

lower = min(x);
upper = max(x);
treshold = mean(x);

今それを端に強制します

idx = x_smooth > treshold
x_smooth(idx) = upper;
x_smooth(~idx) = lower;
于 2012-12-21T13:27:08.340 に答える