Replies: 0 comments 1 reply
|
Hi Jingjun, sorry for the late reply. In general, I would recommend using the existing SwissRailRaptor if possible since it sorts out the access and egress for you already. You could convert your GTFS timetable into a MATSim transit schedule (https://github.com/matsim-org/GTFS2MATSim). Cheers |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Provide the MATSim version you are using. You can find the version in the
pom.xml. E.g.2025.0.2025
Did you build a minimal example to reproduce the issue?
Describe the problem you are facing.
We have our own railway simulator, which can provide us with detailed, microscopic views of train operations. We now want to let this rail simulator talk to MATSim (i.e. agents in MATSim simulation could use the
railtravel time calculated by our own simulator).We are now facing two main problems: 1) Our railway simulator is only for railway operation, so it cannot tell us as an agent, which access and egress rail stations agents taking rail will take; 2) If we want to enable replanning, we also need to write our own scoring functions for the new rail mode.
Currently, we have a custom
MobSimEngine, which detects and handles when an agent starts a Leg of type "rail". The rail simulator manages the movement of the train and ends the RailLeg when the train arrives. Agents in MATSim will be teleported based on the rail time. However, this approach has a big limitation, where we need to specify “which rail station agents are using in plan.xml”. And from the MATSim perspective, this is not something we normally do.Theoretically, we are thinking of 2 options: 1) use the SwissRailRaptor (as it already has the access and egress calculation functions); 2) write our own routing modules (which I think is basically like designing a new MATSim PT router from scratch...)
What do you suggest is the most elegant way to achieve this? Is there any existing function in SwissRailRaptor that can already achieve what we want to do? :)
Thanks a lot for your info!
If possible, provide a link to your minimal example. This might be a GitHub repository.
No response
If you want, provide some background information about you and your project. This might help us understand your issue better.
https://transit.ac.uk/ Building a digital twin federating passenger mobility and rail.
All reactions