Package org.matsim.signalsystems
This package contains interfaces and classes that provide functionality to plug a signal system model
in the MATSim framework.
See:
Description
Package org.matsim.signalsystems Description
This package contains interfaces and classes that provide functionality to plug a signal system model
in the MATSim framework.
Usage
If input files for signal systems are already available, simulation of traffic lights can be enabled via MATSim config options:
- Set the parameter
useSignalsystems to true in the
config module scenario
- Set at least three input file names in the config module
signalsystems:
- parameter name:
signalsystems value: path to a file in the signalSystems_v2.0.xsd file format
- parameter name:
signalgroups value: path to a file in the signalGroups_v2.0.xsd file format
- parameter name:
signalcontrol value: path to a file in the signalControl_v2.0.xsd file format
- parameter name:
ambertimes (optional) value: path to a file in the amberTimes_v1.0.xsd file format
An example of such a configuration can be found in the input folder of the SignalSystemsIntegrationTest. If your data is in an older file format have a look at the
package playground.dgrether.signalsystems.data.conversion for converters to the required file formats.
Data Model description
Documentation of the data model can be found in the package-info.java of the subpackage data. If the corresponding files are set in the matsim config and
signalsystems are enabled the data is loaded by the matsim ScenarioLoader into the Scenario and can be retrieved by calling
scenario.getScenarioElement(SignalsData.class). Thereby scenario is an instance of Scenario.
Model description
Overview
The model consists of several logical layers:
- A data layer
- A model layer
- A layer to couple the model to the mobility simulation
- A layer to build the other layers
Each layer can be found in a subpackage of this package, namely:
signalsystems.data the package containing the data layer
signalsystems.model the package containing the model layer
signalsystems.mobsimthe package containing the layer to couple the model to the mobility simulation
signalsystems.builder the package containing the layer to build the other layers
Each layer is documented separately in the package-info.java of the subpackage.
In addition to the main layers, the package contains some utility classes. Furthermore in the
controler package interfaces and default implementations can be found that
plug the model into the MATSim Controler.
Extensibility
The layers of the model can be used separately and independently from each other. The default implementation
uses all layers of the model in this package. The building layer is used to couple the other layers together. If you want to exchange or extend
a certain part of the model have a look at the factory and builders of the default implementation that create the components of
interest. Implement your customized factories and builders using or extending the provided interfaces and replace
the factories/builders of the default implementation by your instances to get your extension or customization into the model.
Also have a look at the package-info.java documentation in the subpackages to get an idea how the components work and what can be
customized.
An example of an adaptive signal control implementation can be found in the package
playground.dgrether.signalsystems.sylvia in the playground project.
- Author:
- dgrether
- See Also:
org.matsim.signalsystems.data,
org.matsim.signalsystems.model,
org.matsim.signalsystems.builder,
org.matsim.signalsystems.mobsim,
Package Maintainer(s):
Changes by non-maintainers are prohibited. Patches very welcome!
Copyright © 2005-2012. All Rights Reserved.