Omnet++,Veins,Sumo - How to get CO2 emission data for a number of vehicle as a whole? - omnet++

When using omnet++ to get CO2 emission, the data is given for each node(vehicle) seperately. Is there a way to take the data for a number of vehicles or for the whole simulation as a whole?

The functions you are looking for are covered in section 12 "Result Recording and Analysis" of the OMNeT++ manual https://doc.omnetpp.org/omnetpp/manual/#cha:ana-sim. It explains how you can merge multiple results into one.

Related

Percentile values in dashboard are varying with the order of data in the input CSV

We have a use case where we are merging CSV files from two different, independent JMeter instances and using the combined CSV file to generate the dashboard. While merging two files, there is a question about the order of the data points in the CSV and how it impacts the final dashboard. To test it out, I created two CSV files with the same data but one where the data is in increasing order of timestamps and the other is in decreasing order and compared the Response Time Percentiles Over Time (successful responses) graphs.
From what I understand from Kth select algorithm used for percentile calculation, if the input data set contains of the same values, irrespective of the order, the output should be the same every time. In JMeter, the input data set is controlled by the jmeter.reportgenerator.statistic_window property.
So, my hypothesis is, if the statistic_window is large enough to hold all the samples for a given time-granularity window, the output graphs should be 100% identical but that doesn't seem to be the case. I generated graphs with a statistic_window of 100 million which is far more than the number of samples in the entire CSV file and still, the graphs are different from one another, even if it is by a small percentage.
I like to understand if my assumptions are wrong or if there is a bug in JMeter that I need to search for.
Turns out there was a bug in JMeter which I was able to submit a patch for. For more details: https://bz.apache.org/bugzilla/show_bug.cgi?id=65446

Time series based features for binary classification

Is it possible (and how?) to provide time series for binary classification in H2O.ai's Driverless AI? I have dataframe that looks like this:
ID
Status/Target [0/1]
TimeStamp for events that happened on given ID, in last 90 days
Details of those events (category, description, values, etc...)
Ideally what i want is to build a model that predict status for given ID, based on provided history of events.
For H2O's Driverless AI, you can use it out of the box for time-series modeling. See this section. You need to provide the "Time Column" as your TimeStamp and add ID to your "Time Groups Column".
If your target column is 0s or 1s, then it should automatically identify it as binary. If you not, you can toggle it from regression to binary classification.

How to create/generate vehicles from veins instead of SUMO

Currently, I am generating vehicles from SUMO and importing into veins. However, now I want to use large number of vehicles (from 100 to 1000) and I want their random generation (e.g., random start time and random speed).
Can anyone help that i) how can I create/generate vehicles from veins instead of SUMO? and ii) how to randomly select start time and speed of vehicles?
Best Regards,
Yasir
This is what https://github.com/sommer/veins/blob/veins-5.1/src/veins/modules/mobility/traci/TraCIVehicleInserter.ned was designed for. Whenever the number of active vehicles in OMNeT++ is less than a configured number, it starts a new vehicle using one of the existing route definitions.
You can use python to generate route files with random seed/random start time.
Refer to runner.py file in https://github.com/eclipse/sumo/blob/master/tests/complex/tutorial/traci_tls/runner.py and to the tutorial in https://sumo.dlr.de/docs/Tutorials/TraCI4Traffic_Lights.html

how can I find count of lanes in a road on veins?

For my simulation I want to find out the count of lines in a single road. I search sumo and viens and there is nothing there. I can retrieves all lanes count in map but what about lanes(lines) in a single road?
You can simply parse the sumo network. It is a quite straightforward XML file. For your specific question there is even support in the sumolib which is a python library coming with sumo.
net = sumolib.net.readNet("netfile")
edge = net.getEdge("edgeID")
numLanes = edge.getLaneNumber()
You can also look here: http://sumo.dlr.de/wiki/Tools/Sumolib

Several sensors - noise filtering algorithm needed

My software receives information from several sensors. The number of sensors is not fixed - they can be added and removed, each sensor one has its own unique identifier. Sensors send data irregularly - they can keep silent for weeks or push data every second. Each sensor generates a value from a fixed set of values ​​- so sensors are discrete. My program logs each message from each sensor into an SQL database table (sensorId, time, value).
The task is to filter the information. I need to select only one record from this log, which I'm considering to be the actual information. For example, if I get the latest record from a single sensor, which says that value is A, but before it 10 different sensors told me that the value is B, then I shall still consider B to be the actual information. At the same time the problem is not just the usual noise filtering, because if there was one sensor which told me for a month every second that value was C, and then five sensors recently tell that in fact the value is D, I shall immediately consider D to be the actual data despite long history - I want to say that the number of independent sources also must have weight.
So, I think I get a kind of a function of two variables - time (ageing) and the number of unique sensors in the moment of time. So, I think, I must somehow calculate the weight of each record and then just select the one with the biggest weight. And I suppose that to calculate the record weight I should use not only the information from current record, but information from all the previous ones.
I need some help with the algorithm. Maybe there is actually some well-known solution which I'm not aware of?

Resources