agentsoz / bdi-abm-integration

BDI ABM Integration
GNU Lesser General Public License v3.0
8 stars 13 forks source link

Fix coordinate system used in EES #34

Closed dhixsingh closed 6 years ago

dhixsingh commented 6 years ago

There are various sources of GIS information used in the EES and the projection used can vary quite a lot. At the moment, we try and convert things to latlon and/or utm, which is old legacy code and too vague.

  1. The simulation should have a global CRS setting, so that everything can be projected to that reference system as needed. This should go in the main config such as here: https://github.com/agentsoz/bdi-abm-integration/blob/8ee3d73975f68fae2833ff01ec8c64e01b93a06f/examples/bushfire/scenarios/mount-alexander-shire/maldon-600/scenario_main.xml#L32-L36

  2. Each input GIS data file should come with its associated CRS. Again allof these should probably be specified in the same top level config file such as: https://github.com/agentsoz/bdi-abm-integration/blob/8ee3d73975f68fae2833ff01ec8c64e01b93a06f/examples/bushfire/scenarios/mount-alexander-shire/maldon-600/scenario_main.xml#L62-L66

  3. The coordinate system scheme used should be EPSG; the old legacy latlong and utm should be removed;

  4. Wherever there is a need to convert from one CRS to the other, we should use the existing MATSim routines, i.e., something like: https://github.com/agentsoz/bdi-abm-integration/blob/ff47d996a8570b4ba57ccffd875f3cde9b858a50/integrations/bdi-matsim/src/main/java/io/github/agentsoz/bdimatsim/MATSimModel.java#L517-L518

Some things that will be impacted by this change include:

Fire data

We typically convert this into JSON format directly from the Phoenix shapefiles; the coordinate reference system (CRS) used is not always in the attributes table of the shapefile, so this data has to be augmented with CRS information somewhere. This seems to be done in the config such as here:

https://github.com/agentsoz/bdi-abm-integration/blob/8ee3d73975f68fae2833ff01ec8c64e01b93a06f/examples/bushfire/scenarios/mount-alexander-shire/maldon-600/scenario_main.xml#L62-L66

However this does not seem to be fully implemented.

Location data

Such as for evacuation destintations; supplied in the geography.xml; again an attempt to specify the CRS is in the XML such as:

https://github.com/agentsoz/bdi-abm-integration/blob/8ee3d73975f68fae2833ff01ec8c64e01b93a06f/examples/bushfire/scenarios/mount-alexander-shire/maldon-600/scenario_geography.xml#L63-L70

But this seems to be broken (note in the above example that the CRS latlong does not match the coordinates supplied which are in UTM).

MATSim CRS

Note that MATSim uses its own setting for the CRS (which will stay as is), such as here: https://github.com/agentsoz/bdi-abm-integration/blob/8ee3d73975f68fae2833ff01ec8c64e01b93a06f/examples/bushfire/scenarios/mount-alexander-shire/maldon-600/scenario_matsim_main.xml#L29

dhixsingh commented 6 years ago

This issue was moved to agentsoz/ees#12