Commit ae27301e authored by TLauster's avatar TLauster
Browse files

TargetDistribution

parent 92ad3bb1
package org.vadere.state.scenario;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class TargetDistribution {
public TargetDistribution(){
}
private double randomCalc() {
Random rand = new Random();
  • @hm-tlauster Wir brauchen im Vadere Reproduzierbarkeit daher dürfen wir keine Radom Objekte erzeugen ohne den einen einheitlichen Seed für diese Simulation. Siehe Kommentar von wo du das Ramdom Objekte her bekommst.

    Edited by Stefan Schuhbaeck
Please register or sign in to reply
return rand.nextDouble();
}
public List<Integer> returnTargets(List<List<Integer>> targetIds, List<Double> distribution) {
double randomNumber = randomCalc();
double tmpSum = 0;
for (int i = 0; i <= distribution.size(); i++) {
  • @hm-tlauster Wenn List<Double> distribution keine Elemente hat (size = 0) wird <= ein NullPointer exception geworfen.

    Edited by Stefan Schuhbaeck
Please register or sign in to reply
tmpSum += distribution.get(i);
if (randomNumber < tmpSum) {
return targetIds.get(i);
}
}
return null;
}
//targetIdSample: [ [ 10, 20, 21 ], [ 11, 1, 2 ], [ 32,1] ],
//distributionParameters : [ 0.3, 0.1, 0.6 ] }
//für eine UniformDistribution würde das bedeutet mit WSK 0.3 erhalten Pedestrians Liste [ 10, 20, 21 ] mit WSK 0.1 [ 11, 1, 2 ] und mit WSK 0.6 [ 32,1].
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment