Dynamic Visualization of Transit Information Using Genetic Algorithms for Path Schematization

  • Marcelo Galvao
  • Francisco Ramos
  • Marcus Lamar
  • Pastor Taco
Conference paper
Part of the Lecture Notes in Geoinformation and Cartography book series (LNGC)

Abstract

In this paper, we present a genetic algorithm for path octilinear simplification. The octilinear layout, recognized worldwide in metro maps, has the special property that edge orientations are restricted to eight angles. The proposed search technique combines possible solutions to find a solution with a desired balance between faithfulness to the original shape and reduction of bends along the path. We also aim the genetic algorithm to real-time response for dynamic web visualizations so we can experiment on how algorithms for the visualization of schematic maps can be availed in a context of mobile web devices in order to empower efficiency in transmitting transit and navigation information. A prototype of a web application and real transit data of the city of Castellón in Spain were used to test the methodology. The results have shown that real-time schematizations open possibilities concerning usability that add extra value to schematic transit maps. Additionally, performance tests show that the proposed genetic algorithms, if combined with topological data and scale variation transformation, are adequate to sketch bus transit maps automatically in terms of efficiency.

Keywords

Transit map Schematic generalization Octilinear graph Genetic algorithm Digital map Web visualization Public transportation 

Introduction

Schematic map differs from cartographic maps by being more diagrammatic. Unnecessary information can be omitted to point users’ attention to a specific purpose. Usually, to achieve a schematic configuration, paths and polygons are submitted to simplification processes, and dense areas are enlarged to increase readability.

In the past 15 years, many researchers have published work addressing the automatic schematization of transit maps, and the metro map layout is the most common design found in those publications. The angle restriction of the edges and reduction of bends along the transit lines, among other characteristics, makes the metro map layout an efficient information tool for transit purposes (Allard 2009). It is easier for the passengers to follow a path with their eyes and to identify connections in decision points.

With the help of growing computer power, the results achieved by automatic drawing algorithms ever more closely resemble to results of professional handmade maps (Nollenburg and Wolff 2011). This context, together with the emerging mobile communication technology, opens new possibilities for the usage of schematic maps. They will be able to turn from a static piece of information to an informative tool that reflects the changes in time and the specific needs of a traveler. Moreover, by being created on demand, interactivity could be explored so the user can go from a network overview into desired details depending on the context of usage.

Static transit maps, usually handmade by professional designers, are costly and so aimed for the general public. They need to be complete in order to serve the public but they are often overloaded with unnecessary information if only individual needs are considered. Alternatively to static maps, wayfinding transit route applications, like the service powered by Google™, mainly give step-by-step instructions for a specific chosen route. Although efficient in wayfinding, this method requires a new consult on every route the passenger wants to take and by not providing familiar and alternative lines for a general view of the route it is not meant to support passenger to build their own mental map.

In this paper, we present a genetic algorithm (GA) for path schematization. We aim this solution to a real-time application and build it as a restful web service in order to explore schematization on demand for mobile applications. We assume that the web platform, in addition to allowing independent universal access to the information, allows applications to connect to external services that can empower dynamic information to visual information tools. In our prototype, instead of origin and destination, we use points of interest (POI) of the traveler to select for schematization only the part of the transit lines that connect those POIs. Also, we use the location awareness of mobile devices to provide real-time information to facilitate the use of the schematic maps in a navigation context. We show that, by interaction, a passenger can zoom to stations to view them in a cartographic map what would be useful during walking navigation.

The proposed GA for path schematization, which a preliminary version was presented in Portuguese at XXVI ANPET Congress (Galvao et al. 2014), uses a fitness function that measures the proportion of bends in the path and its faithfulness to the original shape and by changing the value of a parameter in the fitness function it is possible to set if the final solution should care more about bend reduction and less to faithfulness or vice versa. Although the presented technique is a simple path schematization, we use topological network data to make a strategical division of the graph that allows us to establish a sequence of schematization respecting straightness along transit lines and reducing topological faults in the final design.

We aimed our methodology to bus networks because (i) it is the most common mode of public transportation (PT); (ii) schematic maps are more scarce for this modality in comparison to subway services; (iii) because bus networks are usually more complex in their morphology and size, in a way that a solution meant for bus should work for metro or others PT means. Real transit data of Castellón de la Plana (Spain), a typical medium size European city, has been used to produce the final sketches.

Related Work

“The metro layout problem” (Hong et al. 2004) has been addressed by dozens of publications since the end of the 1990s. In surveys such as those presented by Wolff (Drawing subway maps: A survey, 2007) or Nöllenburg (A Survey on Automated Metro Map Layout Methods, 2014) it is possible to find descriptions and evaluations of many of them. Each research addresses the problem in a specific way for a specific purpose and the techniques developed are as diverse as possible.

Avelar (2002) presented in her doctoral thesis one of the first complete studies about computing octilinear maps for public transportation. The relevance of this work extends the algorithm itself. Even being a computational research, important design aspects like definitions of schematic maps, map styles classification, symbology conventions and design considerations for aesthetically pleasant maps are covered. Moreover, Avelar handles data modeling aspects essential to the topological characteristics of transport maps and objects of interest.

Regarding the algorithm, the presented method (Anand et al. 2007) first simplify the lines using Douglas-Peucker, then simulated annealing is used to iteratively move the vertices to conform with octilinear positions without violating the network topology. The algorithm aims to create octilinear schematization of road networks. The presented results showed success in preserving the topology of Zurich’s road network and having most of the edges in octilinear position (some edges could not be octilinearly placed). However, in terms or performance, they were not adequate for real-time solutions.

Nöllenburg and Wollf (2011) identify design rules presented in real metro maps around the world, so they aimed their method for high-quality results. Nöllenburg (2005) also proved that the metro layout problem is part of the NP-Complete class of decision problems. It means that the time to solve this problem grows exponentially proportional to the size of the instance. These results drive computer scientist who deals with the problem to use heuristics searches, treat instances differently, change the definition of the problem, or to use optimizations.

Given this knowledge, Nöllenburg (2005) models the problem in mixed-Integer programming (MIP), a mathematical programming that uses linear and integer constraints. That way, and using a commercial MIP solver design for efficiency (CPLEX), Nöllenburg obtained results of visual quality similar to ones made manually by a professional designer. Additionally, his solution was able to create space to label all stations properly. However, even using CPLEX, the execution time cannot be guaranteed to be short, varying from a few minutes to hours depending on the complexity of the network. More recently, increments on the of the MIP solution, as those presented by Oke and Siddiqui (2015), succeed in reducing the time of execution.

Wang and Chi (2011), as the best of our knowledge, are the first to aim the research of automatic schematic maps into personalized solution for mobile devices. They assume that for better readability in small displays, the route of interest of the user should be more prominent in the resulting schematic maps. They use energy function to give priority to a specific route and then they use a least square method to find the final layout. Although tested only in a desktop application (not in a mobile environment), their results show that a real-time solution for the problem is able to add extra value to schematic maps, opening a new door of possibilities to be explored in schematic maps.

Genetic Algorithms for Path Schematization

Although path schematization approaches to the metro layout problem does not guarantee the topological correctness in the resulting layout, this constraint was sacrificed for performance purposes, since the combination of preserving the topology, octilinear layout, and bend reduction is responsible for the NP-Hardness of the problem (Nöllenburg 2014).

Path schematization requires first that the transit graph must be disjoint into non-overlapping paths that cover the whole graph. To obtain a reduced set of paths, a depth-first search algorithm is performed in the network. The resulting set of paths is then sent to be schematized by the GA and a new schematic position for each station is calculated.

We start describing the encoding of a chromosome. Second, we show how the mutation and cross-over process are performed. After, we show how the populations are generated. Finally, we explain the fitness function and the selection process.

Encoding the Chromosome

An important step in developing a genetic algorithm is to define how to encode the chromosome of an individual. Individuals from a given population are the fundamental units of a genetic algorithm. They identify possible solutions to a given problem and, at this present study, an octilinear path is considered an individual.

Due to the geometric nature of the problem, the most intuitive way of encoding a chromosome is using the Cartesian coordinates of stations. However, in order to facilitate other operations involved in a genetic algorithm, instead of using the Cartesian coordinate system, it was used a sort of relative polar coordinate system.

The relative polar coordinate system represents one path with \(n\) points by selecting as origin point \(p_{0}\) one of the extremes of the line. The \(p_{0}\) is represented by its Cartesian coordinate, i.e., its \(\left( {x, y} \right)\) values The only point adjacent to \(p_{0}\), \(p_{1}\) is represented by the polar coordinate relative to \(p_{0}\), i.e., a value \(\left( {r_{1} , \theta_{1} } \right)\) where \(r\) represents the distance between \(p_{0}\) and \(p_{1}\), and \(\theta\) the angle formed by the segment that unites the points \(p_{0}\) and \(p_{1}\) and the axis \(x\). The other point adjacent to \(p_{1}\), \(p_{2}\), is represented by relative polar coordinate to \(p_{1}\), i.e., a value \(\left( {r_{2} , \theta_{2} } \right)\). This representation made by relative polar coordinates goes until point \(p_{n}\), forming the chromosome of the path. Figure 1 illustrates an example of a path with its chromosome value. The first gene, i.e., (15.0, 36.) represents the Cartesian coordinate of the first station. The other genes, such as (21.55, 315) indicates that this station is 21.55 units away from the previous station with azimuth direction of 315°.
Fig. 1

Example of octilinear path and its respective chromosome genes

Mutation and Cross-Over

After encoding the chromosome, the next step is to define the other basic operations of a genetic algorithm. Crossover and mutation help guarantee diversity for further generations.

The mutation operation consists in randomly changing one of the chromosome genes. The mutation process helps prevent a permanent fixation on a local minimum in the solution space. Since a gene is represented by the values \(\left( {r, \theta } \right)\), the mutation of a chromosome corresponds to alter the \(r\) and \(\theta\) values of a gene. In order to avoid disproportional distortions in the process, the mutation process randomly alters the value \(r\) inside a margin of 50%, and \(\theta\) mutation is done by adding or reducing \(45^\circ\) to its original value, thus keeping octilinearity of a chromosome.

The crossover operation consists in randomly combining two chromosomes to generate a new one. The crossover process chosen for this project is the crossover between two points. Having as input two chromosomes, the crossover process select two random points of the path as cutting points, then two parts of the first chromosome are joined together with the complementary missing part of the second chromosome. Table 1 exemplifies a crossover between chromosomes having points 3 and 6 as cutting points. Note that the resulting chromosome “Chrom. 1 × Chrom. 2” is a combination of the genes in bold of “Chrom. 1” and “Chrom. 2”.
Table 1

GA for octilinear path schematization crossover

Chrom. 1

Chrom. 2

Chrom. 1 × Chrom. 2

(31.00, 97.00)

(31.00, 97.00)

(31.00, 97,00)

(16.15, 90)

(16.15, 90)

(16.15, 90)

(26.51, 0)

(26.51, 0)

(26.51, 0)

(24.36, 0)

(26.51, 45)

(26.51, 45)

(24.36, 0)

(18.26, 45)

(18.26, 45)

(24.36, 0)

(32.97, 0)

(32.97, 0)

(19,00, 315)

(34.24, 315)

(19.00, 315)

(41,5, 270)

(34.25, 225)

(41.50, 270)

(30,87, 0)

(30.87, 0)

(30.87, 0)

(16,88, 0)

(16.88, 0)

(16.88, 0)

It is worth mentioning that for both, the crossover and the mutation, if the input chromosomes represent octilinear paths, the resulting chromosome will be octilinear, since the mutation and crossover are the only way to generate new individuals. If the initial population is composed only by octilinear members, all the individuals produced by the GA will be octilinear.

Generating the Populations

The input of the GA process is a path, in other words, a sequence of stations Cartesian coordinates. From this input, the GA generates \(n\) valid chromosomes. Those \(n\) chromosomes represent the elementary chromosome group and are used as individuals on the first population as well. The number of individuals per population remains constant in the evolutionary process and the population size \(n\) for the experiments in this project was ten.

To create the elementary group of chromosomes the path is submitted to \(n\) Douglas-Peucker line simplification and for each simplification a different distance dimension is set as a parameter. As a result, \(n\) different paths with a possible different number of bends are created. From each of those paths, an octilinear version from them is created in a way that all curves that connect two bends is restricted to the octilinear orientation, and the stations between two bends are distributed in an equidistant way through the curve.

To generate an offspring from a population, the individuals from this population are selected to mutate and cross between themselves to form new individuals. In order to guarantee diversity and avoid local minimum fixation, an individual of the elementary group is randomly selected to be added in the offspring as an intruder.

Fitness Function and Selection Process

Individuals with favorable genotypes must be more selectable to reproduce so that their genes are in greater numbers in next generation. The goal of the fitness function is to evaluate a chromosome according to its degree of adaptation as a solution to a problem, thus, the fitness function returns an index that represents a level of how good this chromosome is as a solution.

To facilitate to be followed with the eyes, the paths in a schematic map should avoid as possible bends on its way. However, reducing bends from a path causes displacements from its original layout and a disproportional distortion must be avoided as well. In order to find a balance between those two aesthetics factors, the fitness function calculates the distance from the individual to its original shape and a weighted arithmetic mean of the number of bends in the individual to form a single resulting index.

The distance factor is the mean of the distances between the respective points from chromosome path and its original path. Let \(L = \left( {a_{0} , a_{1} , a_{2} , \ldots , a_{n} } \right)\) be the original path, and \(L^{{\prime }} = \left( {b_{0} , b_{1} , b_{2} , \ldots , b_{n} } \right)\) the octilinear path to be evaluated, and let \(d\left( {a,b} \right)\) be the Euclidean distance between point \(a\) and \(b\), the distance factor \(\overline{d}\) can be calculated as:
$$\overline{d} = \frac{{\mathop \sum \nolimits_{i = 1}^{n} d\left( {a_{i} ,b_{i} } \right)}}{n}$$
The bend factor is a weighted mean of the number of bends in the schematic path in a way that obtuse bend have more weight than oblique ones. Let \(\left| {x^\circ } \right|\) be the number of bends with \(x\) degree in a schematic path, the bend factor \(Z\) can be calculated as:
$$Z = \frac{{1 *\left| {45^\circ } \right| + 3 *\left| {90^\circ } \right| + 5 *\left| {135^\circ } \right|}}{n}$$
Using the distance factor and the bend factor the fitness function return the final index \(\eta\) as a function of \(\overline{d}\) and \(Z\).
$$\eta = f\left( {\overline{d} , Z} \right)$$

With the fitness function, the GA evaluates each chromosome of a population and then it orders them according to their indexes. Individuals evaluated with lower index have more chances to be chosen than the ones worse evaluated. This kind of selection is called ranking selection. In order not to lose the best solution of a generation, the selection process is also elitist. It means that the best solution of a population is copied to its offspring.

Evolutionary Process

Due to the evolutionary process, it is expected that the best individual of a determined generation has a better or equal index values than the best individual of its previous generation. In order to understand the evolutionary effect in schematization of the path, we create an experiment that graphically shows a sequence of the best different solutions over successive generations (Galvao et al. 2014). In Fig. 2 is possible to note this morphological evolutionary process and how the algorithm tends to reduce the number of bends without disproportional distortions to its original shape.
Fig. 2

Illustration of octilinear path evolutionary adaptation

Network Practical Results

This section presents the results of the genetic algorithm for path schematization as a solution for a real transit network map. We used real transit data of Castellón de la Plana (Spain) which is composed of 19 transit lines and 173 stations (nodes). Since our path-solution schematization does not concern about scale variation, i.e., regions with more density of stations getting a larger share of the available space than others, we use a single focal fish-eye transformation (Sarkar and Brown 1994) having the center of Castellón (most congested area) as focal point. Analogous to Ti and Li (2014) method, we execute the fish-eye transformation as pre-step before the genetic algorithm. Figure 3 show the visual effect of the fish-eye in the spatial transit data from Castellón.
Fig. 3

Fish-eye effect in the network of Castellón

To obtain a minimal set of paths, a depth-first search algorithm is performed through the topological transit data. The resulting set of paths is then sent to be schematized by the GA, and a new schematic position for each station is calculated. Figure 4 illustrate the network using the calculated schematic position of the vertices. For this graph, the browser waited for 1.34 s (from request to response), in which, the GA was responsible for 0.39 s of the whole process. Table 2 details, for each key operation, the total execution time spent.
Fig. 4

Final result after applying the GA for octilinear path schematization in Castellón bus network

Table 2

Distribution of independent operations execution time over the total

Operation

Execution time (s)

6 \(\times\) Query database plus creation of data structures

0.89

Depth-first-search

0.01

Fish-eye transformations (all features)

0.01

GA for all paths (octilinear schematization)

0.39

GeoJSON composition

0.02

Others

0.02

Total

1.34

Using Automatic Schematization for Dynamic Transit Information

The larger the city the more complex the public transportation system tends to be. An extreme example is Sao Paulo, Brazilian largest city. Every day, 8 million passengers make use of the system in at least one of its 1387 operatives transit lines (São Paulo Transporte 2016). Even for the most skilled cartographer, the creation of an easy-to-read transit schematic map with all 1387 lines is a challenging task. In a computational perspective, such a big instance represents a too long execution time for real-time applications and, moreover, a layout with good usability cannot be guaranteed. In this context, we built an application prototype to test the usage of schematic maps on a new perspective that takes advantage of efficient automatic drawing algorithms and the hypermedia of web applications.

Usually, a routine of a person in a city is limited to a few spots. For example, a student goes from home to the campus, from the campus to the sport club, a from the sport club back to home. A tourist goes from the airport to the hotel, from the hotel to a monument, from a monument back to the hotel. Why it makes necessary the whole set of 1387 lines to be presented, e.g., to a tourist in Sao Paulo? Digital schematic maps allow us to construct maps with a limited set of information that will attend the needs of an individual. This is more or less the concept of the handmade sketch maps as an alternative to the all-in-one paper maps.

In order to produce personalized schematic maps we assume that the process of producing schematic data must be made in real-time. This efficiency in the process is crucial. First, it helps information in the map to be updated to the last changes in the operations of the service. Second and more important is that for different areas and a different set of lines it is required a different schematic layout. Changes in the area result in changes in scale and in the dimension of the map. Variation in the set of lines implies density variation in the elements on the map. Since an adequate transit schematization depends on dimension, scale, and density, a new schematization is required for every personalized map produced.

To identify the set of lines that are valuable to a user, first, it makes necessary to identify the points of interest (POI) of this user. The POIs are usually locations in the city where the user often goes or intends to go. This data can be obtained from mobile devices from favorite places stored or current locations of the user for example. The prototype made for this project allows the users to manually add markers to a map indicating their POIs. Then we make use of the Direction Service powered by the Google Maps JavaScript API to identify the lines useful to travel between those points. Figure 5 exemplify this process. In Fig. 5a the markers indicates the POIs of the user. In Fig. 5b, those POIs are visualized in the schematic map with all network lines. In Fig. 5c only the lines useful for connecting the POIs are drawn.
Fig. 5

“Less is more”. Schematic map information reduction by traveler’s relevant lines selection. a Points of interest. b Map with all lines. c Map with relevant lines only

The spatial transit data is schematized in the server in response from a GET method and sent to a web client in JavaScript Object Notation (JSON), that way we can represent the schematic data in Scalable Vector Graphics (SVG). Vector-based graphics allow programmers to explore interaction and to add dynamic information to each spatial feature independently. Figure 6 shows examples of implementations in our prototype that illustrates how a digital vector-based map can be more useful as an information seeker tool than static maps. Figure 6a, b the user zoom into a station by clicking on it and the cartographic details of the region are shown. In Fig. 6c a line(path) is enhanced on demand to avoid users to lose the focus while following it with the eyes. Figure 6d exemplifies how dynamic data can be explored in vector-based schematic maps. The prototype uses the location awareness of browsers to facilitate passengers to locate themselves during a trip. The current and the next station are indicated with intermittent rings. The given implementations are just examples on how the usability of schematic maps can be improved if they can be produced on demand for web applications.
Fig. 6

Examples of interaction and dynamic information in schematic maps on demand. a Vector-based schematic map. b Metric map layer is shown after a click. c Line is highlighted after a click. d Blue rings indicate passenger’s location

Discussion

The octilinear layout proved to be a useful configuration for schematic transit maps and the success of Beck’s first map (London tube map) confirm this (Allard 2009). However, the evaluation of specific octilinear graph layout solution for a given transit network representation is trickier and, in many aspects, are subjective requiring it to be surveyed for a more precise analysis.

Nöllenburg (2014) has been trying to systemize design principles that help in the evaluation of octilinear maps. The evaluation here made is based on those rules and the comments are referred to Fig. 4. The topological correctness is not guaranteed by the GA path schematization. However, our method tends to keep the stations close to their original position, so the resulting configuration tends to keep the original topology. To avoid topological inconsistencies in path schematizations, Li and Dong (2010) adopted a strategy that detects and resolves spatial inconsistencies on every insertion of a schematized path. Although more studies regarding impact in the execution time are necessary, the same strategy could be adopted for our method. In opposite to extras edge crossing, our resulting maps presents significant quantities of edges overlaying, which means when two edges lay over the same axis. Most of those violations have been programmatically identified and a solution and future work suggestion can include the overlapping edges in the same edge structure to be drawn in parallel.

The edge orientation restriction is not violated. All edges have been drawn in one of the octilinear orientation. Minimization of bends is an aesthetics principle and it is impossible to draw all lines in a straight line. Pursuing this aesthetic is even more challenging for bus networks that are at the street level and have more complex morphology than metro networks. The GA fitness function helps to keep the number of bends small and avoids sharp turns, additionally, it is possible to set the depth-first search to give straightening preference to a specific path or line over others as illustrated in Fig. 4, where we set the Tram line, that crosses the city in the east-west direction, to have preference to be rectified over the others.

The geometric distortion is minimized by the GA as well, but it plays a conflicting role with the bends minimization. Changing the parameter in the fitness function it is possible to drive the results to less distortion or to fewer bends. Figure 7 illustrates the effect of this parameter in the fitness function. The figure on the left gives more priority to less distortion, while the one in the right to fewer bends.
Fig. 7

GA octilinear schematization with different weights for bends reduction

Conclusion

The proposed genetic algorithm for octilinear path schematization combined with topological transit data and the fish-eye transformation was able to sketch within a predictable time octilinear schematic maps for bus networks. As a consequence of the evolutionary process, the resulting maps tend to have a reduced number of bends while keeping the final shape close to the original. The fish-eye transformation ran as a pre-step and makes the distribution of the spatial features more uniform along the available space. Using depth-first search in the network data, we are able to establish lines or paths to have straightness priority over others, an effect found in many classical metro map designs.

Our proposed method was able to generate the right data structures and compose the schematic transit information to full visualization and interactivity in the web environment. Using real transit data from Castellón, a web application was developed to a practical test of the methodology. Several functionalities were included allowing the user to specify his/her needs and interact with the schematic data in order to increase the power of schematic maps as a transit information source. We show that real-time computed schematization allows a transit map to be personalized and more dynamic, adequate to the visual information-seeking “mantra” proposed by Shneiderman (1996), “overview first, zoom and filter, then details on demand”.

We were not always able to guaranty topological correctness. However, topological inconsistencies like extra edge crossing tend to be small because of the way depth-first search divided the graph and because the algorithm tends to avoid distortions (distance) in the resulting layout, meaning that the topology of the original input is used as information for some topology correctness in the output. We understand that, to make the technique viable as an automatic drawing solution, the topological inconsistencies need to be iteratively solved. Nevertheless, the proposed genetic algorithm can be used for computer-assisted generation of schematic transit maps.

Notes

Acknowledgements

Paper produced as a result of the dissertation submitted for the Degree of MSc in Geospatial Technology. Work supported by grant H2020-EU.1.1.—EXCELLENT SCIENCE—European Research Council (ERC).

References

  1. Allard, J. (2009). The design of public transport maps. Doctor thesis. Politecnico di Milano.Google Scholar
  2. Anand, S., Avelar, S., Ware, J. M., & Jackson, M. (2007). Automated schematic map production using simulated annealing and gradient descent approaches. GISRUK (pp. 414–419). Citeseer.Google Scholar
  3. Avelar, S. (2002). Schematic maps on demand: Design, modeling and visualization. PHD Thesis. Technische Wissenschaften ETH Zürich.Google Scholar
  4. Galvao, M. D., Lamar, M. V., & Taco, P. W. (2014). Desenho automático de mapas octalineares de rede de transporte pú}blico utilizando algoritmo genético. TRANSPORTES, 21–30.Google Scholar
  5. Hong, S.-H., Merrick, D., & Do Nascimento, H. (2004). The metro map layout problem. International Symposium on Graph Drawing (pp. 482–491). Berlin: Springer.Google Scholar
  6. Li, Z., & Dong, W. (2010). A stroke-based method for automated generation of schematic network maps. International Journal of Geographical Information Science, 24(11), 1631–1647.CrossRefGoogle Scholar
  7. Nöllenburg, M. (2005). Automated drawing of metro maps. Technical Report 2005–25. Universitätt Karlsruhe, Fakultät für Informatik.Google Scholar
  8. Nöllenburg, M. (2014). A survey on automated metro map layout methods. ITI Wagner, Department of Informatics, Karlsruhe Institute of Technology (KIT), Tech. Rep.Google Scholar
  9. Nollenburg, M., & Wolff, A. (2011). Drawing and labeling high-quality metro maps by mixed-integer programming. IEEE Transactions on Visualization and Computer Graphics, 7(5), 626–641.CrossRefGoogle Scholar
  10. Oke, O., & Siddiqui, S. (2015). Efficient automated schematic map drawing using multiobjective mixed integer programming. Computers & Operations Research, 61, 1–17.Google Scholar
  11. São Paulo Transporte. (2016, January 25). Indicadores. Retrieved from SPTrans: http://www.sptrans.com.br/indicadores/
  12. Sarkar, M., & Brown, M. H. (1994). Graphical fisheye views. Communications of the ACM, 37(12), 73–83.CrossRefGoogle Scholar
  13. Shneiderman, B. (1996). The eyes have it: A task by data type taxonomy for information visualizations. In Proceedings, IEEE Symposium on Visual Languages (pp. 336–343). IEEE.Google Scholar
  14. Ti, P., & Li, Z. (2014). Generation of schematic network maps with automated detection and enlargement of congested areas. International Journal of Geographical Information Science, 28(3), 521–540.CrossRefGoogle Scholar
  15. Wang, Y.-S., & Chi, M.-T. (2011). Focus + context metro maps. Transactions on Visualization and Computer Graphics, 17(12), 2528–2535.CrossRefGoogle Scholar
  16. Wolff, A. (2007). Drawing subway maps: A survey. Informatik-Forschung und Entwicklung, 22, 23–44.CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG 2018

Authors and Affiliations

  • Marcelo Galvao
    • 1
  • Francisco Ramos
    • 2
  • Marcus Lamar
    • 3
  • Pastor Taco
    • 4
  1. 1.Institute for GeoinformaticsUniversity of MünsterMünsterGermany
  2. 2.Institute of New Imaging TechnologiesJaume I UniversityCastellónSpain
  3. 3.Departamento de Ciência da ComputaçãoUniversity of BrasíliaBrasíliaBrazil
  4. 4.Programa de Pós-Graduação em TransportesUniversity of BrasíliaBrasíliaBrazil

Personalised recommendations