We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Real-time large format maps for passenger information on railway disruptions

00:00

Formale Metadaten

Titel
Real-time large format maps for passenger information on railway disruptions
Serientitel
Teil
193
Anzahl der Teile
193
Autor
Lizenz
CC-Namensnennung 3.0 Deutschland:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
Focusing on a clearer and more visible passenger information, Swiss Federal Railways SBB modernized the general displays in the biggest Swiss railway stations. The former mechanical palette displays were replaced by LED screens of up to 5 meters width. In case of severe traffic disruptions these monitors are used for providing the passenger with general information. Additionally, a huge (perhaps the biggest) map based on OpenLayers 3 is shown on the monitor enabling the passenger to get a fast overview of the situation. The key component of the service-based architecture is the geographical content management system Cartaro. It is used by the employees in the SBB operation centers for composing and editing the information to display. Among issues like performance, reliability and availability a major challenge for the system was the development of tools for the fast and simple creation of a clear and appealing map. The software automatically generates a map based on real-time timetable information, identifies the affected stations and highlights the interrupted route using a routing-based approach. A set of integrated spatial editing tools enables the user to e.g. modify route geometries at different generalization levels and to align map labels.
Schlagwörter
78
Vorschaubild
51:51
154
Vorschaubild
35:04
URNInformationEchtzeitsystemTextur-MappingWellenpaketDateiformatSoftwareentwicklerCASE <Informatik>Rayleigh-ZahlVorlesung/Konferenz
ElementargeometrieInformationReelle ZahlDateiformatCAN-BusBinärdatenGesetz <Physik>Mapping <Computergraphik>Verträglichkeit <Mathematik>Motion CapturingRechnerorganisationPhysikalisches SystemIntegriertes InformationssystemGruppenoperationSoftwareWeb SiteOpen SourceZusammenhängender GraphDruckspannungGebäude <Mathematik>Projektive EbeneCoxeter-GruppeMechanismus-Design-TheorieQuellcodeTermWellenpaketDatensichtgerätMultiplikationsoperatorCASE <Informatik>KrümmungsmaßTouchscreenSchedulingMeterBitrateRechter WinkelWorkstation <Musikinstrument>p-BlockZahlenbereichDifferenteElementargeometrieTopologieInformationInformationsspeicherungDatenverwaltungPhysikalisches SystemSpeicherabzugTextur-MappingDatenstrukturDatenbankGraphSchnitt <Mathematik>Mapping <Computergraphik>InternetworkingAnalytische MengeWort <Informatik>t-TestComputerarchitekturKartesische KoordinatenSoftwareentwicklerInstantiierungFunktionalOffice-PaketMereologieBenutzerschnittstellenverwaltungssystemGüte der AnpassungServerDateiformatEinsContent ManagementGrenzschichtablösungPortal <Internet>FokalpunktEchtzeitsystemBenutzerbeteiligungComputeranimation
RechnerorganisationPhysikalisches SystemSummierbarkeitLokales MinimumRoutingInformationMetropolitan area networkDienst <Informatik>SystemidentifikationElementargeometrieOffene MengeKomponente <Software>ServerSkriptspracheAppletTouchscreenApp <Programm>SinusfunktionMapping <Computergraphik>TemplateDifferenteDemo <Programm>DreiKartesische KoordinatenRückkopplungWorkstation <Musikinstrument>PunktInstantiierungLokales MinimumTexteditorRoutingInformationOpen SourcePhysikalisches SystemMapping <Computergraphik>Zweip-BlockÄußere Algebra eines ModulsOrdnung <Mathematik>DatenbankAuflösung <Mathematik>GruppenoperationSoftwaretestMinkowski-MetrikNatürliche SpracheZusammenhängender GraphTouchscreenEuler-WinkelDifferenteSchlussregelFunktionalBasis <Mathematik>ComputerspielAutorisierungMathematikViewerBildschirmmaskeDatenfeldTemplateWeb-SeiteRegulärer Ausdruck <Textverarbeitung>Reverse EngineeringElementargeometrieQuadratzahlVersionsverwaltungUnrundheitCanadian Mathematical SocietyMAPGrenzschichtablösungPräprozessorInterface <Schaltung>Projektive EbeneModallogikComputeranimation
DreiAlgebraisches ModellKorrelationSummengleichungRankingGesetz <Physik>FünfMetropolitan area networkNichtlineares ZuordnungsproblemBildschirmmaskeInformationPhysikalisches SystemRoutingWorkstation <Musikinstrument>Datenfeldp-BlockDatensichtgerätMapping <Computergraphik>TouchscreenDivergente ReiheResultanteComputeranimation
RankingSummierbarkeitGewicht <Ausgleichsrechnung>MenütechnikPrinzip der gleichmäßigen BeschränktheitKorrelationMehragentensystemMehrwertnetzURNInformationRechter WinkelRechenschieberMapping <Computergraphik>Physikalisches Systemp-BlockSchlüsselverwaltungSoftwaretestPunktSchlussregelSichtenkonzeptMAPRoutingTexteditorDifferenteDatenstrukturMehrrechnersystemWorkstation <Musikinstrument>Computeranimation
SummierbarkeitSpezielle unitäre GruppeExt-FunktorDemo <Programm>Open SourceKomponente <Software>InformationMapping <Computergraphik>TouchscreenTexteditorKomponente <Software>Mapping <Computergraphik>Green-ITInformationMultiplikationsoperatorKartesische KoordinatenVersionsverwaltungOpen SourceZusammenhängender GraphCanadian Mathematical SocietyLastComputeranimation
Mapping <Computergraphik>Open SourceOffene MengeMetropolitan area networkNichtlineares ZuordnungsproblemQuellcodeGeradeMathematikElementargeometrieSpezialrechnerPunktSoftwaretestTwitter <Softwareplattform>Mapping <Computergraphik>RoutingProjektive EbeneInformationInstantiierungKartesische KoordinatenIntegriertes InformationssystemDifferenteResultanteSoftwareWeg <Topologie>Textur-MappingPhysikalisches SystemCASE <Informatik>MultiplikationsoperatorInverser LimesAlgorithmusVideokonferenzZentrische StreckungTexteditorSystemverwaltungp-BlockWorkstation <Musikinstrument>MereologieApp <Programm>WellenpaketPlastikkarteHook <Programmierung>Bootstrap-AggregationProgrammfehlerGüte der AnpassungMobiles InternetTermKette <Mathematik>Physikalische TheorieWeb SiteRootkitFitnessfunktionRichtungMultiplikationOffene MengeRhombus <Mathematik>Überlagerung <Mathematik>BitrateRechenwerkBoolesche AlgebraMAPEntscheidungstheorieTabelleRechter WinkelZusammenhängender GraphVorlesung/Konferenz
ICC-GruppeComputeranimation
Transkript: Englisch(automatisch erzeugt)
Okay, welcome everybody for the last session before lunch and well this is a session with only two talks. The talk before here was skipped so we will first listen to Mario telling us about
real time large format maps for passenger information on railway disruptions. So, if you travel by train through Switzerland and there will be a railway disruption, what usually there never happens because there have a timetable that really works.
But if this case happens, then Mario will tell us what they do. Thank you. Your 20 minutes. Yeah. Hi, my name is Mario Hedvig and I'm a developer at Geops. The core competence of me and my colleagues is to develop web-based geospatial applications.
We are doing business applications with GIS functionality as well as geo portals and web map portals. An important component of several of our solutions is our geospatial content management system Cartaro.
And our current focus is on different solutions for public transit and we have also brought knowledge in infrastructure. Our focus is on open source software products and we develop open source software products and integrate it in our solutions and we have offices in Germany and Switzerland.
And the project I'm going to present today is a real time large format map which we developed based on our content management system Cartaro. So we use Cartaro for editing this information and it provides passenger information on railway
disruptions. You see it on this screen over there. And we developed this project for the Swiss railway company which operates the densest railway network in Europe. The short term of the Swiss railway company is SBB, this is one short term, I'm going to use it during my presentation.
And every day around 1 billion passengers are traveling with the Swiss railway company and usually more than 95% of them arrive in time within three minutes of schedule. Which is a pretty good punctuality rate compared to other European railway companies like for instance the ones of Germany and Austria.
However sometimes there are disruptions and so far for informing the passengers about train delays or about schedule information the railway companies use this kind of mechanical
flap displays. However the number of information that can be displayed on such a display is limited. Each block of those consists of around 80 flaps and that's why they decided to exchange this mechanical flap displays with huge LED screens with a wide of up to five meters. And on this right screen there's going to be some advertisement and in case of a railway
disruption we display the information there. The project was initiated by the upper boss of the SBB and the motivation is to provide clear and more visible passenger information to the passengers and to enable them to get
a fast overview over the disruption situation. And there were some challenges when implementing the system like the employees in the SBB operation centers have around seven minutes to collect all the information that should be displayed on the screen.
And within these seven minutes they should be able to provide a structured, clear structured information and a nice looking map without having any GIS knowledge and any knowledge about how to edit geo data. Consequently the system has to be user friendly, robust as well and performant.
This is the architecture we used for our system. So the core component is our geospatial content management system, Cartaro. This is used by the employees in the operation centers to collect all the relevant information. It gets some general disruption information from a system called SBB him.
This is the online status information system of the railway company. And Cartaro afterwards stores the geospatial data in a database and does some analytics using post GIS. And for visualizing the geospatial data it uses a geo server.
What you see here is a component which runs in the SBB Internet. It's written in Java and it's responsible for controlling the monitors. So all in all there are 16 monitors in different stations. And this tool is responsible for controlling all of these monitors if there's a disruption information available.
And it requests this information if there's an active disruption from the API of our content management system Cartaro and if this is the case, if there's a disruption it activates the specific monitor in one of the stations. And afterwards the application which runs on these screens is requesting all the information
that should be displayed. So the geo data and the other data from the geo server. And to let the operator and the let the people know that everything went right, it sends some ping requests to Cartaro if everything was, if the disruption information was activated successfully.
Okay, first I'm going to say some words about the SBB HIMS system. It is, as I said before, the online status information system of the Swiss Wayway company and it provides some information about, for instance, building sites or train delays
as well as disruption information. It has an API and we request this API, we access this API to get some disruption information and it returns, for instance, the text of the disruption and some geo information like the points of the start and the end station and the station which is affected
by the disruption. But we don't want points. We want routes to display them on the map in the editor as well as on the screen. And that's why we do some routing between the start point, the end point via the impact station. We do this using PG routing.
And the text is also very important. It was built using text blocks. We have the text blocks, but we don't have any information about which text blocks were used for generating this text that is displayed over there. And that's why we are doing some reverse engineering with regular expressions in the
database in order to identify this text chunks. And the goal of this is like, for instance, if the user wants to update the duration of this disruption information, he should only need to update a field and not the text. So, this is replaced afterwards automatically.
So, the goal is to allow fast editing of the information. Okay. And as I told you, a very important component is our geospatial CMS. And after having read the information from the API of the SBBM system, it displays
this information for the editor. So, it's our geospatial CMS. It's based on Drupal. And it's some geospatial functionalities to Drupal by using several open source geospatial components like PostgreSQL, PostGIS, GeoServer, and GeoWebcache. And OpenLayers, of course, and some others.
And based on the information we got from the API, it shows some routes on the map. And if the user clicks on such a route, a form opens where you can edit this information. And you see the fields for the text blocks we identified in the preprocessing. And if, for instance, the user changed the start stage and it's automatically updated
in this text, you'll see it later when I make a live demonstration. And there's also a map where the user can this is the interface for creating the map. And on the top you see some fields where you can add the start station, some buyer points
and the end station. And again, we generate the route by using PT routing. And in the map, it's possible to edit the route geometry manually by several tools. And it's also possible to remove the labels by using our OpenLayers editor. This is another project of the company, of our company.
And the blue square in the middle is it shows the size of the screen. So, everything within this square is later displayed on the monitor and the station.
And after the user has created the disruption information, he has some preview. And what you see here is the application which later runs on the monitor. So, it's the embedded version of this application. So, the user has a live feedback what is later going to be shown on the screen and can modify some information if necessary.
And after if the user is happy with the disruption information, he can enter a duration and activate the disruption information. And if disruption is active in Cartaro, the API tells it or the tool for controlling
the monitors is going to activate the corresponding screen. And this screen is requesting all the information from the GeoServer that should be displayed. This application is based on HTML and JavaScript. The layers, the map data is WMTS and GeoJSON from GeoServer.
And for visualizing the spatial data, we use OpenLayers 3. And for generating the templates, we have different disruption templates for different kind of disruptions, we use handlebars. And if the user updates the disruption information, it's also updated on the screen after a
maximum of 20 seconds because this application is refreshing itself every 20 seconds. Here are some of the features of the application. It's not only possible to show the disruption information and the course of the disruption on the map, but also some alternative routes.
And the route geometries are routed on three different generalization levels with PG routing. And so we only show the optimized generalization level for this view and for this resolution, for the selected resolution. We have templates for different disruption types. And the tool is also enabled to switch between French and German.
These are the two languages which are currently used in this editor. Or in the disruption information in the stations. Okay, I'm going to make a live demonstration of the application.
Okay, what do you see here is the map with the disruption information that were routed based on the him information, so the SBB him system. And I'm now able to click on such a route and to create a disruption information. Okay, first of all, I have to select the monitor.
So I'm going to display the information in Zurich main station. And after I filled out the station, after I selected the station, the system knows which monitor is used there, which kind of disruption information can be displayed there and automatically prefills the fields of the form.
Okay, what you see here are the text chunks I told you about. And I want since I'm in Zurich, I want to display disruption information not from winter tour to Zurich, but from Zurich to winter tour. That's why I go back on the screen, exchange these stations, and it's automatically
replaced in this in this form. And if I want to change the text, I can use another text block. We loaded all the text blocks that are available. And now I have a new text for the title of the disruption information.
I can select a reason for this information for the disruption and duration. Here it's possible to upload some pictures which are rotating with the map. I can add an additional information. Going to write something. Okay, the railway company is going to inform you as soon as possible.
On this view, I can add some alternative routes for this disruption. So what you see here is our test system. There are already some alternative routes for this test data. You have an editor for changing the data and can define some text for this text blocks.
Okay, I'm not going to do this right now. Let's have a look on the map view. This is the SCC, and the route is optimized for different generalization levels. And I have now tools for moving the labels around.
So I don't want to have these labels inside the view. And I can arrange the labels for making for providing clear information, clear structured information. I can also delete the labels, but then I would use another hand for press the key.
Yeah, okay. Wait, I can show you this live routine here. So if the user wants to update the route, you can also enter another point. Like, okay, now it's rooted from this F. Yeah, from the other station.
Okay, okay. And what you see here is the embedded version of the disruption information that is later going to be shown on the screen. I can now enter a duration.
Okay, and the disruption information is going to be active for the next five minutes. I save and activate, and now I can access this preview via this screen. Here you see a green light, and this green light means that there is no monitor that
currently accesses this information. If there's a monitor which requests or which loads the application, he sends some ping requests to the editor, and this yellow light is going to be green. Here's a preview again of this information.
Okay, I'm coming to the conclusion. The application we've developed is completely based on open source software components. An important component is Kataro, the geospatial CMS.
Since the end of 2015, there were more than 800 disruption information activated using this tool, or generated using this tool. So if there's one disruption information displayed on five screen, we count it five times. I've counted it five times. And yeah, we've created the huge, perhaps the biggest map, which is based on OpenLayers
3, and it helps passengers to orientate. Thanks. So thank you, Mario, for this really very interesting talk. So more than 800 disruptions.
That changes my mind of the Swiss railway, but the disruption information and the graphic at the beginning, it was, well, the Swiss railways, they are the best maybe in Europe. Any questions? We have enough time for questions. So it's your part.
Please take the microphone that sits on the video. The editor you've been showing seems to be quite smart. Is it a feature of Drupal? Like showing smart editor dialogues or? No, there's a lot of JavaScript work that we've done manually. And we just put a bootstrap for some components, also for some JavaScript components,
but a lot of this is done manually. So it's no feature of Drupal or Kataro itself. More questions from your side? Yeah, coming with the microphone.
Have you experimented with other types of maps? So you just show like the obvious OpenLayers map. But I mean, I know traditionally, obviously, when they'd show disruption maps, it would be like a 1D style map. I don't know if you could like flip between different styles of styling techniques for
OpenLayers and all different ways to view. We've only this style and we only implemented this style because this was designed by a design agency and we just had to implement it. And yeah, it's the general looking SPB map style, which we use for the railway map.
You also find this kind of map without the disruption information in the map portal of the Swiss railway company, for instance. So we didn't experiment much with different map styles. Was this what you meant? Yeah. Okay.
The line generalization that you do when you zoom out, it seemed to kind of change the route at some point. Is it a known bug? Yeah, it's a known bug. And this is some test data. And I think it was done on purpose with this test data. The user is enabled to automatically manually update the route.
And sometimes if we have no data and if the route geometry is not available in the generalization level, then we have no idea how the course of the route is actually be. And that's why we provide some manually editing tools for changing the route geometry. And this is SPB data we use.
So we have not much possibilities to update it. I think it's really a test case for this test instance I showed you is also used by SPB employees. And I think it's a test case to show them how they can edit the route geometries manually.
One question from my side then with the routing. You said you're using PGA routing for that. Did you face any problems that the routing results did not fit what was expected by the people that know their network itself?
And of course, we only know the shortest track. We use an A-star algorithm for getting the route. But of course, it's not said that is the real course of the train. And that's why there's this possibility to add some via points. So the people in the operation centers, they usually know where the route of the
train goes and they can add via points to modify the route manually. But yeah, of course, it's not always the shortest route that's taken by the train. Does SPB not have a routing system already for timetabling? Is it possible to hook into that with...
I mean, I know that in the UK, you have various... Whether there's a good API, I'm not quite sure. I can't remember, but probably not. I wonder if it might be if there's any replication there or if we find out that PGA routing is actually better than what they have. Yeah, no, there is a timetable information system and we use it for another application.
But I'm not sure if it's really if the API would fit this or if we could use it. I'm not sure for this. We had a look on this, but no, we use... Sorry, cannot really say if it would provide enough information, but I don't think so because otherwise we would have used it.
But I didn't make this decision. That's why I cannot say something to the details. Have you considered any kind of mobile application? So if you can send... Is it the PNG or JPEG image what you are sending those stations? No, it's really an open layers map that runs on the screens,
but it's not so difficult to generate. It's drawn on canvas and wouldn't be that difficult to generate an image out of this. There were some people in the SPB team suggesting this, but so far there's no project like this. But of course, it would be a nice thing if there was some feeds on a cell phone app
where the passengers are informed about disruption. But it would be possible, but so far there's no such project. Yeah, Twitter would be also a nice application to integrate it.
Can I see some of these maps in Germany on some stations? Or is it only for... No, this is only for the Swiss railway company so far. They are not, at least not from us, maps in the railway station. And I think they don't have any maps in the German stations.
Maybe you should ask to the people from Deutsche Bahn downstairs. And I'm sure you'll see who does. So maybe, I don't know. One question from my side, one last question from me is... National railway network is not that dense. So that's why it might be easily to have all those possibilities.
Do you think it's possible to use it also in public transport in cities or something like this? Or is there some limitations where you can say, okay, that won't scale in that direction? What do you mean with the routing? And also the handling, because there's a lot of administration done
and filling the text blocks and so on. Yeah, I think that would be a challenge to make it available for public transport in general. But yeah, I think the problem is the editing. The people would have to edit for every disruption some information.
What did you want to say? Nobody is in charge of it for public transport. Maybe another reason, yeah. Public transport, but not where it works. Yeah. Any further questions? Okay, then.
Thank you, Mario. Next talk.