Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In Île-de-France, it is now possible to add several policies comfortably via configuration. While these are examples, there is a flexible infrastructure behind this code to define additional and custom policies. The current basic idea is that they will modify either the utility estimation and/or the travel disutility while routing. Future iterations may add more components that are modified.
The policies can be activated through the
eqasim:policies
config group:perimetersPath
option, which should point to a GPKG file with polygons. The fee that is paid is defined by thetax_EUR
option, and it is considered (1) when routing by converting the tax when traversing an entering link into time costs via the cost-beta and the travel-time-beta of the mode parameters. After, (2) the tax is furthermore considered in mode choice by penalizing the choice utility through the cost-beta from the mode parameters. This only applied tocar
.perimetersPath
if they don't have the origin or destination of their trip within that zone. Technically, a very high penalty is added to the routing costs when traversing an incoming link.priceFactor
will be applied to the base price calculated by the currently selected cost model. Technically, the whole cost term is recalculated and removed from the utility, then the partial cost is added back again.All policies can be activated or deactivate using the
active
option. This is especially useful when activating/deactivating policies via the command line.Furthermore, every policy has a
personFilter
attribute. If set, the policy applies only to those persons whose person attribute calledpersonFIlter
is set totrue
. If no filter is set, the policy applies to everybody.Multiple policies of each type can be configured.