vadere issueshttps://gitlab.lrz.de/vadere/vadere/-/issues2018-10-10T17:13:30+02:00https://gitlab.lrz.de/vadere/vadere/-/issues/148TopographyCreator: translation2018-10-10T17:13:30+02:00Zoennchen, BenediktTopographyCreator: translationIt should be possible to translate the whole topography to a new origin (x,y).It should be possible to translate the whole topography to a new origin (x,y).Zoennchen, BenediktZoennchen, Benedikthttps://gitlab.lrz.de/vadere/vadere/-/issues/145Implement an OpenStreetMap to VADERE topology converter (OPMOPS)2019-02-28T10:27:26+01:00Ghost UserImplement an OpenStreetMap to VADERE topology converter (OPMOPS)Use case:
1. Select an area of interest at www.openstreetmap.org (defined by an origin as longitude and latitude and a bounding box).
2. The script gets longitude, latitude and bounding box as input parameter from (1), fetches the data ...Use case:
1. Select an area of interest at www.openstreetmap.org (defined by an origin as longitude and latitude and a bounding box).
2. The script gets longitude, latitude and bounding box as input parameter from (1), fetches the data from www.openstreetmap.org.
3. Then, the script converts this data into a valid VADERE topology description (see below).
```
"topography" : {
"attributes" : {
"bounds" : {
"x" : 0.0,
"y" : 0.0,
"width" : 38.0,
"height" : 12.0
},
"boundingBoxWidth" : 0.5,
"bounded" : true
},
"obstacles" : [ {
"shape" : {
"type" : "POLYGON",
"points" : [ {
"x" : 9.0,
"y" : 12.0
}, {
"x" : 9.0,
"y" : 10.0
}, {
"x" : 30.0,
"y" : 7.0
}, {
"x" : 30.0,
"y" : 12.0
} ]
},
"id" : -1
},
...
```
Notes:
- Use Python for implementation.
- Fetched data from www.openstreetmap.org must be filtered (I guess only objects of type `housing` are relevant).
- Write unit tests where necessary.https://gitlab.lrz.de/vadere/vadere/-/issues/140Scenario Checker - wishlist2023-05-17T17:07:24+02:00Marion GoedelScenario Checker - wishlistSince the topography checker is extended to the other tabs, here is a place to add in your ideas / wishes on what the Scenario Checker could do:
#### Simulation
* [x] ERROR: Bounds for `simTimeStepLength` - Suggestion: [0.01 - 1]
* [...Since the topography checker is extended to the other tabs, here is a place to add in your ideas / wishes on what the Scenario Checker could do:
#### Simulation
* [x] ERROR: Bounds for `simTimeStepLength` - Suggestion: [0.01 - 1]
* [ ] WARNING: realTimeSimRatio != 0 - only if started from console
(Maybe this could also be realized by visualizationEnabled = false -> then automically realTimeSimRatio is set to 0)
#### Model
* [ ] WARNING: OSM + optimizationType = DISCRETE AND varyStepDirection = False -> Background: Pedestrians might not be able to walk through small passages
* [ ] WARNING: `loadingType` "CONSTANT_RESPECT_TARGETS" and "DYNAMIC" because they are deprecated
(compare: https://conwiki1.cc.private.hm.edu/confluence/display/FK07PD/VADERE+Input+Parameters)
* [ ] WARNING if the parameters deviate from the default configuration - to avoid accidental "mis-"settings
* [x] WARNING if groupSizeDistribution of any source is different from [1.0] but AttributesCGM is not present in Model tab (no groups will be simulated)
#### Topography
* [x] WARNING: No target that has `absorbing` = true (that means pedestrians will never leave the simulation)
* [x] WARNING: if a list of targets is defined but one (which is not the last one) has the attribute `absorbing` = true
-> pedestrians won't reach their final target
* [x] WARNING: if `radius` != 0.2 (because at the moment all potentials are calibrated for this radius)
* [x] ERROR: If in a source a group distribution is given where something other then groups of 1 are produced and the group submodel is not given throw an error.
* [ ] ERROR: If a pedestrian has no target (separate pedestrian)
* [ ] ERROR: If distributionParameter of the source is 0.0 - leads to Exception (Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException)
* [ ] WARNING: if the source is too small for the amount of agents spawning. Some formula to estimate the pedestrian density required here, e.g. sourceArea / spawnNumberInSeconds < alpha => warning!
* [ ] WARNING: if `footStepsToStore` is zero (position interpolation and computing speed does not work then properly)
* [ ] WARNING: if `lineCrossProcessor` is within obstacle (flow will not be calculated correctly!)
-> maybe also, `LineCrossProcessor` attribute `Line line` can be defined as `Measurement Area`
* [ ] ERROR: agents might stop suddenly in front of non-absorbing targets if agent's `minStepLength` and target's `deletionDistance` are in conflict. Therefore, check `minStepLength < deletionDistance` or `minStepLength + eps < deletionDistance`. See #140.
* [ ] ERROR: if area of obstacle == 0
* [ ] NO WARNING: check for the targets if they are used by a dynamic element
##### TargetChangers
* [x] NO WARNING: If a ``TargetChanger`` is present, some targets might be used only by it. In this case, a warning is currently displayed that the target is unused.
* [ ] WARNING: If a ``TargetChanger``is present but ``useMinimumStepLength`` is ´´true``. Recommend to set to ´´false´´.
##### Free-flow speed
* [ ] ERROR: In attributesPedestrians: When the `speedDistributionMean` is set larger or smaller than the `minimumSpeed` and `maximumSpeed` (NOTE: same as in Topography checker for single placed peds)
* [ ] ERROR: Negative (maybe even non-positive?) `minimumSpeed` && The `maximumSpeed` set larger than 12 m/s (12.4 m/s is the world record by Usain Bolt) (NOTE: same as in Topography checker for single placed peds)
* [ ] ERROR: `minimumSpeed` is larger than `maximumSpeed`
* [ ] WARNING: If the free-flow std is larger than the limits for `minimumSpeed` and `maximumSpeed` allow.
#### Data processing
* [ ] WARNING if `writeSimulationData` = false even though output processors are added and files are defined in which their output should be saved
* [ ] ERROR if group model is active groupId Processor must be selected
* [ ] ERROR if `PedestrianPositionProcessor` is set and `footStepsToStore` is 0. Bachground: The pedestrian position processor uses the latest foot step for interpolation, so it always needs the latest footstep and therefore a capacity of minimum 1.https://gitlab.lrz.de/vadere/vadere/-/issues/138Dynamic Floorfield is still calculated when all pedestrian have left2019-03-20T14:12:02+01:00Marion GoedelDynamic Floorfield is still calculated when all pedestrian have leftIf you run a scenario with the dynamic floorfield, e.g. option QUEUEING instead of UNIT, the part of the simulation in which all pedestrians have already reached their target is significantly slower than the static floor field. The reaso...If you run a scenario with the dynamic floorfield, e.g. option QUEUEING instead of UNIT, the part of the simulation in which all pedestrians have already reached their target is significantly slower than the static floor field. The reason seems to be that the dynamic floor field is still calculated even though there are no pedestrians. This might slow down simulations especially for automatic parameter variation where the simulationTime cannot be set exactly to the expected finishTime.https://gitlab.lrz.de/vadere/vadere/-/issues/135Combine BHM with floor field2020-08-17T16:15:56+02:00Marion GoedelCombine BHM with floor fieldTo use the BHM (behavior heuristics model) in scenarios, it is necessary to couple it with the floor fields. At the moment, only the Euclidean distance to the target is used. As a consequence, intermediate targets are necessary which som...To use the BHM (behavior heuristics model) in scenarios, it is necessary to couple it with the floor fields. At the moment, only the Euclidean distance to the target is used. As a consequence, intermediate targets are necessary which sometimes cause side effects.https://gitlab.lrz.de/vadere/vadere/-/issues/134Show TopographyChecker warnings/errors also on console2018-10-17T15:48:23+02:00Ghost UserShow TopographyChecker warnings/errors also on consoleSince I am using the suq-controller and change parameters it is required to also see potential issues in the scenario.
Since the topography checks require performance, it'd also be nice to disable the checks or run them afterwards sepa...Since I am using the suq-controller and change parameters it is required to also see potential issues in the scenario.
Since the topography checks require performance, it'd also be nice to disable the checks or run them afterwards separately on scenarios (currently preferred, but can be discussed). #84
Potentially, also related to #130 when adapting the console.https://gitlab.lrz.de/vadere/vadere/-/issues/133Set a flag to use gui or console2020-02-06T17:27:42+01:00Ghost UserSet a flag to use gui or consoleCurrently, there are two packages - one for the console and one for the GUI. The GUI is also packed but not used into the console package - it does not save memory. So I think we should combine both and use a flag such as `--gui`.
Late...Currently, there are two packages - one for the console and one for the GUI. The GUI is also packed but not used into the console package - it does not save memory. So I think we should combine both and use a flag such as `--gui`.
Later on, if desired, we can also make a separate "console-only" package which is more lightweight.
Motivation: This would help me to use the same model file for running the scenarios (with the console) and viewing it (with the gui). Because I may have different VADERE versions in the suq-controller to re-run previous runs, with the current structure this means to have for each VADERE version a console **and** GUI package = double space + more organization of fileshttps://gitlab.lrz.de/vadere/vadere/-/issues/132Set logging when using vadere console2018-12-02T23:08:10+01:00Ghost UserSet logging when using vadere consoleIt'd be nice to set logging level of vadere via CLI argument. Particularly, disabling any logging when running 1000's of scenarios is helpful.It'd be nice to set logging level of vadere via CLI argument. Particularly, disabling any logging when running 1000's of scenarios is helpful.https://gitlab.lrz.de/vadere/vadere/-/issues/130[VadereConsole] Allow VadereConsole to run multiple scenarios given via list ...2023-05-17T16:37:27+02:00Ghost User[VadereConsole] Allow VadereConsole to run multiple scenarios given via list argumentsBackground:
Currently the suq-controller uses for every simulation the vadere-console with `java -jar $model_path suq -f $scenario_path -o $output_path`, i.e. every time a new Java VM is started. This leads to overhead. Instead, it may...Background:
Currently the suq-controller uses for every simulation the vadere-console with `java -jar $model_path suq -f $scenario_path -o $output_path`, i.e. every time a new Java VM is started. This leads to overhead. Instead, it may be better when a list of scenarios and output paths (both of the same length) is handled and these are then run sequentially.
The performance advantage is only for small and fast executed scenarios -- for large and complex ones (such as with dynamic floor field) the performance gain of starting the VM less often is negligible.https://gitlab.lrz.de/vadere/vadere/-/issues/128[GUI] Revise VADERE settings dialog (cog icon in online/post visualization)2023-05-17T16:38:20+02:00Ghost User[GUI] Revise VADERE settings dialog (cog icon in online/post visualization)Two things should be changed in VADERE's settings dialog (see screenshot below):
1. At the coloring options for pedestrians (see red box below), only one option can be chosen at a time (and not the four options). Currently, the last sel...Two things should be changed in VADERE's settings dialog (see screenshot below):
1. At the coloring options for pedestrians (see red box below), only one option can be chosen at a time (and not the four options). Currently, the last selected option wins. In the long run, only three options are necessary:
- Color pedestrians by using logical expression (see [LogicalParser](https://gitlab.lrz.de/vadere/vadere/blob/master/VadereUtils/src/org/vadere/util/io/parser/LogicalParser.java)). Include grammar examples directly.
- Random colors
- By evacuation time
- Note: Maybe, this should be designed by using radio buttons. I.e., not selected options are greyed out.
2. Option "By evacuation time" requires the corresponding output processor. Therefore, a warning text should be placed in settings dialog.
![VADERE-Einstellungen](/uploads/653a8477d78df3e65eca4f4df975f3dd/VADERE-Einstellungen.png)https://gitlab.lrz.de/vadere/vadere/-/issues/125[GUI] Allow individual colors for pedestrians2018-09-14T12:14:58+02:00Marion Goedel[GUI] Allow individual colors for pedestriansFor evaluation it might be helpful to display each pedestrian in another color. This could be set within the settings toolbar, by adding a check box "random colors". The idea behind is to see more easily if pedestrians are e.g. overtakin...For evaluation it might be helpful to display each pedestrian in another color. This could be set within the settings toolbar, by adding a check box "random colors". The idea behind is to see more easily if pedestrians are e.g. overtaking others.https://gitlab.lrz.de/vadere/vadere/-/issues/123New density output processor2023-05-17T16:42:25+02:00Ghost UserNew density output processorI plan to design/implement a new density processor. The difference to the existing ones is
1. generalize observable area to polygon shapes
2. measure at multiple fixed points inside the polygon. Current processors i) average density ...I plan to design/implement a new density processor. The difference to the existing ones is
1. generalize observable area to polygon shapes
2. measure at multiple fixed points inside the polygon. Current processors i) average density over a specified area (i.e. scalar) or ii) compute the density for every pedestrian in every timestep. Because of point 1) I want to use an unstructured grid; the prefered algorithm is the already developed & implemented @BZoennchen (has to be merged before)
Something like this, where each vertex in the triangulation is a point to evaluate the density:
![Screenshot_from_2018-09-12_17-52-39](/uploads/d9a6b6654cdd2e02f03a82ef72a091e2/Screenshot_from_2018-09-12_17-52-39.png)
The output would be something like:
| timeStep | point ID | density |
|----------|----------|---------|
| 1 | 1 | 0.5 |
| 1 | 2 | 0.6 |
| 1 | 3 | 0.1 |
| 2 | 1 | 0.9 |
| 2 | 2 | 0.6 |
| 2 | 3 | 0.8 |
##### Potential options to integrate into the processor (only implemented when needed):
* true/false to consider agents inside or outside the defined polygon
* set density algorithm (use available ones)
* options to forward to the triangulation algorithm (be able to give the accuracy of the density sampling)
* options to forward to the density algorithm (e.g. cut-off for Gaussian density)
* only compute the density of every `X` timestep (as this can be quite an expensive operation)
* allow averaging the density to one point (maybe this would be another processor)
##### Other issues:
* To reconstruct the density of a polygon, it is desirable to write a description of either the points or the entire triangulation in either the data file or in a separate file.
##### Aim:
Have a density evolution over time at fixed points in the scenario. I plan to investigate how many dimensions are needed to represent the density (use PCA) and use the output for QoI.https://gitlab.lrz.de/vadere/vadere/-/issues/121Allow for different shapes of sources2018-10-25T10:24:10+02:00Marion GoedelAllow for different shapes of sourcesAs with targets, it might be useful to add different shapes of sources.
At the moment, circular shapes are not working:
![circle_source](/uploads/be6ccc15e757ac2c19694433eba0bc37/circle_source.PNG)As with targets, it might be useful to add different shapes of sources.
At the moment, circular shapes are not working:
![circle_source](/uploads/be6ccc15e757ac2c19694433eba0bc37/circle_source.PNG)https://gitlab.lrz.de/vadere/vadere/-/issues/113Throw exception if no target is assigned to a source2018-09-20T16:25:16+02:00Marion GoedelThrow exception if no target is assigned to a sourceXref #105.
We have agreed to throw an exception e.g. NoTargetAssignedException if there is a source which has no target assigned in the simulation.Xref #105.
We have agreed to throw an exception e.g. NoTargetAssignedException if there is a source which has no target assigned in the simulation.https://gitlab.lrz.de/vadere/vadere/-/issues/112Pedestrian's potential is not affected by stairs2023-05-17T16:48:52+02:00Ghost UserPedestrian's potential is not affected by stairsIn Rimea 14 (see the screenshot from VADERE scenario) the question is:
> Do the pedestrians take a shorter route via another
floor or do they stay on the longer route on the
same floor?
Currently, in our case, _all_ pedest...In Rimea 14 (see the screenshot from VADERE scenario) the question is:
> Do the pedestrians take a shorter route via another
floor or do they stay on the longer route on the
same floor?
Currently, in our case, _all_ pedestrians take the shorter way using the stairs. This means we have no option to define this behaviour. The reason is that stairs are *another* model and do not affect the OSM floor field. Consequently, the pedestrians do not see the additional effort when taking the shortest path but using the stairs.
This is also a modelling question, how should the floor field be changed?
![Screenshot_from_2018-08-21_12-44-39](/uploads/347bee619fcc217137a377a226c39d2b/Screenshot_from_2018-08-21_12-44-39.png)https://gitlab.lrz.de/vadere/vadere/-/issues/100Visualize superposed shapes in Topography Editor2018-11-27T14:47:11+01:00Marion GoedelVisualize superposed shapes in Topography EditorAt the moment, if there are sources or targets (or obstacles) that are superposed, it is not visible to the user. If the sources have different attributes, this may lead to very surprising simulation results or problems. In the case of o...At the moment, if there are sources or targets (or obstacles) that are superposed, it is not visible to the user. If the sources have different attributes, this may lead to very surprising simulation results or problems. In the case of obstacles, it is not clear if superposed obstacles are more repulsive as a single one. Consequently, it would be good to visualize superposed shapes. Maybe this could be illustrated by hatching the area.Marion GoedelMarion Goedelhttps://gitlab.lrz.de/vadere/vadere/-/issues/99Add ".include" statement to scenario file2023-05-17T16:50:09+02:00Ghost UserAdd ".include" statement to scenario fileTo avoid code duplication, the scenario file should accept an `.include <path/to/file>` statement. For instance, all model test files (scenarios) under directory `VadereModelTests` define the same topology. This could be avoided by reusi...To avoid code duplication, the scenario file should accept an `.include <path/to/file>` statement. For instance, all model test files (scenarios) under directory `VadereModelTests` define the same topology. This could be avoided by reusing an existing topology description.
See following example for a scenario file with an `.include statement`:
```
{
"name" : "scenario_with_include",
"description" : "",
"release" : "0.2",
"processWriters" : {
"files" : [ ],
"processors" : [ ],
"isTimestamped" : true
},
"scenario" : {
.include "../topographies/ushape_obstacle.json"
.include "../events/multiple_wait_events.json"
}
```https://gitlab.lrz.de/vadere/vadere/-/issues/94generateTikz for GroupModels does not use color and shape of group pedestrians2018-07-06T11:23:47+02:00Schuhbaeck, StefangenerateTikz for GroupModels does not use color and shape of group pedestrians@hm\-kleinmei
15699d73@hm\-kleinmei
15699d73https://gitlab.lrz.de/vadere/vadere/-/issues/89Visualizing treads in the stairs model2018-08-30T14:20:44+02:00Marion GoedelVisualizing treads in the stairs modelIt would be nice to see the treads in the TopographyCreator when stairs are used in the simulation. At the moment, the area of the stairs is colored. In addition, a line for each tread would be helpful for the user to see if the upwardsD...It would be nice to see the treads in the TopographyCreator when stairs are used in the simulation. At the moment, the area of the stairs is colored. In addition, a line for each tread would be helpful for the user to see if the upwardsDirection and treadCount parameters are set in a reasonable way.
### Current display
![snapshot_stairs_model_current](/uploads/ef5720e2f34162640b50cd8be0353c14/snapshot_stairs_model_current.png)
### Visualized stairs
![snapshot_stairs_model_idea](/uploads/3614c4fab181a3a6dd40739ed1d79de0/snapshot_stairs_model_idea.png)Schuhbaeck, StefanSchuhbaeck, Stefanhttps://gitlab.lrz.de/vadere/vadere/-/issues/84Topography checker2018-09-28T11:07:52+02:00Ghost UserTopography checkerFrequently there are problems with scenarios that have small gaps that are not visible in the GUI (such as between an obstacle and the domain). These small gaps cause undefined behavior, such as agents walking out of the domain.
One sol...Frequently there are problems with scenarios that have small gaps that are not visible in the GUI (such as between an obstacle and the domain). These small gaps cause undefined behavior, such as agents walking out of the domain.
One solution could be to warn the user about such gaps (E.g. show warning when running the scenario). Another idea (more advanced) could be to close these gaps automatically.
In both cases, a threshold is required.Schuhbaeck, StefanSchuhbaeck, Stefan