These are modules that can be used via the syntax
<module name="strategy" > <param name="ModuleProbability_1" value="0.1" /> <param name="Module_1" value="ChangeLegMode" /> <param name="ModuleProbability_2" value="0.1" /> <param name="Module_2" value="TimeAllocationMutator" /> </module>
Strategy modules are numbered. Also, each module is given a weight which determines the probability by which the course of action represented by the module is taken. In this example, each person stands a chance of 1/2 that their transport mode is changed, and a chance of 1/2 that their time allocation is changed. (The weights are renormalized so that they add up to one.)
A strategy module is, in the code, always a combination of a plan selector and zero or more strategy module elements. There are two cases, which are handled differently:
The strategy modules that are understood by MATSim are defined in the class StrategyManagerConfigLoader. In addition, you can program your own strategy modules; see tutorial.programming in matsim/src/main/java for examples.
Unfortunately, the naming in the code is different from the naming in the config file:
It is not clear which combinations of these modules can be used together. Depending on required features, special variants sometimes need to be used. This has not yet been sorted out. Also see here.