2016-03-30 1 views
1

私はVEINS 4a2を使用しています。 TraciDemo11.ccからの1つの通常のアプリケーションと、それを修正したもう1つのアプリケーションです。 2つの異なるアプリケーションをランダムに50ノードに割り当てることは可能ですか?例えば。 * .node [5..20] .applType = "TraCI"と "Modified traci"から?各シミュレーション実行において、各ノードは異なるアプリケーション実行を有する。omnetpp.iniで無作為に50ノードに2つの異なるアプリケーションをアサインすることについて

ありがとうございます。

+0

なぜあなたはそれらをランダムにお尻にしたいですか? '.node [0..24] .applType =" Application1 "'と '* .node [25..49] .applType =" Application1 "'を割り当てるだけでは不十分ですか? – floxyz

+0

私は以前と同じようにしてきましたが、実行ごとに同じシミュレーション結果が得られます。異なるアプリケーションで異なる結果を得るには、各アプリケーションとノードの範囲を手動で変更する必要があります。 30回のシミュレーションを実行しなければならず、それぞれの実行で異なる結果が得られるはずです。いくつかのノードには通常のアプリケーションを実装し、他のノードにはアプリケーションを攻撃したいが、攻撃ノードはランダムに選択する必要がある。 –

答えて

3

:オペレータは、ノードの50%にAPPL1を割り当てるために使用することができる:各ランは、ランダム関数のために異なるシードを受信するよう

**.applType = uniform(0,1) < 0.5 ? "Appl1" : "Appl2" 

これは、各ランのために異なる割り当てを作成します。

+0

ありがとう@ルディ、それは私が探しているものです。しかし、同じシミュレーションを繰り返すたびに、各ノードに同じアプリケーションが割り当てられます。 ** applType = uniform(0,1)<0.3? "Appl1": "Appl2"を数回実行すると、同じノードが同じアプリケーションを使用していることが示されます。ランダムな割り当てではありません。再度、感謝します。 –

+0

はい。それが意図された動作です。 OMNeT ++シミュレーションは繰り返し可能です。同じシミュレーションを実行するたびに、同じランダムシードが得られ、同じ順序で同じ乱数が生成されます。デフォルトでは、シードはコマンドラインからシミュレーションを実行するたびに同じ「実行番号」から生成されます。あなたは、マニュアルからの "パラメータ研究"に少し慣れておくべきです。 – Rudi

0

静脈4.3からは、異なるSUMO車種に異なるOMNeT ++モジュールタイプを割り当てることができます。したがって、Veins 4.3にアップグレードし、ランダムな車種を使用するようにSUMOを設定すると、望ましい結果が得られます。

関連する問題